自定义斜杠命令
一个自定义斜杠命令把你反复输入的提示打包成一个 /word。定义一次,永久复用(还能分享给你的团队)。
- 解释什么是自定义斜杠命令,以及为什么它胜过反复输入提示
- 把一个 Markdown 文件放进正确的目录来创建一个命令
- 根据位置区分项目命令和个人命令
- 使用各种构建块:$ARGUMENTS、嵌入的 bash 输出、文件引用和前置元数据
- 为给定任务在斜杠命令、技能和子智能体之间做出选择
它们如何工作
一个命令就是一个 Markdown 文件。把它放进你的命令目录,它的文件名就成了命令。文件的正文就是你调用它时 Claude 运行的提示。
文件的位置决定了它的作用范围:
Guided walkthrough1 of 3
- 把它保存为 .claude/commands/changelog.md → /changelog。它存在于仓库里,所以整个团队都能用上。
- 把它保存为 ~/.claude/commands/changelog.md → /changelog。它会跟随你出现在本机的每一个项目里。
- 在 Claude Code 中输入这个 /word。文件的正文就成了 Claude 运行的提示。
- 决定命令名称的是文件名,而不是前置元数据。changelog.md 永远是 /changelog。
一个最小示例
下面是一个完整的命令文件。前置元数据里放着 description;它下面的所有内容就是提示。
commit.md —— 起草一条 Conventional Commit
--- description: Draft a Conventional Commit message from the staged diff --- Look at the staged changes with `git diff --cached` and write a single Conventional Commit message (feat/fix/docs/refactor/chore). Output only the message, no preamble.
把它保存为 commit.md,那么 /commit 每次都会做这件事。(文件叫什么就给它取什么名字——同样的正文保存为 changelog.md 就会是 /changelog。)
实用的构建块
四种要素把一个静态提示变成一个灵活的命令:
| 构建块 | 它的作用 |
|---|---|
$ARGUMENTS | 注入用户在命令之后输入的内容。/review src/auth.ts → 该路径会落入你的提示。 |
| 运行 bash 并嵌入输出 | 命令可以包含 shell 输出(例如当前的 diff),让 Claude 基于实时状态来行动。 |
| 引用文件 | 指向某些文件以包含它们的内容。 |
| 前置元数据 | description(显示在菜单中)以及其他选项。 |
参数、bash 和文件引用的确切语法见官方文档。
值得"偷"来的命令
我们的斜杠命令库里有一套起始命令:提交信息、PR 描述、代码审查、变更日志、脚手架式生成组件。
命令 vs 技能 vs 子智能体
打包工作有三种方式——区别在于由谁触发以及运行时有多隔离:
1 / 6