技能侦察¶
在创建新技能之前,请先使用此技能。其目的是避免重复创建已有的社区或市场成果,并在采用外部成果之前对其进行充分审查。
来源:复用自 redminwang 的社区旧 PR #1232。
使用时机¶
- 当用户说“创建技能”“构建技能”“制作技能”“新技能”时。
- 当用户询问“有没有 X 的技能?”或“是否存在执行 Y 的技能?”时。
- 当用户描述工作流并试图提议创建新技能时。
- 当用户想要分叉或扩展现有技能时。
如果用户明确指示跳过搜索并从头开始创建,请确认这一点,然后继续执行所请求的创建工作流。
工作原理¶
步骤 1 - 理解意图¶
提取以下内容:
- 技能应执行的任务。
- 使用技能的触发条件。
- 相关的领域、工具、框架或数据源。
- 3 到 5 个搜索关键词及有用的同义词。
步骤 2 - 搜索本地来源¶
首先搜索已安装和市场中的技能名称。由于本地来源已经包含在用户环境中,因此优先处理。
find ~/.claude/skills -maxdepth 2 -name SKILL.md 2>/dev/null | grep -iE "keyword|synonym"
find ~/.claude/plugins/marketplaces -path '*/skills/*/SKILL.md' 2>/dev/null | grep -iE "keyword|synonym"
然后搜索前置元数据中的描述:
步骤 3 - 搜索远程来源¶
使用可用的 GitHub 和 Web 搜索工具。优先使用简洁的查询:
gh search repos "claude code skill keyword" --limit 10 --sort stars
gh search code "name: keyword" --filename SKILL.md --limit 10
在 Web 搜索中,最多使用 3 个目标查询(示例):
步骤 4 - 审查外部匹配¶
在推荐外部技能用于采用或分叉之前:
- 阅读
SKILL.md的前置元数据和步骤。 - 检查是否存在意外的 shell 命令、文件写入、网络调用、凭据处理或包安装。
- 确认仓库是否仍在维护。
- 优先将市场原始版本复制到新的本地分支并查看 diff,而不是直接编辑市场原始版本。
步骤 5 - 对结果排序¶
按以下顺序对候选项排序:
- 技能名称中的完全关键词匹配。
- 描述中的关键词或同义词匹配。
- 本地已安装或市场来源。
- 有最近活动的已维护 GitHub 来源。
- 仅 Web 提及。
最终列表限制为 10 条。
步骤 6 - 提供决策选项¶
向用户展示一个简短的表格:
| 选项 | 含义 |
|---|---|
| 使用现有 | 直接调用或安装匹配的技能。 |
| 分叉或扩展 | 复制最接近的技能并修改。 |
| 新建 | 在确认不存在接近匹配后,构建新技能。 |
仅在用户选择该路径后,或搜索未找到接近匹配时,才创建新技能。
示例¶
结果表格¶
| # | スキル | ソース | マッチする理由 | ギャップ |
| --- | --- | --- | --- | --- |
| 1 | article-writing | ローカル ECC | 記事とガイドの草稿作成 | リリースノートに特化していない |
| 2 | content-engine | ローカル ECC | マルチフォーマットコンテンツワークフロー | 必要以上に重い |
| 3 | blog-writer | GitHub | 最近のコミットがあるブログ執筆スキル | セキュリティレビューが必要 |
面向用户的摘要¶
2つの近いローカルマッチと1つの外部候補が見つかりました。最も近いのは
`article-writing` です。草稿作成と修正をカバーしていますが、
お求めのリリースノートチェックリストは含まれていません。そのまま使用するか、
リリースノートバリアントにフォークするか、新しいスキルを作成するかを選択できます。
反模式¶
- 当搜索合适时,不要直接跳到创建新技能。
- 不要未阅读就安装外部技能。
- 不要展示未排序的弱匹配长列表。
- 不要将仅 Web 提及视为可靠来源。
- 不要就地编辑已安装的市场原始版本。
相关¶
search-first- 构建前搜索的通用工作流。skill-stocktake- 审计已安装技能的健康状态、重复项和缺口。agent-sort- 对现有代理和技能进行分类和整理。
本页原文 Markdown:在 AtomGit 查看·内容源自开源项目 ev/ECC