Skill 搜索安装助手
Overview
根据用户当前对话中的任务上下文或自述的职业角色,动态搜索 SkillHub 推荐市场(BuiltinMarket),结合内置专家中心和 MCP 连接器生态,生成 skill / expert / connector 三位一体的推荐方案。全程以免费优先、积分节约为核心原则——自动过滤收费 skill,仅在无免费替代时才提示付费选项并标注积分消耗。
When to Use
触发此 Skill 的典型场景:
- 「推荐一些好用的 skill」/「有什么适合我职业的技能」
- 「帮我找一下能做 X 的 skill」/「有没有免费的 XX 技能」
- 「我是做金融/法律/设计的,推荐些 skill」
- 「帮我省积分,推荐免费替代品」
- 用户在对话中遇到某类任务,主动询问是否有对应工具加持
- 用户想了解 SkillHub 上有哪些新 skill 或热门 skill
Core Principles
- 免费优先:搜索结果中优先展示免费 skill;仅在无免费替代时才展示收费项,并明确标注积分消耗。
- 按需推荐:不主动罗列所有可用 skill;基于用户当前任务或职业画像精准匹配。
- 三位一体:推荐范围覆盖 Skill(推荐市场)、Expert(专家中心)、Connector(MCP 连接器),形成完整能力方案。
- 已装感知:推荐前检查用户已安装的 skill 和已连接的 connector,避免重复推荐。
- 不越权安装:只推荐和引导,不替用户做安装决定;安装操作需用户明确确认。
Workflow
Step 1:任务/职业画像分析
从用户输入中提取两类信息:
A. 任务驱动模式(用户描述了具体任务):
- 提取任务关键词和意图分类(如:写文档、做PPT、数据分析、法律检索、金融建模等)
- 参照 references/task_capability_matrix.md 中的任务-能力映射表,确定该任务类别对应的推荐 skill / expert / connector
B. 职业驱动模式(用户自述职业或角色):
- 提取职业关键词(如:产品经理、律师、财务、设计师、开发者等)
- 参照 references/task_capability_matrix.md 中的职业-能力映射表,确定该职业常用的 skill / expert / connector 组合
C. 混合模式(用户既说了职业又说了任务):
- 以任务为 primary,职业为 secondary 进行交叉匹配
Step 2:已装能力盘点
在推荐前,盘点用户当前已有的能力:
- 已安装 Skill:检查
~/.workbuddy/skills/和项目.workbuddy/skills/目录下已有的 skill - 已连接 Connector:查看当前会话的 connector-status 中已连接(connected)的 MCP 连接器
- 已启用 Expert:从对话上下文中识别已加载的专家包
将已有能力标记为"已有",避免重复推荐。如果已安装的 skill 有更新版本,标注"可更新"。
Step 3:SkillHub 市场搜索
使用 workbuddy_marketplace_skill 工具搜索推荐市场。
操作步骤:
-
先用 ToolSearch 加载工具 schema:
ToolSearch({ tool_names: ["workbuddy_marketplace_skill"] }) -
调用 search action 搜索关键词:
json { "action": "search", "keyword": "<从Step 1提取的关键词>", "limit": 10 } -
对每个任务类别可能需要多次搜索不同关键词,收集所有相关结果。
-
搜索策略:
- 用任务关键词搜索(如"PDF"、"飞书"、"法律")
- 用职业关键词搜索(如"律师"、"财务")
- 用功能描述搜索(如"文档编辑"、"数据分析")
- 合并去重后统一处理
Step 4:成本优化过滤
对搜索结果应用免费优先的智能过滤策略,详见 references/cost_optimization_guide.md。
过滤逻辑:
-
分类标记:将搜索结果分为三类:
- 免费(free):无积分消耗的 skill
- 收费(paid):消耗积分的 skill
- 未知(unknown):无法确定收费状态的 skill -
免费优先排序:
- 免费项排在最前
- 未知项排在中间(标注"费用未知,安装前请确认")
- 收费项排在最后(标注积分消耗,附免费替代建议) -
替代品推荐:
- 对每个收费 skill,检查是否存在功能相近的免费替代品
- 如果存在免费替代,在收费项旁标注"💡 免费替代:[skill名称]"
- 如果不存在免费替代,保留收费项但标注"⚠️ 无免费替代,预计消耗 X 积分" -
版本新鲜度检查:
- 对已安装的 skill,检查updateAvailable字段
- 有更新时标注"🔄 有新版本 vX.X.X 可更新"
Step 5:三位一体推荐生成
将推荐分为三个板块,按优先级展示:
板块一:Skill 推荐
将 Step 4 过滤后的结果按以下格式展示:
📦 Skill 推荐(按免费优先排序)
免费技能:
1. [skill名称] vX.X.X — [描述前60字] [✅已安装 / 🔄可更新 / 可安装]
2. ...
付费技能(无免费替代时展示):
3. [skill名称] vX.X.X — [描述前60字] [⚠️ 预计消耗 X 积分]
💡 免费替代:[替代skill名称](功能覆盖约80%)
费用未知:
4. [skill名称] vX.X.X — [描述前60字] [❓ 费用未知,安装前请确认]
板块二:Expert 推荐
根据任务/职业画像,推荐对应的专家中心专家:
🧠 专家推荐
1. [专家名称] — [领域描述]
进入路径:左侧栏「专家」→ 搜索「[关键词]」
适用场景:[具体场景描述]
参照 references/task_capability_matrix.md 中的专家映射表进行推荐。
板块三:Connector 推荐
根据任务/职业画像,推荐适合的 MCP 连接器:
🔌 连接器推荐
1. [连接器名称] — [功能描述] [✅已连接 / 未连接]
配置方式:[如已连接则跳过;如未连接则引导配置]
对于未连接的 connector,提供简要配置引导(参见 references/cost_optimization_guide.md 中的连接器配置部分)。
Step 6:安装导引
用户选择要安装的 skill 后,执行安装流程:
- 确认选择:与用户确认要安装的 skill 列表
- 调用安装:使用
workbuddy_marketplace_skill工具的 install action:
json { "action": "install", "skillId": "<从search结果获取的skillId>" } - 结果反馈:
- 安装成功:告知安装位置和版本,提示可在「技能管理」面板查看
- 安装失败:透传错误信息,按错误类型给出建议(参照 marketplace-skill-installer 的错误处理表) - 后续引导:
- 对于 Expert:引导用户前往左侧栏「专家」入口
- 对于 Connector:引导用户在~/.workbuddy/mcp.json中配置,并在连接器管理页面点击「信任」启用
重要规则
- 禁止直接构造 HTTP 请求访问 SkillHub;只能通过
workbuddy_marketplace_skill内置工具操作。 - 禁止伪造或猜测
skillId;必须从 search 结果中获取。 - 禁止替用户做安装决定;所有安装操作需用户明确确认。
- 不要在推荐中透露
skillId——那是机器内部 id。 - 安装成功后不要自动启用该 skill 或调用其工具——让用户自己启用。
- 对于收费 skill,必须明确标注积分消耗或提示"费用未知,安装前请确认"。
- 参照
references/task_capability_matrix.md获取任务/职业到能力的映射关系。 - 参照
references/cost_optimization_guide.md获取详细的成本优化策略和连接器配置引导。