Anthropic 的 Claude Code 以及更广泛的 Claude 系列如今让开发者前所未有地掌控模型“看见多少”和“思考多深”。近期产品更新(尤其是 Sonnet 4 的 100 万 token 上下文窗口与 Claude 扩展的“思考”控制)让上下文管理更强大也更重要:你可以在单次会话中处理整个代码仓库——但前提是你要有意识地组织提示、文件与会话状态。本文将解释如何可靠地管理 Claude Code 的上下文:命令与用法、思考预算控制、CLAUDE.md 模式、子代理工作流、进阶技巧、故障排查,以及可直接复制粘贴的代码示例。
什么是 Claude Code?
Claude Code 是 Anthropic 的 agentic coding CLI——一个以终端为先的工具,将你的开发环境与 Claude 模型连接起来,使助理能够读取代码仓库、运行命令、编辑文件、运行测试、创建提交,并从终端执行多步工作流。它的设计让 AI 可以“驻留”在你的 shell 中并对代码库采取行动,具备仓库扫描、斜杠命令、子代理(具有隔离上下文的专用助理)以及与外部工具的 Model Context Protocol (MCP) 集成等特性。
为什么要管理 Claude Code 的上下文?
因为上下文 = 相关性 + 成本 + 安全。如果听之任之,冗长的历史会导致:
- 更高的 token 使用量(更高成本、更慢响应)。
- 上下文漂移(过时/不相关信息干扰输出)。
- 信息泄露(机密或敏感日志滞留在会话中)。
管理上下文能让输出更准确、可预期且更省钱。
Claude Code 如何组织与保存项目上下文?
Claude Code 是一个具备智能体能力的 CLI,它将你的仓库、工具与配置视为一等上下文来源。它会读取项目文件、CLAUDE.md、本地工具与已配置的 MCP 服务器;同时支持子代理,每个子代理都有自己的上下文窗口(有助于避免污染主对话)。据此可将顶层策略与专用代理的记忆相互隔离(例如测试运行器、代码审阅者)。
Claude Code 如何摄取仓库上下文与辅助文件?
- 扫描工作目录以及你添加的任何额外目录(
--add-dir)。 - 查找
.claude/子文件夹(commands、agents)与CLAUDE.md。 - 你可以连接 Model Context Protocol (MCP) 服务器以访问外部工具;Claude Code 可将这些工具继承到其工具集中。
我可以采用哪些方法在 Claude Code 中管理上下文?
- 掌握上下文相关的基础 CLI 命令。将可复用提示存为 .claude/commands/ 下的斜杠命令,避免重复粘贴长提示。
- 合理设计 CLAUDE.md 文件。在仓库根目录添加 CLAUDE.md,用于定义目标、允许的工具、风格、升级规则以及实用斜杠命令。(Claude Code 会自动读取,并将其作为权威指引。)
- 使用子代理进行任务隔离——每个子代理拥有独立的上下文窗口与工具权限,避免污染主会话。将子代理定义存入 .claude/agents/ 并纳入版本控制。
基础的上下文管理命令有哪些
下面是管理 Claude Code 会话状态最常用的命令。包含行为说明、示例用法、推荐场景与相关 CLI 标志的提示。
/clear — “重新开始”
作用: 清除当前会话中的对话历史,使后续提示从干净状态开始。REPL 会话保持不变,但来回消息将不再进入模型上下文。(项目文件与 CLAUDE.md 仍对 Claude Code 可见。)
适用时机
- 完成一个功能或工单后,希望为不相关任务开启干净会话。
- 会话累积了大量探索性轮次、回答质量开始下降。
- 在移交会话给他人/其他代理前,避免泄露先前对话状态。
用法
# in the interactive REPL
/clear
备注与技巧
/clear会对该会话的对话历史产生不可逆影响;如需回到磁盘上保存的旧会话,可使用/resume/--continue。
/compact — “总结与压缩”
作用: 将当前对话压缩为更短的摘要,保留要点与决策,并用该摘要替换冗长历史,使会话在不丢失重要上下文的情况下继续。这能降低 token 使用同时保持连贯性。
适用时机
- 想保留线程中的重要状态但降低 token 占用。
- 在开始一个较长的新任务前,避免接近上下文窗口极限。
- 需要简明的会话“记忆”并保留关键决策。
用法
# in the interactive REPL
/compact
# or with an instruction to guide the summary
/compact Summarize decisions, open TODOs, and config changes only
备注与技巧
- 当会话长度接近限制时,某些版本或环境可能会自动启用
auto-compact、microcompact等智能压缩行为;这些功能正在逐步推出,可能在你的本地安装或托管环境中出现。(社区与更新日志中讨论了 microcompact 与 auto-compact 的行为。)
--continue、--resume 与会话控制(CLI 层面)
作用: 从 CLI 控制会话的持久化与选择。
claude --continue(或claude -c)——重新打开并继续当前项目目录中最近一次会话。claude --resume(或claude -r <session-id>)——显示交互式选择器(或通过 ID 恢复特定会话)。当你保存了许多会话并希望挑选其一继续时很有用。
用法示例
# continue the most recent session
claude --continue
# open an interactive session picker
claude --resume
# resume by id (non-interactive)
claude --resume 550e8400-e29b-41d4-a716-446655440000
影响上下文的交互模式快捷键(终端 UX)
Ctrl+L—— 清空终端屏幕(视觉效果),但会话历史会被保留。实际重置历史请用/clear。Ctrl+D—— 退出会话(EOF)。Ctrl+C—— 取消当前生成。
这些是便捷控制;除非显式运行/clear或--continue/--resume,否则只影响终端行为。
其他与上下文相关的控制与标志
--add-dir <path>—— 额外纳入 Claude 可读取的目录(有助于限定 Claude 可访问范围、减少不必要的文件读取)。--allowedTools—— 预先允许工具,使 Claude 无需重复权限确认(减少往返与嘈杂的工具授权对话)。- 斜杠命令(
/.claude/commands/或 MCP 提供)——存储常用且 token 高效的提示;调用斜杠命令比反复粘贴长提示更省成本。
我应如何设计 CLAUDE.md 来控制项目上下文?
CLAUDE.md 是什么,为什么重要
CLAUDE.md 是项目级的预置提示,Claude Code 在仓库启动时会自动读取。用它记录关于项目的短、小、可执行且稳定的信息(名词、架构、规范)。由于模型会将 CLAUDE.md 摄入提示,一个良好设计的文件能减少重复提供相同信息的需要,节省宝贵的 token 预算。
CLAUDE.md:实用模板(推荐)
遵循这些规则:简短(尽量 100–200 行)、分层(全局 → 项目 → 子目录覆盖)、分段机器可读。
# CLAUDE.md — top of repository
Project: Acme Payment Gateway
Primary language: typescript
Build: pnpm build
Run tests: pnpm test
API routing: src/api/*
Database: Postgres via prisma (schema at prisma/schema.prisma)
# Conventions
- commit format: Conventional Commits
- test coverage threshold: 80%
- style: eslint + prettier (configs in .eslintrc, .prettierrc)
# What I'm asking Claude to do
- When asked to create a feature, always include tests and update the CHANGELOG.
- When modifying DB schema, present migration plan and migration files.
备注:
- 将高价值条目(API、关键文件、基础设施命令、测试命令)置于最前。
- 当不同模块有不同约定时,在子目录放置独立的
CLAUDE.md;Claude 会组合并优先采用更具体的文件。
我如何组装工作流与子代理来管理上下文并并行推进工作?
什么是子代理?
子代理是 Claude Code 的一种模式:主代理将离散任务委派给下属代理(例如:frontend-agent、backend-agent、qa-agent),然后主代理整合它们的输出。子代理让你可以在系统不同部分并行工作,而无需把一切塞进同一聊天中。
示例工作流:特性实现(并行代理)
main-agent阅读 CLAUDE.md,制定计划。frontend-agent(子代理)获得聚焦上下文:UI 契约、storybook、特定文件。backend-agent(子代理)获取数据库模式、API 契约并实现端点。qa-agent运行测试,将失败用例反馈给main-agent。main-agent编排提交、合并请求,并更新 CLAUDE.md。
CLI 模式:
# start main session
claude --session main
# spawn frontend subagent (conceptually: new session with scoped CLAUDE.md)
claude --session frontend --cwd frontend/
提示:在子目录下创建作用域化的 CLAUDE.md 文件(frontend/CLAUDE.md、backend/CLAUDE.md),使每个子代理只携带其所需的最小上下文启动。
子代理示例:.claude/agents/code-reviewer.md
---
name: code-reviewer
description: Focused code reviewer. Limited tools: Read, Grep, Bash
---
You are a code reviewer. When invoked:
1. Run `git diff --name-only` to see changed files.
2. Prioritize security, correctness, tests.
3. Return a patch (diff) and a 3-item actionable checklist.
如何以更健康的上下文与更低成本成为进阶用户?
1) 让 CLAUDE.md 精简且分层
避免巨大的单体 CLAUDE.md。使用一个全局文件记录开发者偏好,配合小而专的模块文件记录局部细节。参见前述模板。
2) 用斜杠命令承载动词,用 CLAUDE.md 承载名词
让 CLAUDE.md 成为记录“事实”的地方(有哪些文件、架构如何),而让斜杠命令成为记录“流程”的地方(创建测试、执行重构)。这样避免在每次会话中重复发送流程逻辑。
3) 详细模式 + 计划模式作为调试工具
当 Claude 行为异常时,启用详细模式查看精确上下文,并使用计划模式强制模型先给出可由你批准的明确计划,再进行编辑。
4) 谨慎预算思考
以默认/最小思考 token 为起点,仅在任务需要多步推理时(复杂重构、形式化验证)提高预算。对常规编辑使用更低预算。
5) 对输出与提交做监测
通过钩子自动运行测试,并将其输出附加到会话中(bash 模式用 ! 运行 shell 命令并将输出纳入上下文)。使用提交钩子创建清晰的原子化提交及消息。
当上下文“掉线”或 Claude 忘记指令时,如何排查?
常见症状与修复
- 症状: Claude 忽略了 CLAUDE.md 或先前指令。
- 修复: 确认文件位于会话当前工作目录;检查是否被更具体的子目录 CLAUDE.md 覆盖;使用详细模式查看当前提示。
- 症状: 长会话中性能下降(模型“遗忘”早期内容)。
- 修复: 压缩会话:将稳定事实提炼到 CLAUDE.md,或将对话中的部分内容快照到文件并以引用方式使用,而非重复粘贴。同时考虑重启短会话,仅传递精炼上下文。
- 症状: 扩展思考耗时过长或超时。
- 修复: 降低
thinking_budget,将任务拆分为更小子问题,或在需要极大预算时改为离线批量分析。当最佳思考预算超过约 32K tokens 时,Anthropic 建议采用批处理以避免超时。
结语
在 Claude Code 中管理上下文是一个多维问题:模型选择、子代理设计、CLAUDE.md 规范、思考预算与工具架构相互作用。先投入 1–2 小时撰写清晰的 CLAUDE.md,搭建 2–3 个聚焦的子代理,并为 token 与思考预算添加用量监测——你将立刻在可靠性、成本可预测性与团队生产力上看到收益。
通过 CometAPI 使用 Claude Code
CometAPI 是一个统一的 API 平台,将来自领先提供商的 500 多个 AI 模型(如 OpenAI 的 GPT 系列、Google 的 Gemini、Anthropic 的 Claude、Midjourney、Suno 等)聚合到一个对开发者友好的接口中。通过提供一致的认证、请求格式与响应处理,CometAPI 大幅简化了将 AI 能力集成到你的应用中的过程。无论你在构建聊天机器人、图像生成器、音乐创作工具,还是数据驱动的分析管道,CometAPI 都能让你更快迭代、控制成本并保持供应商无关,同时利用 AI 领域的最新突破。
我们很高兴地宣布,CometAPI 现已全面支持强大的 Claude Code。 你只需安装 Claude Code,并使用获取到的 Comet API key 与 base address 完成认证,即可在 Claude Code 上使用 Comet API 模型。
为什么要通过 CometAPI 使用 Claude Code?
顶级人工智能能力:使用专为开发者打造的模型轻松生成、调试与优化代码。
- 灵活的模型选择:我们丰富的模型组合让你的开发更顺畅。
- 无缝集成:API 始终可用。几分钟内将 Claude Code 直接集成到你现有的工作流中。
- 通过 CometAPI 使用 Claude Code 将更省成本。CometAPI 提供的 API 比官方价格优惠 20%,并与官方保持最新模型更新。最新的模型为 Claude Opus 4.1。
准备好使用 Claude Code 了吗?请参阅 API 指南 获取详细说明。
