mirror of
https://git.openapi.site/https://github.com/desirecore/market.git
synced 2026-02-28 14:18:15 +08:00
- 新增 builtin-skills.json 清单 - 添加 create-agent / delete-agent / discover-agent / update-agent SKILL.md - 添加 _protected-paths.yaml 共享配置 - 与捆绑源版本一致,启用 Phase 2 热更新通道 Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
8.2 KiB
8.2 KiB
name, description, version, type, risk_level, status, disable-model-invocation, tags, metadata
| name | description | version | type | risk_level | status | disable-model-invocation | tags | metadata | |||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| discover-agent | 根据用户需求推荐最匹配的智能体,展示候选列表并引导选择。Use when 用户描述需求但不确定该找哪个智能体帮忙,或想浏览可用的智能体。 | 1.0.0 | procedural | low | enabled | false |
|
|
discover-agent 技能
L0:一句话摘要
根据用户需求描述,在已注册的智能体中匹配并推荐最合适的 Agent。
L1:概述与使用场景
能力描述
discover-agent 是一个流程型技能(Procedural Skill),赋予 DesireCore 为用户发现和推荐合适智能体的能力。它通过理解用户需求描述,在已注册的 Agent 列表中进行多维度匹配,展示候选列表供用户选择。
使用场景
- 用户描述了一个需求,但不知道该找哪个智能体帮忙
- 用户想浏览当前可用的智能体及其能力
- 用户需要为特定任务找到最合适的专业助手
- 新用户初次使用系统,需要了解有哪些智能体可用
核心价值
- 降低门槛:用户无需记住每个智能体的名称和能力
- 精准匹配:基于需求语义进行智能推荐,而非简单关键词搜索
- 流畅衔接:无匹配时自动建议创建新 Agent(衔接 create-agent 技能)
L2:详细规范
执行流程
┌──────────────┐ ┌──────────────┐ ┌──────────────┐
│ 需求理解 │ ──→ │ Agent 检索 │ ──→ │ 匹配评分 │
└──────────────┘ └──────────────┘ └──────────────┘
│
↓
┌──────────────┐ ┌──────────────┐ ┌──────────────┐
│ 引导选择 │ ←── │ 结果展示 │ ←── │ 候选排序 │
└──────────────┘ └──────────────┘ └──────────────┘
阶段 1:需求理解
触发条件(任一满足):
- 用户说"帮我找一个..."、"有没有..."、"谁能帮我..."
- 用户描述了一个任务但未指定具体智能体
- 用户说"有哪些智能体"、"看看都有谁"
- 系统检测到用户需求与当前 Agent 能力不匹配
需求解析:
从用户描述中提取以下维度:
| 维度 | 说明 | 示例 |
|---|---|---|
domain |
专业领域 | 法律、财务、技术、教育 |
task_type |
任务类型 | 咨询、审查、分析、创作 |
keywords |
关键词 | 合同、报表、代码、论文 |
urgency |
紧急程度 | 日常 / 紧急 |
阶段 2:Agent 检索
数据源:调用 GET /api/agents 获取所有已注册的智能体列表。
API 调用:
GET /api/agents
返回数据中的关键字段:
id— 智能体唯一标识name— 智能体名称description— 智能体描述skills— 技能列表status— 当前状态(online/offline/busy)
过滤规则:
- 默认只展示
status: online或status: offline的智能体 - 排除系统内部智能体(如 DesireCore 自身,除非用户显式要求)
阶段 3:匹配评分
匹配维度与权重:
| 维度 | 权重 | 说明 |
|---|---|---|
| 描述相似度 | 40% | 智能体 description 与用户需求的语义相似度 |
| 技能匹配 | 30% | 智能体拥有的 skills 与任务类型的关联度 |
| 领域匹配 | 20% | 智能体专业领域与用户需求领域的匹配度 |
| 可用性 | 10% | 智能体当前状态(online 优先于 offline) |
评分规则:
- 每个维度 0-100 分
- 加权计算综合得分
- 综合得分 >= 60 为"推荐"
- 综合得分 40-59 为"可能相关"
- 综合得分 < 40 不展示
阶段 4:候选排序
排序规则:
- 按综合得分降序排列
- 同分时 online 状态优先
- 最多展示 5 个候选
阶段 5:结果展示
有匹配结果时:
根据你的需求,我推荐以下智能体:
┌─────────────────────────────────────────────────────┐
│ 1. 法律顾问助手 匹配度: 92% │
│ 专注合同审查和法律风险评估 │
│ 技能:合同审查、风险评估、法律研究 │
│ 状态:在线 │
├─────────────────────────────────────────────────────┤
│ 2. AI 文书助手 匹配度: 71% │
│ 专业文书撰写和格式优化 │
│ 技能:文书撰写、格式排版、合规检查 │
│ 状态:在线 │
├─────────────────────────────────────────────────────┤
│ 3. 数据分析师 匹配度: 45% │
│ 数据分析和可视化报告 │
│ 技能:数据分析、报表生成、趋势预测 │
│ 状态:离线 │
└─────────────────────────────────────────────────────┘
请选择一个智能体,或告诉我更具体的需求。
无匹配结果时:
目前没有找到完全匹配你需求的智能体。
你可以:
1. 用更具体的描述再试一次
2. 创建一个新的专业智能体(我可以帮你)
3. 浏览所有可用的智能体
你想怎么做?
浏览模式(用户要求查看所有):
当前可用的智能体:
在线:
- 法律顾问助手 — 合同审查和法律风险评估
- AI 文书助手 — 专业文书撰写和格式优化
离线:
- 数据分析师 — 数据分析和可视化报告
- 翻译助手 — 多语言翻译和本地化
共 4 个智能体。需要了解某个智能体的详细信息吗?
阶段 6:引导选择
用户选择后的操作:
| 用户选择 | 后续操作 |
|---|---|
| 选择了某个智能体 | 切换到该智能体的对话,传递用户需求上下文 |
| 要求了解更多 | 展示该智能体的详细信息(persona、skills、最近活跃时间) |
| 不满意候选 | 引导用户细化需求或建议创建新 Agent |
| 选择"创建新的" | 调用 create-agent 技能,传递已收集的需求信息 |
切换上下文传递:
context_handoff:
source_agent: desirecore
target_agent: legal-assistant
user_intent: "帮我审查这份合同的风险点"
discovery_metadata:
match_score: 92
match_dimensions:
description: 95
skills: 90
domain: 88
availability: 100
与其他技能的协作
| 协作技能 | 协作方式 |
|---|---|
| create-agent | 无匹配时建议创建新 Agent,传递用户需求作为初始信息 |
| task-management | 匹配成功后可自动创建任务并分配给目标 Agent |
错误处理
| 错误场景 | 处理方式 |
|---|---|
| API 调用失败 | 提示网络错误,建议稍后重试 |
| Agent 列表为空 | 引导用户创建第一个智能体 |
| 用户描述过于模糊 | 追问具体需求,提供领域选项引导 |
| 推荐的 Agent 状态异常 | 标注状态,建议选择其他在线 Agent |
权限要求
- 需要调用
fetch_api工具访问 Agent 列表 API - 只读操作,无风险
依赖
- Agent Service HTTP API(
GET /api/agents) - Agent Registry 状态查询