RunResult 增加 Outcome/Reason;触顶标记 incomplete:max_steps; WebSocket finish 区分 incomplete 与 fatal error。补充 ai-agent docs 13 与挂点索引。
4.2 KiB
4.2 KiB
三产品 AI 运维 Agent 定位与执行边界
更新:2026-09-03 适用范围:OpsXCLI、OpsXShell、AIOps 三个独立项目的 AI 运维能力。
设计声明
三个项目服务不同的运维入口,必须独立实现目标选择、凭证取得、风险裁决和执行生命周期。可以共享安全原则、结构化结果和评测用例,但不得共享一个可在本机、桌面 SSH 与 Web 平台之间自由切换的“通用远程执行器”。
| 项目 | 产品角色 | 唯一默认目标来源 | 凭证边界 | 审计边界 |
|---|---|---|---|---|
| OpsXCLI | 服务器本机 CLI 运维工具 | 当前操作系统和当前工作目录 | 当前 OS 用户;SSH 仅显式启用并使用本机密钥 | 本机权限受限的会话/执行记录 |
| OpsXShell | 桌面远程终端助手 | 用户当前活跃 SSH connectionId | 已建立连接内部持有,模型不得选择或读取凭证 | 默认仅当前窗口,不建设堡垒机审计 |
| AIOps | 多用户 Web 运维管理平台 | 平台授权的资产 ID 或 Kubernetes 目标 | 后端凭证库按权限解析,模型只见目标摘要 | 独立、可检索、不可随聊天会话删除 |
强制不变量
- OpsXCLI 默认本地执行。远程 SSH 是例外能力,必须显式指定,严格校验
known_hosts,不得因校验文件缺失而降级为信任所有主机。 - OpsXShell Agent 只能复用任务开始时的活跃 SSH 连接。执行期间连接改变、断开或被替换时,任务必须停止,不得自动切换到其他标签或保存的主机。
- AIOps Agent 只能使用后端注入的平台目标和凭证。模型不得提供任意 IP、用户名、密码、私钥路径或集群凭证绕过资产系统。
- 工具结果和错误必须先脱敏,再进入模型上下文、UI、记忆、缓存或持久化。
- 风险确认只批准精确的目标与命令。目标、命令或参数发生变化后必须重新裁决。
- 自动学习内容默认不可信,未经审核不得成为无人值守执行依据。
统一结果语义
三个项目的工具结果至少应表达运行 ID、工具调用 ID、目标摘要、动作摘要、退出码、成功状态、开始/结束时间、超时、取消、脱敏数量和验证结果。具体类型可以独立实现,但语义不得依靠解析自由文本猜测。
推荐执行链
用户意图
→ 生成计划
→ 锁定产品内合法目标
→ 参数与风险校验
→ 必要时人工确认/平台审批
→ 独立执行器执行
→ 输出脱敏
→ 结果验证
→ 产品范围内审计或会话记录
禁止的错误复用
- 不把 OpsXCLI 的本机任意 Shell 直接暴露给 AIOps Web 用户。
- 不让 OpsXShell Agent 创建第二套 SSH 连接或读取保存凭证。
- 不把 AIOps 的平台审批、资产库存和永久审计强加给轻量桌面终端。
- 不以共享正则文件代替各项目执行前的最终安全裁决。
演进优先级
- P0:脱敏、目标锁定、危险操作拒绝、超时与真实取消、记忆不自动获得执行权。
- P1:结构化结果、只读诊断工具、执行后验证、目标与命令绑定确认。
- P2:版本化 Runbook、受控经验库、场景评测、跨资产自动化与熔断。
统一结果状态衔接(2026-09-18 增补)// Logan.Li
边界优先:统一结果状态 ≠ 统一执行平面。不削弱上文三产品隔离;不得共享可跨入口自由切换的通用远程执行器。
三产品应对用户暴露同一套语义(实现可分阶段):
completed | incomplete | failed | cancelled | awaiting_confirm
incomplete reason:max_steps / context_budget / tool_timeout / llm_timeout / connection_lost / safety_abort
详见 13-运行结果状态与可续跑契约。
| 产品 | 默认步数预算 | 触顶现状 | 目标 |
|---|---|---|---|
| opsxcli | MaxIterations=16 | 硬失败文案 | incomplete + 可续 |
| aiops agentcli | MaxIterations=16 | 硬停 | 同上;续聊已有 prior |
| opsxshell | MAX_AGENT_STEPS=12 |
抛错 | 同上;仍绑当前 connectionId |
Shell 侧短文:opsxshell/docs/01-AI-Agent步数预算与incomplete.md。