Skip to content

这是一个功能完整的运维 Agent 管理控制台,采用单页应用 (SPA) 架构,页面结构如下:

📌 Gitee 仓库地址 ​

主机运维智能体 https://gitee.com/weedlu/som-agent

📐 整体布局 ​

┌─────────────────────────────────────────────────────────┐
│  Header (页眉) - 标题 + 主题切换 + 退出按钮              │
├─────────────────────────────────────────────────────────┤
│  Nav (导航栏) - 6个功能模块切换                         │
├─────────────────────────────────────────────────────────┤
│  Main (主内容区) - 根据导航显示对应面板                  │
└─────────────────────────────────────────────────────────┘

🎛️ 六大功能模块 ​

模块ID功能描述
运维对话#chatAI 对话界面,支持多会话、流式输出、命令审批
模型配置#models添加/删除 LLM 模型供应商
服务器配置#servers管理 SSH 连接目标服务器
SSH秘钥#sshkeys集中管理 SSH 私钥
云账号(MCP)#clouds配置云服务 MCP 集成
审计日志#audits查看操作历史记录
终端操作#termWebSocket 交互式终端

🔧 对话模块详细结构 (核心) ​

┌───────────────┬─────────────────────────────────┐
│  会话历史     │  对话主区域                      │
│  ─────────    │  ─────────────────────────────── │
│  [新建会话]   │  消息展示区 (可滚动)             │
│  • 会话1     │    - 用户消息 (蓝色)             │
│  • 会话2     │    - Agent 回复 (绿色)           │
│  • 会话3     │    - 工具调用块 (带高亮)          │
│  • ...       │    - 执行结果 (可折叠)           │
│               │    - 调试信息 (可选显示)         │
│               ├─────────────────────────────────┤
│               │  审批框 (命令确认)              │
│               ├─────────────────────────────────┤
│               │  目标选择栏                     │
│               │  - 服务器选择 (复选)             │
│               │  - 自动审批开关                  │
│               │  - 调试开关                      │
│               ├─────────────────────────────────┤
│               │  输入区 + 发送/中断/结束按钮     │
└───────────────┴─────────────────────────────────┘

🎨 设计特点 ​

  1. 主题支持: 默认浅色/深色模式,通过 CSS 变量实现
  2. 响应式布局: 768px 断点移动端适配(两栏变单栏)
  3. Shell 语法高亮: 命令、参数、变量、字符串等不同颜色
  4. 状态指示: 运行中(蓝)、等待(黄)、完成(绿)、错误(红)
  5. 操作分级标签: readonly(只读)、mutating(变更)、dangerous(危险)

🔌 外部依赖 ​

  • xterm.js: 终端模拟器组件 (v5.3.0)
  • FitAddon: 终端自适应尺寸
  • CDN 加载,无需构建工具

这是一个典型的前后端分离架构,前端纯 HTML/CSS/JS,通过 REST API + WebSocket 与后端通信。

Released under the MIT License.