mirror of
https://git.openapi.site/https://github.com/desirecore/market.git
synced 2026-07-23 06:03:45 +08:00
## 摘要 / Summary ### 中文 #56 的复盘修正。上一轮"强改写压缩"把四技能 L1 的**技术属性、使用场景与交互示范当套话一刀切**,造成实质信息丢失(承诺"意图全保留"但未做到)。本 PR 补回: - **create**:`创建仓库符合 AgentFS v2 规范、git 管理版本(可治理/可追溯)`定位;`基础创建`形态(name+description,description 自动填充 persona L0);需求收集的**引导问题示例**("起什么名字?/主要负责什么?"…);企业部署/开发者原型使用场景。 - **update**:`agent 目录 git 管理版本、历史可追溯`定位 + 使用场景。 - **discover**:使用场景(浏览/新用户/找替代)+ `语义匹配而非关键词搜索`。 - **delete**:使用场景(清理/测试/释放存储)。 根因:L1 混着实质技术属性与营销套话、使用场景是触发判据、引导问题是交互示范,不该按"只留独有信息"一刀切。补回后仍保留结构性压缩(zh 正文合计仍降 ~64%)。版本 create 2.5.2 / update 3.1.3 / delete 2.5.2 / discover 2.6.2,manifest 1.2.13,中英双份同步、重算 source_hash(validate-i18n 通过)。 ### English Post-mortem fix for #56. The previous aggressive compression treated the skills' L1 technical attributes, use cases, and interaction demos as boilerplate and cut them in a blanket way, dropping substantive information (the "all intent preserved" claim wasn't fully met). This PR restores: create's AgentFS-v2 / git-version-management positioning, the "basic create" form (name+description auto-filling persona L0), the requirement-gathering prompt questions, and enterprise/developer use cases; update's git-versioned/traceable positioning and use cases; discover's use cases and "semantic match, not keyword search"; delete's use cases. Root cause: L1 mixed real technical attributes with marketing boilerplate, use cases are trigger cues, and prompt questions are interaction demos — none should have been blanket-cut. Structural compression is retained (zh bodies still ~64% smaller). Versions bumped, manifest 1.2.13, both locales synced, source hashes recomputed (validate-i18n passes).
3.0 KiB
3.0 KiB
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 为高风险操作,工具层强制弹确认。