主题
Claude Code
概述
Claude Code 是 Anthropic 官方推出的 AI 编程 CLI 工具,是一款智能体(Agentic)编程助手。它直接运行在你的终端中,能够理解你的代码库、编辑文件、运行命令并自主验证结果。
- 开发者:Anthropic
- 类型:闭源商业软件
- 许可:需付费订阅(Pro / Max / Team / Enterprise / Console)
- 官网:https://claude.ai/code
- 文档:https://docs.anthropic.com/en/docs/claude-code
系统要求
| 要求 | 最低配置 |
|---|---|
| 操作系统 | macOS 13.0+ / Ubuntu 20.04+ / Debian 10+ / Windows 10 1809+(需 WSL2 或 Git for Windows) |
| 内存 | 4 GB+ |
| 处理器 | x64 或 ARM64 |
| 网络 | 需要互联网连接 |
| 终端 | Bash / Zsh / PowerShell / CMD |
| 附加依赖 | ripgrep(通常已内置);Alpine 需额外安装 libgcc、libstdc++、ripgrep |
WARNING
Claude Code 仅在 Anthropic 支持的国家/地区可用。免费 Claude.ai 账户不支持 Claude Code,需付费订阅。
安装
方式一:原生安装(推荐)
原生安装会自动在后台更新。
::: code-group-item macOS / Linux
bash
curl -fsSL https://claude.ai/install.sh | bash::: ::: code-group-item Windows(WSL2 推荐)
bash
# 强烈建议在 WSL2(Ubuntu 24.04)中安装使用
# 先安装 WSL2(PowerShell 管理员执行)
# wsl --install -d Ubuntu-24.04
# 进入 WSL2
wsl
# 安装 Claude Code
curl -fsSL https://claude.ai/install.sh | bash
# 访问 Windows 磁盘文件
# C盘 → /mnt/c/ D盘 → /mnt/d/
# cd /mnt/d/projects/my-app
# claude:::
方式二:Homebrew(macOS)
bash
# 稳定频道(落后约1周)
brew install --cask claude-code
brew upgrade claude-code # 手动更新
# 最新频道
brew install --cask claude-code@latest方式三:WinGet(Windows 原生,不推荐)
WARNING
Windows 原生安装容易遇到权限和兼容性问题,推荐使用 WSL2 方式安装(见方式一)。
powershell
winget install Anthropic.ClaudeCode
winget upgrade Anthropic.ClaudeCode # 手动更新方式四:Linux 包管理器
bash
# Debian/Ubuntu
sudo apt install claude-code
# Fedora/RHEL
sudo dnf install claude-code
# Alpine
sudo apk add claude-code方式五:npm(旧版方式)
bash
npm install -g @anthropic-ai/claude-code方式六:桌面应用
从 https://claude.com/download 下载 macOS 和 Windows 桌面客户端。
认证配置
订阅登录(推荐)
bash
claude
# 浏览器自动打开,完成 OAuth 登录
# 如果浏览器未自动打开,按 c 复制登录链接手动打开支持的订阅类型:
- Claude Pro — 个人订阅
- Claude Max — 高用量个人订阅
- Claude for Teams — 团队版
- Claude for Enterprise — 企业版(含 SSO、域捕获等)
API Key 认证
bash
export ANTHROPIC_API_KEY=sk-ant-xxxxx
claude云服务商认证
::: code-group-item Amazon Bedrock
bash
export CLAUDE_CODE_USE_BEDROCK=1
export AWS_REGION=us-east-1
export AWS_ACCESS_KEY_ID=your-key
export AWS_SECRET_ACCESS_KEY=your-secret
claude::: ::: code-group-item Google Vertex AI
bash
export CLAUDE_CODE_USE_VERTEX=1
export CLOUD_ML_REGION=us-east5
export ANTHROPIC_VERTEX_PROJECT_ID=your-project
# 使用 gcloud ADC 认证
gcloud auth application-default login
claude::: ::: code-group-item Microsoft Foundry
bash
export CLAUDE_CODE_USE_FOUNDRY=1
export ANTHROPIC_FOUNDRY_API_KEY=your-key
claude:::
CI/CD 长期令牌
bash
# 生成1年有效期 OAuth 令牌
claude setup-token
# 输出令牌后设置环境变量
export CLAUDE_CODE_OAUTH_TOKEN=your-token
claude -p "run tests"认证优先级(从高到低)
- 云服务商凭证(设置了
CLAUDE_CODE_USE_BEDROCK/VERTEX/FOUNDRY时) ANTHROPIC_AUTH_TOKEN环境变量(Bearer Token,用于 LLM 网关)ANTHROPIC_API_KEY环境变量(X-Api-Key,直连 API)apiKeyHelper脚本输出(用于轮换凭证)CLAUDE_CODE_OAUTH_TOKEN环境变量- 订阅 OAuth 凭证(默认)
登出
在 Claude Code 交互界面中输入 /logout。
基础使用
启动方式
bash
claude # 启动交互式会话
claude "fix the bug" # 带初始提示启动
claude -p "question" # 非交互/打印模式(输出到 stdout)
claude --continue # 恢复上次会话
claude --resume # 选择会话恢复
claude --model opus # 指定模型启动智能体工作循环
Claude Code 的核心是一个自动循环:
- 收集上下文 — 读取文件、搜索代码、检查 Git 状态
- 执行操作 — 编辑文件、运行命令、做出修改
- 验证结果 — 运行测试、检查错误、确认修复
你可以在任何时刻中断并引导方向。
常见工作流
bash
# 探索代码库
claude "解释这个项目的认证是如何工作的"
# 修复 Bug
claude "结账流程对过期卡的用户有问题"
# 重构代码
claude "将 src/ 从 Solid 迁移到 React"
# 编写测试
claude "为 src/auth/login.ts 编写测试"
# 代码审查
claude "/review"权限模式
通过 Shift+Tab 循环切换:
| 模式 | 说明 |
|---|---|
| 默认模式 | 编辑文件和运行命令前会请求确认 |
| 自动接受编辑 | 自动编辑文件,其他命令仍需确认 |
| 计划模式 | 只读工具,创建计划等待审批 |
| 自动模式 | 后台安全检查评估操作(研究预览) |
核心功能
内置工具(5大类)
| 类别 | 能力 |
|---|---|
| 文件操作 | 读取、编辑、创建、重命名、重组文件 |
| 搜索 | 按模式查找文件、正则内容搜索、代码库探索 |
| 执行 | 运行 Shell 命令、启动服务器、运行测试、使用 Git |
| 网络 | 搜索网页、获取文档、查找错误信息 |
| 代码智能 | 编辑后查看类型错误/警告、跳转定义(需插件) |
Skills 技能系统
Skills 是 Claude 可使用的可复用指令、知识和工作流:
bash
/simplify # 审查和修复代码质量问题
/batch # 编排大规模并行变更
/debug # 启用调试日志
/loop # 定时执行提示
/claude-api # 构建 Claude API 应用自定义 Skills 放在 .claude/skills/ 目录下,使用 Markdown 格式。
Hooks 钩子
用户定义的 Shell 命令,在特定生命周期点执行,提供确定性控制:
| 事件 | 触发时机 |
|---|---|
PreToolUse | 工具执行前 |
PostToolUse | 工具执行后 |
Notification | Claude 等待用户输入时 |
Stop | 会话停止时 |
示例:每次文件编辑后运行 ESLint、Claude 等待时发送桌面通知。
MCP 服务器
通过 Model Context Protocol 连接外部服务和工具:
json
// settings.json
{
"mcpServers": {
"slack": {
"command": "npx",
"args": ["-y", "@anthropic-ai/mcp-slack"]
}
}
}运行 /mcp 管理连接和查看 token 消耗。
子代理(Subagents)
- 隔离的执行上下文,返回摘要结果
- 用于上下文隔离、并行任务、专门化工作器
- 不继承主会话的对话历史
- 在
.claude/agents/目录下配置
检查点与回滚
每次文件编辑都可逆:
- 按
Esc两次回滚 - 使用
/rewind命令回滚
其他功能
- Computer Use — Claude 可以看到你的屏幕、点击、输入(macOS)
- Chrome 扩展(Beta) — 测试 Web 应用、调试控制台
- 语音输入 — 按住空格键说话
- 远程控制 — 从手机/浏览器继续本地会话
- 代码审查 CI/CD — 通过 GitHub Actions / GitLab CI 自动审查 PR
- Slack 集成 — 从 Slack 委派编码任务
- Agent SDK — 用 Python/TypeScript 编程构建生产级 AI 代理
配置
设置文件层级
| 范围 | 位置 | 影响范围 | 是否共享 |
|---|---|---|---|
| 托管 | 服务端管理 / 系统级 managed-settings.json | 机器上所有用户 | 是(IT 部署) |
| 用户 | ~/.claude/ | 你,所有项目 | 否 |
| 项目 | 仓库中 .claude/ | 所有协作者 | 是(提交到 Git) |
| 本地 | .claude/settings.local.json | 你,仅当前仓库 | 否(gitignore) |
通过 /config 命令访问。
关键设置项
json
{
"autoUpdatesChannel": "latest",
"autoMemoryEnabled": true,
"alwaysThinkingEnabled": false,
"sandbox": { "enabled": true },
"permissions": {
"allow": ["Bash(npm test)"],
"deny": ["Bash(rm -rf *)"]
},
"mcpServers": { ... },
"hooks": { ... },
"env": { "NODE_ENV": "development" }
}CLAUDE.md 文件
| 范围 | 位置 | 用途 |
|---|---|---|
| 托管策略 | /Library/Application Support/ClaudeCode/CLAUDE.md | 组织级 |
| 项目 | ./CLAUDE.md 或 ./.claude/CLAUDE.md | 团队共享项目指令 |
| 用户 | ~/.claude/CLAUDE.md | 个人跨项目偏好 |
| 本地 | ./CLAUDE.local.md | 个人项目特定(gitignore) |
特性:
- 支持
@path/to/file导入(最大5层深度) - 建议每个文件不超过 200 行
- 使用
/init自动生成
规则文件(.claude/rules/)
路径范围规则,使用 YAML frontmatter:
markdown
---
description: TypeScript 文件规则
globs: ["**/*.ts", "**/*.tsx"]
---
- 使用严格类型
- 优先使用函数式组件快捷键
通用控制
| 快捷键 | 说明 |
|---|---|
Ctrl+C | 取消当前输入或生成 |
Ctrl+D | 退出 Claude Code |
Ctrl+G / Ctrl+X Ctrl+E | 在默认文本编辑器中打开提示 |
Ctrl+L | 清除输入并重绘屏幕 |
Ctrl+O | 切换会话查看器 |
Ctrl+R | 反向搜索历史命令 |
Ctrl+V | 从剪贴板粘贴图片 |
Ctrl+B | 后台运行任务 |
Ctrl+T | 切换任务列表 |
Esc + Esc | 回滚或总结 |
Shift+Tab / Alt+M | 循环切换权限模式 |
Alt+P | 切换模型 |
Alt+T | 切换扩展思考 |
Alt+O | 切换快速模式 |
文本编辑
| 快捷键 | 说明 |
|---|---|
Ctrl+A | 移动到行首 |
Ctrl+E | 移动到行尾 |
Ctrl+K | 删除到行尾 |
Ctrl+U | 删除到行首 |
Ctrl+W | 删除前一个词 |
Ctrl+Y | 粘贴已删除的文本 |
多行输入
| 方法 | 快捷键 |
|---|---|
| 快速换行 | \ + Enter |
| Option 键 | Option+Enter(macOS 需配置 Meta) |
| Shift+Enter | iTerm2 / WezTerm / Ghostty / Kitty / Warp 原生支持 |
| 控制序列 | Ctrl+J |
快速命令
| 前缀 | 说明 |
|---|---|
/ | 斜杠命令或技能 |
! | Bash 模式(直接运行命令) |
@ | 文件路径提及(自动补全) |
常用命令
| 命令 | 用途 |
|---|---|
/help | 显示帮助和可用命令 |
/init | 初始化项目 CLAUDE.md |
/clear | 开始新对话 |
/compact [instructions] | 压缩上下文释放空间 |
/continue | 恢复上次会话 |
/resume | 选择会话恢复 |
/model [model] | 选择或切换 AI 模型 |
/cost | 显示 token 用量统计 |
/diff | 交互式 diff 查看器 |
/review [PR] | 审查 Pull Request |
/plan [desc] | 进入计划模式 |
/batch <instruction> | 编排大规模并行变更 |
/simplify [focus] | 审查和修复代码质量 |
/loop [interval] [prompt] | 定时运行提示 |
/mcp | 管理 MCP 服务器连接 |
/memory | 编辑记忆文件、切换自动记忆 |
/permissions | 管理权限规则 |
/doctor | 诊断安装和设置问题 |
/config | 打开设置界面 |
/status | 显示版本、模型、账户信息 |
/logout | 登出 |
IDE 集成
VS Code 扩展
前置条件:VS Code 1.98.0+
bash
# 从命令行安装
code --install-extension anthropic.claude-code或在扩展商店搜索 "Claude Code"。
功能特性:
- 编辑器工具栏、活动栏、状态栏和命令面板中的 Spark 图标
- 并排 Diff 审查建议的更改
Option+K(Mac)/Alt+K(Win/Linux)插入 @-mention 文件引用- 提示框中的权限模式选择器
- 计划模式以完整 Markdown 文档打开
- 多对话标签页
- 自动共享选中代码上下文
JetBrains 插件
支持 IDE:IntelliJ IDEA、PyCharm、Android Studio、WebStorm、PhpStorm、GoLand
安装:JetBrains Marketplace 搜索 "Claude Code"
功能特性:
Cmd+Esc(Mac)/Ctrl+Esc(Win/Linux)快速启动- IDE Diff 查看器中查看更改
- 自动共享选中/标签页上下文
Cmd+Option+K/Alt+Ctrl+K插入文件引用- 自动共享诊断错误
使用方式:从 IDE 集成终端运行 claude,或从外部终端使用 /ide。
费用估算
| 方案 | 费用 |
|---|---|
| Claude Pro | 个人订阅(含 Claude Code) |
| Claude Max | 高用量个人订阅 |
| Claude Console | API 按量计费,约 $13/开发者/活跃天 |
API 用量参考:
- 平均:~$13/开发者/活跃天
- 月均:~$150-250/开发者/月
- 90% 用户日均不超过 $30
节省成本技巧:
- 使用
/cost跟踪 token 用量 - 利用 Prompt Caching 减少重复内容成本
- 使用
/compact自动压缩对话管理上下文 - 子代理隔离高工作量任务
故障排查
bash
# 运行诊断
claude /doctor
# 检查版本和状态
claude /status
# 查看 token 消耗
claude /cost
# 常见问题
# - 搜索失败:检查 ripgrep 是否安装
# - 登录失败:检查网络和地区限制
# - 补全不工作:重启编辑器和 Claude Code 服务