上一节介绍了settings.json、CLAUDE.md与 Auto Memory。它们解决的是会话开始前的问题Claude 可以做什么以及它进入项目时应该知道什么。配置完成后接下来要掌握的是如何控制一次真实的开发会话。你需要知道怎样启动或恢复任务什么时候规划、压缩或清空上下文如何撤销错误修改以及完成开发后应该用哪个命令审查代码。Claude Code 为这些操作提供了两类入口CLI 命令和参数在终端中启动 Claude Code 时使用例如claude -c、claude -p会话内命令进入交互会话后以/开头使用例如/compact、/rewind。两者不要混用。claude --resume是终端启动参数/resume则是会话内部命令。一、先掌握 6 种启动方式大多数时候在项目根目录运行claude就够了。[1]# 在当前目录启动交互会话 claude # 带着第一个问题进入交互会话 claude 解释这个项目的目录结构 # 执行一次任务后退出适合脚本和自动化 claude -p 列出当前目录中的 JavaScript 文件 # 继续当前目录最近一次会话 claude -c # 从会话选择器或指定 ID/名称恢复会话 claude -r claude -r auth-refactor # 使用指定模型启动 claude --model sonnet如果要在另一个项目中工作最明确的方式仍然是先进入该目录cd /path/to/your/project claude当前官方 CLI 没有--project-dir参数。--add-dir的含义也不同它是在主工作目录之外再授予 Claude 访问其他目录的权限并不会把那个目录变成当前项目。[1]claude --add-dir ../shared-lib1. 交互模式和-p模式怎样选择两种模式适合不同任务模式适合的任务特点claude探索代码、开发功能、调试、持续修改保留多轮上下文可以随时纠正方向claude -p查询、批处理、CI 和脚本调用输出结果后退出便于与其他命令组合-p模式还可以输出 JSON并限制代理最多执行多少轮[1]claude -p \ --output-format json \ --max-turns 3 \ 检查当前改动是否存在明显错误如果任务可能修改文件或需要你在中途判断方案优先使用交互模式。不要为了“自动化”而把一个边界不清晰的大任务直接交给-p模式。二、斜杠命令不是提示词进入交互会话后在输入框开头输入/Claude Code 会列出当前环境可用的命令。继续输入字符可以过滤列表。[2]斜杠命令与普通提示词的区别是普通提示词告诉模型“完成什么任务”斜杠命令直接控制会话、上下文、权限或某个预定义工作流。命令必须出现在消息开头。不同平台、套餐和版本显示的命令可能不同因此/help和输入/后出现的列表比网上长期不更新的命令清单更可靠。[2]与其一次记住上百个命令不如按开发阶段掌握下面几组阶段常用命令主要用途开始任务/init、/memory、/plan初始化项目说明、检查记忆、先规划后修改控制会话/model、/effort、/permissions、/status调整模型和推理强度管理权限查看状态管理上下文/context、/compact、/clear、/btw查看、压缩、清空上下文提出支线问题恢复和回退/rewind、/resume、/branch撤销修改、恢复或分支会话检查结果/diff、/code-review、/review、/security-review查看差异并进行不同类型的审查扩展能力/skills、/agents、/plugin、/mcp管理 Skill、子代理、插件和 MCP下面重点解释最容易混淆、也最影响使用质量的命令。三、/context与/compact管理长会话Claude Code 的上下文不只有聊天记录还包括系统提示、CLAUDE.md、Skill 描述、MCP 工具定义、读取的文件和工具输出。随着任务推进可用于新工作的空间会逐渐减少。[3]不要把“上下文窗口还没满”等同于“当前信息仍然清晰”。一段已经结束的排错过程、重复读取的大文件或冗长日志即使仍在窗口内也可能成为后续任务的噪声。1. 先用/context看占用/context会以可视化方式展示当前上下文的使用情况并提示较重的工具定义、记忆文件或容量风险。需要展开详细项目时可以使用[2]/context all它适合回答两个问题当前会话是否已经很长需要压缩或重开占用主要来自聊天历史、项目记忆还是大量 MCP 和 Skill具体界面会随版本变化不要依赖固定的 token 数字或布局。2. 用/compact保留结论压缩过程/compact会把到目前为止的对话总结成更短的上下文从而释放空间。它不会简单删除全部历史而是尽量保留目标、已完成工作、重要决策和当前状态。[2]/compact还可以给摘要指定重点/compact 保留最终接口约定、失败测试及其原因省略已经排除的调试尝试这比无条件压缩更可靠因为你明确告诉 Claude 哪些信息会影响后续工作。适合主动执行/compact的时机包括一个独立阶段已经结束即将进入实现、测试或文档阶段刚完成一段冗长排错已找到根因Claude 开始重复讨论已经确定的方案/context显示对话或工具结果占用了大量空间。不过压缩是有损总结。摘要可能遗漏某个边界条件、文件名或中间证据。关键约定应保存在代码、测试、任务清单或CLAUDE.md中而不是只存在于聊天历史里。3./compact和/clear的边界这两个命令解决的问题不同[2]命令发生什么什么时候用/compact总结当前对话继续同一任务任务没结束只是上下文变长/clear用空上下文开始新对话旧会话仍可恢复当前任务已结束要处理无关任务如果刚完成登录模块接下来要继续修复同一模块的测试使用/compact。如果接下来要研究一个完全无关的部署问题使用/clear更干净。不要让一个会话永久承载所有工作。任务边界清晰时新会话通常比反复压缩旧会话更容易保持目标一致。四、/rewind回退对话和 Claude 的文件编辑Claude Code 会在每次用户提示前创建检查点并跟踪 Claude 通过文件编辑工具产生的改动。输入/rewind或在输入框为空时连续按两次Esc可以打开回退菜单。[4]当前菜单主要提供以下操作恢复代码和对话两者都回到选定节点仅恢复对话保留当前文件只回退聊天仅恢复代码保留当前聊天只撤销文件编辑从这里开始总结或总结到这里只压缩选定范围的对话。例如Claude 已经完成了正确的代码修改但后续解释越来越偏离目标此时可以只恢复对话如果讨论方向正确但最新一轮改坏了文件可以只恢复代码。注意回退不是 Git 的替代品/rewind有明确边界[4]它只跟踪 Claude 文件编辑工具产生的改动rm、mv、代码生成器和格式化工具等 Shell 命令造成的文件变化可能无法恢复你在外部编辑器中的修改以及其他并发会话的修改通常不受它保护检查点会随会话保留但不是永久版本历史。因此大范围修改前仍然应该保持工作区可识别并使用 Git 提交重要节点。/rewind适合快速撤销当前会话中的一次错误尝试Git 负责可审计、可长期恢复的版本管理。五、/memory查看和维护跨会话信息/memory会列出当前会话加载的CLAUDE.md、CLAUDE.local.md和规则文件同时提供 Auto Memory 的开关与查看入口。[5]/memory它最适合做三件事验证预期的项目指令是否真的加载打开并编辑项目或用户级CLAUDE.md审计 Claude 自动保存了哪些长期记忆。这里要区分两个系统机制谁维护适合保存CLAUDE.md你和团队编码规范、测试命令、架构边界和稳定工作流Auto MemoryClaude调试发现、项目模式、你反复纠正的偏好Auto Memory 不是绝对正确的事实库。模型可能把一次性现象总结成长期规律因此仍要定期检查并删除过时内容。团队必须遵守的规则应在人工确认后写进版本控制中的CLAUDE.md而不是只留在 Auto Memory。如果项目还没有CLAUDE.md可以运行/init它会分析代码库并生成起始文件如果文件已经存在则提出改进建议而不是直接覆盖。[5]六、/plan、/permissions与/model控制工作方式1./plan复杂修改先建立可验证方案/plan会进入 Plan Mode。这个模式适合需求仍需拆解、改动范围较大或必须先理解架构的任务。[2]/plan 修复登录后偶发跳回首页的问题一个有效计划不应该只是“分析、修改、测试”三句话而应写出要验证的根因假设预计修改的文件和边界不应改变的现有行为每一步的验证方式。小范围、方案明确的修改不必强行先写长计划。Plan Mode 的价值是降低方向性错误不是给每个任务增加仪式。2./permissions管理允许、询问和拒绝规则/permissions会打开权限管理界面可以查看或修改allow、ask、deny规则以及附加工作目录。[2]/permissions日常使用中不要因为确认弹窗多就直接跳过所有权限。更稳妥的做法是观察反复出现的低风险操作再把精确规则加入允许列表写入生产数据、推送远端和读取敏感文件仍应保留确认或拒绝规则。3./model与/effort按任务调整成本/model用于切换模型/effort用于调整当前模型的推理强度。可用选项取决于模型、账户和组织策略。[2]/model /effort选择时可以遵循一个简单原则文件查找、格式调整和明确的小修改不需要最高推理强度跨模块设计、复杂调试和高风险审查再提高模型能力或 effort切换后仍要用测试、类型检查和实际运行结果验证不要把更强模型当成正确性证明。七、代码审查/code-review不等于/review草稿里最容易造成误用的是/review。当前 Claude Code 把本地差异和 GitHub PR 分成了不同入口[2]命令审查对象是否修改文件/diff当前未提交改动否只查看差异/code-review当前 diff 或指定目标默认只报告加--fix可应用修复/review [PR]GitHub Pull Request只读审查/security-review当前分支待提交改动只读安全审查/simplify [target]已修改代码中的复用、简化、效率和抽象问题会应用清理完成本地功能开发后可以先运行/diff /code-review如果希望 Claude 自动处理确认过的发现再显式使用/code-review --fix对已经创建的 GitHub PR则使用/review 123/simplify也不是通用的“修复所有问题”。当前版本会让四个审查代理分别关注复用、简化、效率和抽象层级并直接应用清理但它不以查找正确性缺陷为目标。先用测试和/code-review检查行为再决定是否运行/simplify。[2]任何 AI 审查都不能替代测试和人工判断。审查输出应被视为待验证的问题清单而不是已经成立的结论。八、恢复会话、支线问题与扩展能力1./resume回来继续之前的任务/resume会按 ID 或名称恢复会话不带参数时打开选择器/continue是它的别名。[2]/resume在终端启动阶段也可以使用claude -c claude -r auth-refactor一个实用习惯是用/rename给长期任务命名/rename auth-refactor相比依赖自动生成的摘要稳定的会话名称更容易在几天后找回工作。2./btw不污染主对话的临时问题/btw适合询问当前上下文中已经存在的信息而不把问题和回答加入主对话历史。[6]/btw 刚才确认的配置文件名是什么它可以在 Claude 正在工作时独立回答但没有工具权限不能读取新文件、运行命令或搜索网页回答也只有一轮。如果问题需要调查或会影响主任务决策直接在主对话中提问更合适。3./skills、/agents、/plugin与/mcp这四个命令分别管理不同扩展入口/skills列出当前可用 Skill具体 Skill 通过/skill-name调用而不是/skill 名称[7]/agents管理子代理配置/plugin安装、启用、禁用或查看插件/mcp管理 MCP 服务器连接和认证。[2]它们会增加能力也可能增加上下文和工具暴露面。只启用当前项目确实需要的扩展并通过/context检查长期占用。九、几个比命令更高频的快捷操作除了斜杠命令下面几个交互操作值得形成肌肉记忆[6]操作作用Esc中断当前响应或工具调用已完成的工作会保留空输入时双击Esc打开/rewind菜单ShiftTab循环切换可用权限模式CtrlR反向搜索命令历史CtrlO展开或收起详细工具调用记录CtrlG在默认文本编辑器中编辑较长提示词\Enter或CtrlJ输入多行内容还可以在输入开头使用!直接进入 Shell 模式! git status ! npm test命令和输出会进入当前对话上下文。它适合执行你已经确定的命令如果希望 Claude 先判断应该运行什么、解释风险或根据结果继续处理就用普通提示词。十、一套可复用的会话工作流把上面的命令串起来一次中等规模开发任务可以按下面的节奏进行在项目根目录运行claude用/memory确认项目规则已经加载对高不确定性任务使用/plan明确范围、风险和验收方式开发过程中用/diff查看实际改动方向错误时尽早按Esc阶段结束后运行测试把结果留在上下文中对话明显变长时先看/context再用带重点的/compact修改不满意时用/rewind但重要节点仍交给 Git完成后依次检查测试、/code-review和必要的/security-review任务结束后使用/clear开始无关工作或退出并在下次用claude -c恢复。这里真正重要的不是记住多少命令而是建立三个边界任务边界同一任务用/compact无关任务用/clear状态边界临时撤销用/rewind长期版本管理用 Git验证边界模型可以实现和审查但测试结果与可观察行为才是完成证据。掌握这些边界后Claude Code 才不只是一个“能聊天的终端”而是一套可以被你控制、回退和验证的开发工作流。参考资料Claude Code DocsCLI referenceClaude Code DocsCommandsClaude Code DocsExplore the context windowClaude Code DocsCheckpointingClaude Code DocsHow Claude remembers your projectClaude Code DocsInteractive modeClaude Code DocsExtend Claude with skills