Claude Code 85个斜杠命令终极清单:/commit、/review命令系统实现全揭秘
【免费下载链接】claude-codeClaude Code is an agentic coding tool that lives in your terminal, understands your codebase, and helps you code faster by executing routine tasks, explaining complex code, and handling git workflows - all through natural language commands.项目地址: https://gitcode.com/gh_mirrors/claudecode5/claude-code
Claude Code 是一款运行在终端里的 AI 编程代理工具,它内置了 85 个斜杠命令(slash commands),从 /commit 一键提交 Git,到 /review 自动审查 Pull Request,再到 /compact 压缩上下文——本文带你一次摸清 Claude Code 斜杠命令的完整清单,并深入源码揭秘 /commit 与 /review 的实现原理。
🧭 什么是 Claude Code 斜杠命令?
在 Claude Code 的交互界面(REPL)中,只要输入/开头的内容,就会触发一个斜杠命令。它和你直接输入自然语言的区别在于:
- 命令是确定性的:
/cost就是查费用,不会"理解偏差"; - 命令自带权限约束:如
/commit只允许模型执行git add/status/commit三类 Bash 命令,越权操作会被系统拦截; - 命令可被模型自主调用:部分命令对模型可见,AI 在对话中可以直接"替你"触发。
所有命令统一注册在 src/commands.ts,类型定义在 src/types/command.ts。官方完整目录见 docs/commands.md。
三种命令类型:一张表看懂
| 类型 | 工作方式 | 典型例子 | 适合场景 |
|---|---|---|---|
| PromptCommand | 把格式化提示词注入 LLM,并可限定可用工具 | /commit、/review | 需要 AI 推理的任务 |
| LocalCommand | 进程内直接执行,返回纯文本 | /cost、/version | 快速查询,不耗 token |
| LocalJSXCommand | 进程内执行,渲染 React/Ink 交互界面 | /doctor、/install | 需要菜单、弹窗的交互 |
💡 一个冷知识:
/commit和/review都是 PromptCommand,它们的"智能"来自提示词工程 + 工具白名单,而不是复杂的代码逻辑。
📋 85 个斜杠命令分类速查表
以下清单按功能分组,完整来源见 docs/commands.md。
🚀 Git 与版本控制(日常最高频)
| 命令 | 功能 | 源码位置 |
|---|---|---|
/commit | AI 分析改动并生成规范的 Git 提交 | src/commands/commit.ts |
/commit-push-pr | 一步完成:提交 + 推送 + 创建 PR | src/commands/commit-push-pr.ts |
/branch | 创建或切换 Git 分支 | src/commands/branch/ |
/diff | 查看已暂存/未暂存/相对某引用的变更 | src/commands/diff/ |
/pr_comments | 查看并处理 PR 评审意见 | src/commands/pr_comments/ |
/rewind | 回退到之前的状态 | src/commands/rewind/ |
🔍 代码质量与安全
| 命令 | 功能 | 源码位置 |
|---|---|---|
/review | AI 代码审查(本地,看 PR diff) | src/commands/review.ts |
/ultrareview | 云端深度审查,自动发现并验证 bug | src/commands/review/ |
/security-review | 安全专项代码审查 | src/commands/security-review.ts |
/bughunter | 在代码库中排查潜在 bug | src/commands/bughunter/ |
/advisor | 获取架构或设计建议 | src/commands/advisor.ts |
💬 会话与上下文管理
| 命令 | 功能 | 说明 |
|---|---|---|
/compact | 压缩对话上下文 | 长会话变卡时的救星 |
/context | 可视化当前上下文占用 | 文件、记忆各占多少 |
/resume | 恢复历史会话 | 见 src/commands/resume/ |
/session | 管理会话(列表/切换/删除) | |
/export | 导出对话到文件 | 方便分享复盘 |
/clear | 清空当前对话 | 秒懂 |
⚙️ 配置与个性化
| 命令 | 功能 |
|---|---|
/config | 查看/修改全局设置 |
/permissions | 管理工具权限规则 |
/theme | 切换终端配色主题 |
/model | 切换使用的模型 |
/effort | 调整回答的"思考力度" |
/vim | 开启 Vim 输入模式 |
/keybindings | 自定义快捷键 |
/fast | 开关"快速模式"(更短的回复) |
🧩 MCP、插件与技能
| 命令 | 功能 | 源码位置 |
|---|---|---|
/mcp | 管理 MCP 服务器连接 | src/commands/mcp/ |
/plugin | 安装/卸载/管理插件 | src/commands/plugin/ |
/reload-plugins | 重载全部插件 | src/commands/reload-plugins/ |
/skills | 查看和管理技能 | src/commands/skills/ |
🩺 诊断与状态
/doctor(环境体检)、/status(系统状态)、/stats(会话统计)、/cost(Token 与费用)、/version(版本信息)、/usage与/extra-usage(用量明细)、/rate-limit-options(限流配置)。
🔧 安装、IDE 集成与其他
- 安装配置:
/init(生成 CLAUDE.md)、/onboarding(首次向导)、/terminalSetup、/upgrade - IDE/多端集成:
/ide、/desktop、/mobile、/teleport(跨设备迁移会话)、/bridge - 实用杂项:
/help、/copy、/rename(重命名会话)、/tag(给会话打标签)、/feedback、/exit - 彩蛋命令:
/stickers(贴纸)、/good-claude(夸夸 Claude)😄
📌 完整 85+ 条(含内部调试命令如
/heapdump、/break-cache)的权威目录,请查阅 docs/commands.md。
🛠️ 深度揭秘:/commit 是如何工作的?
/commit是 PromptCommand 的教科书级实现,源码仅 93 行:src/commands/commit.ts。它的精髓分三层:
1️⃣ 动态上下文注入(!语法)
提示词里写着!\git status`、!`git diff HEAD`` 这样的占位符。执行前,Claude Code 会先真实运行这些 git 命令,把输出填入提示词——模型看到的永远是"当下最新的仓库状态",而不是编造的内容。这个机制实现在 src/utils/promptShellExecution.ts。
2️⃣ 工具白名单锁死权限
命令声明了allowedTools:只允许Bash(git add:*)、Bash(git status:*)、Bash(git commit:*)三条规则(见 src/commands/commit.ts#L6-L10)。
这意味着执行期间模型物理上不可能运行git push --force、rm -rf之类的命令——权限在命令层就被焊死了,比在提示词里写"请不要乱来"可靠得多。
3️⃣ Git 安全协议写入提示词
提示词里硬性要求:永不修改 git 配置、默认不使用--amend、不提交.env等疑似密钥文件、没有改动就不创建空提交(见 src/commands/commit.ts#L27-L34)。
💡新手 takeaway:自己写 PromptCommand 时,记住这个"三明治"结构——动态事实 + 权限白名单 + 行为约束,就能造出既聪明又安全的命令。
🔎 深度揭秘:/review 的双层设计
/review的定义在 src/commands/review.ts,比/commit更简洁:它的提示词教模型走一套固定流程——
- 若没给 PR 号,先
gh pr list列出开放中的 PR; - 给了 PR 号则
gh pr view拉详情; gh pr diff取变更;- 围绕正确性、项目惯例、性能、测试覆盖、安全五个维度输出结构化评审。
更有趣的是同文件里的"隐藏彩蛋" src/commands/review.ts#L48-L54:/ultrareview是一个 LocalJSXCommand,它把审查任务交给云端执行(约 10–20 分钟,能发现并验证分支中的 bug)。同一文件导出两个命令、两种执行路径,展示了命令系统"一个入口、多重形态"的灵活性。
⚙️ 命令系统架构:从输入到执行的四步流水线
整条链路在 docs/architecture.md 中有完整描述,核心路径如下:
| 步骤 | 负责模块 | 职责 |
|---|---|---|
| ① 解析输入 | src/utils/processUserInput/processSlashCommand.tsx | 识别/xxx前缀、拆出命令名与参数 |
| ② 查找命令 | src/commands.ts 的findCommand | 在内置 + MCP + 插件命令中按名字匹配 |
| ③ 分派执行 | 按类型走 prompt / local / local-jsx 三条路径 | PromptCommand 还会处理"fork 到子代理"等高级模式 |
| ④ 结果回流 | 渲染到 Ink 终端 UI 或发回 Query Engine | 继续对话循环 |
两个值得新手学习的工程细节:
- 懒加载:LocalJSXCommand 通过
load()延迟导入实现(见 src/types/command.ts#L144-L152),只有真正敲下命令时才加载代码,85 个命令不拖累启动速度; - 多源合并去重:MCP 服务器和插件也能贡献斜杠命令,src/hooks/useMergedCommands.ts 负责把内置命令与外部命令按名字去重合并——这就是为什么你的
/mcp列表里可能比官方清单多出几条。
🧪 新手实战:3 个最值得先上手的命令组合
| 场景 | 命令组合 | 效果 |
|---|---|---|
| 日常提交 | /commit→/commit-push-pr | 从"生成规范 commit message"到"直接开 PR"一条龙 |
| 代码评审 | /review <PR号>→/pr_comments | 先机器评审,再逐条处理意见 |
| 长会话维护 | /context→/compact | 先看上下文占用,再精准压缩 |
配合/doctor体检环境、/cost盯住费用,日常开发基本可以不离开终端。
❓ 常见问题 FAQ
Q1:为什么我输入/后看到的命令比 85 个多?外部扩展(MCP 服务器、插件、技能)会向命令池注入新命令,合并逻辑见 src/hooks/useMergedCommands.ts。
Q2:为什么某些命令我这里看不到?命令可声明isEnabled()与availability条件(特性开关、登录方式),不满足时自动隐藏,定义见 src/types/command.ts#L175-L200。
Q3:/commit 能替我执行 git push 吗?不能——它的工具白名单只有git add/status/commit三条规则。需要推送请接着用/commit-push-pr。
Q4:可以自定义自己的斜杠命令吗?可以。通过插件或技能(Skill)机制,把自己的提示词打包成命令,注册流程同样走 src/commands.ts。
📚 延伸阅读
- 完整命令目录:docs/commands.md
- 整体架构:docs/architecture.md
- 工具系统(与斜杠命令不同的"Agent 工具"):docs/tools.md
- 探索指南(如何找到任意命令源码):docs/exploration-guide.md
掌握这 85 个斜杠命令,你就握住了 Claude Code 的"遥控器"——把重复劳动交给命令,把创造力留给自己。🚀
【免费下载链接】claude-codeClaude Code is an agentic coding tool that lives in your terminal, understands your codebase, and helps you code faster by executing routine tasks, explaining complex code, and handling git workflows - all through natural language commands.项目地址: https://gitcode.com/gh_mirrors/claudecode5/claude-code
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考