Claude Code 是什么?

Claude Code 是 Anthropic 推出的 AI 编程智能体(Agentic Coding Tool),直接运行在你的终端、IDE 或浏览器里。它不是普通的"代码补全"或聊天窗口,而是一个能够自主读取文件、执行命令、分析报错、提交代码的全流程编程伙伴。

AI 编程智能体
不只回答问题,能主动探索代码库、执行 shell 命令、读写文件,完成完整的开发任务
终端原生
安装后在任意目录输入 claude 即可启动,无需打开浏览器或切换窗口
IDE 集成
官方支持 VS Code、JetBrains;也可在 Claude Desktop 或网页版使用
Claude 3.7 加持
基于 Claude 3.7 Sonnet,具备延展性思维(Extended Thinking)能力,适合复杂调试

Claude Code vs. 聊天式 AI 工具

Claude Code 与"在 Claude.ai 里粘贴代码"的本质区别在于工具调用能力

维度聊天式 AIClaude Code
信息来源你主动粘贴过来的代码直接读取整个代码库
执行能力只能给建议能运行测试、安装依赖、执行 git 操作
持续性每次对话都从零开始通过 CLAUDE.md 保留项目上下文
错误修复需要你反复复制粘贴报错直接读取报错 → 定位代码 → 修复 → 重新测试
典型场景解释一段代码从零实现一个 feature 并提交 PR

工作原理:智能体循环

Claude Code 的核心是一个智能体循环(Agentic Loop):它不断循环"思考 → 调用工具 → 观察结果 → 再思考",直到任务完成或等待你的确认。

循环简化模型:用户输入 → Claude 决策(调用哪些工具?) → 执行工具(读文件/跑命令/写代码) → 观察输出 → 继续循环或结束

四大核心组件

🧠
上下文窗口
所有"记忆"都存在这里:你的对话、读取的文件内容、命令输出、历史操作。窗口是有限的,管理好它是高效使用的关键
🔧
工具(Tools)
Claude 的"手":读写文件、执行 bash 命令、搜索代码、调用 MCP Server……每次使用工具都会消耗上下文
🔐
权限模型
三档控制:Shift+Tab 审批每步操作 / 自动接受(--dangerously-skip-permissions)/ Plan Mode(只规划不执行)。重要操作会主动暂停请求确认
🤖
子智能体
主 Claude 可以 fork 出独立的子智能体处理并发子任务,各自维护独立上下文,最后汇总结果,适合大型任务分解
ℹ️
每次"工具调用"(读一个文件、跑一条命令)的结果都会追加进上下文窗口。长对话中,窗口会逐渐"填满",这就是为什么上下文管理如此重要。

安装与初始配置

Claude Code 通过 npm 安装,需要 Node.js 18 以上环境。

安装方式

# 全局安装
npm install -g @anthropic-ai/claude-code

# 启动(在任意项目目录)
claude

# 查看版本
claude --version

支持的运行环境

💻
终端(推荐)
在任意项目目录直接运行 claude,最灵活,支持所有功能
🔷
VS Code
安装官方扩展后在侧边栏打开 Claude Code,可直接操作工作区文件
🟠
JetBrains IDE
支持 IntelliJ IDEA、PyCharm、WebStorm 等,通过插件集成
🖥
Claude Desktop
桌面应用内嵌 Claude Code 标签页,适合非开发者的使用场景
🌐
网页版
claude.ai 上也可使用部分 Claude Code 功能,无需安装

三种操作模式

审批模式(默认)
Claude 每次执行可能有影响的操作前都会暂停,等你确认(y/n)。Shift+Tab 在模式间切换
自动接受模式
所有操作自动批准,无需人工确认。适合在沙盒/测试环境中快速迭代,但需谨慎
Plan Mode(计划模式)
Claude 只制定计划、列出步骤,不执行任何操作。适合先看方案再决定是否动手
💡
初次使用建议从审批模式开始,了解 Claude 会做什么操作。等熟悉后再考虑自动接受模式。对于重要生产环境,Plan Mode 是评估风险的好方法。

核心工作流:Explore → Plan → Code → Commit

Claude Code 官方推荐的开发循环是一个四步流程,适用于大多数功能开发和 bug 修复场景:

1 Explore 2 Plan 3 Code 4 Commit
1
Explore(探索) — 让 Claude 先"读懂"你的代码库。告诉它任务背景,让它自己阅读相关文件、理解架构,不急于修改任何东西
2
Plan(规划) — 进入 Plan Mode:Claude 列出修改方案和步骤,供你审查。这是审核意图、避免误操作的关键防线
3
Code(实现) — 确认方案后退出 Plan Mode,Claude 开始实际修改代码、运行测试、解决报错。你可以随时介入调整方向
4
Commit(提交) — 任务完成后,Claude 可以帮你写 commit message,走完 git add / commit 流程。提交信息会反映实际变更

实战提示词示例

# 典型的探索提示词
"先读一下整个 src/ 目录,理解项目结构,不要修改任何文件"

# 进入 Plan Mode
"进入 Plan Mode,帮我规划如何给用户登录接口增加邮件验证"

# 执行任务(Plan Mode 关闭后)
"按照刚才的方案开始实现,遇到不确定的地方先问我"

# 代码审查
"帮我 review 这次改动,指出潜在的安全问题和边界情况"
💡
从小任务开始。第一次使用时,选一个清晰、范围小的任务(例如"给这个函数加单元测试"),熟悉 Claude Code 的节奏后再挑战复杂任务。

上下文管理:保持效率的关键

Claude Code 的上下文窗口就像电脑内存:有限且珍贵。随着对话的推进,文件内容、命令输出会不断累积,当上下文快满时,Claude 的"记忆"开始衰减——它可能忘掉对话早期的指令,或者开始重复劳动。

三个核心命令

/compact压缩当前对话:把长篇对话历史汇总为紧凑摘要,释放上下文空间,同时保留关键信息。长任务中途建议主动执行
/clear完全清空上下文:重置到空白状态。适合切换到完全不相关的新任务,或当前上下文已经混乱不堪时
/context [文件或目录]手动向上下文添加指定文件或目录。精准控制"给 Claude 看什么",避免把无关文件塞进上下文

上下文管理最佳实践

任务分段
一次对话专注一件事。完成一个功能后 /clear 再开始下一个,而不是在同一个对话里堆叠所有任务
精准 /context
只加载当前任务相关的文件,不要一次性把整个 src/ 全部丢给 Claude
主动 /compact
当对话已经很长(超过 15-20 轮),主动执行 /compact,不要等 Claude 提示窗口快满
善用 CLAUDE.md
把不想每次重复说的项目背景、约束和规范写进 CLAUDE.md,让它自动加载
ℹ️
一个实用规律:如果你发现 Claude 开始犯一些本不该犯的低级错误,或者回答越来越"飘",往往是上下文已经溢出。这时 /compact 往往能立竿见影。

CLAUDE.md:给项目的"使用说明书"

CLAUDE.md 是 Claude Code 的项目级持久记忆。每次在项目目录启动 Claude Code,它都会自动读取这个文件,就像新来的同事先读公司 Wiki 再开始工作。

💡
把 CLAUDE.md 放在项目根目录下,用 git 管理起来。它是团队共享知识库,也是让 AI 快速上手项目的最有效方式。

CLAUDE.md 推荐结构

# Project: 电商后台管理系统

## 技术栈
- 后端:Python 3.11 + FastAPI + PostgreSQL
- 前端:Next.js 14 + TypeScript + Tailwind CSS
- 测试:pytest(单元)+ Playwright(E2E)

## 代码规范
- 所有 API 端点必须有 Pydantic 类型注解
- 提交信息格式:feat/fix/docs/refactor: 描述
- 严禁向 main 分支直接提交,必须通过 PR

## 架构说明
- src/api/        API 路由层(不含业务逻辑)
- src/services/   业务逻辑层
- src/models/     数据库模型
- 跨服务调用走 src/clients/,不要直接 import service

## 常用命令
- 启动本地开发:make dev
- 跑单元测试:pytest tests/unit -v
- 数据库迁移:alembic upgrade head

## 注意事项
- 不要修改 legacy/ 目录(历史遗留,逐步迁移中)
- 生产数据库只读,测试用 docker-compose.yml 启动本地 DB

可以写进 CLAUDE.md 的内容

技术栈与版本
避免 Claude 每次都问用的什么框架,或者给出与实际版本不符的建议
代码规范与约束
命名规范、禁止改动的目录、必须遵守的架构边界
常用命令
测试命令、启动命令、构建命令,让 Claude 直接运行而不是猜
项目背景
产品是做什么的、核心数据流是什么、有哪些"陷阱"
团队约定
PR 规范、分支策略、review checklist

扩展能力:Subagents、Skills 与 MCP

掌握基础之后,Claude Code 还有三个强力扩展方向,可以让它胜任更复杂、更专业的任务。

子智能体(Subagents)

当任务可以拆分为多个独立的并发子任务时,主 Claude 可以 fork 出多个子智能体并行处理,各自维护独立上下文,最后汇总结果。典型场景:同时对多个模块跑代码审查,或者同时搜索多个 API 文档。

🔧
子智能体不会污染主上下文窗口,是处理"大而复杂任务"的关键机制。可以把它理解为 Claude Code 的"多线程"能力。

Skills(技能文件)

Skills 是放在 .claude/skills/ 目录下的 Markdown 文件,用于向 Claude Code 注入领域专用知识和操作规范。Claude Code 在需要时会自动读取匹配的 Skill 文件。

.claude/skills/deploy.md
包含部署流程、环境变量规范、回滚步骤,让 Claude 在执行部署相关任务时自动参考
.claude/skills/api-conventions.md
记录项目 API 设计规范,确保 Claude 生成的接口风格与现有代码一致
.claude/skills/testing.md
单元测试规范、Mock 约定、覆盖率要求

MCP 服务器集成

通过 MCP(Model Context Protocol),Claude Code 可以连接外部工具和数据源

🗄️
数据库查询
通过 MCP Server 直接查询 PostgreSQL / MySQL / SQLite,不需要把查询结果手动粘贴给 Claude
📋
项目管理工具
连接 Linear、Jira、GitHub Issues,让 Claude 直接拉取 issue 详情、更新状态
📚
文档搜索
接入内部 Wiki、Confluence 或 API 文档,让 Claude 在编码时自动查阅相关规范
🔧
自定义工具
用 Python 或 TypeScript SDK 封装任意内部系统,暴露为 Claude 可调用的工具

Hooks(钩子)

Hooks 是 Claude Code 生命周期中的确定性控制点:在 Claude 准备执行某些操作前自动触发,可以用来做格式化检查、阻断危险命令、发送通知等。

{
  "hooks": {
    "PreToolUse": [
      {
        "matcher": "Bash",
        "hooks": [
          {
            "type": "command",
            "command": "echo "Running: $CLAUDE_TOOL_INPUT"",
            "blockOnFailure": false
          }
        ]
      }
    ]
  }
}
ℹ️
Hooks 写在 CLAUDE.md 的 json 块里或者 .claude/settings.json 中。常见用途:每次写文件后自动跑 linter,或者阻止 Claude 执行包含 rm -rf 的命令。

进阶学习路径

掌握 Claude Code 101 之后,推荐的进阶方向:

方向内容资源
Claude Code in ActionAnthropic 官方进阶课程,覆盖大型项目实战、团队协作与自定义工作流官方课程 ↗
MCP 扩展为 Claude Code 接入数据库、内部工具和第三方服务MCP 入门 →
API 开发通过 Anthropic API 将 Claude 能力集成进自己的产品API 基础 →
GitHub 文档Claude Code 官方文档:完整命令参考、配置选项、最佳实践官方文档 ↗
官方 SkillJar 课程配套视频课程,有更多互动演示与练习题前往 SkillJar ↗
ℹ️
本页为 Claudepedia 原创中文导读,基于 Anthropic 官方 Claude Code 文档与 SkillJar 课程结构整理,不包含课程原文。建议配合 官方 SkillJar 课程 同步学习,获得完整的视频讲解与练习题。