## 摘要 / Summary ### 中文 去除技能里束缚执行 Agent 自主判断的**机械数字策略**:create 需求收集的「每轮最多问 2 个」、discover 排序的「最多展示 5 个候选」。改为交由 Agent 按情况自主把握追问节奏与展示数量,保留「别让用户负担 / 别一次刷屏」的原则意图——把控制权交还给判断力更强的执行者,而非用固定上限约束。create 2.5.3 / discover 2.6.3,manifest 1.2.14,中英双份同步、重算 source_hash(validate-i18n 通过)。 ### English Remove mechanical numeric limits that constrain the executing Agent's judgment: create's "at most 2 questions per turn" and discover's "show at most 5 candidates". Both become "the Agent decides the pacing/count by situation", keeping the principle intent (don't burden the user / don't flood the screen) while handing control back to the more capable executor instead of a fixed cap. create 2.5.3 / discover 2.6.3, manifest 1.2.14, both locales synced, hashes recomputed (validate-i18n passes).
3.7 KiB
discover-agent 技能
L0:一句话摘要
根据用户需求描述,在已注册的智能体中匹配并推荐最合适的 Agent。
L1:概述
流程型技能:理解需求 → ManageAgent(action='list') 检索 → 语义匹配评分 → 排序展示 → 引导选择;无匹配时自动衔接 create-agent。适用于用户不知该找哪个智能体、想浏览可用智能体、新用户初次了解、或对当前 Agent 不满意想找替代者。价值在工具给不了的部分:需求语义匹配(而非关键词搜索)、候选排序与呈现、无匹配时的创建衔接。list / get 只读免审批。
L2:详细规范
流程:需求理解 → 检索 → 匹配评估 → 排序 → 展示 → 引导选择。
阶段 1:需求理解
触发(任一):用户说"帮我找一个… / 有没有… / 谁能帮我…"、描述任务但未指定智能体、"有哪些智能体",或系统检测到需求与当前 Agent 能力不匹配。从描述提取维度:domain(领域,如法律/财务/技术/教育)、task_type(咨询/审查/分析/创作)、keywords(合同/报表/代码/论文…)、urgency(日常/紧急)。
阶段 2:检索
ManageAgent(action='list') 取全部已注册智能体(返回 name / id / status / description 的紧凑列表)。过滤:默认展示 offline 之外的,offline 仅在无更优候选时补充;排除系统内部智能体(如 DesireCore 自身,除非用户显式要求)。
阶段 3:匹配评估
用 LLM 语义理解综合判断匹配度(非公式计算):description / persona 与需求的相关性、skills 与任务类型的关联、领域契合度、状态可用性(online 优先)。展示分级:高度匹配 → 标"推荐",部分匹配 → 标"可能相关",无明显关联 → 不展示。
阶段 4:排序
综合得分降序;同分 online 优先;展示最相关的若干个即可,数量由你按相关性自主把握,避免一次刷屏过多。
阶段 5:结果展示
- 有匹配:列出候选,每个含名称、描述、关键技能、状态、匹配度,请用户选择或进一步细化需求。例如「1. 法律顾问助手(92%)——合同审查与法律风险评估;技能:合同审查 / 风险评估 / 法律研究;在线」。
- 无匹配:告知未找到,给三选项——用更具体描述重试 / 创建新专业智能体(衔接 create-agent)/ 浏览全部。
- 浏览模式(用户要看全部):按在线 / 离线分组列出名称 + 描述,问是否要看某个的详情。
阶段 6:引导选择
- 选中某智能体 → 切换到该智能体的对话,传递用户需求上下文(source / target / user_intent)。
- 要求了解更多 →
ManageAgent(action='get', id)取详情(名称 / 描述 / 状态 / 版本 / 技能数 / 工具数 / Git 状态),以自然语言或表格呈现关键信息,问是否对话。 - 不满意候选 → 引导细化需求或建议创建新 Agent。
- 选"创建新的" → 调 create-agent 技能,传递已收集的需求信息。
协作与错误处理
- 协作:无匹配衔接 create-agent(传需求作初始信息);匹配成功后可创建任务并分配给目标 Agent。
- 错误:工具调用失败 → 提示错误、建议重试;Agent 列表为空 → 引导创建第一个智能体;需求过于模糊 → 追问并给领域选项引导;
get返回「智能体不存在: 」→ 回退list重新确认可用智能体;推荐 Agent 状态异常 → 标注状态并建议选在线的。 list/get均为只读、免审批、无风险,一律经ManageAgent完成。