mcpField
S
skill-discovery

skill-discovery

github.com/oimiragieoAgent 工作流4481 次安装17 周前更新
代码仓库

关于 skill-discovery

skill-discovery 是指导 Agent 发现并调用适用技能的流程技能,面向使用技能框架的开发者。它强调先检查相关技能,再按技能类型和优先级执行流程。

主要功能

  1. 01规定任务开始前检查技能
  2. 02说明 Claude Code 中的技能访问方式
  3. 03按流程类和实现类技能排序
  4. 04区分刚性与灵活技能类型

适用场景

  1. 01开始任务前判断是否有适用技能
  2. 02在 Claude Code 中加载技能内容
  3. 03多个技能适用时确定调用顺序

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/oimiragieo/agent-studio --skill skill-discovery

安装后在 Claude Code 中输入/skill-discovery确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

commands/
skill-discovery.md
hooks/
post-execute.cjs
pre-execute.cjs
references/
research-requirements.md
rules/
skill-discovery.md
schemas/
input.schema.json
output.schema.json
scripts/
main.cjs
templates/
implementation-template.md

详细介绍

如果你认为某项技能有哪怕 1% 的可能适用于当前任务,就绝对必须调用该技能。

如果某项技能适用于你的任务,你没有选择余地,必须使用它。

这不可协商,也不是可选项。你不能为不使用它找借口。

如何访问技能

在 Claude Code 中: 使用 Skill 工具,或直接读取技能文件。调用技能后,其内容会加载并呈现给你——请直接遵循。

在其他环境中: 查阅你所在平台的文档,了解如何加载技能。

使用框架技能

规则

在做出任何回应或采取任何行动之前,先调用相关或指定的技能。 即使只有 1% 的可能适用,也意味着你必须调用技能进行确认。如果调用后发现该技能不适用于当前情形,则无需使用。

digraph skill_flow {
    "User message received" [shape=doublecircle];
    "Might any skill apply?" [shape=diamond];
    "Invoke Skill tool" [shape=box];
    "Announce: 'Using [skill] to [purpose]'" [shape=box];
    "Has checklist?" [shape=diamond];
    "Create TodoWrite todo per item" [shape=box];
    "Follow skill exactly" [shape=box];
    "Respond (including clarifications)" [shape=doublecircle];

    "User message received" -> "Might any skill apply?";
    "Might any skill apply?" -> "Invoke Skill tool" [label="yes, even 1%"];
    "Might any skill apply?" -> "Respond (including clarifications)" [label="definitely not"];
    "Invoke Skill tool" -> "Announce: 'Using [skill] to [purpose]'";
    "Announce: 'Using [skill] to [purpose]'" -> "Has checklist?";
    "Has checklist?" -> "Create TodoWrite todo per item" [label="yes"];
    "Has checklist?" -> "Follow skill exactly" [label="no"];
    "Create TodoWrite todo per item" -> "Follow skill exactly";
}

警示信号

出现以下想法时,请停下来——你正在为自己找借口:

想法事实
“这只是个简单问题”问题也是任务。请检查是否有适用的技能。
“我需要先了解更多背景”检查技能必须先于提出澄清问题。
“我先看看代码库”技能会告诉你该如何探索。请先检查技能。
“我可以很快检查 git 或文件”文件不包含对话上下文。请检查是否有适用的技能。
“我先收集一些信息”技能会告诉你该如何收集信息。
“这不需要正式技能”如果存在适用的技能,就要使用。
“我记得这个技能”技能会更新。请阅读当前版本。
“这不算任务”行动就是任务。请检查技能。
“这个技能有点小题大做”简单的事情也可能变复杂。请使用技能。
“我先做这一件事”做任何事之前都要先检查。
“这样做很有效率”缺乏纪律的行动会浪费时间。技能能避免这种情况。
“我知道那是什么意思”理解概念 ≠ 使用技能。请调用技能。

技能优先级

如果有多个技能可能适用,请按以下顺序使用:

  1. 先使用流程技能(头脑风暴、调试)——它们会决定如何处理任务
  2. 再使用实施技能(前端设计、MCP 构建)——它们会指导执行

“我们来构建 X” → 先进行头脑风暴,再使用实施技能。
“修复这个 bug” → 先调试,再使用领域专用技能。

技能类型

严格型(TDD、调试):严格遵循,不要偏离规范。

灵活型(模式):根据情境调整原则。

技能本身会说明所属类型。

用户指令

指令说明要做什么,而不是如何做。“添加 X”或“修复 Y”并不意味着可以跳过工作流程。

记忆协议(强制)

开始之前:
阅读 .claude/context/memory/learnings.md

完成之后:

  • 新模式 → .claude/context/memory/learnings.md
  • 发现问题 → .claude/context/memory/issues.md
  • 做出决策 → .claude/context/memory/decisions.md

假设工作可能会中断:如果没有记录在记忆中,就等于没有发生。

评论

支持 Markdown