Files
mulit-agent/controller/docs/steps/14-MCP受控桌面工具闭环.md
T
toot aa57ea69de feat(controller): 工具仓库、Skills 录入、多轮追问与终端运行日志
- 插件/MCP 改为通用工具仓库:内置、HTTP MCP、本机命令(stdio)三类工具,可增删改、
  按 Agent 分配;定义变更自动提升下发版本并重发,删除即回收分配并通知 Agent 清空。
- 旧 desktop-filesystem 降级为仓库中的一个内置条目;本机预设工具改为总控只展示、
  Agent 默认启用,任务执行来源新增 builtin(审计 task.builtin_tool_execution)。
- Skills 补齐录入闭环:新建或按名称覆盖更新,并可从旧版技能目录(SKILL.md + skill.json)
  批量导入;同名更新保持标识不变并自动重新应用,旧包入口脚本只提示不执行。
- 单独指派支持基于某条已完成任务的多轮追问:任务内容框仍下发无上下文的一次性任务,
  追问时由总控组装历史(仅成功轮次、默认最近 50 轮 / 约 6 万字符),会话按 Agent 隔离;
  执行动态把同一会话合并为一条记录,任务详情弹窗底部提供继续对话输入框。
- 任务详情支持运行中观测:打开期间每 2 秒刷新,终端风格输出全部事件并自动滚动;
  progress 事件不改变任务状态且顺延无进展超时,避免正在执行工具的任务被误判超时。
- 修复 build.ps1 缺 UTF-8 BOM 导致 build.bat 在 PowerShell 5.1 下语法报错。
2026-09-16 15:30:50 +08:00

1.9 KiB
Raw Blame History

14:MCP 受控桌面工具闭环

已完成范围

  1. 总控可为指定 Agent 启用内置 desktop-filesystem MCP;分配和单调递增的部署版本持久化在总控数据库,状态为 pending、sent、applied 或 failed。
  2. 在线 Agent 会立即收到带部署版本的认证 WSS 快照;离线 Agent 在认证重连后自动重收同一持久化分配。Agent 在本机保存启用状态和版本,并对重复快照幂等回执。
  3. 该工具只识别明确的“在桌面创建文件夹”任务,只能创建桌面直接子文件夹;已存在目标、路径穿越或非法名称会失败,绝不覆盖。命中该工具意图但工具未部署/未应用时也会明确失败,绝不降级给 LLM。
  4. 总控审计记录部署请求、快照下发、Agent 回执和真实工具结果,且不记录 API Key、配对凭据或完整任务提示词。
  5. Agent 管理页显示每台 Agent 的 LLM、Skill 与 MCP 应用状态;任务输出和审计均会移除模型 <think> 内容。

验证

  • Go WSS 协议测试覆盖 MCP 下发、持久化版本、过期回执忽略、认证重连重发、回执恢复、任务结果回传、审计和 <think> 过滤。
  • 子 Agent pytest 覆盖桌面文件夹创建、未部署拒绝而不调用 LLM、路径穿越拒绝、版本持久化与重复快照回执。
  • Windows 端到端手工验收需使用唯一目录名,并确认总控的任务详情、审计记录和 Agent 本地状态均为本次部署版本;不得以 Skill 文本或 LLM 回复替代真实目录创建证据。

下一步

已完成:单一内置 MCP 已升级为通用工具仓库(内置工具 + HTTP MCP 服务、按 Agent 分配、定义变更自动提升下发版本、删除即回收),desktop-filesystem 现在是仓库中的一个内置条目。后续为工具与插件包补齐签名、哈希与权限清单,并恢复可执行插件包的独立入口。