跳到正文
← 入门指南

📍字节内部的Claude Code教程

14 章 · 约 29 千字

目录

Claude Code 安装与使用

在正式安装之前,我们先了解一下 Claude Code 可以怎么用。

三种使用方式对比:

我的建议:

如果你是完全新手,先用 Web 端 https://claude.ai/ 试试手感如果你想真正用于开发,直接学 CLI(命令行)如果你已经熟练使用,再考虑编辑器集成

目前 Claude Code 的桌面版也发布了,下载地址:https://claude.com/download。

image.png

本教程将以 CLI 使用方式为主,因为它最稳定、最通用,也最接近 Claude Code 的设计初衷。

安装 Claude Code CLI(命令行工具)

前置准备

在安装之前,你需要确保:

你有一个 Claude 账号,当然现在国内很多厂家(DeepSeek/Minimax/GLM)已经适配,后文会介绍怎么切换。

访问 claude.ai 注册账号如果你已经在用 Claude 聊天,那就已经有账号了

你的电脑有命令行工具

Mac / Linux:打开 Terminal(终端)Windows:打开 PowerShell 或者安装 WSL

使用官方脚本安装

macOS, Linux, WSL:

Windows PowerShell:

Windows CMD:

安装完成后,验证一下:

如果显示版本号,说明安装成功!

使用 npm 安装

你的电脑需要安装了 Node.js,在命令行输入:

如果显示版本号(比如 v18.17.0),说明已安装。如果没有,去 nodejs.org 下载安装。

安装 Claude Code

打开命令行,输入以下命令:

等待安装完成(可能需要几分钟)。

安装完成后,验证一下:

如果显示版本号,说明安装成功!

常见安装问题与解决

问题 1: 提示 npm command not found

原因:你的电脑没有安装 Node.js解决:去 nodejs.org 下载安装,然后重新执行安装命令

问题 2: 提示 permission denied

原因:没有管理员权限解决(Mac/Linux):在命令前加 sudo解决(Windows):以管理员身份运行 PowerShell

问题 3: 安装很慢或者卡住

原因:网络问题解决:使用国内镜像源

终端推荐:

WezTerm(跨平台):https://wezterm.org/Alacritty(跨平台):https://alacritty.org/Ghostty(Linux/macOS):https://ghostty.org/Kitty(Linux/macOS):https://github.com/kovidgoyal/kitty

登录 Claude Code

首次登录流程

当你第一次启动 Claude Code 时,需要登录账号:

启动后,系统会提示你登录,在 Claude Code 界面中输入:

然后按照提示完成登录。

支持的账号类型

你可以使用以下任意一种账号类型登录:

1、Claude 订阅账号(推荐)

Claude Pro - 个人专业版Claude Max - 最高级别订阅Claude Teams - 团队版Claude Enterprise - 企业版

2、Claude Console 账号

API 访问账号,使用预付费积分适合开发者和 API 用户

注意:

同一个邮箱可以同时拥有两种账号类型登录后,凭据会被保存,下次无需重复登录如需切换账号,使用 /login 命令重新登录

自动创建工作区(Console 账号)

当你首次使用 Claude Console 账号认证 Claude Code 时,系统会自动创建一个名为 "Claude Code" 的工作区。

这个工作区用于:

集中跟踪所有 Claude Code 的使用成本管理组织内的 Claude Code 使用情况

启动第一次会话

在项目目录中启动

打开终端,进入你的项目目录,然后启动 Claude Code:

欢迎界面

启动后,你会看到 Claude Code 的欢迎界面,包括:

会话信息最近的对话记录最新更新

image.png

查看帮助

输入以下命令查看可用功能:

或者恢复之前的对话:

输入 / 会列出可用的命令:

image.png

凭据管理

登录后,你的凭据会保存在系统中,下次无需重复登录。

详细的凭据管理信息可以查看官方文档的 Credential Management 部分。

提出第一个问题

理解项目

让我们从了解代码库开始,试试这些命令:

Claude 会分析你的文件并提供项目概要。

更多项目相关问题

你还可以问更具体的问题:

询问 Claude Code 的能力

你也可以问 Claude 关于它自己的问题:

重要特性:

Claude Code 会根据需要自动读取文件 - 你不需要手动添加上下文Claude 可以访问自己的文档 - 可以回答关于功能和特性的问题

进行第一次代码修改

简单的编码任务

现在让 Claude Code 实际编写代码。

试试这个简单任务,在 test.py 文件(没有要创建下)中添加 hello world 函数:

在窗口中,输入以下内容:

在 test.py 文件中添加 hello world 函数

输出如下,选择 yes 回车就可以了:

image.png

Claude Code 的工作流程

Claude Code 会:

找到合适的文件

展示建议的修改

请求你的批准

执行编辑

重要提示:

Claude Code 始终会在修改文件前请求许可你可以逐个批准修改也可以为当前会话启用"全部接受"模式

使用 Git 功能

对话式 Git 操作

Claude Code 让 Git 操作变得像对话一样简单:

查看修改

提交更改

更复杂的 Git 操作

你还可以执行更复杂的 Git 任务:

创建分支

查看提交历史

解决合并冲突

修复 Bug 或添加功能

添加新功能

用自然语言描述你想要的功能:

修复现有问题

描述 Bug 并让 Claude 修复:

描述 Bug 并让 Claude 修复:

Claude Code 的处理流程

Claude Code 会:

定位相关代码

理解上下文

实现解决方案

运行测试(如果有的话)

其他常见工作流

代码重构

编写测试

更新文档

代码审查

使用建议

Claude Code 是你的 AI 结对编程伙伴

像跟有帮助的同事交流一样跟它对话描述你想实现什么,它会帮你达成目标不用拘泥于命令格式,用自然语言表达即可

常用命令速查表

命令行命令

交互模式内命令

Claude Code 简介

Claude Code 是 Anthropic 推出的面向开发者的 AI 编程协作工具,与在聊天窗口里写几段代码不同,Claude Code 的核心目标是理解你的整个项目,并参与到真实的编码、修改和重构过程中。

Claude Code 不是一个代码生成器,而是一个能读项目、懂上下文、遵守约束的 AI 编程搭档。

简单说:Claude Code 是 Claude 的命令行版本,专门为编程场景设计。

它不是网页里的聊天框,而是直接在你的终端(Terminal)里运行,可以:

读取你整个项目的代码理解文件之间的关系直接修改代码文件执行你的指令并给出建议

image.png

从能力角度看,Claude Code 主要具备三点特征:

上下文感知:不仅理解单个文件,而是理解整个项目结构工程化导向:关注可维护性、规范、测试,而不是一次性代码可定制行为:通过 Skills(技能包)让 AI 遵守你的规则

打个比方:

Claude(网页版) 就像一个顾问,你把代码截图或复制给他,他给你建议,但你得自己动手改。Claude Code 就像一个坐在你旁边的搭档,他能看到你的整个项目,帮你改代码,甚至帮你写测试、重构函数。

image.png

Claude Code 能做什么?

Claude Code 的核心能力可以归纳为这几点:

1、代码理解与解释

我们可以问它:

这个函数是干什么的?为什么这里会报错?这段代码的性能瓶颈在哪?

它会结合你的项目上下文给出解释。

2、多文件上下文分析

不同于简单的代码补全工具,Claude Code 能理解:

这个函数在哪些地方被调用了这个模块依赖了哪些其他文件整个项目的架构是怎样的

3、工程级代码修改

我们可以说:

把所有用 var 的地方改成 let把这个函数拆成三个小函数给所有接口加上错误处理

它会帮你实际修改代码,而不只是给建议。

4、通过 Skills(技能包)扩展能力

Skills 是 Claude Code 最强大的地方——我们可以教它你的编码习惯和团队规范,让它按我们的方式工作。

比如:

我们团队要求所有函数都加注释API 响应必须符合特定格式测试用例要覆盖边界情况

你可以把这些要求写成 Skills,Claude Code 就会自动遵守。

Claude Code 不能做什么?

Claude Code 不擅长的事情:

不能替你做技术决策的最终判断不能保证生成代码 100% 无 Bug不能理解你没有明确说明的业务语义不适合在你完全不理解的情况下全自动接管项目

一个成熟的使用心态是:让 Claude Code 提供高质量候选方案,而不是绝对正确答案。

Claude Code 的核心价值

Claude Code 的核心理念:协作,而不是替代

Claude Code 并不是在追求把开发者踢出局,它的设计理念非常明确:

人负责:目标、约束、判断、审美AI 负责:执行、分析、对比、重复劳动

对编程新手: 降低学习门槛

如果你是新手,最痛苦的可能是:

看不懂别人的代码不知道为什么报错不知道好代码长什么样

Claude Code 可以:

用人话解释代码:这段代码的意思是先检查用户是否登录,如果没登录就跳转到登录页帮你 Debug: 这里报错是因为变量名拼错了,应该是 username 不是 usrname教你写更好的代码: 这个函数太长了,可以拆成三个小函数,分别负责验证、处理、返回

对独立开发者: 提升开发效率

如果你是独立开发者,你可能:

一个人负责前后端没人帮你 Code Review需要快速试错和迭代

Claude Code 可以:

帮你快速理解第三方库的用法自动生成测试用例帮你重构混乱的代码

对团队: 统一规范,降低协作成本

如果你在团队工作,你可能遇到:

每个人代码风格不一样新人上手慢,老是问重复问题Code Review 花时间

Claude Code 可以:

通过 Skills 统一团队规范(所有人用同一套规则)帮新人快速理解项目在提交前自动检查代码质量

Claude Code 适合哪些人?

我建议以下几类人可以尝试 Claude Code:

编程新手

想学编程但总是卡在看不懂代码需要一个随时解答问题的老师

独立开发者 / 创业者

一个人做项目,需要快速试错想把时间花在核心功能上,不想在琐碎问题上卡住

后端 / 前端 / 全栈工程师

想提升开发效率想学习更好的代码写法需要快速理解复杂项目

技术负责人 / 架构师

想用 AI 辅助团队规范落地想降低新人培养成本

不适合的场景

你完全不想学编程,只想输入需求自动出项目(AI 还做不到)你的工作涉及高度敏感代码,不能使用外部 AI 服务

Claude Code 和其他 AI 编程工具有什么区别?

你可能还听说过 ChatGPT、Cursor、GitHub Copilot,它们和 Claude Code 有什么不同?

Claude Code vs ChatGPT

Claude Code vs Cursor / Copilot

简单总结:

Copilot/Cursor:边写边补全,像智能输入法Claude Code:对话式协作,像高级搭档ChatGPT:通用助手,像顾问

Claude Code 的优势:

对整个项目的理解能力更强可以通过 Skills 定制行为更适合理解旧代码大规模重构等场景

Claude Code 的局限:

不如 Copilot 那样无感(需要主动调用)学习曲线稍高

image.png

Coding Plan

现在市面上有很多大模型厂商, 国外的有 Anthropic、Open AI、Grok、Gemini等,但是访问国外现在不方便,国内的有 DeepSeek、千问、ZLM、Minimax 等。

我们使用Claude Code 写代码最费钱的就是 token 了,海外的访问不方便,而且还贵,国内的现在都有包月套餐,如果长期用建议买包月套餐划算。

本文介绍阿里云百炼的 Coding Plan,它专为 AI 编程工具设计的订阅制服务,整合了千问(Qwen)、GLM、Kimi、MiniMax 等顶级大模型,兼容主流 AI 编程助手(如 Cursor、Claude Code、OpenClaw 等),采用固定月费模式,成本远低于按量计费 API,且彻底杜绝欠费风险。

Coding Plan 核心优势:

顶级模型一键接入:无需自己调用百炼 API,直接在熟悉的编程工具里使用最强模型。成本极低:固定月费(Lite ¥40/月,Pro ¥200/月),首月限时优惠仅 7.9 元 / 39.9 元。安全无忧:禁止 API 直连,仅限交互式编程工具使用,避免滥用封禁风险。图片理解支持:qwen3.5-plus、kimi-k2.5 支持上传截图/设计图直接生成代码。

推荐模型(官方已适配):

qwen3.5-plus(支持图片理解,推荐首选)kimi-k2.5(支持图片理解)glm-5MiniMax-M2.5

Coding Plan 支持以下工具:Cursor、Claude Code、OpenClaw、OpenCode、Cline(VS Code 扩展)、Kilo Code / Kilo CLI、Qwen Code、Codex 等。

订阅 Coding Plan

需要先购买百炼的 Coding Plan 套餐:https://www.aliyun.com/benefit/scene/codingplan

如果用量非常大可以使用 Pro 版本,它是 Lite 版本的 5 倍,支持的模型都一样(现在太火,Lite 版本需要在 9:30 开抢):

image.png

购买完 Coding Plan 套餐,可以在 Coding Plan 页面,获取 Coding Plan 专属 API Key(格式为 sk-sp-xxxxx)。

后续需在 AI 工具中配置以下其中一个 Base URL(因工具而异):

Anthropic 兼容协议:https://coding.dashscope.aliyuncs.com/apps/anthropicOpenAI 兼容协议(OpenClaw 可使用):https://coding.dashscope.aliyuncs.com/v1

更大流行的应用也有对应的文档说明:

image.png

image.png

说明:Coding Plan 专属的 API Key 和 Base URL 与百炼按量计费的 API Key(sk-xxxxx)和Base URL(https://dashscope.aliyuncs.com/xxxxxx)不互通,请勿混用。

如果抢不到,可以直接购买资源包:https://www.aliyun.com/activity/purchase/aistartup

在 Claude Code 配置 Coding Plan

在 Claude Code 中接入百炼 Coding Plan,需要配置以下信息:

ANTHROPIC_BASE_URL:设置为 https://coding.dashscope.aliyuncs.com/apps/anthropic。ANTHROPIC_AUTH_TOKEN:设置为 Coding Plan 专属 API Key。ANTHROPIC_MODEL:设置为 Coding Plan 支持的模型,qwen3.5-plus(支持图片理解)、kimi-k2.5(支持图片理解)、glm-5、MiniMax-M2.5。

macOS/Linux

创建并打开配置文件 ~/.claude/settings.json。

~ 代表用户主目录,如果 .claude 目录不存在,需要先行创建,可在终端执行 mkdir -p ~/.claude 来创建。

Claude Code 第一次使用

安装了 Claude Code 及配置好 API 后,我们就可以开始使用了。

接下来,我们用一个最简单的示例项目来完成第一次使用。

创建一个示例项目:

mkdir runoob-claude-demo

cd runoob-claude-demo

创建一个简单文件:

touch main.py

写入以下内容:

def add(a, b):

return a + b

让 Claude Code 解释代码

在项目目录中运行:

claude

然后输入:

解释main.py这个文件在做什么,用新手能理解的方式说明

Claude 会读取当前目录下的代码,并给出解释。

image.png

让 Claude Code 帮你改代码

继续在 Claude 会话中输入:

给这个函数增加类型注解,并补充基本的错误处理

Claude 会给出修改建议,通常包含:

修改后的代码修改原因说明

你可以选择:

直接应用手动调整拒绝修改

image.png

VS Code 安装 Claude Code

如果不喜欢使用 Claude Code 的命令行模型,我们可以在 VS Code 编辑器中安装 Claude Code。

打开 VS Code,进入扩展市场,搜索 Claude Code 安装:

image.png

安装完成后,点击右上角 Claude Code 图标,即可进入 Claude Code 页面:

image.png

这样有账号的可以使用 /login 登录:

image.png

也可以在对话框输入 /config 进入设置,勾选 Disable Login Prompt 配置来关闭登录页面:

image.png

我们可以选中文件中的代码,让 Claude Code 帮我们解析说明或修改,选中后,会提示已经选中的代码行数:

image.png

当 Claude 需要修改文件时,它会自动打开并排对比视图,左边显示文件原始内容,右边显示建议修改后的内容,然后询问您是否同意修改。

image.png

使用提示框(聊天输入框)

提示框就是你和 Claude 聊天的地方,它功能很强大,以下是常用功能,一看就会用:

1、权限模式:

点击提示框底部的模式指示器,就可以切换权限模式。

正常模式(默认):Claude 每次要操作前都会先问你同不同意。Plan Mode(计划模式):Claude 先告诉你它打算怎么做,得到你批准后才动手修改。自动接受模式:Claude 直接编辑,不再每次询问。

你也可以在 VS Code 设置里搜索 claudeCode.initialPermissionMode 来设置默认模式。

image.png

2、命令菜单:

在提示框里输入 /(或点击输入框)就能打开命令菜单。

常用选项包括:附加文件、切换模型、开启扩展思考、查看使用量(输入 /usage)。

下方的"自定义"部分还能管理 MCP servers、hooks、记忆、权限和插件。

带有 终端图标 的命令,会在 VS Code 的集成终端里直接打开。

image.png

3、上下文用量指示器:提示框下方会实时显示你已经用了多少 Claude 的上下文窗口(context)。

Claude 会自动帮你压缩内容;如果你想手动压缩,输入 /compact 即可。

4、扩展思考(Extended Thinking):遇到复杂问题时,可以让 Claude 多花点时间深度思考。

通过命令菜单(输入 /)切换开启/关闭。

5、多行输入:

按 Shift + Enter 可以换行,不用立刻发送消息。

在弹出的"其他"自由文本框里也同样适用。

引用文件和文件夹(@ 提及功能)

想让 Claude 看懂你的代码?直接用 @ 提到文件或文件夹就行!

输入 @ 后面跟文件名或文件夹名,Claude 就会自动读取内容,可以回答问题或直接修改。

image.png

支持模糊匹配,不用打全名:

超实用小技巧:

选中代码时:直接在编辑器里选中一段代码,Claude 会自动看到你选中的部分。提示框下方会显示"已选中 XX 行"。快速插入:按 Option + K(Mac)或 Alt + K(Windows/Linux),就能插入带文件路径和行号的 @ 提及,例如 @app.ts#5-10。隐藏选中内容:点击提示框底部的"选择指示器"(眼睛图标),斜杠眼睛表示 Claude 看不到你选中的文本。拖拽附件:把文件拖到提示框时按住 Shift,可以作为附件添加。

想删除附件?点击附件右上角的 × 即可。

PDF 大文件专属:你可以指定让 Claude 只读某几页,例如"第 1-10 页"或"从第 3 页开始"。

恢复过去的对话

点击 Claude Code 面板顶部的下拉菜单,就能看到你的所有聊天历史记录。

支持关键字搜索,也能按时间筛选(今天、昨天、过去 7 天等)。

点击任意一条记录,就能完整恢复之前的对话内容。

鼠标悬停在某条记录上,会出现 重命名 和 删除 按钮:

重命名:给对话起个好记的标题删除:把这条记录从列表里移除

image.png

Claude Code 项目初始化

Claude Code 项目初始化可以在 Claude Code 的交互界面中输入:

image.png

我们可以在一个已有的项目目录初始化,也可以新建一个。

我们可以先创建一个目录:

image.png

进入该目录:

image.png

创建一个测试文件 test.py,代码如下:

image.png

进入 Claude Code 的交互界面:

image.png

使用 /init 命令来初始化项目:

image.png

image.png

如果使用 VS Code,也可以在 VS Code 的 Claude Code 界面输入 /init:

image.png

Claude 会自动扫描你的代码库——读取 package.json、现有文档、配置文件以及代码结构,然后生成一份专属于你项目的 CLAUDE.md 文件。

Claude 整个过程无需手动操作,Claude 会自行分析并输出初始配置。

image.png

CLAUDE.md 文件

CLAUDE.md 是一个放在项目根目录的 Markdown 文件,Claude Code 在每次会话开始时都会自动读取。

CLAUDE.md 会成为 Claude 系统提示的一部分,使每次对话都能预先加载项目上下文,不再需要重复解释基本信息。

一份好的 CLAUDE.md 应该覆盖三个维度:

WHAT(是什么):技术栈、项目结构,为 Claude 提供代码库的全局地图WHY(为什么):项目的目的,各模块的功能与定位HOW(怎么做):开发方式,例如使用 bun 而非 node,以及 Claude 如何验证改动是否正确 Humanlayer

以下是一份典型的 CLAUDE.md 结构示例:

初始化后的最佳实践

迭代优化,而非一次写死。

/init 命令适合快速入门,但真正的价值来自于随时间不断迭代,可以补充 Claude 无法自动推断的内容,例如分支命名规范、部署流程、Code Review 要求;同时删去不适用的通用建议。

提交到版本控制:将 CLAUDE.md 提交到 Git,这样整个团队都能从中受益,新成员可以通过让 Claude 解释代码库来快速上手。保持精简:内容要简洁且普遍适用。采用"渐进式披露"原则——不要把所有你想让 Claude 知道的内容都塞进去,而是告诉它如何查找重要信息,让它按需获取,避免撑爆上下文窗口。不要让 CLAUDE.md 替代 linter:在文件中写代码风格规范是最常见的误区之一。永远不要用 LLM 来做 linter 的工作——linter 更快、更便宜,而且是确定性的。代码风格约束只会让上下文窗口膨胀,降低 Claude 的指令遵从质量。

使用 # 快捷键持续更新

在对话中,随时用 # 前缀给 Claude 发送记忆指令:

这些补充会逐渐积累,形成一份真正反映团队实际工作方式的 CLAUDE.md。

验证初始化效果

初始化完成后,可以通过以下对话确认 Claude 是否正确理解了项目:

这个项目是做什么的?解释一下目录结构。项目用了哪些技术?运行测试的命令是什么?

Claude Code 交互模式

与网页版 Claude 不同,Claude Code 并不是一个单纯的聊天工具,而是一个具备工程上下文、权限控制和执行能力的开发协作系统。

因此,它在处理任务时,引入了三种核心的思维模式:

Ask(询问)Plan(规划)Edit(编辑)

理解这三种模式的边界与职责,是高效、安全使用 Claude Code 的关键。

终端执行其实不用手动切换,Claude 会自动切换,在 VS Code 插件中可以手动切换模式:

image.png

三大交互模式详解

在终端中使用 Claude Code 时,你不需要手动切换模式开关,Claude 会根据你的指令内容,自动判断当前应进入哪一种模式。

不过,作为使用者,你必须在 Prompt 中清楚表达自己的意图,否则 Claude 很容易做出与你预期不一致的行为。

1、Ask 模式:只看不动(只读分析)

Ask 模式是 Claude Code 的默认安全模式。

使用场景

当你处于以下状态时,应优先使用 Ask 模式:

看不懂现有代码刚接手一个新项目想定位 Bug 的原因,但还没想好怎么修想确认某段逻辑是否合理

模式特点

Claude 可以读取代码可以进行分析、解释、推理绝对不会修改任何文件不会执行任何 Shell 命令

你可以把 Ask 模式理解为:

一位经验丰富、但双手放在背后的高级工程师。

示例指令

专业建议:

不确定要不要改代码时,一律先 Ask。

2、Plan 模式:谋定而后动(只规划,不执行)

Plan 模式是 Claude Code 中最像架构师思维的模式。

使用场景

当你面对的是复杂或影响范围较大的改动时,应该使用 Plan 模式,例如:

新增一个核心模块重构已有接口或业务流程引入新技术(缓存、中间件、鉴权方案等)涉及多个文件、多个层级的修改

模式特点

Claude 不会直接改代码会先给出完整的实施方案通常以步骤列表(TODO List)的形式呈现你确认方案后,才进入 Edit 阶段执行

Plan 模式的核心价值在于:

把先写代码变成先达成共识。

示例指令

实战建议:

Plan 模式用得越多,返工概率就越低。

3、Edit 模式:直接执行(可写代码)

Edit 模式是 Claude Code 真正动手的阶段。

使用场景

当你已经明确知道:

要改哪改成什么改动风险可控

此时就可以直接进入 Edit 模式。

模式特点

Claude 会定位相关文件生成精确的 Diff(差异修改)可能会请求执行测试、构建等命令所有写入操作都需要你确认

Edit 模式下,你的角色是:

代码的最终审查者,而不是旁观者。

核心斜杠命令(/)

斜杠命令用于控制 Claude Code 的会话状态和行为,而不是写业务代码。

在终端中输入 / 即可触发。

image.png

建议:

/cost 和 /compact 是长期使用者的高频命令。

一个典型的交互流程示例

真实开发中,三种模式往往是连续使用的。

示例流程

1、Ask

Claude 分析代码和日志,指出是缺少 email 校验。

2、Plan

我想添加 email 格式校验,并把错误信息规范化,你打算怎么做?

Claude 给出步骤:修改校验逻辑 → 更新测试 → 调整返回结构。

3、Edit

Claude 修改文件,并展示 Diff 供你确认。

交互中的权限确认机制

Claude Code 对系统操作非常克制,任何有风险的行为都会请求你的确认。

常见权限确认

写入文件

会展示代码 Diff,你需要确认后才能写入。执行命令

例如 npm test、pnpm build,都会明确询问是否允许。

重要提醒:

永远不要在没看 Diff 的情况下直接确认。

Claude 很强,但依然可能产生错误或幻觉。

Claude Code 操作说明

Claude Code 的输入框不是纯聊天框,而是一个:

AI + 编辑器 + 命令调度器的融合终端

主要有三类前缀触发器:

/ —— 操作型命令(最重要)

/ 是 Claude Code 中触发内置命令 /工具的核心符号,类似终端命令行的指令前缀,用于告诉 Claude 执行特定操作而非单纯生成文本。

核心用途:调用内置功能(如代码生成、文件操作、环境执行、插件调用等)。

/ 后紧跟命令关键词,空格后接参数(如文件名、执行命令、修复目标等),是 Claude Code 区分自然语言对话和代码操作指令的关键。

输入 / 会弹出命令列表:

image.png

常见高频命令:

例如:

//plan 实现一个用户登录模块

@ —— 上下文注入

@ 后面跟文件名,会主动联想:

image.png

引用单文件:

image.png

用多个文件:

引用整个目录使用 @ + 目录路径:

引用错误日志:

Claude 会把文件内容真实加载进推理上下文。

! -- Bash 命令

通过在输入前加上 ! 直接运行 bash 命令,无需通过 Claude,格式为:

image.png

例如查看当前的目录:

image.png

Vim 编辑器模式

使用 /vim 命令启用 vim 风格编辑,或通过 /config 永久配置。

模式切换

导航(NORMAL 模式)

编辑(NORMAL 模式)

文本对象(NORMAL 模式)

文本对象与 d、c 和 y 等运算符一起工作:

命令历史

Claude Code 为当前会话维护命令历史:

历史按工作目录存储使用 /clear 命令清除使用上/下箭头导航(请参阅上面的键盘快捷键)注意:历史扩展(!)默认禁用

使用 Ctrl+R 反向搜索

按 Ctrl+R 交互式搜索您的命令历史:

开始搜索:按 Ctrl+R 激活反向历史搜索键入查询:输入文本以在以前的命令中搜索 - 搜索词将在匹配结果中突出显示导航匹配:再次按 Ctrl+R 循环浏览较旧的匹配接受匹配:按 Tab 或 Esc 接受当前匹配并继续编辑按 Enter 接受并立即执行命令取消搜索:按 Ctrl+C 取消并恢复原始输入在空搜索上按 Backspace 取消

搜索显示匹配的命令,搜索词突出显示,使您可以轻松找到并重用以前的输入。

后台 bash 命令

Claude Code 支持在后台运行 bash 命令,允许您在长时间运行的进程执行时继续工作。

后台运行的工作原理

当 Claude Code 在后台运行命令时,它异步运行命令并立即返回后台任务 ID。Claude Code 可以在命令继续在后台执行时响应新提示。

要在后台运行命令,您可以:

提示 Claude Code 在后台运行命令按 Ctrl+B 将常规 Bash 工具调用移到后台。(Tmux 用户必须按两次 Ctrl+B,因为 tmux 的前缀键。)

主要功能:

输出被缓冲,Claude 可以使用 TaskOutput 工具检索它后台任务具有用于跟踪和输出检索的唯一 ID当 Claude Code 退出时,后台任务会自动清理

要禁用所有后台任务功能,请将 CLAUDE_CODE_DISABLE_BACKGROUND_TASKS 环境变量设置为 1。

常见后台命令:

构建工具(webpack、vite、make)包管理器(npm、yarn、pnpm)测试运行器(jest、pytest)开发服务器长时间运行的进程(docker、terraform)

使用 ! 前缀的 Bash 模式

通过在输入前加上 ! 直接运行 bash 命令,无需通过 Claude:

Bash 模式:

将命令及其输出添加到对话上下文显示实时进度和输出支持相同的 Ctrl+B 后台运行长时间运行的命令不需要 Claude 解释或批准命令支持基于历史的自动完成:键入部分命令并按 Tab 从当前项目中的以前的 ! 命令完成

这对于快速 shell 操作同时保持对话上下文很有用。

按键说明

常规控制

文本编辑

主题和显示

语法高亮仅在 Claude Code 的原生构建中可用。

多行输入

Shift+Enter 在 iTerm2、WezTerm、Ghostty 和 Kitty 中无需配置即可工作。对于其他终端(VS Code、Alacritty、Zed、Warp),运行 /terminal-setup 以安装绑定。

Claude Code 基础用法

在日常开发中,我到底能用 Claude Code 干什么?

答案很简单:学代码、写代码、改代码。

但前提是——你要学会如何正确地下指令。

用 Claude Code 学代码

Claude Code 最被低估的能力之一,并不是写得快,而是讲得清楚。

在学习阶段,它更像一位耐心、不厌其烦、而且永远在线的高级同事。

让 Claude 用新手能懂的方式解释代码

很多人问 Claude 的方式是:

同步块

这段代码什么意思?

这种问法得到的,往往是跳过关键细节的总结。

更好的方式是明确目标人群。

推荐提问方式

请用新手能听懂的方式,解释这个函数的作用和执行流程

假设我是刚学 Python,请解释这段代码中每一步在做什么

Claude 会自动:

减少术语

拆解抽象概念

使用类比或伪代码辅助说明

建议:

不怕你问得菜,就怕你问得模糊。

对比不同实现方式

当你看到一段代码"能跑,但不确定是不是最优"时,可以这样问:

这个功能有没有更清晰的实现方式?请给我2-3种对比

对比一下现在的写法和使用函数式写法的区别

Claude 通常会从以下角度对比:

可读性

性能

扩展性

是否符合当前项目风格

初学者非常适合用这种方式建立代码审美。

逐行讲解复杂逻辑

面对嵌套多、判断复杂的代码,可以直接要求"逐行拆解"。

请

逐行解释这个函数,每一行说明它的输入、输出和副作用用

哪些地方是容易出bug的?

这类问题非常适合理解:

复杂 if / else

状态机逻辑

老项目中的历史代码

用 Claude Code 写代码

写代码阶段,不要一上来就追求完美实现,而是从小而确定的需求开始。

从需求描述生成代码

低质量需求描述的典型特征是:

做一个 XX 功能。

高质量需求描述应该至少包含三点:

输入是什么

输出是什么

约束条件是什么

推荐提问方式

请用Python写一个函数:

-输入:用户邮箱字符串

-输出:是否为合法邮箱(True/False)

-不依赖第三方库

Claude 会给出一个可运行、结构清晰的实现。

写简单函数 / 模块

当需求稍微复杂一点时,明确告诉 Claude 边界在哪里。

写一个独立的工具函数,不要依赖数据库或全局状态

这个模块只负责数据转换,不要处理

这样可以有效避免:

过度设计

职责混乱

难以测试的代码

写测试用例

这是 Claude Code 非常适合初学者的一个使用场景。

为这个函数补充单元测试,覆盖正常情况和边界情况

使用当前项目已有的测试框架,不要引入新的库

Claude 会自动参考项目中已有测试风格,生成风格一致的测试代码。

建议:

写代码不写测试,是最容易养成的坏习惯。

用 Claude Code 改代码

相比"写新代码",改代码反而更考验基本功。

重构函数(不改行为)

重构时,一定要强调这句话:不改变现有行为。

在不改变现有逻辑的前提下,重构这个函数

Claude 会重点关注:

重命名变量

拆分逻辑块

消除重复代码

提升可读性

可读性不是个人感觉,而是有明确标准的。

提升这段代码的可读性,让新同事更容易理解

哪些地方可以加注释或拆成小函数?

拆分大函数

初学者最常见的问题之一:一个函数干太多事。

这个函数太长了,请帮我拆分成多个职责清晰的小函数

Claude 通常会:

先识别逻辑边界

再给出拆分方案

最后应用修改

统一代码风格

当项目中风格混乱时,可以直接交给 Claude 做统一整理。

按照当前项目的风格规范,统一这几个文件的代码风格

不要改逻辑,只处理格式、命名和结构

常见高质量提问方式

Claude Code 的上限,取决于你的提问质量。

提问结构模板(强烈推荐)

一个稳定好用的提问模板:

背景:

(我现在在做什么)

目标:

(我希望达到什么效果)

约束:

(不能做什么/必须遵守什么)

输出要求:

(代码/解释/步骤)

好问题 vs 坏问题

坏问题:

帮我优化这段代码

好问题:

在不改变行为的前提下,优化这段代码的可读性,并说明你做了哪些改动

如何限制 Claude 的自由发挥

如果你不限制,Claude 会:

自动补功能

自动重构

自动"帮你想更多"

学会提前设边界:

不要引入新库

不要改变函数签名

如果不确定,请先询问我

专业习惯:

把 Claude 当成执行力极强,但需要被约束的工程师。

Claude Code MCP

如果说 Claude Code 是一个优秀的打字员(代码生成)和测试员(代码校验),那么加上 MCP(Model Context Protocol,模型上下文协议) 则是让 Claude 真正拥有了外部感官和手脚——它不再局限于当前项目的代码文件,而是能主动连接外部世界的资源与工具,成为你的全链路开发协作伙伴。

image.png

什么是 MCP (Model Context Protocol)?

MCP 是 Anthropic 推出的一套开放的标准化协议,专为解决AI 与外部工具协作的核心痛点而生。

MCP 的核心逻辑颠覆了传统思路:不要让 AI 去逐一学习所有工具的使用规则,而是让所有工具都提供一个统一的接口给 AI。

这个逻辑就像现实中的通用插座——不用让电器适配不同的插座,只要插座统一标准,所有电器都能直接使用。

连接 MCP 服务器后,你可以让 Claude Code:

从 JIRA/工单系统获取需求并开发功能、创建 GitHub PR

分析 Sentry 监控数据、定位生产环境错误

查询 PostgreSQL/MySQL 等数据库数据

基于 Figma 设计更新代码、自动化生成邮件草稿等

image.png

为什么 Claude Code 需要 MCP?

在没有 MCP 之前,Claude Code 的能力被严格限制在你当前打开的项目文件夹内,就像一个坐井观天的助手,只能看到眼前的代码,无法感知项目之外的任何信息。而 MCP 的出现,彻底打破了这个信息孤岛,让 Claude 能深度参与全流程开发:

举几个直观的场景对比,你就能快速理解 MCP 的价值:

简单来说,MCP 让 Claude Code 从被动接收信息的助手,变成了主动获取信息、执行操作的协作伙伴。

Claude Code 中 MCP 的基本使用方式

Claude Code 内置了完整的 MCP 管理能力,核心命令只有一个:

Claude mcp

常用子命令:

命令

作用

claude mcp add

添加一个 MCP 服务器

claude mcp list

查看所有已配置服务器

claude mcp get <name>

查看某个服务器详情

claude mcp remove <name>

删除服务器

/mcp

在 Claude Code 中查看状态/认证

需要我帮你补充命令参数说明或使用示例吗?

安装 MCP 服务器

MCP 服务器支持 HTTP/SSE/stdio 三种接入方式,推荐优先使用 HTTP(SSE已弃用)。

远程 HTTP 服务器(推荐)

适用于云服务类工具,是最通用的方式:

基础语法

claude mcp add --transport http <服务器RL

示例1:连接Notion

claude mcp add --transport http notion

https://mcp.notion.com/mcp

示例2:带身份验证的HTTP服务器

claude mcp add --transport http secure-api

https://api.example.com/mcp \

--header"Authorization:Bearer 你的令牌"

远程 SSE 服务器(已弃用)

仅兼容旧版工具,优先用 HTTP 替代:

基础语法(仅兼容用)

claude mcp add --transport sse<服务器URL

示例:连接Asana

claude mcp add --transport sse asana

https://mcp.asana.com/sse

本地 stdio 服务器

适用于需要本地系统访问的工具(如本地数据库、自定义脚本):

基础语法(注意:--前是Claude参数,--后是服务器命令)

claude mcp add --transport stdio[--env 环境变量]

<服务器名称>

<启动命令>

示例:连接Airtable(需替换自己的API密钥)

claudermcp add --transport stdio --env AIRTABLE_API_KEY=你的密

钥airtable\

-- npx -y airtable-mcp-server

关键注意:--transport/--env 等参数必须放在服务器名称前面,-- 用于分隔Claude参数和服务器命令,避免参数冲突。

管理 MCP 服务器

配置完成后,你可以通过以下命令管理服务器:

列出所有已配置的服务器

claude mcp list

查看指定服务器详情(如github)

claude mcp get github

删除指定服务器

claude mcp remove github

在Claude Code中检查服务器状态

/mcp

配置范围(控制服务器可见性)

你可以指定 MCP 服务器的生效范围,适配个人/团队使用场景:

范围

用途

配置命令示例

local(默认)

仅当前项目可用,私密配置(如敏感密钥)

claude mcp add --scope local ...

project

团队共享(存储在.mcp.json,可提交版本库)

claude mcp add --scope project ...

user

所有项目可用(个人全局配置)

claude mcp add --scope user ...

优先级:local > project > user(同名服务器,本地配置覆盖共享配置)

实用示例

示例 1:GitHub 代码审查

claude mcp add --transport http github https://api.githubcopilot.com/mcp/

在 Claude Code 中:

Review PR #456 and suggest improvements

Show me all open PRS assigned to me

示例 2:Sentry 生产环境排错

claude mcp add --transport http sentry https://mcp.sentry.dev/mcp

/mcp #完成 OAuth登录

> What are the most common errors in the lLast 24 hours?

示例 3:直接查 PostgreSQL

claude mcp add --transport stdio db \

-- npx-y @bytebase/dbhub\

--dsn "postgresql://readonly:pass@prod.db.com:5432/:analytics

>Showmetheschemafortheorderstable

> Which users haven't purchased in 90 days?

在对话中使用 MCP 的高级方式

1、使用 @ 引用 MCP 资源

Analyze @github:issue://123 and suggest a fiix

支持多个资源对比:

Compare @postgres:schema://users with @docs:file://user-model

2、MCP Prompt 作为斜杠命令

MCP 可以暴露命令:

/mcp_github__list_prs

/mcp_jira_create_issue "Login bug" high

Claude 会像执行内置命令一样执行它们。

关键注意事项

身份验证:远程MCP服务器(如GitHub/Sentry)需在Claude Code中执行 /mcp 完成OAuth 2.0授权;

Windows兼容:本地stdio服务器若用npx,需加cmd /c包装(如-- cmd /c npx -y 包名),否则会报"Connection closed"错误;

第三方风险:使用非官方MCP服务器时,需确认来源可信,避免提示注入/安全风险;

参数顺序:stdio服务器配置时,-- 前后的参数不可颠倒,否则会执行失败。

Claude Code 子代理(Subagent)

在 Claude Code 中,你可以创建专门的 AI 子代理(Subagent),用于处理特定类型的任务,从而获得更好的上下文管理、更强的约束控制和更高的执行效率。

子代理是运行在独立上下文窗口中的专用 AI 助手。

每个子代理都可以拥有:

独立的系统提示(System Prompt)

独立的上下文(不污染主对话)

指定的模型(Sonnet / Haiku / Opus)

明确的工具访问权限

独立的权限模式

生命周期钩子(Hooks)

当 Claude 判断你的请求符合某个子代理的描述(description)时,就会自动将任务委托给该子代理,由它独立完成并返回结果。

为什么要使用子代理?

子代理的核心价值在于隔离 + 专业化。

它可以帮助你:

保留主对话上下文

把探索、扫描、日志分析等"重任务"放到子代理中

强制执行约束

例如:只读分析、禁止写文件、禁止执行危险命令

跨项目复用

用户级子代理一次配置,所有项目可用

行为专业化

为特定领域(代码审查、调试、数据分析)设计专用 AI

控制成本

将简单任务交给 Haiku,将复杂分析交给 Sonnet

一句话总结:

子代理 = 专门干某一类事的 AI 工具人

Claude Code 内置的子代理

Claude Code 已内置多种子代理,通常会自动使用,你不需要手动配置。

1、Explore(探索代理)

用途: 只读搜索与分析代码库

模型:Haiku(速度快、延迟低)

工具:只读工具(不能 Edit / Write)

场景:

搜索文件

理解代码结构

查找定义和引用

Claude 会在需要看代码但不改代码时自动使用 Explore。

支持不同探索深度:quick / medium / very thorough。

2、Plan(规划代理)

用途: 计划模式下的代码库研究

模型:继承主对话

工具:只读工具

场景:

在 Plan 模式中理解项目

为后续方案制定收集上下文

它的作用是:

在不产生嵌套代理的前提下,安全收集规划所需信息

3、General-purpose(通用代理)

用途: 复杂、多步骤任务

模型:继承主对话

工具:全部工具

场景:

需要"看 + 改 + 推理"

多步骤代码修改

综合分析后给出结论

4、其他内部代理(无需手动使用)

快速入门:创建你的第一个子代理

推荐方式:使用 /agents 命令

1、打开子代理管理界面

/agents

2、创建用户级子代理

选择 Create new agent

选择 User-level

保存位置:~/.claude/agents/(所有项目可用)

3、使用 Claude 自动生成

示例描述:

一个代码改进代理,扫描项目文件

针对可读性、性能和最佳实践提出建议

并给出改进示例。

Claude 会生成系统提示和初始配置,你可以按 e 手动编辑。

4、选择工具权限

只做代码审查 → 仅勾选只读工具

需要改代码 → 保留 Edit / Write

5、选择模型

推荐:Sonnet

分析能力与速度平衡

6、保存并使用

使用 code-improver 子代理为此项目提出改进建议

子代理会独立运行并返回结果。

子代理的作用范围

子代理本质是带 YAML frontmatter 的 Markdown 文件,不同位置代表不同作用范围。

使用建议

项目子代理

跟代码一起提交

团队共享

用户子代理

个人习惯与工具

CLI 子代理

临时测试 / 自动化脚本

子代理配置文件结构

---​

name: code-reviewer​

description: Reviews code for quality and best practices​

tools: Read, Grep, Glob​

model: sonnet​

permissionMode: default​

---​

You are a senior code reviewer.​

Analyze code and provide actionable feedback.

必填字段

name:唯一标识(小写 + 连字符)

description:非常重要,Claude 是否调用它主要靠这个

常用字段说明

⚠️ bypassPermissions 只适合完全可信的子代理

如何使用子代理

自动委托

Claude 会根据你的描述自动判断:

让 code-reviewer 子代理检查最近的改动

前台 vs 后台

前台:阻塞主对话,可交互后台:并行执行,不打断你(无 MCP、无交互)

快捷键:

Ctrl + B:将运行中的子代理放到后台

典型使用模式

1、隔离高输出任务

使用子代理运行测试,只返回失败的测试

2、并行研究

并行使用子代理分析认证、数据库和 API 模块

3、串联子代理

先用code-reviewer找问题,

再用 optimizer修复问题

子代理上下文与恢复

每次调用 = 新子代理

实例子代理

上下文独立存储

可恢复继续执行:

继续刚才的code-reviewer分析,重点看授权逻辑

存储位置示例:

~/.claude/projects/{project}/{sessionId}/subagerts

什么时候该用子代理?

用主对话,当:

需要频繁来回调整

多阶段强依赖

上下文快速、小改动

用子代理,当:

任务自包含

输出很大

需要强约束或复用

子代理不能再创建子代理

需要嵌套 → 用 技能(Skills)

Claude Code 插件

插件(Plugin)是 Claude Code 中最高级别的扩展机制,用于将命令、代理、Skills、钩子、MCP、LSP 等能力打包、版本化、共享和分发。

插件 = 一组可复用的 Claude Code 扩展能力集合

一个插件可以包含:

斜杠命令(Slash Commands)

子代理(Agents)

Skills(能力说明)

Hooks(事件钩子)

MCP 服务器(外部工具/服务)

LSP 服务器(代码智能)

插件的核心目标只有一个:

让 Claude Code 的能力像工具箱"一样被复用,而不是每个项目重复配置

插件 vs 独立配置(如何选择)

Claude Code 支持两种扩展方式:

什么时候用独立配置?

只在当前项目使用

个人工作流

尚未稳定的实验性配置

想要简短命令名(如 /review)

什么时候用插件?

要在多个项目复用

要分享给团队或社区

需要版本控制、升级、回滚

计划通过市场分发

可以接受命名空间命令(避免冲突)

最佳实践:

先在 .claude/ 中迭代 → 稳定后打包为插件

插件的最小结构(必须记住)

my-plugin/​

├── .claude-plugin/​

│ └── plugin.json # 插件清单(必需)​

├── commands/ # 斜杠命令​

├── agents/ # 子代理​

├── skills/ # Skills​

├── hooks/ # 钩子​

├── .mcp.json # MCP 配置​

└── .lsp.json # LSP 配置

重要规则

.claude-plugin/ 目录中只能放 plugin.json

其他目录必须在插件根目录

插件清单(plugin.json)

插件的"身份证",决定:

插件名称

命令命名空间

版本

作者信息

示例:

"name": "my-first-plugin",​

"description": "A greeting plugin to learn the basics",​

"version": "1.0.0",​

"author": { "name": "Your Name" }​

关键字段说明:

斜杠命令(最常用插件能力)

1、命令定义方式

位于 commands/ 目录

每个命令 = 一个 Markdown 文件

文件名 = 命令名

示例:

commands/hello.md

对应命令:

/my-first-plugin:hello

2、命令内容示例

---​

description: Greet the user with a friendly message​

---​

Greet the user warmly and ask how you can help them today.

3、命令参数

使用 $ARGUMENTS 捕获用户输入:

Greet the user named "$ARGUMENTS" warmly.

调用:

/my-first-plugin:hello Alex

本地测试插件(开发必会)

使用 --plugin-dir 直接加载插件目录:

claude --plugin-dir ./my-plugin

特点:

不需要安装

修改后需重启 Claude Code

支持同时加载多个插件

claude --plugin-dir ./plugin-a --plugin-dir ./plugin-b

插件还能做什么

插件市场(Plugin Marketplace)

插件通过市场分发,本质是一个插件目录仓库。

官方市场

默认已添加

运行 /plugin → Discover

image.png

/plugin install plugin-name@claude-plugins-official

插件安装范围

推荐:

团队工具 → 项目范围

个人效率工具 → 用户范围

典型插件分类

1、代码智能(LSP)

TypeScript、Python、Go、Rust 等

提供跳转定义、引用、类型错误

需要本地安装对应语言服务器

2、外部集成(MCP)

GitHub / GitLab

Jira / Notion

Slack / Figma

Vercel / Supabase

本质:插件 = MCP 服务器 + 配置

3、开发工作流

Git 提交、PR

代码审查代理

插件开发工具

插件管理常用命令

/plugin # 打开插件管理器​

/plugin install # 安装插件​

/plugin uninstall # 卸载​

/plugin enable/disable # 启用 / 禁用​

/plugin marketplace add # 添加市场​

/plugin marketplace rm # 移除市场

从 .claude/ 迁移到插件(核心思路)

迁移后:

插件版本优先生效

可删除旧 .claude/ 配置避免重复

什么时候你一定要用插件?

你已经有稳定的 Claude 工作流

你在反复复制 .claude/团队成员开始问你:"这个怎么配置?"

你希望 Claude 像 IDE 插件一样可控

插件,是 Claude Code 从"个人 AI 助手"走向"工程化工具"的分水岭

Claude Code 如何工作

简单来说:Claude Code 就像一个超级聪明的编程搭档,它能在你的电脑上自动帮你写代码、改 bug、运行命令、搜索文件……几乎所有你在终端里能做的事,它都能干!

本节带你彻底搞懂它的底层原理(代理循环、模型、工具等),看完你就知道它为什么这么强大,以及怎么用得更顺手。

Claude 的工作流程

当你给 Claude 一个任务时,它会像人类一样循环思考三个步骤:

收集上下文(看你的代码、文件、错误信息)

采取行动(编辑文件、运行命令、搜索等)

验证结果(检查是否成功,哪里还需要调整)

这三个步骤会不断循环,直到任务完成,当然我们也可以随时可以打断它、给新指示,或者说"换个方法试试"。

Claude 虽然能自主工作,但永远听你的指挥!

image.png

整个循环靠两样东西驱动:

模型(负责思考和推理)工具(负责真正动手做事)

模型(Claude 的大脑)

Claude Code 使用 Anthropic 的 Claude 模型来理解代码和规划任务,它能看懂几乎所有编程语言,知道你的项目结构,还能把复杂任务拆成小步骤一步步执行。

常用模型推荐:

Sonnet:最适合日常编码任务(速度快、性价比高)Opus:适合特别复杂的架构设计和深度推理

不过我们国内使用官方的模型不太友好,我们可以切换到其他国内模型。

切换模型:

在提示框输入 /model或启动时用 claude --model sonnet

image.png

工具(Claude 能真正动手的原因)

没有工具,Claude 只能聊天,有了工具,它就能真正改你的代码!

Claude 内置了五大类工具:

文件操作:读文件、改代码、新建文件、重命名搜索:按文件名或正则表达式快速找代码执行命令:运行 npm、git、测试、启动服务器等网络搜索:查文档、查错误信息代码智能:查看类型错误、跳转定义、找引用(需安装对应语言插件)

真实案例(修复失败测试时):

运行测试看哪里挂了

阅读错误日志

搜索相关源文件

阅读文件理解逻辑

修改代码

再次运行测试验证

这就是代理循环的实际样子!

进阶扩展:你还可以用 skills(技能)、MCP(外部服务)、hooks(自动化)、subagents(子助手)让它更强大。

Claude 可以访问什么

Claude Code 能看到你的整个项目(不像普通 AI 只能看当前打开的文件):

你的项目文件夹及所有子文件终端能执行的任何命令(npm、git、构建工具等)当前 Git 状态(分支、未提交修改、提交历史)CLAUDE.md 文件(你可以在这里写项目专属规则,让 Claude 每次都记住)自动记忆(它会记住你的项目习惯,保存在 MEMORY.md 前 200 行)你配置的扩展(MCP、skills 等)

正因如此,它能跨多个文件协调修改、自动跑测试、甚至帮你提交代码。

执行环境与界面

Claude Code 可以在三种环境里运行:

本地(默认):完全在你电脑上,权限最高云端(Anthropic 虚拟机):适合处理大项目或你本地没有的环境远程控制:从浏览器操作,但代码仍在你本地

界面支持:终端、VS Code 扩展、JetBrains、claude.ai/code、Slack、CI/CD 等。底层工作原理完全一样!

跨分支工作(Git 分支切换也能无缝使用)

Claude Code 的每个对话都和当前文件夹绑定(而不是和 Git 分支绑定)。这带来了非常实用的特性:

当你切换 Git 分支时(git checkout 或 git switch),Claude 会自动看到新分支的文件,但你的聊天记录保持不变。Claude 依然记得之前讨论过的所有内容和决定,即使跨分支也不会丢失上下文。当你恢复旧对话时,只会显示当前文件夹里的会话记录(不同分支如果在同一文件夹,就共用历史)。

并行多分支开发神器:

推荐使用 git worktrees 为每个分支创建一个独立目录,这样你就可以同时打开多个 Claude Code 会话,每个分支都有自己完全独立、干净的对话记录,不会互相干扰。

恢复或分叉会话(继续聊 / 新开一条线)

Claude Code 支持三种灵活的会话操作,让你随时接上之前的进度或尝试不同方案:

1、直接恢复会话(最常用)

命令:

image.png

效果:

使用相同的会话 ID,从上次中断的地方继续完整聊天历史全部恢复注意:会话范围的权限不会自动恢复,需要你重新批准一次

2、分叉会话(推荐!尝试新方案不影响原对话)

命令:

效果:

创建一个全新的会话 ID保留到目前为止的所有聊天历史原会话完全不受影响同样需要重新批准权限

适用场景:想试试"另一种实现方式"又不想把原对话搞乱时,就用这个!

3、 多个终端同时使用同一个会话(小心使用)

如果你在多个终端窗口都用 claude --continue 恢复同一个会话:所有消息会交错混在一起(就像两个人同时在同一个笔记本上写字)对话会变得混乱每个终端当时只能看到自己输入的消息,但后续恢复时会看到全部交错内容

正确做法:想并行工作时,务必使用 --fork-session,给每个终端一个干净独立的新会话。

上下文窗口(Claude 的记忆容量)

Claude 有上下文容量限制。当快满时:

它会自动压缩旧内容你可以输入 /compact 手动压缩输入 /context 查看当前占用情况

省空间秘诀:

重要规则写进 CLAUDE.md用 skills 和 subagents 减少不必要的上下文占用

安全机制(检查点 + 权限控制)

1、检查点(随时后悔)Claude 修改文件前会自动备份。只要按两次 Esc,或说"撤销刚才的修改",就能回到之前状态。

2、权限模式(按 Shift + Tab 快速切换):

默认:每次改文件或跑命令都问你自动接受编辑:只改文件不问,但命令仍会问计划模式:只分析、不动手,先给你完整计划

你还可以在 .claude/settings.json 里白名单信任命令(比如 npm test 永远不用问)。

有效使用 Claude Code 的 6 个实用 Tips

直接问它怎么用自己

输入:"我怎么设置 hooks?" 或 "/init" 它就会手把手教你。

这是对话,不是一次性命令

先说大概需求 → 它试试 → 你再纠正:"这不对,问题是会话处理"

不用每次都重写提示!

随时打断它

它走偏了?直接输入新指示按回车,它立刻停下来调整。

提示越具体越好

坏例子: "修复登录错误"

好例子: "持卡人过期的用户结账流程坏了,检查 src/payments/,尤其是令牌刷新。先写个失败测试再修复。"

让它自己验证

加上测试用例或预期结果,它会跑测试确认。

先探索再实现

先用计划模式(Shift+Tab 两次)让它分析代码库、给出计划 → 你审核后再让它动手。

Claude Code API 配置

Claude 在国内用,API 其实不是很友好,除了 Claude 官方的模型,我能用其他 AI 模型吗?

本章节会详细教你如何配置多个国内主流 AI 模型的 API,让 Claude Code 支持:

进入对应控制台后,注册/登录 → 完成实名认证 → 创建 API Key 即可开始调用。

API 管理工具

平台一多,配置起来就麻烦,我们可以使用第三方工具 CC Switch 可以帮我们轻松管理这几个热门工具的 API 配置:https://github.com/farion1231/cc-switch/,Windows / macOS / Linux 全支持。

CC Switch 是一个 Claude Code / Codex / Gemini CLI 的全方位辅助工具。

CC Switch 可以帮我们轻松管理这几个热门工具的 API 配置,就好比给你的开发工具箱来了个智能整理助手,所有工

image.png

各平台安装包下载地址:https://github.com/farion1231/cc-switch/releases。

image.png

具体的操作设置参考文章:https://www.runoob.com/ai-agent/cc-switch.html

如果你不闲麻烦,可以参照下文,自行配置。

DeepSeek 接入 Claude Code

需要的信息:

API key: https://platform.deepseek.com/api_keys 申请 API keys。BASE_URL:API 请求的 URL 为 https://api.deepseek.com/anthropic。

环境变量中配置

安装 Claude Code 后,我们在终端中设置以下环境变量:

export ANTHROPIC_BASE_URL=https://api.deepseek.com/anthropic

export ANTHROPIC_AUTH_TOKEN=${DEEPSEEK_API_KEY} # 这里记得设置你申请的 API key

export API_TIMEOUT_MS=600000

export ANTHROPIC_MODEL=deepseek-chat

export ANTHROPIC_SMALL_FAST_MODEL=deepseek-chat

export CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC=1

参数说明:

API_TIMEOUT_MS=600000:设置 10 分钟超时,防止输出过长触发客户端超时ANTHROPIC_MODEL:指定使用 deepseek-chat 模型CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC=1:禁用非必要流量

然后进入项目目录,执行 claude 命令,即可开始使用了。

image.png

启动 Claude Code 后,指定使用 DeepSeek:

或在交互模式中切换:

输入 /model 可以查看支持的模型:

image.png

参考文档:https://api-docs.deepseek.com/zh-cn/guides/anthropic_api

阿里百炼接入 Claude Code

阿里云百炼的通义千问系列模型支持 Anthropic API 兼容接口,通过修改以下参数,即可在 Claude Code 中调用通义千问系列模型。

ANTHROPIC_API_KEY(或 ANTHROPIC_AUTH_TOKEN):替换为百炼 API Key,申请地址:https://bailian.console.aliyun.com/cn-beijing/?tab=model#/api-key。ANTHROPIC_BASE_URL:替换为百炼的兼容端点地址 https://dashscope.aliyuncs.com/apps/anthropic。模型名称:替换为百炼支持的模型名称(例如 qwen3-max、qwen3-coder-plus等)百炼的 Coding Plan 套餐:https://www.aliyun.com/benefit/scene/codingplan

兼容 Anthropic API 协议:

Base URL:https://coding.dashscope.aliyuncs.com/apps/anthropicAPI Key:填入 Coding Plan 套餐专属 API KeyModel:qwen3-coder-plus

macOS/Linux:

创建并打开配置文件 ~/.claude/settings.json。

~ 代表用户主目录,如果 .claude 目录不存在,需要先行创建,可在终端执行 mkdir -p ~/.claude 来创建。

编辑配置文件:

将 YOUR_API_KEY 替换为 Coding Plan 套餐专属 API Key。

重新打开一个新的终端使环境变量配置生效。

Windows:

在 CMD 中运行以下命令,设置环境变量:

在 PowerShell 中运行以下命令,设置环境变量:

打开一个新的 PowerShell 窗口,运行以下命令,检查环境变量是否生效。

在 Claude Code 中接入通义千问系列模型

对话期间,执行 /model <模型名称> 命令切换模型。

也可以在项目根目录创建 .claude/settings.json 文件中,并写入模型配置信息永久配置。

image.png

启动 Claude,可以看到配置信息:

image.png

智谱大模型接入 Claude Code

这部分我们使用 ~/.claude/settings.json 文件来配置大模型,开始前需要到官方平台获取 API key:GLM Coding Plan。

编辑或新增 Claude Code 配置文件 ~/.claude/settings.json ,新增或修改里面的 env 字段

运行 claude 启动 Claude Code,输入 /status 确认模型状态:

image.png

如果不是可以输入 /config 来切换模型。

image.png