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;本次未执行交互调用。
官方来源
Commands referenceSkillsChangelog

可复现实践

迁移为 Skill 前审计项目 Command

在一次性仓库中证明既有 command 的名称、scope、输入和工具边界,同时保留原实现。

准备

  • POSIX shell 和一次性目录。
  • Fixture 不含生产命令或秘密。
  • 可选使用 Claude Code 查看 `/help`。

执行步骤

  1. 创建隔离 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
  2. 并行创建 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
  3. 检查 discovery

    用 project settings 启动并查看 `/help`;本次审查只依据文档说明 UI 行为。

  4. 验证一致后再停用

    在一次性仓库调用 `/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 控制。

初始化命令

仓库早期可使用初始化、记忆编辑、MCP 设置权限配置类命令,先建立操作规则,再让 Claude Code 修改代码。

任务控制命令

实现过程中,计划、模型选择、推理强度、上下文检查和压缩类命令能让长会话保持可读,并减少无目标扩散。

审查命令

发布前,diff 和 code review 类命令可帮助检查改动。它们不能替代测试,但能更容易发现逻辑问题、清理机会和安全敏感改动。

恢复命令

会话偏离目标、改动过大或上下文过载时,rewind、clear、resume 和分支式流程能帮助恢复控制,而不是丢弃所有前置工作。

高价值 Slash commands

这些命令贯穿典型工作流:开始时做初始化,实现过程中做计划,发布前做审查,出问题时做恢复。

CommandDescription
/init为仓库生成 starter CLAUDE.md
/memory编辑稳定的项目记忆和 instructions。
/plan在大改动前切换到 plan 模式
/context查看当前上下文窗口占用情况。
/compact压缩会话摘要以释放上下文空间。
/diff打开当前改动的交互式 diff 视图。
/code-review审查 diff 中的缺陷、清理项和安全问题。
/rewind把代码和会话回滚到检查点。
/doctor运行安装诊断,并在需要时应用修复。

并行与后台工作

Slash commands 也用于控制 Subagents、后台会话,以及跨代码库的大规模并行改动。

CommandDescription
/tasks列出当前会话中的后台任务和已完成 Subagents
/background分离会话,让它在后台继续运行。
/batch把大改动拆成基于 worktree 的并行单元。
/branch分叉会话,尝试不同方向。
/resume回到较早的会话或分支。

Slash command 检查

相关主题