name: command-creator description: 此技能应在创建 Claude Code 斜杠命令时使用。当用户要求“创建命令”、“制作斜杠命令”、“添加命令”或将工作流程记录为可重用命令时使用。对于创建具有适当结构和最佳实践的优化、代理可执行斜杠命令至关重要。
命令创建器
此技能指导创建 Claude Code 斜杠命令 - 可在 Claude Code 对话中通过 /command-name 调用的可重用工作流程。
关于斜杠命令
斜杠命令是存储在 .claude/commands/(项目级别)或 ~/.claude/commands/(全局/用户级别)的 Markdown 文件,在调用时会扩展为提示。它们适用于:
- 重复性工作流程(代码审查、PR 提交、CI 修复)
- 需要一致性的多步骤流程
- 代理委派模式
- 项目特定自动化
何时使用此技能
当用户时调用此技能:
- 要求“创建命令”或“制作斜杠命令”
- 想要自动化重复性工作流程
- 需要记录一致流程以供重用
- 说“我一直在做 X,我们可以为它创建一个命令吗?”
- 想要创建项目特定或全局命令
捆绑资源
此技能包含参考文档以提供详细指导:
- references/patterns.md - 命令模式(工作流程自动化、迭代修复、代理委派、简单执行)
- references/examples.md - 真实命令示例与完整源代码(submit-stack、ensure-ci、create-implementation-plan)
- references/best-practices.md - 质量检查清单、常见陷阱、写作指南、模板结构
在创建命令时根据需要加载这些参考以理解模式、查看示例或确保质量。
命令结构概述
每个斜杠命令都是一个 Markdown 文件,包含:
---
description: 在 /help 中显示的简要描述(必需)
argument-hint: <placeholder> (可选,如果命令接受参数)
---
# 命令标题
[代理自主执行的详细指令]
命令创建工作流程
步骤 1:确定位置
自动检测适当位置:
- 检查 git 仓库状态:
git rev-parse --is-inside-work-tree 2>/dev/null - 默认位置:
- 如果在 git 仓库中 → 项目级别:
.claude/commands/ - 如果不在 git 仓库中 → 全局:
~/.claude/commands/
- 如果在 git 仓库中 → 项目级别:
- 允许用户覆盖:
- 如果用户明确提及“全局”或“用户级别” → 使用
~/.claude/commands/ - 如果用户明确提及“项目”或“项目级别” → 使用
.claude/commands/
- 如果用户明确提及“全局”或“用户级别” → 使用
在继续之前向用户报告所选位置。
步骤 2:显示命令模式
帮助用户理解不同的命令类型。加载 references/patterns.md 以查看可用模式:
- 工作流程自动化 - 分析 → 行动 → 报告(例如,submit-stack)
- 迭代修复 - 运行 → 解析 → 修复 → 重复(例如,ensure-ci)
- 代理委派 - 上下文 → 委派 → 迭代(例如,create-implementation-plan)
- 简单执行 - 使用参数运行命令(例如,codex-review)
询问用户:“哪种模式最接近您想要创建的内容?”这有助于构建对话。
步骤 3:收集命令信息
向用户询问关键信息:
A. 命令名称和目的
询问:
- “命令应该叫什么?”(用于文件名)
- “这个命令做什么?”(用于描述字段)
指南:
- 命令名称必须为 kebab-case(连字符,非下划线)
- ✅ 正确:
submit-stack、ensure-ci、create-from-plan - ❌ 错误:
submit_stack、ensure_ci、create_from_plan
- ✅ 正确:
- 文件名匹配命令名称:
my-command.md→ 以/my-command调用 - 描述应简洁、面向行动(出现在
/help输出中)
B. 参数
询问:
- “这个命令接受任何参数吗?”
- “参数是必需还是可选的?”
- “参数应该代表什么?”
如果命令接受参数:
- 在 frontmatter 中添加
argument-hint: <placeholder> - 使用
<angle-brackets>表示必需参数 - 使用
[square-brackets]表示可选参数
C. 工作流程步骤
询问:
- “这个命令应该遵循的具体步骤是什么?”
- “它们应该按什么顺序发生?”
- “应该使用什么工具或命令?”
收集有关以下内容的详细信息:
- 要执行的初始分析或检查
- 要采取的主要行动
- 如何处理结果
- 成功标准
- 错误处理方法
D. 工具限制和指导
询问:
- “这个命令应该使用任何特定的代理或工具吗?”
- “有哪些工具或操作应该避免?”
- “应该读取任何特定文件以获取上下文吗?”
步骤 4:生成优化命令
创建带有代理优化指令的命令文件。加载 references/best-practices.md 以获取:
- 模板结构
- 代理执行的最佳实践
- 写作风格指南
- 质量检查清单
关键原则:
- 使用命令式/不定式形式(动词优先指令)
- 明确具体
- 包含预期结果
- 提供具体示例
- 定义清晰的错误处理
步骤 5:创建命令文件
-
确定完整文件路径:
- 项目:
.claude/commands/[command-name].md - 全局:
~/.claude/commands/[command-name].md
- 项目:
-
确保目录存在:
mkdir -p [目录路径] -
使用 Write 工具写入命令文件
-
向用户确认:
- 报告文件位置
- 总结命令的作用
- 解释如何使用它:
/command-name [arguments]
步骤 6:测试和迭代(可选)
如果用户想要测试:
- 建议测试:
您可以通过运行测试此命令:/command-name [arguments] - 准备根据反馈进行迭代
- 根据需要更新文件以改进
快速提示
有关详细指导,请加载捆绑的参考:
- 在设计命令工作流程时加载 references/patterns.md
- 加载 references/examples.md 以查看现有命令的结构
- 在最终确定前加载 references/best-practices.md 以确保质量
要记住的常见模式:
- 对
pytest、pyright、ruff、prettier、make、gt命令使用 Bash 工具 - 使用 Task 工具调用子代理以执行专门任务
- 在继续之前首先检查特定文件(例如,
.PLAN.md) - 立即标记待办事项完成,而不是批量标记
- 包含明确的错误处理指令
- 定义清晰的成功标准
总结
创建命令时:
- 检测位置(项目 vs 全局)
- 显示模式 以构建对话
- 收集信息(名称、目的、参数、步骤、工具)
- 生成优化命令 带有代理可执行指令
- 创建文件 在适当位置
- 确认和迭代 根据需要
专注于创建代理可以自主执行的命令,具有清晰的步骤、明确的工具使用和适当的错误处理。