前言
上一篇我们掌握了启动 Claude Code 的方式。进入交互模式之后,真正的问题来了:怎么在一次长对话中保持 Claude 的状态、控制成本、切换模型、管理上下文?
答案是 Slash 命令------在提示符前输入 / 开头的指令。它们不是发给 Claude 的"问题",而是直接控制会话行为的开关。
文章结构
1. 什么是 Slash 命令
2. 快速参考卡 --- 所有内置命令一览
3. 上下文管理 --- /compact、/clear、/context
4. 会话信息 --- /cost、/status、/stats
5. 账户与认证 --- /login、/logout、/usage
6. 配置与模型 --- /model、/config、/effort
7. 项目初始化与记忆 --- /init、/memory
8. 目录管理 --- /add-dir
9. 扩展与集成 --- /mcp、/ide、/plugin
10. 自动化与高级功能 --- /hooks、/agents
11. 历史与回滚 --- /resume、/rewind
12. 自定义 Slash 命令
13. 实战练习
快速参考卡
上下文管理
/compact [说明] 压缩对话历史,释放 token 空间
/clear 清空对话历史,完全重置上下文
/context 查看当前上下文使用量
会话信息
/cost 显示当前会话消耗的 token 数和估算费用
/status 显示连接状态、模型信息
/stats 显示详细的会话统计数据
账户与认证
/login 登录 Anthropic 账户
/logout 退出登录
/usage 查看账户级别的用量和配额
配置与模型
/model 切换模型(无需退出会话)
/config 打开配置界面
/effort [级别] 设置推理努力程度(low / medium / high)
项目初始化与记忆
/init 自动生成 CLAUDE.md 项目记忆文件
/memory 打开 CLAUDE.md 编辑界面
目录管理
/add-dir [路径] 在当前会话中添加工作目录
扩展与集成
/mcp 管理 MCP 服务器连接与认证
/ide 管理 IDE 集成
/plugin 安装、启用、禁用或卸载插件
自动化与高级功能
/hooks 打开 Hooks 配置界面
/agents 管理子代理(Subagent)配置
历史与回滚
/resume 恢复历史会话
/rewind 回滚到之前的某个检查点
模式切换
/plan 进入规划模式(只分析,不执行)
/fast 开启快速模式
其他
/help 列出所有可用命令
/exit 退出会话
第一节:什么是 Slash 命令
Slash 命令分两类:
| 类型 | 存储位置 | 作用范围 |
|---|---|---|
| 内置命令 | Claude Code 自带 | 所有项目 |
| 自定义命令 | .claude/commands/ 或 ~/.claude/commands/ |
项目级或全局 |
在交互模式里,输入 / 后直接按 Tab 键可以列出所有可用命令,继续输入可以过滤。
第二节:上下文管理
这是使用频率最高的一组命令,直接影响 Claude 的回答质量和你的账单。
/compact --- 压缩上下文
/compact
/compact 保留所有关于 API 改动的讨论
Claude Code 的上下文窗口是有限的。当对话变长,早期的信息会被挤出窗口,Claude 开始"遗忘"之前的决定,回答质量下降。/compact 的作用是把历史对话压缩成一份结构化摘要,同时保留关键决策。
加上说明参数时,可以指导 Claude 重点保留哪部分信息:
/compact 重点保留我们讨论过的数据库 schema 设计
/compact focus on the error handling patterns we decided on
建议:上下文使用量超过 80% 时执行 /compact。
/clear --- 清空上下文
/clear
不同于 /compact,/clear 是完全清空------所有历史记录归零,Claude 回到初始状态。适合切换到完全不同的任务时使用。
两者的选择原则:同一个任务中途用 /compact,切换任务时用 /clear。
/context --- 查看上下文用量
/context
以可视化方式显示当前上下文窗口的使用情况,帮助你判断是否需要执行 /compact。
第三节:会话信息
/cost --- 查看当前花费
/cost
显示本次会话消耗的 token 数量和估算费用。在长时间工作后执行一次,对控制成本很有帮助。
/status --- 查看会话状态
/status
显示当前使用的模型、连接状态以及其他会话基本信息。不确定当前环境时,这是最快的确认方式。
/stats --- 查看详细统计
/stats
比 /cost 更详细。显示本次会话中工具调用次数、文件读写操作数、各阶段的 token 消耗分布等数据。适合在长时间会话结束后用来复盘效率。
第四节:账户与认证
/login 和 /logout
/login
/logout
用于在 Claude Code 内部登录或退出 Anthropic 账户。多人共用一台机器,或者需要切换账号时会用到。/login 会打开浏览器完成 OAuth 认证流程。
/usage --- 查看账户用量
/usage
不同于 /cost 只显示当前会话的费用,/usage 查看的是账户级别的用量统计,包括本月已消耗的 token 总量和当前配额限制。用来判断账号是否接近用量上限。
第五节:配置与模型
/model --- 会话中切换模型
/model
执行后会列出你账号下可用的模型,直接选择即可切换,不需要退出重开。
实际用法:开始时用 Sonnet 做日常工作,遇到复杂的架构问题时切换到 Opus,解决后再切回来。
/config --- 打开配置界面
/config
提供超过 20 个可配置项的界面,包括主题、自动压缩阈值、工具权限等。配置一次,跨会话持久保存。
/effort --- 设置推理努力程度
/effort low
/effort medium
/effort high
控制模型在回答时"想多深"。high 会让 Claude 用更多 token 思考,low 则更快更省。
| 场景 | 推荐设置 |
|---|---|
| 快速查询、格式化 | low |
| 日常编码、一般问题 | medium(默认) |
| 复杂架构设计、难排查的 Bug | high |
第六节:项目初始化与记忆
/init --- 自动生成 CLAUDE.md
/init
这是你在一个新项目里第一件应该做的事。/init 会分析你的项目结构,自动生成一个 CLAUDE.md 文件,里面包含项目技术栈、构建命令、代码规范和目录结构。
每次在这个项目目录启动 Claude Code,它都会自动读取 CLAUDE.md,不用你再重复介绍项目背景。这是解决"Claude 每次都不记得项目是什么"的根本方案。
/memory --- 编辑项目记忆
/memory
打开 CLAUDE.md 的编辑界面,可以直接在会话中添加、修改或删除项目规则,无需手动找到文件再用编辑器打开。当你在对话中临时发现需要固化某条规则时,/memory 是最快的方式。
/init 和 /memory 的关系:前者负责生成,后者负责持续维护。
第七节:目录管理
/add-dir --- 添加工作目录
/add-dir ../shared-lib
/add-dir /absolute/path/to/another/repo
在当前会话中追加一个额外的工作目录,让 Claude 可以同时读写多个目录下的文件。与命令行参数 --add-dir 效果相同,区别在于这个可以在会话进行中随时执行,不需要重新启动。
Monorepo 或者跨仓库工作时非常实用。
第八节:扩展与集成
/mcp --- 管理 MCP 服务器
/mcp
打开 MCP(Model Context Protocol)服务器的管理界面,可以查看当前已连接的外部服务、进行认证,以及排查连接问题。MCP 是 Claude Code 连接外部工具(GitHub、数据库、Notion 等)的核心机制,后续文章会专门讲解。
/ide --- 管理 IDE 集成
/ide
管理 Claude Code 与编辑器(VS Code、JetBrains 等)之间的集成状态。如果你同时使用终端和 IDE 插件,/ide 可以查看当前的连接状态并进行配置。
/plugin --- 管理插件
/plugin marketplace add <url>
/plugin install <名称>@marketplace
/plugin enable <名称>
/plugin disable <名称>
/plugin uninstall <名称>
插件(Plugin)是把自定义命令、Agents、Hooks 和 MCP 服务器打包在一起的可分发单元。/plugin 提供了完整的插件生命周期管理。Anthropic 官方和社区都有公开的插件市场。
第九节:自动化与高级功能
/hooks --- 配置自动化钩子
/hooks
打开 Hooks 的交互式配置界面。Hooks 是绑定在特定事件上的确定性脚本------比如每次文件写入后自动运行 formatter,或者每次会话开始时自动注入当天的日期。
Hooks 和 Prompt 的核心区别:Prompt 只是建议,Hooks 是保证执行。如果你需要某件事每次都发生,用 Hooks,不要依赖 Prompt。
/agents --- 管理子代理
/agents
打开子代理(Subagent)的管理界面。子代理是拥有独立上下文窗口、独立人设和工具权限的专用 Claude 实例。比如你可以配置一个只负责数据库操作的代理,主会话遇到相关任务时自动委派给它,保持主上下文的干净。
第十节:历史与回滚
/resume --- 恢复历史会话
/resume
在会话内部打开历史会话列表,选择后直接切换,不需要退出再用 claude -r <id> 重新启动。
/rewind --- 回滚到检查点
/rewind
打开回滚菜单,可以选择回到之前某个操作的状态。支持两种模式:
| 模式 | 作用 |
|---|---|
| 仅回滚代码 | 撤销文件修改,保留对话历史 |
| 回滚对话 | 同时撤销对话历史和文件修改 |
实验性重构、不确定的修改路径------先做,不满意就 /rewind,比 git 更快。也可以直接按 Esc Esc 打开同一个菜单。
第十一节:自定义 Slash 命令
这是很多人忽略的高级功能,但它能把重复性工作压缩成一个命令。
原理
自定义命令本质上是存放在特定目录的 Markdown 文件,文件名就是命令名。
项目级命令(只在当前项目生效):
.claude/commands/<命令名>.md
全局命令(所有项目都能用):
~/.claude/commands/<命令名>.md
创建一个自定义命令
bash
mkdir -p .claude/commands
cat > .claude/commands/security-review.md << 'EOF'
请对以下代码进行安全审查,重点检查:
1. SQL 注入风险
2. XSS 漏洞
3. 不安全的依赖
4. 敏感信息泄露(硬编码的密钥、密码等)
5. 身份验证和授权漏洞
以 Markdown 格式输出,每个问题注明严重程度(高/中/低)。
代码:$ARGUMENTS
EOF
之后在会话中输入 /security-review,Claude 会读取这个文件中的指令并执行。$ARGUMENTS 会被你在命令后输入的内容替换:
/security-review 请重点关注认证逻辑
推荐的全局命令
以下几个命令适合放在 ~/.claude/commands/ 作为全局命令:
cn.md --- 强制用中文回答
commit.md --- 生成规范的 git commit message
实战练习
练习 1:感受 /compact 的效果
1. 打开 Claude Code,进行 10 轮以上对话
2. 执行 /context,记录当前使用量
3. 执行 /compact
4. 再执行 /context,对比前后变化
你会看到 token 用量明显下降,但 Claude 仍然记得核心决策。
练习 2:用 /init 初始化你的项目
bash
cd your-project
claude
/init
查看生成的 CLAUDE.md,再用 /memory 手动补充你认为重要的项目信息。
练习 3:用 /rewind 做无风险实验
1. 让 Claude 对某个文件做一次修改
2. 观察修改结果,假设你不满意
3. 执行 /rewind,选择"仅回滚代码"
4. 文件恢复原样,对话历史保留
5. 重新描述需求,让 Claude 再试一次
练习 4:创建你的第一个全局自定义命令
bash
mkdir -p ~/.claude/commands
cat > ~/.claude/commands/cn.md << 'EOF'
请用中文回答。如果我的问题是英文,先理解后用中文作答。
EOF
在任何项目中打开 Claude Code,输入 /cn 后提问,验证效果。
练习 5:用 /effort 感受推理深度差异
1. 执行 /effort low,问一个较复杂的问题,观察回答速度和深度
2. 执行 /effort high,问同一个问题,对比回答质量和等待时间
这个练习帮助你建立对 effort 设置的直觉,知道什么场景值得"多等一会儿"。
下一篇预告
#03 --- CLAUDE.md 深度指南:给你的项目装上长期记忆
/init 只是起点。一个真正好用的 CLAUDE.md 该怎么写?包含哪些内容?如何随项目演进维护它?下一篇我们专门拆解这个文件。
参考文档:Claude Code 官方文档