首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >当我使用Claude Code时我在想什么

当我使用Claude Code时我在想什么

作者头像
dsy
发布2026-01-26 15:50:17
发布2026-01-26 15:50:17
1090
举报
文章被收录于专栏:AI 新手村AI 新手村

使用 Claude Code(又名 cc) 作为编程工具已经有一段时间了,claude code 也陆陆续续迭代了好几个版本,在编程上的体验可以说是越来越好,对我来说唯一还能吐槽的点就是由于网络的原因,速度上还是有些慢。

使用 claude code 这一段时间,其实还改变了我一个坏毛病:接到需求直接编码。其实,不管使用哪款 AI 工具,都不能上来直接编码,其实你可以把 AI 当成一个普通员工,初次见面,你头脑里的很多想法不可能一次让对方全部理解。

我总结出来的黄金工作流程是:Research → Plan →Code

不论让 Claude 开始编写一个新需求,还是修改任何代码之前,先探索你的代码库并收集上下文信息,都是最重要的事,也是整个流程的核心要义,具体来说:

  1. 研究 (Research):研究一下 xx 系统是如何工作的。 找到所有相关的文件,并解释当前的流程。
  2. 计划 (Plan):现在请制定一个关于添加 xx功能 的详细方案。 将其拆分为具体步骤,并识别可能出现的问题。
  3. 编码 (Code):根据你的方案实现 xx 解决方案。 在执行过程中逐步验证每个步骤,并在完成时提交。

初始设置

无论我们用哪个工具(更准确的应该叫 AI Agent)去协助我们编程,claude code、gemini 或者 cursor,他们都需要一份"说明书"来了解这个项目的背景和规则,否则每次它都要猜你的意图。在 Claude Code 中这份初始设置文件名是 CLAUDE.md。

注意:各家 AI Agent 的初始设置文件的名字和位置不同,创建文件的时候一定要注意。

初始设置文件的优先级顺序由高到低如下:

  1. 对话指令
  2. 项目中的设置文件
  3. 系统级的设置文件

如果团队使用多种 AI 工具,可以试一下下面的结构:

项目结构
项目结构

项目结构

接下来,初始设置文件的内容该写些什么呢?

  1. 项目基本背景、技术栈
  2. 代码风格
  3. 安全规范
  4. 测试要求
  5. 特殊规则

举个例子,

代码语言:javascript
复制
claude.md
项目背景(Project Context)

本项目是一个基于 Node.js / TypeScript 的 API 服务,使用 Express 作为 Web 框架,并采用 Prisma ORM 进行数据库操作。

代码风格(Code Style)
- 使用函数式组件与 hooks 风格
- 优先使用 async/await,避免直接使用 promise 链
- 单行最大长度限制为 100 字符
测试要求(Testing Requirements)
- 每个新功能都必须包含 单元测试
- API 接口需撰写 集成测试
- 使用 Jest 作为测试框架
常见问题与注意事项(Common Pitfalls)
- 始终对用户输入进行验证
- 使用参数化查询,绝不拼接字符串
- 在访问数据前必须进行身份验证
- 记录错误日志,但不要向客户端暴露堆栈信息
- 列名使用 snake_case
- 表名使用复数形式
- 每张表必须包含 created_at 与 updated_at 字段
- 使用 deleted_at 字段进行软删除

指令技巧

有了初始设置文件作为"规范"后,我们还需要了解和 AI 沟通协作的技巧: 1.@指定特定的文件:让 AI 聚焦于相关代码。 2.使用 plan mode 先做规划(shift+tab):强制 AI 思考(对应我们的 Plan 步骤)。 3./ 自定义命令:自动化重复性任务。

举个例子, 每次提交代码都要思考如何撰写 commit message,能否自动生成提交信息?

在项目根目录下建立文件:.claude/commands/commit.md

输入以下内容:

代码语言:javascript
复制
---
description: Generate commit message and commit
---
请执行以下步骤:

1. 执行 `git status` 和 `git diff` 查看变更
2. 分析变更内容,生成符合 Conventional Commits 规范的 commit message
3. 格式:`type(scope): description`
   - type: feat/fix/refactor/docs/test
   - 描述需要清楚说明「做了什么」以及「为什么」
4. 询问我是否要执行 commit

请不要直接 commit,先让我确认 message。

下次提交代码的时候在命令行中,直接输入/commit 就可以了。

使用/commit 命令后
使用/commit 命令后

使用/commit 命令后

MCP

其实 mcp 也算是一种使用技巧,和上面介绍的通用技巧比需要提前安装一些插件。Claude Code 的 mcp 默认安装路径是在全局设置中,这一点要格外注意,默认路径在/Users/xxxx/.claude.json

这里以常用的 pgsql 和 cotext7为例,介绍一下安装和使用的方法。

代码语言:javascript
复制
#安装
claude mcp add postgres npx -- -y @modelcontextprotocol/server-postgres postgresql://localhost:5432
claude mcp add  --transport http context7 https://mcp.context7.com/mcp --header "CONTEXT7_API_KEY:去官网申请"
记得在 claude.md 中增加下面内容,不然以后每次输入需求后,还要在最后加一句 use context7,特别麻烦。
Always use context7 when I need code generation, setup or configuration steps, or
library/API documentation. This means you should automatically use the Context7 MCP
tools to resolve library id and get library docs without me having to explicitly ask.

# 查看 mcp,只针对本项目,不是全局的
claude mcp list   

# 使用 mcp
claude  "Query the users table" 
pgsql mcp 的使用效果
pgsql mcp 的使用效果

pgsql mcp 的使用效果

关于需求

最后我还想回归到最开始的需求,明晰清楚需求的内涵和外延是做好一个项目最终的事情,在使用 Claude Code 来构建项目之前,花 15-20 分钟进行研究:

  • 最佳实践:其他人是如何解决类似问题的?在网上搜索博客文章、Stack Overflow 讨论和文档。
  • 自己的模式:你是如何解决类似问题的?在现有的代码库中搜索类似的功能。
  • 库的功能:你的项目会使用外部库吗?如果你正在使用特定的代码库,让人工智能阅读其文档或源代码。

让人工智能将这些研究综合成一个计划,内容包括:

  • 要解决的问题(一个清晰的句子)
  • 两到三种解决方案(每种方案都要诚实地列出其优缺点)
  • 任何边缘情况或安全考虑

审查该计划并留意自己的反应。你的想法和反应很重要。当你认为 "这太复杂了" 或 "我们已经有更好的方法来做这件事" 时,不要只是修改这个计划,还要记录下你为什么会这么想。把它写下来。

最后根据该计划开发这个功能。

完成整个项目后,将最终的实现与原始计划进行比较。你在哪些地方偏离了计划?为什么?怎样才能让这个计划更好?将自己的反思记录下来,用于下一个项目的开发。

在下一个项目中,把自己的反思添加到你的 CLAUDE.md 文件中。写下一条规则,比如 "在做 X 类型的工作时,记得检查 Y",或者 "我更喜欢方法 A 而不是方法 B,因为原因 C"。

另外,对于一些需求很模糊,甚至是只有一句话的需求,可以试试下面的提示词,让 AI 帮忙。

代码语言:javascript
复制
需求的确认:
你是一位资深产品顾问(C - Capacity) 
背景:我在做一个电商平台,客户反应「结帐流程太慢」(I - Insight) 
请用苏格拉底提问法,帮我厘清这个需求背后的真实问题(S - Statement) 
请用反向提问的方式引导我思考,不要直接给答案(P - Personality) 
最后提供 3 种可能的理解方向让我选择(E - Experiment)

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2025-12-11,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 小数据不简单 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 初始设置
  • 指令技巧
  • MCP
  • 关于需求
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档