Repository navigation
v2.0.0
🚀 v2.0.0 — 状态机重构 + 飞书 + Docker 部署
✨ 新功能
核心架构
- 状态机驱动的 incident 处理 (
_incident_loop): DIAGNOSE → DECIDE → PLAN → EXECUTE → VERIFY → REFLECT,替代了旧的单线性流程 - ActionPlan 结构化 (
trust.py): steps/rollback_steps/verify_steps 分离,解决回滚命令混入修复步骤的问题 - diagnose JSON 输出 (
next_action路由): FIX / COLLECT_MORE / MONITOR / ESCALATE 四路分流,解决「信息收集被当修复执行」的问题 - plan JSON 输出: 结构化步骤,含 wait_seconds、purpose、expect
- targeted observe: 验证命令与修复上下文关联,不再用通用命令验证
- verify_with_retry: 支持最多 3 次重试 + 间隔等待
- 构建/部署步骤注入: plan prompt 接收 build_cmd/test_cmd/deploy_cmd,LLM 生成完整修复链路
- incident 静默机制: 同指纹异常 30min 内不重复处理
交互通道
- 飞书交互通道: FeishuBackend + HumanChannel 多后端重构,支持群聊 @bot 触发
- 飞书 App Bot 通知: app_id/app_secret 模式
部署与安装
- Docker 部署: docker-compose + Dockerfile + .env.example 完整配置
- ops-agent CLI 命令: pyproject.toml + shell wrapper,全局可用
- ops-agent init: 交互式配置引导向导
- ops-agent check: 健康检查 + Docker demo 模式 + targets 模板
- 一键安装脚本:
curl | bash部署
终端体验
- 人类输入黄色高亮
- LLM 交互状态指示器
- 终端输出格式化优化
其他
- 自动生成并加载 AGENTS.md(源码项目地图)
- heredoc 和反斜杠续行命令解析
🐛 Bug 修复
- Docker 容器内安装 docker-ce-cli → 改为下载二进制(无需 GPG)
- 暴露 Feishu 回调端口 9877
- 挂载 Docker socket 以管理宿主容器
- 子命令检测不受参数位置影响
- LLM 环境变量持久化到 .env + 启动自动加载
- YAML 生成: 字符串值引号包裹 + 可选字段接受空输入
- 安装脚本 PATH 问题: 3 级回退 + 清晰提示
- wrapper 脚本: 解析 symlink → 用 python3 → 写入 PATH 目录
- 飞书群聊: 仅响应 @bot 消息,忽略 @其他人和 @所有人
- 飞书消息: 剥离 @mention 前缀后再做命令匹配
- limits 配置更智能
- httpx/openai INFO 日志静默
- plan LLM 响应解析失败时打印原始响应便于调试