SuperAPI AI 工具集

erk-skill-onboarding

通用与其它

查看项目

更新于 10-15 20:31

技能介绍

用途:为 erk 项目添加新技能(skill)时使用的完整接入指南,覆盖决策流程、需要修改的文件以及校验注册的测试。

主要能力:

  1. 决策树:回答三个问题决定要改哪些文件——Bundled 还是 Unbundled;Codex Portable 还是 Claude-Only;Bundled 情况下是 Required 还是 Optional。 Bundled 指通过 erk init capability add <name> 分发给外部项目;Unbundled 仅存于 .claude/skills/ 供 erk 仓库内部使用。Codex Portable 指可配合任意 AI agent(不依赖 hooks、session logs、slash commands 等 Claude 专有特性);Claude-Only 会引用这些 Claude Code 特性。Required 由 erk init 自动安装,Optional 需用户通过 erk init capability add 选择。
  2. 注册文件:
  • 技能内容:.claude/skills/<name>/SKILL.md,需带合法 frontmatter(name 必须与目录名完全一致,最长 64 字符;description 最长 1024 字符,用于触发匹配)。
  • Bundle 分类:src/erk/capabilities/skills/bundled.py,bundled 加入 bundled_skills(),required 还需加入 _REQUIRED_BUNDLED_SKILLS;unbundled 加入 _UNBUNDLED_SKILLS。
  • 可移植性分类:src/erk/core/capabilities/codex_portable.py,portable 加入 codex_portable_skills(),claude-only 加入 claude_only_skills()。
  • Wheel 打包:pyproject.toml(bundled + portable 需要),加入 force-include 条目,如 ".claude/skills/my-skill" = "erk/data/claude/skills/my-skill"。注意资料说明所有 bundled 技能都需要 force-include,列表应与 bundled_skills() 条目一致。
  1. 测试校验:tests/unit/artifacts/test_codex_compatibility.py 与 tests/unit/core/capabilities/test_skills.py 中的多项测试会捕获缺失注册,如 frontmatter 缺失、可移植或打包分类遗漏、force-include 缺失、能力未注册等。若添加技能后 make fast-ci 失败,可优先检查这些测试。

常见错误:漏掉可移植性分类、漏掉打包分类、SKILL.md 的 name 与目录名不一致、缺少 force-include。

限制:资料未提供具体安装命令、支持的模型或平台要求、收费与价格等信息,暂未提供。