Claude Code Commands 实战:从零搭建你的 AI 编码快捷指令体系
你有没有这种感觉:每次让 Claude Code 干活,都要重复写一大段提示词,说"请审查代码,关注类型安全、性能......",说多了自己都烦。
Commands 就是解决这个问题的------把常用的提示词模板存成文件,取个名字,以后
/名字就能一键执行。
先搞懂一件事:Command 到底是什么?
打个比方:你手机上有没有设置"快捷指令"?比如对 Siri 说"打开工作模式",它自动帮你静音+打开钉钉+关闭抖音。
Claude Code 的 Slash 命令就是同一个概念------你预先定义一段提示词模板,取个名字,以后输入 /名字 就自动展开执行。
技术上说就三点:
| 要素 | 说明 |
|---|---|
| 文件位置 | 项目级 .claude/commands/,全局个人级 ~/.claude/commands/ |
| 文件格式 | Markdown 文件,文件名 = 命令名 |
| 参数传递 | 文件内用 $ARGUMENTS 接收命令后面的所有文字 |
工作原理一句话讲清:
bash
你创建:.claude/commands/review.md
内容: "审查以下文件,关注类型安全和性能... $ARGUMENTS"
你输入:/review @src/components/ArticleCard.tsx
Claude 实际收到:
"审查以下文件,关注类型安全和性能... @src/components/ArticleCard.tsx"
↑ $ARGUMENTS 被替换
就这么简单。下面我们一步步来,从最简单的命令讲到完整的研发流水线。
四种定义模式,从简单到复杂
模式一:纯提示词------最简结构
一个 .md 文件 = 一个命令,文件名即命令名,内容即提示词模板。
bash
.claude/commands/hello.md
markdown
请用友好的语气跟用户打招呼,称呼他们为 $ARGUMENTS
调用:/hello 小明
Claude 收到:"请用友好的语气跟用户打招呼,称呼他们为 小明"
适用场景: 简单指令,一句话搞定。
模式二:带元信息------让 / 菜单更好用
文件开头用 frontmatter 声明 name 和 description,这样在交互模式输入 / 时,会展示可选项和说明:
markdown
---
name: review
description: 代码审查 - 检查代码质量、规范和潜在风险
---
审查以下代码,关注类型安全、性能和最佳实践...
$ARGUMENTS
适用场景: 命令多了之后,需要让别人(或未来的自己)知道每个命令干什么。
模式三:引用 Skill------复用已有模板
用 include 引入 .claude/skills/ 下的复用模板,多个命令可以共享同一段逻辑:
markdown
---
name: module-doc
description: 生成模块功能介绍文档
---
# 生成模块文档
请为以下模块生成功能介绍文档:$ARGUMENTS
include: ../skills/frontend-module-doc.md
适用场景: 多个命令共享同一段复杂逻辑,避免重复维护。
模式四:强制分发 Agent------让专业的人干专业的事
这是最复杂的模式,也是最强大的。核心思路:主 Claude 不直接干活,而是把任务分发给专业 Agent。
通过"强制执行协议"确保主 Claude 第一时间调用 Agent,不自行处理:
markdown
---
name: dev
description: 前端开发 - 页面/组件开发、代码修改、Bug 修复
---
# /dev 强制执行协议
## 立即执行:调用前端开发 Agent
- subagent_type: frontend-developer
- prompt: "用户开发需求:$ARGUMENTS,请严格按工作流程执行。"
## 绝对禁止
- 主 Claude 自行编写或修改代码
- 跳过 Agent 直接输出
- 先解释再调用
适用场景: 专业任务,主 Claude 不应该自己干,必须交给专门的 Agent。
四种模式速查
| 模式 | 适用场景 | 复杂度 |
|---|---|---|
| 纯提示词 | 一句话指令 | ⭐ |
| 带元信息 | 需要在 / 菜单展示说明 |
⭐⭐ |
| 引用 Skill | 多命令共享逻辑 | ⭐⭐⭐ |
| 强制分发 Agent | 专业任务,主 Claude 不能自己干 | ⭐⭐⭐⭐ |
实战:用 AI 生成 Command,循环打磨到最终版
说了这么多模式,你可能觉得"写 Command 好复杂"------其实不用从零手写。最实用的方式是让 AI 先生成初版,再通过人机对话循环优化。
整体流程
描述需求 → AI 生成初版 → 审阅反馈 → AI 修改 → 审阅反馈 → ... → 满意 → 保存
第一步:向 AI 描述你要什么命令
说清楚三件事:名字、用途、行为。
markdown
帮我创建一个 Claude Code 的 slash 命令:
- 命令名:review
- 用途:代码审查,检查代码质量和规范
- 行为:接收文件路径作为参数,按以下维度审查:
1. 代码可读性
2. 类型安全
3. 性能风险
4. 最佳实践合规
- 输出:审查报告 + 评分 + 改进建议
- 约束:只读不改代码
第二步:AI 生成初版
AI 会根据你的描述生成 .md 文件内容:
markdown
---
name: review
description: 代码审查 - 检查代码质量、规范和潜在风险
---
# /review 代码审查
## 任务
审查以下代码,关注代码质量、类型安全、性能风险和最佳实践。
## 审查目标
$ARGUMENTS
## 审查维度
1. **可读性**:命名、注释、代码组织
2. **类型安全**:类型定义完整性、any 使用、类型断言合理性
3. **性能风险**:重复渲染、内存泄漏、不必要的计算
4. **最佳实践**:框架规范、设计模式、错误处理
## 输出格式
### 审查报告
- 文件:{文件名}
- 总分:{0-100}
| 维度 | 得分 | 说明 |
|------|------|------|
| 可读性 | | |
| 类型安全 | | |
| 性能风险 | | |
| 最佳实践 | | |
### 问题列表
| 严重程度 | 位置 | 问题描述 | 修复建议 |
|---------|------|---------|---------|
## 约束
- 只读审查,不修改代码
- 发现问题只给建议,不自动修复
第三步:审阅初版,给出反馈
你看了初版,觉得哪里不对或不够:
markdown
几个问题:
1. 我的项目是金融场景,审查维度需要加上"安全审计"
2. 评分标准太模糊,90/70 以下各代表什么要写清楚
3. 参数支持多种输入方式:文件路径、目录、分支差异,当前只支持一种
4. 输出格式里加上"修复优先级"排序
第四步:AI 根据反馈修改
AI 调整初版,补上安全审计维度、细化评分标准、扩展参数支持。
循环打磨
每轮你审阅 → 反馈 → AI 修改,直到满意:
| 轮次 | 重点看什么 |
|---|---|
| 初版 | 整体结构对不对、维度全不全、约束够不够 |
| 二轮 | 边界情况、参数灵活性、输出格式实用性 |
| 三轮 | 用词精确度、是否有冗余、跟项目实际的贴合度 |
| 终版 | 实际跑一次,看效果是否符合预期 |
保存到项目
满意后让 AI 写入文件:
bash
把这个命令保存到 .claude/commands/review.md
从零到一:完整案例演示
下面是一个 /review 命令从需求到最终版的完整过程。
第一轮:提需求
diff
帮我创建一个 slash 命令:
- 命令名:review
- 用途:代码审查
- 审查维度:可读性、类型安全、性能、安全
- 约束:只读不改
- 输出:评分 + 问题列表 + 建议
AI 生成初版 → 你反馈
markdown
1. 安全维度要拆细:XSS、敏感信息泄露、硬编码密钥
2. 评分要分段说明含义
3. 支持多种输入:文件路径、目录、git diff
AI 修改 → 你再审
markdown
1. 加上"审查后建议执行哪个命令修复"的指引
2. 问题列表按严重程度排序
AI 再改 → 满意,保存
最终文件 .claude/commands/review.md:
markdown
---
name: review
description: 代码审查 - 质量检查、安全扫描、性能风险评估
---
# /review 代码审查
## 审查目标
$ARGUMENTS
## 支持的输入方式
- 文件路径:/review src/pages/Home/index.tsx
- 目录:/review src/pages/Home
- Git 分支差异:/review main...feature/home
## 审查维度
### 1. 可读性(20分)
命名规范、注释完整性、代码组织清晰度
### 2. 类型安全(25分)
类型定义完整性、any 使用合理性、类型断言必要性
### 3. 性能风险(25分)
重复渲染、内存泄漏、不必要的计算和请求
### 4. 安全审计(30分)
XSS 风险、敏感信息泄露、硬编码密钥、输入校验不足
## 评分标准
| 范围 | 结论 | 行动 |
|------|------|------|
| 90-100 | 通过 | 可提交或合并 |
| 70-89 | 有条件通过 | 建议修复警告级问题后提交 |
| <70 | 未通过 | 必须修复阻断级问题后重新审查 |
## 输出格式
### 审查摘要
- 审查范围:{输入描述}
- 总分:{0-100}
- 结论:{通过/有条件通过/未通过}
### 问题列表(按严重程度排序)
| 严重程度 | 位置 | 问题描述 | 修复建议 | 修复命令 |
|---------|------|---------|---------|---------|
| 阻断 | file:line | ... | ... | /dev 修复建议 |
### 下一步建议
- 修复问题后重新 /review
- 安全相关问题建议 /audit
- 性能相关问题建议 /performance
## 约束
- 只读审查,不修改代码
- 发现问题只给建议,不自动修复
三轮对话,从模糊需求到可用的最终版。
从单个命令到研发流水线
单个命令解决一个问题,一组命令串联起来就是研发流水线。
流水线全貌
bash
/search → /dev → /review → /audit → /performance → /module-doc 或 /project-overview → /commit
搜索理解 开发修改 代码审查 安全审计 性能检查 文档沉淀 提交信息
命令总览
| 命令 | 用途 | 底层能力 | 改不改代码 |
|---|---|---|---|
/dev |
写代码、修 Bug | frontend-developer Agent | ✅ 改 |
/search |
搜代码位置、调用关系 | searcher Agent | ❌ 只读 |
/review |
代码规范审查 | frontend-code-reviewer Agent | ❌ 只读 |
/audit |
安全审计 | frontend-security-auditor Agent | ❌ 只读 |
/performance |
性能分析与建议 | frontend-performance-expert Agent | ❌ 只读 |
/commit |
生成 Git 提交信息 | commit Skill | ❌ 只读 |
/module-doc |
生成模块文档 | frontend-module-doc Skill | 生成文档 |
/project-overview |
生成项目总览 | 文档生成流程 | 生成文档 |
设计哲学: 主 Claude 是调度中心,只分发不干活;专业 Agent 各司其职,只读的不改代码,改代码的只做开发。
三条常用工作流
新功能开发:
bash
/search 搜类似实现 → /dev 写代码 → /review 审查 → /performance 检查性能 → /commit 提交
涉及交易、支付、用户隐私时,加一步 /audit:
bash
/search → /dev → /review → /audit → /performance → /commit
Bug 修复:
bash
/search 定位问题 → /dev 修复 → /review 审查 → /commit 提交
安全或交易相关 Bug,修复后加 /audit:
bash
/search → /dev → /review → /audit → /commit
文档沉淀:
bash
/project-overview # 项目整体说明
/module-doc src/pages/Home # 单个模块说明
指令选择速查
| 你的目标 | 用哪个 |
|---|---|
| 写代码 | /dev |
| 修 Bug | /dev |
| 找代码在哪 | /search |
| 查接口调用位置 | /search |
| 检查代码规范 | /review |
| 检查安全问题 | /audit |
| 分析页面性能 | /performance |
| 生成提交信息 | /commit |
| 生成模块文档 | /module-doc |
| 生成项目总览 | /project-overview |
关键原则
- 开发类任务优先
/dev - 搜索类任务优先
/search - 提交前建议
/review - 关键业务建议
/audit - 上线前建议
/performance - 审查/安全/性能 Agent 只读不改 ,发现问题后用
/dev修复 - 修复后重新执行对应检查指令
- 提交信息统一用
/commit,保持风格一致
写在最后
Commands 的核心价值不是"快捷"------而是把最佳实践固化成流程。
一个人写代码,/dev 就够了。但团队协作时,代码审查、安全审计、性能检查这些环节很容易被跳过。把它们变成命令,变成流水线上的一环,就不是"记得就做,忘了就算"了。
最后总结一下本文的核心要点:
- Command 本质 :提示词模板 + 文件名即命令名 +
$ARGUMENTS传参 - 四种定义模式:纯提示词 → 带元信息 → 引用 Skill → 强制分发 Agent,按需选用
- 最实用的创建方式:让 AI 生成初版,人机循环打磨,满意后保存
- 从单个命令到流水线:一组命令串联 = 标准化研发流程
如果你已经在用 Claude Code,现在就可以试试:想一个你经常重复说的指令,花 5 分钟定义成 Command,之后的每一次调用都是赚的。