Claude Code Slash commands
Slash commands 用于控制运行中的 Claude Code 会话。它们适合在初始化、计划、上下文检查、审查、并行执行和恢复阶段提供明确的流程切换。
- 最近核验
- 适用版本
- Claude Code 2.1.x。本机使用 2.1.198 核对 CLI 拼写;官方文档可能描述更新的 2.1.x 行为。
- 核验方式
- 核对当前 Commands 和 Skills 页面。原 slash-commands URL 因 custom commands 已并入 skills 而跳转到 Skills;本次未执行交互调用。
可复现实践
迁移为 Skill 前审计项目 Command
在一次性仓库中证明既有 command 的名称、scope、输入和工具边界,同时保留原实现。
准备
- POSIX shell 和一次性目录。
- Fixture 不含生产命令或秘密。
- 可选使用 Claude Code 查看 `/help`。
执行步骤
创建隔离 legacy command
使用唯一临时仓库,不修改真实项目 command。
步骤 1 COMMAND_LAB=$(mktemp -d "${TMPDIR:-/tmp}/claude-command.XXXXXX") printf '%s\n' "$COMMAND_LAB" cd "$COMMAND_LAB" && git init -q mkdir -p .claude/commands printf '%s\n' 'Summarize git status and do not edit files.' > .claude/commands/status-check.md并行创建 skill 形式
使用明确 frontmatter 和新名称,避免模糊冲突。
步骤 2 mkdir -p .claude/skills/status-audit printf '%s\n' '---' 'description: Report repository status without editing files.' 'disable-model-invocation: true' 'allowed-tools: Bash(git status --short)' '---' '' 'Run git status --short and summarize the result.' > .claude/skills/status-audit/SKILL.md检查 discovery
用 project settings 启动并查看 `/help`;本次审查只依据文档说明 UI 行为。
验证一致后再停用
在一次性仓库调用 `/status-audit`,确认没有编辑;只有行为一致后才删除 legacy fixture。
预期结果
对比期间 legacy command 仍可用,新 skill 名称独立、调用控制明确、工具权限收窄。
验证
- 目视解析 frontmatter,确认由目录得出的 command name。
- 可选调用前后运行 `git status --short`。
- 用 `/help` 区分 built-in commands、bundled skills 和 project skills。
失败处理
Skill 未出现
检查 `SKILL.md` 文件名、scope、description 和 workspace trust。
名称冲突
删除 legacy command 前先重命名 skill,不依赖未记录的 precedence。
清理或回退
- 返回原目录,只删除打印出的 COMMAND_LAB 路径。
- 新 skill 未通过同一验收前保留原 command。
边界与不适用场景
- Custom commands 仍兼容,但新的可复用流程应优先使用 skills。
- Skills 是 prompt content,不是硬安全边界;tools 仍由 permissions 和 hooks 控制。
初始化命令
任务控制命令
实现过程中,计划、模型选择、推理强度、上下文检查和压缩类命令能让长会话保持可读,并减少无目标扩散。
审查命令
发布前,diff 和 code review 类命令可帮助检查改动。它们不能替代测试,但能更容易发现逻辑问题、清理机会和安全敏感改动。
恢复命令
当会话偏离目标、改动过大或上下文过载时,rewind、clear、resume 和分支式流程能帮助恢复控制,而不是丢弃所有前置工作。
高价值 Slash commands
这些命令贯穿典型工作流:开始时做初始化,实现过程中做计划,发布前做审查,出问题时做恢复。
并行与后台工作
Slash commands 也用于控制 Subagents、后台会话,以及跨代码库的大规模并行改动。