Claude Code 从入门到精通
小白也能看懂的完整指南 · 2026 版
目录
- 认识 Claude Code
- 安装与登录
- 15 分钟快速上手
- 核心概念:CLAUDE.md 与内存系统
- 常用斜杠命令速查
- Skills 技能系统
- Hooks 自动化
- MCP 服务器
- 代理与子代理
- 工作树与并行开发
- 插件系统
- 权限与安全
- 提示词技巧与最佳实践
- 定价与模型选择
- 快速入门清单
- 附录:常用命令速查表
一、认识 Claude Code
1.1 什么是 Claude Code?
Claude Code 是 Anthropic 官方推出的终端 AI 编程代理(Agentic Coding CLI),于 2025 年 5 月发布。它不是一个简单的代码补全工具,而是一个能自主理解代码库、编辑文件、运行命令、管理 Git 工作流的智能助手。
核心能力:
- 理解整个代码库结构和逻辑
- 直接编辑文件、运行 Shell 命令
- 管理 Git 工作流(提交、PR、分支)
- 通过 MCP 协议与外部服务集成
- 支持多代理并行协作
- 三级权限确认机制(Allow / Ask / Deny),安全可控
| 技术参数 | 说明 |
|---|---|
| 默认模型 | Claude Sonnet 4.6 / Opus 4.6 |
| 上下文窗口 | 200K tokens(Max/Team/Enterprise 支持 1M) |
| 首次发布 | 2025 年 5 月 |
1.2 系统要求
| 项目 | 要求 |
|---|---|
| 操作系统 | macOS 10.15+ / Ubuntu 20.04+ / Debian 10+ / Windows 10/11 或 WSL |
| 内存 | 4GB 最低(8GB+ 推荐) |
| Node.js | 18+(仅 npm 安装需要;原生安装自带运行时) |
| 网络 | 需要互联网连接 |
二、安装与登录
2.1 安装方式
macOS / Linux / WSL(推荐原生安装):
curl -fsSL https://claude.ai/install.sh | bash
Homebrew(macOS):
brew install --cask claude-code
Windows(PowerShell):
irm https://claude.ai/install.ps1 | iex
WinGet(Windows):
winget install Anthropic.ClaudeCode
npm(备选方案):
npm install -g @anthropic-ai/claude-code
验证安装:
claude --version
2.2 认证与登录
方式一:Claude 账号登录(最常用、最推荐)
claude
# 然后输入 /login,在浏览器中批准请求(支持 SSO)
方式二:API 密钥
export ANTHROPIC_API_KEY=sk-ant-...
claude
方式三:Amazon Bedrock / Google Vertex AI
export CLAUDE_CODE_USE_BEDROCK=1 # Amazon Bedrock
export CLAUDE_CODE_USE_VERTEX=1 # Google Vertex AI
三、15 分钟快速上手
3.1 打开项目
cd /path/to/your/project
claude
3.2 理解安全规则
每次 Claude 要修改文件或执行命令前,都会展示差异(diff)并让你选择:
- Yes — 应用此次修改
- Yes, don’t ask again — 本次会话自动批准后续文件编辑
- No — 拒绝修改并解释原因
按 Shift + Tab 可在模式间循环切换:Plan 模式 → 自动接受编辑 → 默认模式
3.3 五个入门任务(小白从这里开始!)
| 序号 | 任务 | 提示语(复制粘贴即可) |
|---|---|---|
| 1 | 了解代码库 | Give me a 5-bullet summary of what this codebase does and where the entry point is. |
| 2 | 查找代码 | Where is user authentication handled? Show me the file and key function. |
| 3 | 安全编辑 | Add a docstring to the function <name> in <file>. Keep it to 2 lines. |
| 4 | 修复 Bug | This test is failing: <paste the error>. Find the cause and fix it. |
| 5 | 处理 Git | Stage my changes and write a commit message that follows our existing style. |
3.4 初始化项目记忆(最重要的一步!)
/init
这会自动生成 CLAUDE.md 文件,记录你的代码库约定。Claude 每次启动都会读取它。
四、核心概念:CLAUDE.md 与内存系统
4.1 CLAUDE.md — 项目的「说明书」
Claude Code 在每次会话开始时,会自动加载 CLAUDE.md 到系统提示中。这是你仓库中 ROI 最高的文件。
目录结构示例:
your-project/
├── CLAUDE.md # 团队指令(需提交到 git)
├── CLAUDE.local.md # 个人覆盖(已 gitignored)
└── .claude/
└── rules/ # 模块化指令文件
├── code-style.md
├── testing.md
└── api-conventions.md
CLAUDE.md 应该包含什么?
- 技术栈和关键服务列表
- 目录布局说明(哪个文件夹做什么)
- 命名规范和代码风格要求
- 「不要触碰」的路径(遗留代码、自动生成的代码等)
- 曾踩过的坑和注意事项
偷懒技巧: 每当 Claude 犯错,直接说 “Update your CLAUDE.md so you don’t make that mistake again.” — Claude 非常擅长为它自己写规则。
4.2 内存系统的六个层级
| 层级 | 位置 | 作用范围 |
|---|---|---|
| 1. Enterprise Managed | 企业中心管理 | 全组织 |
| 2. File Managed | .claude/settings.json | 项目级别(提交到 git) |
| 3. CLI Flags | --setting 参数 | 单次会话 |
| 4. Local Settings | .claude/settings.local.json | 单台机器(gitignored) |
| 5. Shared | ~/.claude/ | 用户所有项目 |
| 6. User | ~/.claude/CLAUDE.md | 全局个人指令 |
五、常用斜杠命令速查
在 Claude Code 对话中输入
/即可看到所有可用命令。
5.1 会话管理
| 命令 | 功能 |
|---|---|
/clear | 清除对话历史,重新开始 |
/compact | 压缩上下文,释放 token 空间 |
/resume | 恢复历史会话 |
/exit / /quit | 退出当前会话 |
/rename <name> | 重命名当前会话 |
/export <file> | 导出对话内容 |
5.2 项目管理
| 命令 | 功能 |
|---|---|
/init | 初始化 CLAUDE.md |
/config / /settings | 打开/编辑设置 |
/memory | 查看/编辑 CLAUDE.md 和自动记忆 |
/permissions | 管理工具权限 |
/add-dir <path> | 添加额外工作目录 |
5.3 监控与诊断
| 命令 | 功能 |
|---|---|
/cost | 查看 Token 用量和费用 |
/context | 上下文可视化(彩色网格) |
/doctor | 诊断安装环境健康状况 |
/stats | 每日使用统计、会话数、连续天数 |
/status | 当前版本、模型、账户信息 |
5.4 模式切换
| 命令 | 功能 |
|---|---|
/model | 切换模型(方向键选择) |
/plan | 进入只读规划模式 |
/fast | 快速模式(Opus 更快输出) |
/effort <level> | 设置思考深度:low/medium/high/xhigh/max/auto |
/sandbox | 切换沙盒模式 |
5.5 其他实用命令
| 命令 | 功能 |
|---|---|
/review | 请求代码审查 |
/diff | 交互式 diff 查看器 |
/commit | Git 提交 |
/copy | 复制最近响应 |
/agents | 管理子代理配置 |
/plugin | 管理插件 |
/mcp | 管理 MCP 服务器 |
/loop <interval> <cmd> | 定时重复执行命令 |
/simplify | 审查代码质量和复用性 |
/feedback / /bug | 提交反馈或 bug 报告 |
六、Skills 技能系统
6.1 什么是 Skills?
Skills 是模型自动调用的扩展功能。Claude 根据对话上下文自动决定何时加载使用。
| 对比维度 | Commands(命令) | Skills(技能) |
|---|---|---|
| 触发方式 | 用户手动输入 /xxx | Claude 根据上下文自动调用 |
| 结构 | 单个 .md 文件 | 文件夹 + 支持文件 + 脚本 |
| 适用场景 | 可重复的手动工作流 | 上下文感知的自动工作流 |
6.2 Skill 目录结构
.claude/skills/deploy/
├── SKILL.md # 必需:主技能定义(YAML frontmatter + 指令)
├── deploy-config.md # 支持文档(在 SKILL.md 中用 @ 引用)
└── scripts/
└── deploy.sh # 可执行脚本
6.3 SKILL.md 常用配置项
| 字段 | 用途 |
|---|---|
name | 技能标识符(小写 + 连字符) |
description | 描述何时自动调用(触发条件) |
allowed-tools | 限制该技能可使用的工具 |
model | 覆盖模型选择(sonnet / haiku / opus) |
disable-model-invocation | 设为 true 则只能手动调用 |
context | 设为 fork 可在隔离子代理中运行 |
6.4 渐进式加载机制
Skills 分三级加载,避免撑爆上下文窗口:
- Level 1 — 仅元数据 + 描述(约 100 tokens)
- Level 2 — 完整指令(被触发时加载)
- Level 3 — 通过
@引用的支持文件(按需加载)
七、Hooks 自动化
7.1 什么是 Hooks?
Hooks 是事件驱动的自动化脚本,在 Claude Code 生命周期中的特定事件发生时自动执行。
7.2 可用事件一览
| 事件 | 触发时机 | 典型用途 |
|---|---|---|
PreToolUse | 工具执行前 | 验证输入、阻止危险操作(如改 .env 文件) |
PostToolUse | 工具执行成功后 | 自动格式化代码、运行 linter |
SessionStart | 会话开始/恢复时 | 动态加载上下文、初始化服务 |
Stop | Claude 完成响应后 | 保存状态、发送通知 |
UserPromptSubmit | 用户提交提示时 | 注入动态系统提示 |
Notification | 权限请求时 | 桌面通知提醒 |
PreCompact | 上下文压缩前 | 保留关键上下文 |
7.3 配置示例
在 .claude/settings.json 中配置:
{
"hooks": {
"PostToolUse": [
{
"matcher": "Write|Edit",
"hooks": [
{ "type": "command", "command": "bun run format || true" }
]
}
],
"Notification": [
{
"matcher": "",
"hooks": [
{ "type": "command", "command": "echo 'Claude needs your input'" }
]
}
]
}
}
matcher:正则匹配工具名称(如"Bash"、"Edit|Write")async:设为true则不阻塞用户交互timeout:最大执行秒数,超时则终止
八、MCP 服务器
8.1 什么是 MCP?
MCP(Model Context Protocol)是 Anthropic 推出的开放标准协议,让 Claude Code 能够连接到外部工具、数据库和 API。MCP 服务器会暴露新的「工具」供 Claude 调用。
8.2 传输类型
| 传输方式 | 使用场景 | 示例 |
|---|---|---|
| HTTP | 远程服务器 | Notion、GitHub、Sentry、Slack |
| Stdio | 本地进程 | PostgreSQL、SQLite、文件系统 |
8.3 热门 MCP 服务器推荐
- GitHub — PR 审查、Issues 管理、代码搜索
- PostgreSQL / SQLite — 数据库查询和 Schema 探索
- Notion / Slack — 工作空间集成
- Playwright / Puppeteer — 浏览器自动化测试
- Context7 — 实时获取最新库文档
- Sentry — 错误追踪和问题分析
最佳实践: 保持启用 10 个以下 MCP、80 个以下活跃工具,避免上下文窗口被撑满。
九、代理与子代理
9.1 子代理(Subagents)概述
子代理是 Claude 创建的隔离 AI 工作器,可并行处理特定任务(最多 7 个同时运行)。它们在独立的 200K 上下文窗口中运行,只返回摘要给主会话。
| 内置类型 | 用途 | 特点 |
|---|---|---|
| Explore | 文件发现、代码搜索 | 快速、只读、默认用 Haiku |
| Plan | 实现规划 | 只读、架构决策 |
| General-purpose | 复杂多步骤任务 | 可读可写 |
| Bash | 命令执行 | Git 操作、构建、测试 |
9.2 自定义子代理
存储在 .claude/agents/(项目)或 ~/.claude/agents/(个人):
name: code-reviewer
description: Expert code review after changes
tools: Read, Grep, Glob, Bash
model: haiku # 用便宜模型做日常任务
memory: user # 跨会话持久化学习
isolation: worktree # 在隔离 git worktree 中运行
maxTurns: 20
permissionMode: acceptEdits
9.3 Skill vs 子代理 vs 代理团队
| 维度 | Skill | 子代理 | 代理团队 |
|---|---|---|---|
| 上下文 | 加载到主窗口 | 独立窗口 | 完全独立会话 |
| 通信 | 内联 | 摘要回传给调用者 | 点对点消息 |
| 最佳用途 | 可复用知识/工作流 | 隔离任务、节省主窗口空间 | 复杂多代理协作 |
| Token 成本 | 低 | 低(仅摘要) | 较高(独立实例) |
十、工作树与并行开发
10.1 Git Worktrees
Claude Code 内置了 EnterWorktree / ExitWorktree 工具实现隔离开发:
- EnterWorktree — 创建隔离的 git worktree(独立目录共享 git 历史),切换会话到其中
- ExitWorktree — 退出 worktree 并返回原始目录
10.2 并行工作流
这是重度用户的最大生产力提升技巧——同时运行 3-5 个 Claude 会话,每个在独立的 worktree 中:
claude --worktree # 启动隔离会话
claude --worktree --tmux # 在独立 tmux 会话中启动
实操建议: 给 worktree 命名、给终端标签页着色、启用通知。可以专门留一个 “analysis” worktree 用来读日志和做分析查询。
十一、插件系统
11.1 插件结构
插件是 Skills、Hooks、子代理和 MCP 服务器的打包分发层。通过 /plugin install <name> 安装。
my-plugin/
├── .claude-plugin/
│ └── plugin.json # { name, description, version, author }
├── skills/
│ └── deploy/SKILL.md
├── agents/
│ └── code-reviewer.md
├── hooks/
│ └── hooks.json
└── .mcp.json
11.2 使用独立配置 vs 使用插件
使用项目独立配置 .claude/ | 打包为插件 |
|---|---|
| 只定制一个项目 | 与团队/社区共享 |
| 个人工作流 | 跨多个仓库分发 |
| 快速实验 | 需要版本管理和发布 |
| 单个斜杠命令足够 | 需要捆绑 MCP + Skills + Hooks |
十二、权限与安全
12.1 权限模式
按 Shift + Tab 循环切换:
| 模式 | 说明 |
|---|---|
| Default | 每个操作都询问确认 |
| Accept Edits | 自动接受文件编辑,命令仍需确认 |
| Plan | 只读模式,不允许任何修改 |
| Auto | 分类器评估风险,安全操作自动批准,高风险操作仍会询问 |
12.2 预批准常用命令
运行 /permissions 可以预先允许安全命令,支持通配符:
Bash(bun run *)
Bash(npm test *)
Edit(/docs/**)
12.3 沙盒模式
运行 /sandbox 可启用文件系统和网络隔离。支持三种模式:沙盒 + 自动允许、沙盒 + 权限确认、无沙盒。
十三、提示词技巧与最佳实践
13.1 #1 铁律:让 Claude 自己验证自己的输出
“The single most impactful tip is verification — giving Claude a way to check its own output.”
— Anthropic Claude Code 团队
- 前端开发 → 安装 Chrome 扩展,让 Claude 能看到浏览器渲染结果
- 后端开发 → 写测试套件作为验收标准,让 Claude 运行并通过它
- 代码质量 → 在提示后追加
/simplify,自动审查改动 - Bug 修复 → 把 “修复这个 Bug” 改成 “写一个复现 Bug 的测试,然后让它通过”
13.2 核心工作流四原则
- 重仓投资 CLAUDE.md — 每次 Claude 犯错,让它自己更新 CLAUDE.md
- 先规划再构建 — 用
/plan模式反复细化方案,满意后再动手 - 小步迭代 — 一次只改 1-2 个文件,不要试图一次改 7-8 个
- 分层提示 — 把大功能拆成多层递进提示,每层可审核
13.3 实用提示词模板
四部分万能模板: WHAT(做什么)+ WHERE(在哪做)+ HOW(怎么做)+ VERIFY(怎么验证)
负面约束法:
DO NOT: change the public API, remove existing methods, add unnecessary dependencies.
角色设定法:
Act as a senior engineer who has been burned by poorly tested payment code.
挑战式提示:
Grill me on these changes and don't make a PR until I pass your test.
Prove to me this works — diff behavior between main and this branch.
Knowing everything you know now, scrap this and implement the elegant solution.
13.4 ❌ 五个常见反模式
- 无目标的 vibe coding — 只说 “make it better”,没有验收标准 → 无限迭代
- 巨型 CLAUDE.md — 超过约 150 条指令后,遵循率骤降至约 45%
- 忽视上下文压力 — 70% 容量时主动 compact,90% 时果断 clear
- 盲目信任 AI 输出 — 始终
git diff审查改动,AI 生成代码的逻辑错误率可达人类的 1.75 倍 - 多任务过载 — 同时管理 6 个 AI 终端 = 混乱和疲劳。从 2 个会话开始,逐步增加
十四、定价与模型选择
14.1 定价方案(2026 年)
| 计划 | 月费 | 包含 Claude Code | 适合谁 |
|---|---|---|---|
| Free | $0 | ✗ | 体验基础功能 |
| Pro | $20 | ✓ | 个人开发者、轻度使用 |
| Max 5× | $100 | ✓ | 日常独立开发者 |
| Max 20× | $200 | ✓ | 重度用户 |
| Team | $30/人 | ✓ | 团队协作 |
| Enterprise | 定制 | ✓ | 企业级需求 |
14.2 模型选择指南
| 模型 | 使用场景 | 特点 |
|---|---|---|
| Opus + Thinking | 复杂架构决策、困难调试、跨文件重构 | 最强推理,最贵 |
| Sonnet | 日常 PR 审查、常规开发、快速任务 | 性价比最高 |
| Haiku | 简单搜索、路由任务、文件发现 | 最快最便宜 |
| /effort max | 关键调试会话 | 按会话临时增强 |
十五、快速入门清单
按顺序完成以下步骤,你就能高效使用 Claude Code:
- 安装 Claude Code 并完成登录
- 打开项目,运行
/init生成 CLAUDE.md - 尝试 5 个入门任务(见第三章)
- 熟悉常用斜杠命令:
/model、/cost、/compact、/context - 配置
.claude/settings.json权限,预批准安全命令 - 前端开发者安装 Chrome 扩展
- 设置至少一个自定义子代理(如代码审查器)
- 用
/simplify、/loop、/schedule试验高级功能 - 始终先规划再实施 — 复杂任务先用
/plan模式
附录:常用命令速查表
非交互式模式(CI/CD / 脚本 / 自动化)
claude -p "explain this function" # 一次性任务,输出即退出
cat logs.txt | claude -p "analyze these errors" # 管道输入
claude -p "analyze code" --output-format json # JSON 格式输出
claude --continue # 继续上次会话
claude --resume <session-id> # 恢复指定会话
高级 CLI 参数
claude --model claude-sonnet-4-6-20260217 # 指定模型
claude --permission-mode plan # 以规划模式启动
claude --add-dir ../lib ../shared # 添加额外工作目录
claude --max-budget-usd 5.00 # 设置预算上限
claude --max-turns 20 # 限制最大轮次
claude --dangerously-skip-permissions # 跳过权限确认(仅 CI)
claude --allowedTools "Read,Grep,Glob" # 限制可用工具
claude --debug # 调试模式
claude --ide # IDE 集成模式
/loop 定时任务
/loop 5m /babysit-prs # 每 5 分钟检查一次 PR 状态
/loop 10m run tests # 每 10 分钟运行一次测试
/batch 大规模迁移
/batch migrate src/ from JavaScript to TypeScript
完整 .claude/ 目录参考
your-project/
├── CLAUDE.md # 团队指令(提交到 git)
├── CLAUDE.local.md # 个人覆盖(gitignored)
└── .claude/
├── settings.json # 权限 + Hooks 配置(提交到 git)
├── settings.local.json # 个人权限覆盖(gitignored)
├── .mcp.json # MCP 服务器配置
├── rules/ # 模块化指令文件
│ ├── code-style.md
│ ├── testing.md
│ └── api-conventions.md
├── commands/ # 自定义斜杠命令
├── skills/ # 自动触发技能
│ └── deploy/
│ ├── SKILL.md
│ └── deploy-config.md
├── agents/ # 子代理定义
│ ├── code-reviewer.md
│ └── security-auditor.md
└── hooks/ # 事件驱动脚本
└── validate-bash.sh
总结: Claude Code 把你从"手工写代码"转变为"脑力编程 + AI 管理"。用好了像是雇了一个 10x 工程师,用不好像是管理一个聪明但多动症的实习生。关键是:写好 CLAUDE.md、先规划再执行、小步迭代、始终验证。

1万+

被折叠的 条评论
为什么被折叠?



