Claude Code 是 Anthropic 推出的官方命令行 AI 编程助手,它能够直接在你的终端中理解代码库、执行文件操作、运行命令,并以对话式交互帮助你完成从编码到调试、从重构到部署的全流程开发任务。与传统的 IDE 插件不同,Claude Code 以 CLI 原生的方式深度嵌入开发者的工作流,支持项目级别的记忆系统、可扩展的 Skills 技能、MCP 工具协议以及 Hooks 自动化钩子,构成了一个功能强大的 AI 开发平台。
对于刚接触 Claude Code 的开发者来说,它的配置体系可能显得庞杂。本教程将从安装后的第一步开始,系统讲解 Claude Code 的核心概念与实战用法,帮助你在最短时间内从入门走向高效使用。
Claude Code 的行为由 文件控制。理解其配置层级和核心选项,是正确使用 Claude Code 的第一步。
💡 国内访问 Claude和Codex: weelinking - 直连、稳定、不折腾
1.1 配置文件的层级关系
Claude Code 采用 5 层配置层级,从高优先级到低优先级依次为:
核心规则:低优先级的值会被高优先级覆盖,但有两个例外: 规则拥有最高优先级,不可被任何层级覆盖; 中的组织策略同样不可被本地设置覆盖。
新手建议:日常使用中,你只需要关注两个文件:个人全局配置 和项目团队配置 。
1.2 核心配置项
以下是最常用的配置项:
各字段说明:
- :指定使用的模型。支持别名 (Claude 4.5 Sonnet)、(Claude 4.6 Opus)、(快速模型),也可使用完整的 model ID。
- :设置 Claude 的回复语言,例如 让 Claude 用中文回复。
- :会话清理周期,默认 30 天,超过此时间的不活跃会话将在启动时被删除。
- :更新通道, 为稳定版, 为最新版。
- :是否默认开启扩展思考(extended thinking),开启后 Claude 会进行更深入的推理。
1.3 模型选择与 Effort Level
Claude Code 支持多种模型别名,满足不同场景的需求:
当选用 Opus 4.6 模型时,还可以通过 命令调整 Effort Level(推理力度):
- High(默认):完整推理深度,适合复杂任务
- Medium:平衡推理,适合日常开发
- Low:最小推理,响应最快
操作方法:运行 命令,选择模型后用左右箭头键调节 Effort Level。
1.4 权限设置
权限系统控制 Claude 可以执行哪些操作。这是保障项目安全的关键配置:
权限分为三个级别:
- :允许 Claude 自动执行,无需确认。适合安全的常规操作。
- :每次执行前需要用户手动确认。适合有风险但有时需要的操作。
- :完全禁止执行,且不可被任何其他层级覆盖。适合保护敏感文件和危险命令。
权限的工具语法支持通配符模式匹配,例如 匹配所有以 开头的命令, 匹配 目录下所有文件的编辑操作。
权限模式还可以通过 字段做全局设定:
安全提示:在团队项目中,务必将 、密钥文件等放入 列表,防止 Claude 意外读取敏感信息。
💡 国内访问 Claude和Codex: weelinking - 直连、稳定、不折腾
CLAUDE.md 是 Claude Code 的“项目记忆文件”。它让 Claude 在每次会话中都能自动了解你的项目约定、编码规范和技术栈偏好,无需每次手动重复说明。
2.1 CLAUDE.md 的作用
你可以在 CLAUDE.md 中写入任何希望 Claude 在工作时遵循的指令,例如:
- 项目的技术栈和架构说明
- 编码规范和命名约定
- 提交消息格式要求
- 测试策略和常用命令
- 需要注意的陷阱和特殊处理
2.2 加载机制:祖先加载与后代懒加载
Claude Code 使用两种机制加载 CLAUDE.md 文件:
祖先加载(向上查找):启动时,Claude Code 从当前工作目录沿目录树向上逐级查找,加载所有找到的 CLAUDE.md 文件。这些文件在启动时立即加载。
后代懒加载(向下查找):当前工作目录的子目录中的 CLAUDE.md 文件不会在启动时加载,只有当 Claude 实际读取或编辑该子目录中的文件时才会加载。
以一个典型的 monorepo 为例:
如果你在 根目录启动 Claude Code:
如果你在 子目录启动 Claude Code:
关键要点:
- 祖先目录的 CLAUDE.md 总是在启动时加载,确保根级指令全局生效。
- 兄弟目录的 CLAUDE.md 永远不会自动加载,避免无关上下文干扰。
- 子目录的 CLAUDE.md 按需加载,优化了上下文空间。
- 你还可以在 放置全局 CLAUDE.md,它对所有项目生效。
2.3 **实践
- 根目录 CLAUDE.md:放置全仓库通用的编码规范、提交格式、PR 模板等。
- 子目录 CLAUDE.md:放置该组件特有的框架约定、架构说明、测试策略。
- CLAUDE.local.md:用于个人偏好设置,加入 不与团队共享。
- 使用 命令可以快速查看和编辑所有已加载的记忆文件。
Skills 是 Claude Code 的“可复用知识模块”,它可以封装特定领域的指令、工作流和**实践,让 Claude 在需要时按需调用。
3.1 Skills 与 CLAUDE.md 的区别
Skills 和 CLAUDE.md 都能向 Claude 注入上下文,但机制不同:
Skills 的核心优势在于按需加载:平时只有 Skill 的描述信息在上下文中,只有当 Claude 判断需要使用某个 Skill 或用户主动调用时,才会加载完整内容。这大幅节省了上下文空间。
3.2 Skill 的存放位置与作用域
3.3 创建一个 Skill
创建 Skill 非常简单,只需在对应目录下创建 文件。例如创建一个项目级的代码审查 Skill:
在 中写入 Skill 的描述和具体指令。Claude 会自动发现并识别该 Skill。
3.4 Monorepo 中的 Skills 自动发现
在 monorepo 中,每个子包可以拥有自己的 Skills:
当你编辑 时, Skill 会被自动发现并可用。而 Skill 在你未涉及 目录时不会出现。
3.5 优先级与上下文预算
当同名 Skill 存在于多个层级时,优先级为:企业级 > 个人级 > 项目级。
Skill 描述的加载有一个字符预算(默认 15,000 字符)。在拥有大量 Skill 的大型项目中可能会触达上限。你可以:
- 运行 命令查看是否有被排除的 Skill
- 设置环境变量 来调整上限
- 保持 Skill 描述简洁,避免浪费上下文空间
MCP(Model Context Protocol)是 Claude Code 的工具扩展协议,它允许你接入外部工具和服务,让 Claude 获得更多能力——例如浏览器自动化、数据库访问、API 调用等。
4.1 MCP 的核心概念
MCP Server 是独立运行的工具服务。Claude Code 通过 MCP 协议与这些服务通信,每个 MCP Server 提供一组可调用的工具(Tools)。安装后,这些工具会以 的格式出现在 Claude 的可用工具列表中。
4.2 安装 MCP 工具
使用 命令安装 MCP Server:
其中 表示安装到用户级作用域(对所有项目生效)。你也可以省略 参数安装到项目级。
4.3 三大浏览器 MCP 工具对比
Claude Code 生态中最常用的浏览器相关 MCP 工具有三个,适用于不同场景:
场景推荐:
- 日常 E2E 测试:首选 Playwright MCP,Token 消耗最低、跨浏览器支持、基于 Accessibility Tree 的元素选择更稳定。
- 性能调优与网络调试:选择 Chrome DevTools MCP,可录制性能 Trace、分析 Core Web Vitals、深度检查网络请求。
- 快速人工验证:Claude in Chrome 适合在已登录状态下快速验证页面效果。
4.4 MCP 配置管理
在 中可以精细管控 MCP Server 的启用与禁用:
在权限配置中,可以用 通配符批量允许所有 MCP 工具,或用 只允许特定 Server 的工具。
使用 命令可以在交互模式下管理已安装的 MCP Server。
Claude Code 提供两种使用接口:CLI(命令行交互)和 Agent SDK(编程 SDK)。了解它们的区别有助于你在不同场景下做出正确选择。
5.1 CLI:交互式开发利器
CLI 是大多数开发者的主要使用方式。它提供:
- 完整的系统提示词:包含模块化架构的 ~269 token 基础提示词,加上 110+ 条件加载组件,涵盖 18+ 内置工具指令、编码规范、安全规则、环境上下文等。
- 自动项目上下文:自动加载 CLAUDE.md、settings、Hooks 配置等。
- 交互式会话:支持多轮对话,持续保持上下文。
- 自定义提示词:支持 追加指令或 完全替换。
5.2 SDK:程序化集成方案
Agent SDK 适合将 Claude Code 能力嵌入到你自己的程序、脚本或自动化流水线中:
- 最小化默认提示词:只包含你显式提供的工具指令,无额外开销。
- 精细控制:可自定义系统提示词、模型选择、温度参数等。
- 预设模式:可使用 预设来获得与 CLI 一致的行为。
5.3 选择建议
重要提示:即使 SDK 和 CLI 使用完全相同的配置,也无法保证输出完全一致。这是因为 Claude API 不提供 seed 参数,加上浮点运算差异和 Mixture-of-Experts 架构的路由变化,输出具有固有的非确定性。设计系统时应对输出变化保持容错能力。
Hooks 是 Claude Code 的生命周期钩子系统,允许你在特定事件发生时自动执行自定义脚本,实现工作流自动化。
6.1 支持的 Hook 事件
Claude Code 支持 13 种 Hook 事件:
6.2 Hook 配置示例
6.3 Hook 的退出码约定
6.4 Hook 中的环境变量
Hook 脚本中可以使用以下环境变量:
- :项目根目录
- :当前工具名称
- :工具输入(JSON 格式)
- :工具输出(仅在 中可用)
实用场景举例:
- 在 中拦截危险的 Bash 命令
- 在 中自动运行代码格式化或 lint 检查
- 在 中自动加载环境变量或启动本地服务
- 在 中根据 Claude 的输出决定是否需要额外操作
以下是 Claude Code 中最常用的命令,建议收藏备查:
交互模式内置命令
CLI 命令行参数
Sandbox 沙盒配置
当需要在安全隔离的环境中运行 Bash 命令时,可以启用 Sandbox:
启用沙盒后,Bash 命令会在受限环境中运行,同时可以将 、 等安全命令排除在沙盒之外。
Q1:Claude Code 与 VS Code 中的 Claude 扩展有什么区别?
Claude Code 是独立的 CLI 工具,直接在终端运行,不依赖任何 IDE。它拥有完整的文件系统访问、命令执行和项目上下文能力。VS Code 扩展则是 IDE 内的集成,两者适用场景不同但互不冲突。
Q2:CLAUDE.md 文件可以写多大?
没有硬性限制,但内容会占用上下文窗口。建议保持精简,只放入最关键的项目约定和指令。冗余信息会挤占 Claude 处理实际任务的上下文空间。
Q3:为什么 Claude 没有读取子目录的 CLAUDE.md?
子目录的 CLAUDE.md 采用懒加载机制,只有当 Claude 实际访问该子目录下的文件时才会加载。如果你需要它立即生效,可以先让 Claude 读取该目录下的某个文件。
Q4:MCP Server 安装后不生效怎么办?
首先运行 命令检查 Server 状态。常见问题包括:Node.js 版本不兼容、npx 缓存过期、网络代理问题等。你也可以通过设置环境变量 (默认 10000ms)增加启动超时时间。
Q5: 权限和 权限冲突时怎么办?
拥有最高优先级,始终生效。即使在更高优先级的配置文件中设置了 , 也不会被覆盖。这是安全设计的核心原则。
Q6:SDK 和 CLI 的输出能保持一致吗?
不能完全保证。即使使用 预设、相同的模型和 ,由于 Claude API 缺少 seed 参数以及基础设施层面的非确定性,输出仍可能存在差异。建议在生产环境中使用结构化输出和校验层来应对这种变化。
Q7:如何让 Claude 默认使用中文回复?
在 中设置 ,或在 CLAUDE.md 中写明“请始终使用中文回复”。
Q8:Hooks 脚本执行超时怎么办?
每个 Hook 可以设置 属性(单位为毫秒)。如果脚本执行超时,Hook 会按失败处理。建议为耗时操作设置合理的超时值,并确保脚本本身有良好的错误处理。
Q9:如何查看 Claude Code 当前加载了哪些工具和上下文?
运行 命令可以查看当前上下文使用情况;运行 查看 MCP 工具状态;运行 查看 Hook 配置;运行 查看已加载的记忆文件。
Q10:多人协作时如何共享配置?
将 提交到 Git 仓库实现团队共享配置。个人偏好放在 (自动被 git-ignored)。根目录的 CLAUDE.md 也应提交到仓库,作为团队共享的项目记忆。
快速上手路线图
- 第一步:安装与基本配置
安装 Claude Code,创建 设置全局偏好(模型、语言、权限)。
- 第二步:项目记忆
在项目根目录创建 CLAUDE.md,写入编码规范、技术栈说明和常用命令。
- 第三步:权限调优
根据项目需要配置 // 权限规则,保护敏感文件。
- 第四步:MCP 工具扩展
安装 Playwright MCP 等常用工具,扩展 Claude 的能力边界。
- 第五步:Skills 与 Hooks
创建项目专属的 Skills 封装可复用知识,配置 Hooks 实现工作流自动化。
- 第六步:团队协作
将 和 CLAUDE.md 提交到仓库,统一团队的 Claude Code 使用体验。
进阶方向
- Subagent 子代理:利用 Task agent 和 Explore agent 拆分复杂任务
- Plugin 插件系统:探索和创建 Claude Code 插件
- Agent SDK 集成:将 Claude Code 能力嵌入 CI/CD 流水线和自动化工具
- 企业级管控:通过 managed-settings.json 实施组织级安全策略
- 自定义 MCP Server 开发:为你的团队构建专属工具服务
Claude Code 的设计哲学是“以开发者为中心、以终端为核心”。掌握本教程中的核心概念后,你已经具备了高效使用 Claude Code 的基础能力。随着实践的深入,你会发现它在代码生成、调试分析、项目管理等场景中带来的巨大生产力提升。
- Claude Code Settings Reference — 配置参考手册,详细介绍了 settings.json 的全部配置选项、权限系统、Hooks、MCP、Sandbox 等内容。
- Understanding CLAUDE.md Loading in Large Monorepos — CLAUDE.md 加载机制详解,阐述了祖先加载与后代懒加载的工作原理。
- Understanding Claude Skills Discovery in Large Monorepos — Skills 技能系统的发现机制,解析了 Skills 在 monorepo 中的自动发现与优先级规则。
- Comprehensive Browser Automation MCP Comparison Report — 浏览器自动化 MCP 工具对比报告,涵盖 Playwright MCP、Chrome DevTools MCP 与 Claude in Chrome 的详细比较。
- Claude Agent SDK vs Claude CLI: System Prompts and Output Consistency — SDK 与 CLI 的系统提示词架构对比,分析了两种接口的差异与输出一致性问题。
官方文档与社区资源:
- Claude Code Settings Documentation
- Claude Code Memory System
- Claude Code Skills Documentation
- Claude Agent SDK Documentation
- Claude Code CLI Reference
- Claude Code Best Practices
- Playwright MCP - GitHub
- Chrome DevTools MCP - GitHub
- weelinking - 直连、稳定、不折腾:国内访问 Claude和Codex
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/223397.html