【Claude Code】 AI 编程指南
Claude Code 是 Anthropic 推出的智能编程工具,它直接集成到你的命令行(终端)环境,通过直观的自然语言对话,帮你轻松驾驭代码编辑、问题修复、测试执行、版本管理、持续集成等核心开发环节,显著优化工作流,释放你的创造力和效率。这是每个程序员和团队都值得体验的高效生产力工具。
一、主要功能
- 根据描述构建功能:告诉 Claude 您想要构建什么,它会制定计划、编写代码,并确保代码正常工作。
- 调试和修复问题:描述一个 bug 或粘贴错误信息。Claude Code 会分析您的代码库,识别问题,并实现修复。
- 导航任何代码库:询问关于代码库的任何问题,都能得到全面的回答。能够感知整个项目结构,从网络获取最新信息,可通过 MCP 从外部数据源获取信息。
- 自动化繁琐任务:修复麻烦的代码检查问题、解决合并冲突、编写发布说明。可以通过单个命令完成所有这些操作,或者在 CI 中自动完成。
二、核心特性
- 通过终端交互:不是聊天窗口,也不是 IDE,直接在命令行终端中运行,方便与系统及其他工具集成,提供更高效的开发体验。
- 执行实际操作:可以直接编辑源文件、运行命令和创建提交。通过 MCP 可以读取您在其他系统中的设计文档、更新项目任务,或使用其他开发工具。
- 继承 Unix 哲学:是可组合和可脚本化的。如:
tail -f app.log | claude -p "如果在此日志流中看到任何异常,请通过微信通知我"
。可以在 CI 持续集成系统中添加脚本:claude -p "如果有新的文本字符串,将其翻译成中文并为 @lang-cn_zh-team 提交 PR 供审核"
。
三、Windows 安装 Claude Code
- 已安装 WSL2 + Nodejs, 当前仅支持 MacOS 和 Linux 系统中安装运行 Claude Code。
WSL(Windows Subsystem for Linux),适用于Linux的Windows子系统,允许用户在 Windows 上运行Linux命令行工具、脚本及应用程序,而无需虚拟机或双系统启动,资源占用更低,启动更快,支持VS Code远程开发。适合开发者、学生及需同时使用Windows和Linux功能的用户。
-
打开 WSL Linux 命令行,执行以下命令:
- 可在文件夹按住 Shift 点右键选择 “在此处打开Linux shell”
- 在 VScode 终端中点击
+
选择Ubuntu(WSL)
# 安装
sudo npm install -g @anthropic-ai/claude-code
- 配置 Claude Code,推荐使用项目专属配置
在项目根目录创建 .claude/
文件夹,并添加 settings.json
(项目公用) 及 settings.local.json
(个人设置如密钥) 配置文件。个人设置可添加到 .gitignore
。
{"permissions": {"allow": ["Bash(npm run lint)","Bash(npm run test:*)","Read(~/.zshrc)"],"deny": ["Bash(curl:*)"]},"env": {"ANTHROPIC_MODEL": "claude-sonnet-4-20250514","ANTHROPIC_BASE_URL": "https://api.com", // 去掉注释,并改为具体地址"ANTHROPIC_AUTH_TOKEN": "set in ./settings.local.json" // 去掉注释,最后一项无逗号,并改为具体Token}
}
- 启动 Claude 进入 REPL 命令行交互模式(也可通过直接通过命令行调用)。
# 跳转到项目根目录(已进入可省略)
cd /path/to/your/project/
# 启动 Claude 进行交互式编程
claude
通过 >/status
查看当前 Claude Code 状态:
-
切换登录:
/login
,选择通过订阅或 API 模式(按 token 计费)使用。
-
建议:美与效率并重: 打造理想命令行工作环境
四、配置 Claude Code
Claude Code 支持多层级设置:全局设置、项目级设置和环境变量。也可进入命令行模式,运行 /config
命令进行配置。
基于 settings.json 的分层配置:
-
用户Shell级配置:
~/.claude/settings.json
,适用于所有项目 -
项目级配置:
.claude/settings.json
可纳入版本控制,团队共享
.claude/settings.local.json
本地个性化配置(加入.gitignore)
五、国内接口转发服务
用于设置 ANTHROPIC_BASE_URL
+ANTHROPIC_AUTH_TOKEN
接口转发服务地址,一个账号通用所有模型,兑换比例为1.2元
兑换1刀
(约等于官方的1.7折)。
六、常用指令
以下是 Claude Code 的常用指令分类整理,涵盖基础交互、文件操作、Git 管理、配置调整等高频场景:
- 启动与对话
claude
:启动命令行交互模式(REPL),之后可以通过特定指令或自然语言交互。claude "任务/问题描述"
:带初始提示启动会话(如claude "解释这个项目"
)。claude -p "问题"
:执行一次性查询后退出(适合脚本调用)。claude -c
:继续最近一次会话。
- 会话管理
/help
:获取帮助信息。/status
:查看 Claude Code 运行信息。/exit
: 退出,或者按快捷键Ctrl+C
。/clear
:清除当前对话历史。/compact
:压缩对话内容,减少 Token 消耗。/cost
:查看当前会话的 Token 使用统计。/init
:创建CLAUDE.md项目配置文件。/cost
:查看当前会话已使用的费用。
- 文件编辑
claude "修复 code.js 的类型错误"
:自动定位并修改文件。/add-dir <路径>
:添加额外工作目录供 Claude 扫描。/vim
:进入 Vim 编辑模式,支持 Vim 快捷键(如i
插入、dd
删除行)。- 修复BUG:
> there's a bug where users can submit empty forms - fix it
- 重构代码:
> refactor the authentication module to use async/await instead of callbacks
- 编写测试:
> write unit tests for the calculator functions
- 更新文档:
> update the README with installation instructions
- 代码理解
claude "这个支付系统如何工作?"
:解析代码逻辑。cat file.js | claude -p "解释这段代码"
:通过管道输入文件内容分析。- 代码 Review:
> review my changes and suggest improvements
- Git 与版本控制
claude commit
:自动生成 Git 提交(需确认权限)。claude "创建 PR 并描述更改"
:生成 Pull Request。claude "去年12月哪个提交添加了测试?"
:搜索 Git 历史。> commit my changes with a descriptive message
> show me the last 5 commits
- 配置
/model
:切换模型(如claude-3-sonnet
或claude-3-opus
)。/permissions
:管理工具权限(如限制文件编辑或 Bash 命令)。/config
:调整主题、通知等全局配置。
- MCP 集成
/mcp
:管理外部服务连接(如数据库、API)。claude mcp add postgres "url=数据库链接"
:添加 PostgreSQL 查询支持。
- 项目记忆
/init
:生成CLAUDE.md
文件存储项目规范。# 注释
:输入以#
开头的文本可快速添加记忆。
七、场景及最佳实践指南
场景:代码理解
- 快速了解项目全貌
> 请概述这个代码库
> 总结项目术语表
> 项目遵循哪些约定
> 这部分代码采用了什么设计模式
> 数据模型有哪些
> 认证机制是如何实现的?
- 查找关代码
> 查找处理用户认证的文件
> 这些认证相关的代码是如何协同工作?
> 说明从前端到访问数据库的具体登录流程
场景:修复BUG
> 我运行 npm test 时遇到`XXX`错误 # 告知错误信息
> 建议修复 user.ts 中 @ts-ignore 的方法 # 提问解决方案
> 按建议更新 user.ts 添加空值检查 # 执行修改源码
场景:代码重构
> 找出代码库中已弃用的API用法
> 建议如何用现代JS特性重构utils.js
> 使用ES2024特性重构utils.js并保持行为一致
> 对重构的代码运行相关测试
场景:添加测试
> 找出文件中未被测试覆盖的函数
> 为通知服务添加测试
> 为通知服务添加边界条件测试用例
> 运行新测试并修复失败
场景:提交PR
> 总结本次认证模块的变更内容
> 创建 PR
> 在 PR 描述中补充更多安全改进相关的上下文信息
> 说明本次修改是如何测试的
场景:项目文档
> 找出 auth 模块缺少注释的函数
> 为 auth.js 未文档化的函数添加注释
> 完善注释补充更多上下文说明和示例
> 请检查文档是否符合项目规范
场景:通过图像辅助提问
可以把图片拖放/粘贴到 Claude 窗口,或指定图片路径
> 描述这张UI截图中的元素
> 根据设计稿生成匹配的CSS
> 这个错误截图的原因是什么?
场景:引用文件或目录
> 解释@src/utils/auth.js的逻辑
> @src/components的结构是怎样的?
> 显示@github:repos/owner/repo/issues数据
场景:深度思考
> 思考为 API 实现 OAuth2 认证的最佳方案
> 思考此方案的安全隐患
> 深入思考需要处理的边界条件
场景:使用命令行工具
- 作为脚本
// package.json
{"scripts": {..."lint:claude": "claude -p 'you are a linter. please look at the changes vs. main and report any issues related to typos. report the filename and line number on one line, and a description of the issue on the second line. do not return any other text.'"}
}
- 管道处理
通过管道将 Claude 集成到现有 Shell 脚本中,结合其他Unix工具构建高效工作流。使用--output-format
参数获取结构化输出
cat error-log.txt | claude -p '分析错误的原因' > output.txt
cat code.py | claude -p 'analyze this code for bugs' --output-format json > analysis.json
场景:自定义指令
- 创建项目级指令
首先在项目中创建存储自定义指令的文件夹
mkdir -p .claude/commands
# 指令名作为文件名
echo "分析代码性能并提出3条优化建议:" > .claude/commands/optimize.md
# 使用指令
> /optimize # 在指令中获得用户输入作为参数
echo "Find and fix issue #$ARGUMENTS. Follow these steps: 1.
Understand the issue described in the ticket 2. Locate the relevant code in
our codebase 3. Implement a solution that addresses the root cause 4. Add
appropriate tests 5. Prepare a concise PR description" > .claude/commands/fix-issue.md
# 使用指令
> /fix-issue 213
更多建议
- 明确需求:给出具体参数、格式或限制条件,而不是开放模糊的指令
- 分步执行:将任务分解为可验证的步骤,而不是一次性要求完整解决方案
- 确认理解:要求AI先复述问题核心要点,而不是直接开始解答
- 从宏观到微观逐步深入
- 使用项目专用术语
- 小步重构并保持测试
- 为复杂问题启用深度思考
- 利用图像辅助理解
- 创建可复用命令模板
八、参考
官方文档:https://docs.anthropic.com
END
博客中文章多为自己技术学习与实践备忘录,如果这篇文章对您有所启发或帮助,欢迎👍点赞或↪️分享,让更多开发者朋友受益!感谢您的阅读!
^_^