# delete-agent 技能 ## L0:一句话摘要 安全删除指定的智能体及其关联数据(文件系统、内存状态、可选会话历史)。 ## L1:概述 元技能:列出候选 → 确认意图(不可恢复)→ 询问是否删历史 → `ManageAgent(action='delete')` 执行。用于清理不再使用、测试性/实验性、或需释放存储的智能体。价值在工具给不了的部分:候选筛选与状态引导、删除前的意图确认。工具层多重拒绝(核心体 / 自身 / 活跃态)与团队级联由工具保证。 ## L2:详细规范 流程:列出可选智能体 → 确认意图与目标 → 询问是否删历史 → 执行删除 → 回执。 ### 阶段 1:列出候选 用户未指定具体智能体时,`ManageAgent(action='list')` 取列表,按状态分组展示:`offline` / `error` 可安全删除;`online` / `busy` / `recovery` 标注"需先停止"(会被工具拒绝),不进入后续流程。需详情用 `ManageAgent(action='get', id)`。例如: ``` 可删除:法律顾问助手 (legal-assistant, offline)、测试机器人 (test-bot, offline) 需先停止:数据分析师 (data-analyst, online) ``` ### 阶段 2:确认意图 向用户确认目标智能体(名称/ID),**明确告知不可恢复**(配置、技能、工具将永久删除),展示基本信息,等用户确认。 ### 阶段 3:询问删除选项 问是否同时删除该智能体的全部会话历史:是 → `deleteRuns=true`;否 → `deleteRuns=false`(默认、可省略,保留历史)。 ### 阶段 4:执行删除 调用前告知用户"系统会弹确认窗,请在弹窗中确认"(delete 由工具层强制弹确认)。执行: ``` ManageAgent(action='delete', id='legal-assistant', deleteRuns=true) ``` 确认后完成删除,含团队级联:目标是组长的团队自动解散,是成员的自动移除。 ### 阶段 5:回执 据工具返回(已清理路径、删除会话数、内存清理详情)生成用户友好报告(不暴露内部路径),例如「✅ 已删除 XXX;清理了文件系统 / 调度 / 订阅 / MCP / N 条会话历史 / 团队级联」。 ### 删除范围与边界 - **始终删**:AgentFS 目录(配置/人格/规则/技能/工具/记忆)、用户偏好数据、内存状态(调度器/队列/消息订阅/MCP 连接)、注册表条目。**可选删**(`deleteRuns=true`):会话历史与话题索引。**团队级联**(自动):组长 → 解散团队、成员 → 移除。**保留不删**:其他智能体、用户配置、全局设置、市场缓存。 - 工具拒绝场景据此向用户解释并给下一步:核心智能体(desirecore / core / 绑定 UUID)不可删;不能删调用方自身;活跃态(online/busy/recovery)需先在 UI 停止或等其空闲;ID 不存在则智能体已删或 ID 有误。 - 一律经 `ManageAgent`(`action='list' | 'get' | 'delete'`)完成;delete 为高风险操作,工具层强制弹确认。