📌 内容摘要
- Claude Code 是 Anthropic 官方发布的终端 AI 编程 Agent,2025年5月正式 GA,2026年成为开发者最爱工具(好评率46%)。
- 本文覆盖完整安装流程:环境准备 → 安装 → 认证 → 基础使用 → 项目配置,附常见报错解决方案。
- 三种认证方式详解:Claude 订阅(推荐)、API Key(按用量付费)、企业级 AWS/GCP 接入。
- 文末附 CLAUDE.md 最佳实践模板和常用命令速查表。
一、Claude Code 是什么?
Claude Code 是 Anthropic 官方发布的命令行 AI 编程 Agent。与普通的代码补全工具不同,它是一个能在你的终端里自主工作的助手——你用自然语言描述任务,它会读取代码库、制定计划、修改文件、运行测试,直到任务完成。
2025年5月正式公开发布,半年内跃升为开发者最爱的 AI 编程工具(Stack Overflow 2026年调查中好评率46%,远超 Cursor 的19%和 GitHub Copilot 的9%)。截至2026年3月,Claude Code 年化营收超过25亿美元,全球 GitHub 公开提交中约4%由 Claude Code 贡献。
二、环境要求
| 要求 | 最低版本 | 推荐版本 | 验证命令 |
|---|---|---|---|
| Node.js | 18.0.0 | 20 LTS 或 22 LTS | node --version |
| npm | 8.0.0 | 随 Node.js 附带 | npm --version |
| 操作系统 | macOS 12+、Ubuntu 20.04+、Windows 11(WSL2) | uname -a |
|
| 网络 | 能访问 api.anthropic.com(需要境外网络) | curl https://api.anthropic.com |
|
安装 Node.js(如果还没有)
# macOS(推荐用 nvm 管理版本) curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.0/install.sh | bash source ~/.zshrc # 或 source ~/.bashrc nvm install 20 nvm use 20 # Ubuntu / Debian curl -fsSL https://deb.nodesource.com/setup_20.x | sudo -E bash - sudo apt-get install -y nodejs # Windows(在 WSL2 中执行上面的 Ubuntu 命令) # 不推荐在 Windows CMD/PowerShell 原生环境使用,WSL2 体验更好
三、安装 Claude Code
# 全局安装 npm install -g @anthropic-ai/claude-code # 验证安装成功 claude --version # 输出类似:claude 1.x.x # 查看帮助 claude --help
如果 npm install 很慢,可以先切换为国内镜像:
npm config set registry https://registry.npmmirror.com但注意:Claude Code 本身运行时访问 Anthropic 服务器仍需境外网络,镜像只影响安装速度。
四、认证方式详解
Claude Code 支持三种认证方式,根据你的情况选择最合适的一种:
方式一:Claude 订阅认证(推荐个人开发者)
如果你已经有 Claude Pro 或 Max 订阅,直接用账号认证,Claude Code 的用量包含在订阅内,不额外计费。
claude login # 会在浏览器打开 claude.ai 授权页面 # 登录后会生成 setup token,复制粘贴回终端 # 认证完成
认证后 token 保存在 ~/.claude/ 目录,下次启动不需要重新登录。
方式二:API Key 认证(推荐企业 / 按用量付费)
如果你有 Anthropic Console 的 API Key,用环境变量方式认证:
# 临时设置(当前终端会话有效) export ANTHROPIC_API_KEY="sk-ant-api03-你的key" # 永久设置(写入 shell 配置文件) echo 'export ANTHROPIC_API_KEY="sk-ant-api03-你的key"' >> ~/.zshrc source ~/.zshrc # 验证认证 claude --print "你好" # 应该输出 Claude 的回复
方式三:AWS Bedrock / Google Cloud Vertex(企业级)
# AWS Bedrock export CLAUDE_CODE_USE_BEDROCK=1 export AWS_REGION=us-east-1 # 确保 AWS CLI 已配置好(aws configure) # Google Cloud Vertex AI export CLAUDE_CODE_USE_VERTEX=1 export CLOUD_ML_REGION=us-east5 export ANTHROPIC_VERTEX_PROJECT_ID=你的GCP项目ID # 确保 gcloud CLI 已认证(gcloud auth login)
五、第一次运行
# 进入你的项目目录 cd /path/to/your/project # 启动 Claude Code 交互模式 claude # 你会看到类似: # ╭──────────────────────────────────╮ # │ ✻ Welcome to Claude Code! │ # │ /help for help, /exit to quit │ # ╰──────────────────────────────────╯ # >_
现在可以用自然语言描述任务了:
> 这个项目是做什么的?帮我快速了解一下代码结构 > 找出所有没有错误处理的 API 接口 > 给 src/utils/validator.js 里的所有函数加上 JSDoc 注释 > 运行测试,如果有失败的,帮我修复
六、核心命令速查
交互模式内的斜杠命令
| 命令 | 功能 |
|---|---|
/help |
查看帮助,列出所有可用命令 |
/exit 或 Ctrl+C |
退出 Claude Code |
/clear |
清空当前对话上下文(保留 CLAUDE.md 配置) |
/compact |
压缩对话历史(减少 token 消耗,保留关键信息) |
/model |
切换使用的模型(Opus/Sonnet/Haiku) |
/cost |
查看当前会话的 token 消耗和费用估算 |
/status |
查看当前认证状态和账号信息 |
/think |
开启扩展思考模式(更深入的推理,消耗更多 token) |
/init |
在当前项目生成 CLAUDE.md 模板(首次使用时运行) |
命令行参数(非交互模式)
# -p / --print:非交互模式,执行单次任务后退出 claude -p "找出 src/ 目录下所有超过200行的文件并列出" # 管道输入:把其他命令的输出传给 Claude git diff HEAD~1 | claude -p "为这次变更写一条 Conventional Commits 格式的提交信息" cat error.log | claude -p "分析这些错误日志,找出最频繁的错误类型和可能原因" # --model:指定模型 claude --model claude-opus-4-6 # --dangerously-skip-permissions:跳过文件修改确认(谨慎使用,适合 CI/CD) claude --dangerously-skip-permissions -p "更新所有文件的版权头部注释" # --output-format:指定输出格式(text/json/stream-json) claude --output-format json -p "列出项目中所有的 TODO 注释" # --max-turns:限制最大对话轮数(防止无限循环) claude --max-turns 10 -p "重构 utils.py"
七、CLAUDE.md 配置详解
CLAUDE.md 是 Claude Code 的项目配置文件,放在项目根目录,每次启动时自动读取。写好它是让 Claude Code 高效工作的关键。
初始化 CLAUDE.md
# 在项目目录里启动 Claude Code 后运行 /init # Claude Code 会扫描项目并生成一个基础的 CLAUDE.md,然后你来完善它
CLAUDE.md 完整模板
# CLAUDE.md ## 项目简介 [2-3句话说明项目是什么、服务什么用户、解决什么问题] ## 技术栈 - 语言:Python 3.11 - 框架:FastAPI 0.115 - 数据库:PostgreSQL 16 + SQLAlchemy 2.0 + Alembic - 缓存:Redis 7 - 测试:Pytest + httpx - 部署:Docker + Kubernetes ## 目录结构 ``` app/ ├── api/v1/ # API 路由层 ├── services/ # 业务逻辑层(主要在这里工作) ├── models/ # SQLAlchemy 数据模型 ├── schemas/ # Pydantic 请求/响应模型 ├── core/ # 配置、安全、依赖注入 └── utils/ # 工具函数 tests/ # 测试文件,镜像 app/ 结构 ``` ## 开发规范 ### 代码风格 - 所有 public 函数必须有类型注解 - 注释使用 Google Style Docstring - 行长度上限 100 字符(black 格式化) ### 分层规范 - API 层只做参数校验和路由,不写业务逻辑 - 业务逻辑统一在 services/ 层 - 数据库操作只在 services/ 层,不在 API 层直接查询 ### 错误处理 - 统一使用 app/core/exceptions.py 中定义的异常 - 所有外部 API 调用必须有超时和重试机制 ### 测试规范 - 新功能必须附测试,覆盖:正常路径、边界情况、错误情况 - 测试文件命名:test_[被测模块名].py - 使用 pytest fixtures,不要硬编码测试数据 ## 常用命令 ```bash # 开发环境 make dev # 启动开发服务器 make test # 运行所有测试 make test-cov # 带覆盖率报告的测试 make migrate # 运行数据库迁移 make lint # 运行 ruff + mypy # 数据库 alembic upgrade head # 应用所有迁移 alembic revision --autogenerate -m "描述" # 生成迁移 ``` ## 禁止事项 - 不要直接修改 alembic/versions/ 目录(除非明确要求) - 不要在代码中硬编码密钥或密码 - 不要跳过类型注解 - 不要直接提交到 main 分支 ## 当前已知问题 / 技术债 - [ ] payment_service.py 的错误处理需要重构(暂不动) - [ ] tests/integration/ 下的测试还未迁移到新框架
CLAUDE.md 的多级配置
Claude Code 支持多级 CLAUDE.md,实现不同目录的差异化配置:
project-root/
├── CLAUDE.md # 全局项目配置(所有目录都适用)
├── frontend/
│ └── CLAUDE.md # 前端专属配置(React、TypeScript 规范等)
└── backend/
└── CLAUDE.md # 后端专属配置(Python、API 规范等)
八、权限管理:控制 Claude Code 能做什么
Claude Code 在执行可能影响系统的操作(修改文件、运行命令、网络请求)前,默认会征询你的许可。理解这套权限机制,能让你在安全和效率之间找到平衡:
# Claude Code 请求权限时,你有几个选项: # y / yes —— 允许这次操作 # n / no —— 拒绝这次操作 # always —— 始终允许这类操作(本次会话内) # never —— 始终拒绝这类操作(本次会话内) # 常用的权限配置场景: # 1. 允许自动运行测试(不每次确认) # 在对话开始时说: "你可以直接运行 pytest,不需要每次都问我" # 2. 限制只读模式(只能分析,不能修改) claude --allowedTools "Read,Bash(git log),Bash(git diff)" # 3. CI/CD 环境完全自动(跳过所有确认) claude --dangerously-skip-permissions -p "运行完整测试套件"
九、常见安装和使用报错
| 错误信息 | 原因 | 解决方法 |
|---|---|---|
command not found: claude |
全局安装路径不在 PATH 里 | npm list -g @anthropic-ai/claude-code 确认安装,然后把 npm 全局 bin 目录加入 PATH |
EACCES: permission denied |
npm 全局目录权限问题 | 用 nvm 管理 Node.js(推荐),或执行 sudo npm install -g(不推荐) |
AuthenticationError: Invalid API key |
API Key 格式错误或已失效 | 检查环境变量是否正确设置,在 Console 重新生成 Key |
RateLimitError |
超出 API 速率限制 | 等待片刻后重试,或申请提高速率限制 |
Network Error / ECONNREFUSED |
无法访问 api.anthropic.com | 检查网络环境,确保终端能访问境外服务(curl https://api.anthropic.com 测试) |
Node.js version too old |
Node.js 版本低于 18 | 按第二节的步骤升级 Node.js |
| 会话耗尽,Claude 停止工作 | Pro 版每日用量限制 | 等待次日重置,或升级到 Max 版($100/月),或切换到 API Key 按用量计费 |
修复 PATH 问题(最常见)
# 查找 npm 全局 bin 目录 npm config get prefix # 输出类似:/usr/local 或 /home/user/.nvm/versions/node/v20.x.x # 把 bin 目录加入 PATH(以 zsh 为例) echo 'export PATH="$(npm config get prefix)/bin:$PATH"' >> ~/.zshrc source ~/.zshrc # 验证 which claude claude --version
十、升级和卸载
# 检查当前版本 claude --version # 升级到最新版 npm update -g @anthropic-ai/claude-code # 查看可用版本 npm view @anthropic-ai/claude-code versions --json # 安装特定版本 npm install -g @anthropic-ai/claude-code@1.x.x # 卸载 npm uninstall -g @anthropic-ai/claude-code # 可选:删除配置目录 rm -rf ~/.claude
十一、进阶:自动化脚本集成
#!/bin/bash
# 示例:每次 git commit 前自动让 Claude 审查变更
# .git/hooks/pre-commit(赋予执行权限:chmod +x .git/hooks/pre-commit)
STAGED_FILES=$(git diff --cached --name-only --diff-filter=ACM | grep -E '\.(py|js|ts)$')
if [ -z "$STAGED_FILES" ]; then
exit 0
fi
echo "🤖 Claude Code 正在审查本次提交..."
REVIEW=$(git diff --cached -- $STAGED_FILES | \
claude --output-format text \
--max-turns 1 \
--dangerously-skip-permissions \
-p "审查这个 diff,如果有严重问题(安全漏洞、数据丢失风险)输出 BLOCK,否则输出 OK。只输出 BLOCK 或 OK,不要其他内容。")
if echo "$REVIEW" | grep -q "BLOCK"; then
echo "❌ Claude Code 发现严重问题,提交被阻止。运行 'git diff --cached' 查看详情。"
exit 1
fi
echo "✅ 审查通过"
exit 0
常见问题
Q:Claude Code 和 claude.ai 是同一个账号吗?
是的,用 claude login 时使用的是你的 claude.ai 账号。Claude Code 的用量共享你的 Pro/Max 订阅额度。如果用 API Key 认证,则是独立的 Console 账号,按用量单独计费。
Q:Claude Code 会不会自动上传我的代码到 Anthropic?
Claude Code 会把你的代码(或代码片段)发送到 Anthropic 的 API 进行处理,这是它工作的必要条件。根据 Anthropic 政策,Pro/API 用户的数据默认不用于训练模型。如果处理高度敏感的代码(如未公开的商业逻辑),建议在企业版协议下使用或通过 AWS/GCP 私有化部署。
Q:CLAUDE.md 文件需要提交到 git 吗?
推荐提交。CLAUDE.md 相当于项目的 AI 使用规范文档,提交后团队所有成员都能享受一致的 Claude Code 体验。如果包含敏感信息(如内部系统 URL),可以把敏感部分提取到 ~/.claude/CLAUDE.md(用户级全局配置,不进 git)。
Q:Claude Code 对 token 的消耗大吗,费用如何控制?
复杂任务(如审查整个代码库)会消耗大量 token。控制费用的方法:使用 Pro/Max 订阅(包含在月费内);用 /compact 定期压缩对话历史;用 /model claude-haiku-4-5-20251001 切换到轻量模型处理简单任务;配置好 .claudeignore 避免扫描无关文件。
总结
安装 Claude Code 的完整流程:安装 Node.js 20 LTS → npm install -g @anthropic-ai/claude-code → claude login(或设置环境变量)→ 进入项目目录运行 claude → 运行 /init 生成 CLAUDE.md → 开始使用。
用好 Claude Code 的关键是写好 CLAUDE.md——把项目背景、技术栈、代码规范、常用命令都写清楚,Claude Code 的输出质量会显著提升。把它当成一个理解你项目的新同事,给它足够的上下文,它才能真正帮上忙。