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

20 lines
1.9 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 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` 现在是仓库中的一个内置条目。后续为工具与插件包补齐签名、哈希与权限清单,并恢复可执行插件包的独立入口。