Slash 命令是 Claude Code 交互模式中的快捷指令系统,提供了丰富的功能来控制会话、切换模型、压缩上下文、触发代码审查等。本文将全面解析所有内置 Slash 命令的参数、使用场景和最佳实践。

Claude Code Slash 命令全解 — /review、/compact、/model 等命令详解

简介

Slash 命令是 Claude Code 交互模式中的快捷指令系统,提供了丰富的功能来控制会话、切换模型、压缩上下文、触发代码审查等。本文将全面解析所有内置 Slash 命令的参数、使用场景和最佳实践。

在长时间的交互对话中,Slash 命令就像是你与 Claude Code 之间的"控制按钮"——无需输入冗长的文字描述,一个简短的命令就能完成复杂的状态切换。比如,当你发现对话上下文已经过于臃肿时,一个 /compact 就能自动压缩历史消息;当你需要从日常编码切换到深度架构分析时,一个 /model 就能瞬间切换到更强大的模型。

熟练掌握 Slash 命令不仅能提升日常开发效率,还能帮助你更好地管理 Claude Code 的资源消耗。随着对话的进行,上下文窗口会逐渐被填满,理解如何有效地压缩和管理上下文,是在长时间会话中保持 Claude Code 响应速度和输出质量的关键。

目录

一、Slash 命令体系概览

1.1 命令分类

Claude Code 的 Slash 命令按照功能可以清晰地划分为六大类,这种分类方式不仅帮助你快速找到需要的命令,也揭示了 Claude Code 的设计哲学——将最常用的操作抽象为简短的命令,同时保持命令之间的正交性和可组合性。理解这种分类体系,有助于你更高效地组织自己的工作流。

text
Slash 命令
├── 会话管理
│   ├── /clear      - 清空当前会话
│   ├── /resume     - 恢复上次会话
│   └── /exit       - 退出 Claude Code
├── 模型控制
│   ├── /model      - 切换模型
│   └── /models     - 列出可用模型
├── 上下文管理
│   ├── /compact    - 压缩上下文
│   ├── /context    - 查看上下文用量
│   └── /memory     - 管理记忆
├── 代码审查
│   ├── /review     - 代码审查
│   └── /diff       - 查看变更
├── 工作流编排(新增)
│   ├── /effort     - 调节推理投入度(5 级)
│   ├── /goal       - 目标驱动自主编码
│   ├── /workflows  - 动态工作流编排
│   ├── /optimize   - 上下文优化
│   └── /loop       - 周期性执行
├── 调试诊断
│   ├── /help       - 帮助
│   ├── /stats      - 统计信息
│   └── /config     - 查看配置
└── 自定义
    └── /<custom>   - 自定义命令

1.2 基本语法

text
/<command> [arguments] [--flags]

# 示例
/model claude-opus-4-20250514
/compact --threshold 80
/review --scope src/

二、会话管理命令

2.1 /clear

清空当前会话的所有对话历史,开始全新的对话。

bash
# 基本用法
/clear

# 确认后清空
/clear --confirm

# 清空并保留上下文文件
/clear --keep-context

使用场景:

  • 当前对话偏离主题,需要重新开始
  • 上下文过大导致响应变慢
  • 切换到完全不同的任务

2.2 /resume

恢复上次未完成的会话。

bash
# 恢复最近的会话
/resume

# 恢复指定会话
/resume --session abc123

# 列出可恢复的会话
/resume --list

2.3 /exit

退出 Claude Code 交互模式。

bash
# 直接退出
/exit

# 保存会话后退出
/exit --save

# 导出会话后退出
/exit --export session.md

三、模型控制命令

3.1 /model

切换当前会话使用的模型。

bash
# 切换到 Opus
/model claude-opus-4-20250514

# 切换到 Sonnet
/model claude-sonnet-4-20250514

# 切换到 Haiku
/model claude-haiku-3-20240307

# 查看当前模型
/model

# 带参数切换
/model claude-sonnet-4-20250514 --temperature 0.7 --max-tokens 4096

3.2 模型选择指南

模型 适用场景 速度 成本 能力
claude-opus-4 复杂推理、架构设计 最强
claude-sonnet-4 日常开发、代码生成
claude-haiku-3 简单任务、快速响应

3.3 /models

列出所有可用的模型及其信息。

bash
# 列出所有模型
/models

# 输出示例:
# Available models:
# ┌─────────────────────────────┬────────┬───────┬─────────┐
# │ Model                       │ Speed  │ Cost  │ Context │
# ├─────────────────────────────┼────────┼───────┼─────────┤
# │ claude-opus-4-20250514      │ 慢     │ 高    │ 200K    │
# │ claude-sonnet-4-20250514    │ 中     │ 中    │ 200K    │
# │ claude-haiku-3-20240307     │ 快     │ 低    │ 200K    │
# └─────────────────────────────┴────────┴───────┴─────────┘

3.4 自动模型切换

json
// .claude/settings.json — 基于任务自动切换模型
{
  "modelRouting": {
    "enabled": true,
    "rules": [
      {
        "pattern": "(架构|设计|分析|优化)",
        "model": "claude-opus-4-20250514",
        "reason": "复杂任务需要更强推理能力"
      },
      {
        "pattern": "(解释|简单|快速)",
        "model": "claude-haiku-3-20240307",
        "reason": "简单任务使用快速模型"
      }
    ],
    "default": "claude-sonnet-4-20250514"
  }
}

四、上下文管理命令

4.1 /compact

压缩当前会话的上下文,减少 token 用量。这是管理长时间会话中最重要的命令之一。随着对话的进行,上下文窗口会逐渐被历史消息填满,当接近上限时,Claude 的响应质量和速度都会下降。/compact 命令通过智能地将早期对话压缩为摘要,释放上下文空间,同时保留关键信息。

压缩策略的选择取决于你的具体需求。默认的压缩模式会保留最近的消息不变,将早期的对话压缩为简短的摘要。如果你需要最大程度地节省 token,可以使用 --aggressive 模式,但这会丢失更多细节。--keep-recent 参数则允许你指定保留最近 N 条消息不压缩,确保关键上下文不会丢失。

bash
# 基本压缩
/compact

# 设置压缩阈值(当上下文超过 80% 时自动压缩)
/compact --threshold 80

# 激进压缩(丢失更多细节但节省更多 token)
/compact --aggressive

# 保留最近 N 条消息不压缩
/compact --keep-recent 5

4.2 压缩策略

text
压缩前:
┌──────────────────────────────────────┐
│ 消息 1: 用户: 请解释这个函数          │ ← 保留
│ 消息 2: Claude: 这个函数的功能是...   │ ← 压缩为摘要
│ 消息 3: 用户: 能优化吗?             │ ← 保留
│ 消息 4: Claude: 优化方案如下...       │ ← 压缩为摘要
│ 消息 5: 用户: 帮我实现               │ ← 保留(最近)
└──────────────────────────────────────┘

压缩后:
┌──────────────────────────────────────┐
│ [摘要] 讨论了函数解释和优化方案       │
│ 消息 5: 用户: 帮我实现               │ ← 保留
└──────────────────────────────────────┘

4.3 /context

查看当前上下文用量。

bash
# 查看上下文用量
/context

# 输出示例:
# Context Usage:
# ┌──────────────────┬──────────┐
# │ Metric           │ Value    │
# ├──────────────────┼──────────┤
# │ Total tokens     │ 45,230   │
# │ Used tokens      │ 32,150   │
# │ Available        │ 13,080   │
# │ Usage %          │ 71%      │
# │ Messages         │ 24       │
# │ Tool calls       │ 18       │
# └──────────────────┴──────────┘

# 详细视图
/context --verbose

# JSON 输出
/context --json

4.4 /memory

管理 Claude Code 的记忆系统。

bash
# 列出所有记忆
/memory list

# 添加记忆
/memory add "项目使用 UUID 作为主键"

# 搜索记忆
/memory search "主键"

# 删除记忆
/memory delete <id>

# 清空记忆
/memory clear

# 导出记忆
/memory export > memory.json

五、代码审查命令

5.1 /review

触发代码审查流程。

bash
# 审查当前目录
/review

# 审查指定文件
/review src/main.py

# 审查指定目录
/review --scope src/

# 审查 Git 变更
/review --git

# 审查最近 N 次提交
/review --git --commits 3

# 审查特定分支对比
/review --git --compare main..feature

# 自定义审查规则
/review --rules .claude/rules/security.md

# 输出格式
/review --format json > review.json
/review --format markdown > review.md

5.2 /diff

查看 Git 变更差异。

bash
# 查看暂存区变更
/diff

# 查看工作区变更
/diff --unstaged

# 查看与指定提交的差异
/diff --compare HEAD~3

# 查看特定文件变更
/diff src/main.py

# 统计变更
/diff --stat

5.3 审查工作流示例

bash
# 完整的审查工作流
/review --git --format json > review.json

# 解析审查结果
cat review.json | jq '.issues[] | select(.severity == "high")'

# 根据审查结果自动修复
claude -p "修复以下审查发现的问题: $(cat review.json | jq -r '.issues[].description')"

六、调试与诊断命令

6.1 /help

显示帮助信息。

bash
# 显示所有命令
/help

# 显示特定命令帮助
/help /review

# 显示快捷键帮助
/help shortcuts

6.2 /stats

显示会话统计信息。

bash
# 显示统计
/stats

# 输出示例:
# Session Statistics:
# ┌──────────────────┬──────────┐
# │ Metric           │ Value    │
# ├──────────────────┼──────────┤
# │ Total messages   │ 42       │
# │ Total tokens     │ 89,450   │
# │ API calls        │ 15       │
# │ Tool calls       │ 38       │
# │ Est. cost        │ $0.45    │
# │ Session duration │ 25 min   │
# └──────────────────┴──────────┘

# 详细统计
/stats --verbose

# 导出统计
/stats --export stats.json

6.3 /config

查看当前配置。

bash
# 查看配置
/config

# 查看特定配置项
/config model
/config permissions
/config memory

# 编辑配置
/config edit

6.4 /debug

进入调试模式。

bash
# 启用调试
/debug on

# 显示调试信息
/debug info

# 导出调试日志
/debug export > debug.log

# 关闭调试
/debug off

七、自定义命令扩展

7.1 自定义命令基础

自定义命令定义在 .claude/commands/ 目录中:

bash
# 创建命令目录
mkdir -p .claude/commands

# 创建自定义命令
cat > .claude/commands/lint.md << 'EOF'
# 命令: /lint

## 描述
运行代码质量检查并修复发现的问题。

## 执行
1. 运行 ruff 检查代码
2. 运行 mypy 类型检查
3. 分析检查结果
4. 自动修复可修复的问题
5. 生成修复报告

## 输出
以表格形式展示检查结果和修复情况。
EOF

7.2 命令参数

bash
# 带参数的自定义命令
cat > .claude/commands/test.md << 'EOF'
# 命令: /test

## 参数
- $1: 测试范围(unit/integration/all)
- $2: 是否生成覆盖率报告(yes/no)

## 执行
如果 $1"unit",运行单元测试
如果 $1"integration",运行集成测试
如果 $1"all",运行所有测试

如果 $2"yes",生成覆盖率报告
EOF

# 使用自定义命令
/test unit yes
/test all no

7.3 命令模板变量

变量 说明 示例
$ARGUMENTS 所有参数 /review src/ → "src/"
$1, $2... 位置参数 第一个、第二个参数
$FILE 当前文件 光标所在文件路径
$DIR 当前目录 当前工作目录
$BRANCH Git 分支 当前 Git 分支名

八、推理投入度控制 /effort

Claude Code v2.1.154 引入了 5 级推理投入度控制,让你根据任务难度精确调节模型的计算资源分配。投入度越高,模型思考越深入,输出质量越好,但成本也相应增加。

8.1 5 级投入度说明

级别 命令 适用场景 Token 消耗 典型用途
low /effort low 简单查询、格式化 变量命名建议、快速解释
medium /effort medium 日常开发 普通功能开发、Bug 修复
high /effort high 复杂任务 架构设计、复杂逻辑实现
xhigh /effort xhigh 极难任务 极高 大规模重构、性能优化
max /effort max 最高要求 最大 安全审计、关键系统设计

8.2 使用示例

bash
# 会话中临时切换投入度
/effort high

# 处理最困难的架构问题
/effort xhigh
请帮我分析并重构这个微服务间的通信架构

# 恢复默认投入度
/effort medium

8.3 全局配置默认投入度

对于日常使用,建议通过环境变量设置默认投入度,避免每次手动调节:

bash
# 设置默认投入度为 high(推荐生产开发环境)
export CLAUDE_CODE_DEFAULT_EFFORT=high

# 添加到 ~/.zshrc 或 ~/.bashrc 持久化
echo 'export CLAUDE_CODE_DEFAULT_EFFORT=high' >> ~/.zshrc

踩坑经验:在 Opus 4.8 模型下,默认投入度已自动升级为 high。如果你之前习惯使用 /effort low 节省成本,切换到 Opus 4.8 后需要显式设置,否则会意外消耗较多 Token。

九、目标驱动工作流 /goal

/goal 是 Claude Code v2.1.139 引入的重磅命令,它将 Claude Code 从"问答式助手"提升为"目标驱动的自主 Agent"。设定目标后,Claude Code 会自主规划步骤、执行任务、验证结果,形成完整的自主编码循环。

9.1 与 /workflows 的核心区别

text
/goal                          /workflows
├─ 你定义"做什么"             ├─ 你定义"怎么做"
├─ Claude 自主规划步骤         ├─ 步骤由你编排
├─ 适合目标明确但路径不清      ├─ 适合流程确定的批量任务
└─ 示例:"提升测试覆盖率到80%" └─ 示例:"扫描所有 .ts 文件并添加类型注解"

9.2 使用示例

bash
# 设定编码目标
/goal 将用户认证模块从 JWT 迁移到 OAuth 2.0,保持向后兼容

# 带 Token 预算的目标(防止过度消耗)
/goal 为所有公共 API 函数补充单元测试,覆盖率提升至 80%,预算 50000 tokens

# 结合 /loop 周期性执行
/goal 检查代码中的 TODO 注释并逐一修复
/loop  # 每轮修复一批 TODO,直到全部完成

9.3 /goal 的执行循环

text
设定目标
    ↓
Claude 分析目标并制定计划
    ↓
执行步骤 1(读取文件、修改代码、运行测试...)
    ↓
自我验证:目标是否完成?
├── 否 → 回到"执行下一步"
└── 是 → 输出完成报告

真实经验/goal 的本质是一个状态机,而非指令队列。在复杂项目中建议将大目标拆分为 2-3 个子目标分别执行,否则单次 /goal 可能消耗过多上下文导致中途压缩。

十、动态工作流编排 /workflows

/workflows 命令让你编排多步骤的批量任务,Claude Code 会按计划依次执行,并在步骤间传递上下文。v2.1.154 之后支持在单个会话中编排数十到数百个后台子 Agent,适合大规模重构和批量操作。

10.1 创建工作流

bash
# 让 Claude 为你创建并执行工作流
/workflows 为 src/api/ 下所有路由文件添加输入验证中间件

# 保存工作流供后续复用
/workflows --save validate-routes

# 列出已保存的工作流
/workflows --list

# 复用已保存的工作流
/workflows run validate-routes

10.2 工作流与 /goal 的组合使用

bash
# 先用 /goal 探索和规划
/goal 分析项目中所有缺少类型注解的 TypeScript 函数

# 再用 /workflows 批量执行
/workflows 根据刚才的分析结果,为所有识别出的函数添加类型注解

参数说明表

参数 说明
--save <name> 将当前工作流保存为命名模板
--list 列出所有已保存的工作流
--run <name> 执行已保存的工作流
--budget <tokens> 设置工作流的 Token 预算上限

十一、上下文优化 /optimize

/optimize 命令自动分析并优化当前会话的上下文结构,压缩冗余信息、重新组织关键上下文,特别适合在长会话中途使用,帮助 Claude 重新聚焦于最重要的信息。

bash
# 自动优化上下文
/optimize

# 优化并显示优化前后对比
/optimize --verbose

# 优化时保留特定文件的上下文
/optimize --keep src/core/*.ts

/compact 的区别:/compact 是简单的历史消息压缩,而 /optimize 会智能分析上下文结构并重新组织,保留关键代码片段和决策信息。

十二、真实经验与踩坑

12.1 经验 1:/effort 升级后成本激增

  • 场景:团队升级到 Opus 4.8 后,日常编码的 Token 消耗突然增加了 3 倍
  • 问题:Opus 4.8 默认 /effort high,而之前版本默认 medium,开发者忘记显式调回
  • 解决方案:在 ~/.zshrc 中设置 export CLAUDE_CODE_DEFAULT_EFFORT=medium,仅对复杂任务手动提升;每日开工时先确认当前 effort 级别

12.2 经验 2:/goal 在大项目上耗尽上下文

  • 场景:用 /goal 让 Claude 重构整个认证模块,涉及 30+ 文件
  • 问题/goal 执行过程中上下文迅速膨胀,触发多次自动压缩,后期已忘记最初目标
  • 解决方案:将大目标拆分为 2-3 个子目标分别执行,或先用 /goal 做分析规划,再用 /workflows 分步骤执行

十三、落地检查清单

  • /clear/resume/compact 等基础命令可正常执行
  • /model 可切换到目标模型(Opus/Sonnet/Haiku)
  • /compact 执行后上下文用量明显下降
  • /review 可对当前变更生成审查报告
  • /effort 可在 low/medium/high/xhigh/max 间切换
  • /goal 可设定目标并自主执行完整循环
  • /workflows 可编排并保存多步骤任务
  • /optimize 执行后上下文结构得到优化
  • 自定义命令目录 .claude/commands/ 已创建并可被识别
  • 团队已配置默认 effort 级别避免成本失控

十四、总结

Slash 命令是 Claude Code 交互模式的高效工具集,涵盖了会话管理、模型控制、上下文管理、代码审查、工作流编排和调试诊断等各个方面。熟练掌握这些命令可以大幅提升日常开发效率。

关键要点:

  • 使用 /model 根据任务复杂度切换模型
  • 使用 /compact/optimize 管理上下文大小与质量
  • 使用 /review 快速触发代码审查
  • 使用 /effort 根据任务难度调节推理投入度(5级)
  • 使用 /goal 实现目标驱动的自主编码循环
  • 使用 /workflows 编排复杂的多步骤批量任务
  • 通过 .claude/commands/ 创建自定义命令
  • 组合使用多个命令构建高效工作流

十五、下篇预告

自定义 Slash 命令深度指南 — 学习如何在 .claude/commands/ 目录中创建自定义 Slash 命令,掌握 $ARGUMENTS 参数传递、命令模板、命令组合和团队共享最佳实践。