feat: 持久化诊断历史并修复 Agent 命令执行
This commit is contained in:
@@ -19,6 +19,11 @@
|
||||
- 实时展示思考步骤、执行命令和真实输出
|
||||
- 即使选择 AI 执行,`apply`、`delete`、`patch`、`scale`、`rollout`、`exec` 等命令仍必须人工确认
|
||||
- 禁止 shell、管道、重定向和多命令拼接
|
||||
- **历史记录持久化**:使用 SQLite 保存全部诊断与处理轨迹
|
||||
- 保存完整诊断结果、文本报告、AI 分析结果
|
||||
- 保存 Agent 思考、命令、真实输出、审批和执行结果
|
||||
- 支持按状态、命名空间查询并查看完整详情
|
||||
- 服务重启后仍可读取历史和恢复最近一次诊断
|
||||
- **AI 追问对话**:基于诊断上下文多轮追问,深入排查问题
|
||||
- **Web 仪表盘**:Vue3 + Element Plus,实时展示诊断结果
|
||||
|
||||
@@ -50,6 +55,9 @@ PORT=8900
|
||||
|
||||
# Kubeconfig 路径 (留空使用默认 ~/.kube/config)
|
||||
KUBECONFIG_PATH=
|
||||
|
||||
# 历史记录 SQLite 文件(K8S 部署时请挂载持久卷到该路径)
|
||||
HISTORY_DB_PATH=/app/data/history.db
|
||||
```
|
||||
|
||||
## API 接口
|
||||
@@ -63,6 +71,8 @@ KUBECONFIG_PATH=
|
||||
| POST | `/api/analyze` | AI 分析诊断结果 `{"question":""}` |
|
||||
| GET | `/api/agent/diagnose/stream` | 自主诊断 SSE 流,`execution_mode=manual|ai` |
|
||||
| POST | `/api/agent/approve` | 批准或拒绝待执行命令 `{"approval_id":"...","approved":true}` |
|
||||
| GET | `/api/history/diagnoses` | 查询全部诊断历史,支持 `status`、`namespace` 过滤 |
|
||||
| GET | `/api/history/diagnoses/{id}` | 查询诊断详情及全部 AI/Agent 处理轨迹 |
|
||||
| POST | `/api/chat` | AI 多轮对话 `{"messages":[...]}` |
|
||||
| GET | `/api/report` | 获取诊断报告文本 |
|
||||
|
||||
|
||||
Reference in New Issue
Block a user