跳转到内容

Skills 技能系统

Skill(技能)是预设的指令模板,可以引导 Carry Code 按照特定的方式工作。


Skill 就像是一个「角色设定」或「工作模板」。加载某个技能后,AI 会按照该技能的指令来帮助你:

  • 🎯 指定工作方式 — 让 AI 用特定的方式解决问题
  • 📝 规范输出格式 — 让 AI 按你想要的格式输出
  • 🛠️ 增强特定能力 — 为 AI 补充特定领域的知识

/skill

这会显示所有可用的技能列表。


/skill carry-writing-research

当添加了新技能文件后,需要重新加载:

/skill reload

Carry Code 系列提供了一系列专门的内置技能,用于引导你通过各种开发流程。

技能名称描述
carry-using-super-skills查找并使用可用技能 — 在开启任务前运行
carry-brain-storming构思与设计 — 探索需求并提出实施方案
carry-writing-plans编写详细的实施计划,包含细化的任务颗粒
carry-executing-plans分批次执行计划,设有评审检查点
carry-using-git-worktrees创建隔离的工作区以进行并行开发
carry-finishing-a-dev-branch完成工作并选择集成方式(合并、PR 等)
技能名称描述
carry-test-driven-devTDD(测试驱动开发):先写测试,再写通过测试的代码
carry-systematic-debugging修复前的系统化调试:进行根因分析与假设验证
carry-requesting-code-review请求结构化的代码评审并提供必要的上下文
carry-receiving-code-review严谨地评估并核对代码评审反馈
carry-verify-before-completion在宣布任务完成前运行校验命令进行确认
carry-creating-git-commit按照 Conventional Commits 规范生成提交消息
技能名称描述
carry-mermaid生成 Mermaid 图表(流程图、时序图、ER 图等)
carry-writing-research研究辅助、引文收集、大纲协作及内容反馈
carry-writing-skills创建带有完善测试和文档的新技能
youtube-transcript将 YouTube 视频字幕提取为 Markdown 格式

以下是使用这些技能进行开发的典型流程:

  1. Idea(构思)carry-brain-storming → 设计方案获批
  2. Design(设计)carry-writing-plans → 保存任务实施计划
  3. Plan(计划)carry-using-git-worktrees → 创建隔离的工作区
  4. Execution(执行)carry-executing-plans → 按批次实现功能
    • 每个任务参与:carry-test-driven-dev (TDD 循环)
    • 每批次完成后:carry-requesting-code-review
  5. Complete(完成)carry-finishing-a-dev-branch → 合并/PR 并清理分支
  6. Closing(收尾)carry-verify-before-completion → 运行最终验证并提供证据


技能文件存放在以下位置:

级别位置
用户级~/.carry/skills/<技能名>/SKILL.md
项目级<项目目录>/.carry/skills/<技能名>/SKILL.md

创建一个简单的技能文件:

---
name: my-custom-skill
description: 我的自定义技能
---
# My Custom Skill
## 角色设定
你是一个专业的 Python 开发者。
## 工作方式
1. 首先理解用户的需求
2. 提供清晰的建议
3. 给出具体的代码示例
## 输出规范
- 代码必须遵循 PEP 8 规范
- 必须包含类型注解
- 必须添加文档字符串
字段说明
name技能名称
description技能描述

加载代码审查技能:

/skill code-reviewer

然后让 AI 审查代码:

帮我审查一下这段代码:
[粘贴代码]

AI 会按照代码审查的标准来检查:

  • 代码规范
  • 潜在 Bug
  • 性能问题
  • 安全风险

加载测试生成技能:

/skill test-generator

然后让 AI 生成测试:

给这个函数生成单元测试:
[粘贴函数]

如果用户级和项目级有同名技能,项目级会覆盖用户级

这样你可以在不同项目中使用不同的技能配置。


当前会话加载的技能会显示在界面顶部。

/skill unload

或直接启动新会话。


当前一次只能加载一个技能。如果需要组合多个技能的功能,可以在自定义技能中合并。

只会影响当前会话。

SKILL.md 文件分享给其他人即可。