本文将为你提供Claude Code的实际使用示例,帮助你快速上手并掌握一些常见的开发任务。
系好安全带,发车!
1. 理解新代码库
快速了解代码库概况
如果你刚加入一个新项目,想要快速了解其结构,你可以按照以下步骤进行:
- 进入项目根目录:
cd /path/to/project
- 启动 Claude Code:
claude
- 请求代码库的概况:
> 给我一个代码库概览
- 深入了解特定组件:
> 解释这里使用的主要架构模式
> 关键的数据模型有哪些?
> 认证是如何处理的?
小技巧:
- 从广泛的问题入手,然后逐步聚焦到具体领域。
- 询问项目中使用的编码约定和模式。
- 请求项目特定术语的词汇表。
查找相关代码
当你需要定位与某个功能相关的代码时,可以按如下方式操作:
- 请求 Claude 查找相关文件:
> 查找处理用户认证的文件
- 获取组件交互的上下文:
> 这些认证文件是如何协同工作的?
- 了解执行流程:
> 从前端到数据库,跟踪登录过程
小技巧:
- 明确你想要查找的内容。
- 使用项目中领域特有的语言。
2. 高效修复 Bug
诊断错误消息
遇到错误时,你可以通过以下方法找出并修复问题:
- 与 Claude 分享错误消息:
> 我在运行 npm test 时看到错误
- 请求修复建议:
> 提供一些修复 user.ts 中 @ts-ignore 的方法
- 应用修复:
> 更新 user.ts,添加你建议的 null 检查
小技巧:
- 告诉 Claude 用于重现问题的命令,并提供堆栈跟踪。
- 提及任何重现错误的步骤。
- 说明错误是间歇性的还是一致性的。
3. 代码重构
现代化旧代码
当需要更新旧代码,采用现代的编程模式时,可以按照以下步骤进行:
- 识别要重构的旧代码:
> 查找我们代码库中弃用的 API
- 请求重构建议:
> 建议如何重构 utils.js,使用现代 JavaScript 特性
- 安全地应用更改:
> 重构 utils.js,使用 ES2024 特性,同时保持原有行为
- 验证重构:
> 对重构后的代码运行测试
小技巧:
- 向 Claude 询问现代方法的好处。
- 要求在需要时保持向后兼容性。
- 进行小步、可测试的增量式重构。
4. 处理测试
添加测试覆盖率
若需要为未覆盖的代码添加测试,可以按如下步骤进行:
- 识别未经测试的代码:
> 查找 NotificationsService.swift 中未覆盖的函数
- 生成测试框架:
> 为通知服务添加测试
- 添加有意义的测试用例:
> 为通知服务中的边缘情况添加测试用例
- 运行并验证测试:
> 运行新测试,修复任何失败
小技巧:
- 要求覆盖边缘情况和错误条件的测试。
- 根据需要请求单元测试和集成测试。
- 请 Claude 解释测试策略。
5. 创建 Pull Request
生成全面的 PR
当你需要为你的更改创建一个文档清晰的 pull request 时,按以下步骤操作:
- 总结你的更改:
> 总结我对认证模块所做的更改
- 使用 Claude 生成 PR:
> 创建一个 PR
- 审查并完善描述:
> 增强 PR 描述,补充有关安全性改进的更多信息
- 添加测试信息:
> 添加关于如何测试这些更改的信息
小技巧:
- 直接要求 Claude 为你创建一个 PR。
- 提交前审查 Claude 生成的 PR。
- 要求 Claude 突出潜在的风险或注意事项。
6. 处理文档
生成代码文档
如果你需要添加或更新代码文档,可以按照以下步骤操作:
- 识别没有适当 JSDoc 注释的代码:
> 查找 auth 模块中没有适当 JSDoc 注释的函数
- 生成文档:
> 为 auth.js 中未注释的函数添加 JSDoc 注释
- 审查和增强文档:
> 改进生成的文档,增加更多上下文和示例
- 验证文档:
> 检查文档是否符合我们项目的标准
小技巧:
- 指定你所需的文档风格(如 JSDoc、docstrings 等)。
- 在文档中要求提供示例。
- 为公共 API、接口和复杂逻辑请求文档。
7. 使用图像
分析图像和屏幕截图
如果你需要在代码库中使用图像或让 Claude 分析图像内容,按照以下步骤进行:
- 将图像添加到对话中:
- 将图像拖入 Claude Code 窗口。
- 复制并粘贴图像至 CLI (
ctrl+v
)。 - 提供图像路径:
$ claude > 分析此图像:/path/to/your/image.png
- 请求 Claude 分析图像:
> 这张图显示了什么?
> 描述一下这张截图中的 UI 元素
> 这个图表中有什么问题吗?
- 使用图像获取上下文:
> 这是错误的截图,是什么导致的?
> 这是当前的数据库架构,我们需要如何修改以支持新特性?
- 从图像中获取代码建议:
> 生成与这个设计草图匹配的 CSS
> 用什么 HTML 结构可以重建这个组件?
小技巧:
- 当文本描述不清晰或繁琐时,可以使用图像。
- 提供错误、UI 设计或图表的截图,以便获得更好的上下文。
- 可以在对话中使用多个图像。
8. 设置项目记忆
创建有效的 CLAUDE.md 文件
为了存储重要的项目信息、约定和常用命令,你可以设置一个 CLAUDE.md 文件:
为你的代码库初始化 CLAUDE.md 文件:> /init
小技巧:
- 包括常用命令(如构建、测试、检查)以避免重复搜索。
- 记录代码风格偏好和命名约定。
- 添加特定于项目的重要架构模式。
- 你可以将 CLAUDE.md 文件添加到你运行 Claude 的文件夹、父目录(Claude 会自动读取这些文件)或子目录(Claude 会按需拉取这些文件)。
9. 将 Claude 用作 Unix 风格的实用程序
添加到你的验证过程
将 Claude 添加到你的构建脚本:
// package.json
{
...
"scripts": {
...
"lint:claude": "claude -p '你是一个代码检查工具,请查看与主分支的差异,并报告任何与拼写错误相关的问题。每个问题的文件名和行号要在一行上,描述在第二行。不要返回任何其他文字。'"
}
}
管道输入,管道输出
通过 Claude 管道传输数据:$ cat build-error.txt | claude -p '简明扼要地解释这个构建错误的根本原因' > output.txt
10. 设置模型上下文协议 (MCP)
配置 MCP 服务器
如果你想通过将 Claude 连接到专用工具和外部服务器来增强其功能,请按以下步骤操作:
- 添加 MCP Stdio 服务器:
- 基本语法:
$ claude mcp add <name> <command> [args...]
- 示例:添加本地服务器:
$ claude mcp add my-server -e API_KEY=123 -- /path/to/server arg1 arg2
- 基本语法:
- 管理 MCP 服务器:
- 列出所有配置的服务器:
$ claude mcp list
- 获取特定服务器的详细信息:
$ claude mcp get my-server
- 删除服务器:
$ claude mcp remove my-server
- 列出所有配置的服务器:
小技巧:
- 使用
-s
或--scope
标志与project
(默认)或global
一起指定配置的存储位置。 - 使用
-e
或--env
标志设置环境变量(例如,-e KEY=value
)。 - MCP 遵循客户端-服务器
架构,Claude Code(客户端)可以连接到多个专用服务器。
连接到 Postgres MCP 服务器
如果你希望 Claude 具有只读权限来查询 PostgreSQL 数据库和检查架构,按照以下步骤操作:
- 添加 Postgres MCP 服务器:
$ claude mcp add postgres-server /path/to/postgres-mcp-server --connection-string "postgresql://user:pass@localhost:5432/mydb"
- 使用 Claude 查询数据库:
$ claude > 描述一下我们用户表的架构
$ claude > 系统中最新的订单有哪些?
$ claude > 展示客户和发票之间的关系
小技巧:
- Postgres MCP 服务器提供只读访问,确保安全。
- Claude 可以帮助你探索数据库结构并运行分析查询。
- 使用它可以快速了解不熟悉项目中的数据库架构。
- 确保你的连接字符串使用具有所需最低权限的凭据。
结语
通过学习这些 Claude Code 实用教程,可以充分发挥 Claude Code 的强大功能,提高开发效率和代码质量。如果你想了解更多 Claude Code 的教程,请参考:Claude Code 完全指南