Claude Code 实战指南:像带实习生一样让 AI 帮你维护项目
你请了一个程序员帮你改项目,得先把办公室门禁卡给他 —— 权限只限于你授权的那一亩三分地。
写在前面
相信你已经听说过 Claude Code(下文简称 cc)—— Anthropic 推出的命令行 AI 编程助手。网上关于它的文章大多在讲"一句话生成一个网站",但真正工作中,我们面对的往往是已有项目的维护、功能迭代、代码理解这些"脏活累活"。
本文不聊 Hello World,聊点实际的:如何用 cc 像一个真正的团队成员一样,接手、理解、维护一个已有项目。
一、门禁卡思维:最小权限 + 安全边界
第一次用 cc,很多人会被一个操作拦住 —— 信任文件夹。
Before I can work in this directory, you need to trust it.
Run /trust or add it to your trusted directories.
这不是故意恶心人的设计,而是 Anthropic 刻意贯彻的最小权限原则。
想想现实场景:你请了一个外包程序员来帮你改代码,你会把整台电脑的 root 权限给他吗?不会。你只会给他一个项目文件夹的读写权限,让他在这里面折腾。
cc 的逻辑完全一样 —— AI 默认不乱碰你的系统,只有你明确授权,它才能干活。一台 Mac Mini 的权限,就给一台 Mac Mini 的范围。
这个设计有三个实际好处:
| 维度 | 说明 |
|---|---|
| 隐私保护 | cc 不会扫描你的桌面、文档、浏览器历史,只看你授权的目录 |
| 误操作防护 | 即使 Prompt 写劈叉了,影响范围也被限定在信任文件夹内 |
| 合规友好 | 企业环境中,可以精确控制 AI 能接触哪些代码仓库 |
实践建议:为每个项目单独建立工作目录,按需授权,用完可以 /untrust 收回权限。
二、规划模式:Prompt 门槛的"降维打击"
这是我觉得 cc 最被低估的功能。
普通模式下,你直接描述需求,cc 开干。听着很美好,但问题是 —— 描述清楚需求本身就是一种能力。你得知道该改哪些文件、加什么表、怎么接现有模块。这对新人或者不熟悉项目的开发者来说,门槛一点都不低。
规划模式(Plan Mode)解决的就是这个问题:
bash
复制
/plan
它的工作流是这样的:
- 你提出目标:比如"给这个电商系统加一个购物车功能"
- cc 反问 + 探索:它会读代码、分析现有架构,然后反过来问你 —— 购物车数据存前端还是后端?需不需要和现有登录模块打通?商品详情页的"加入购物车"按钮放哪里?
- 生成执行计划:确认后,cc 输出一份分步骤的计划 —— 后端加什么表、写什么接口;前端改哪些组件、加什么状态管理
- 你审核,它执行:确认计划没问题后,切回 Craft 模式开始施工
这本质上把"写 Prompt"这件事,从一个单方面输出变成了对话式协作。你不必一开始就把需求描述得滴水不漏,cc 会帮你补全盲区。
什么时候用 Plan Mode?
- 需求模糊,只知道"大概要做什么"
- 改动涉及 3 个以上文件
- 需要兼容现有架构,怕改出 Bug
- 接手不熟悉的项目,不清楚代码结构
三、/init:五分钟接手一个陌生项目
接盘别人的代码是程序员的日常噩梦。没有文档、没有注释、模块间依赖像蜘蛛网 —— 光看懂就要花半天。
cc 提供了一个命令专门解决这个痛点:
bash
复制
/init
执行后,cc 会做下面这些事:
- 扫描项目文件结构,识别技术栈和目录组织方式
- 阅读关键代码,理解模块划分、数据流、入口文件
- 自动生成
CLAUDE.md,相当于 cc 对项目的"理解文档" —— 包含架构概览、关键文件说明、构建命令、注意事项
之后你每次在这个项目里用 cc,它都会先读 CLAUDE.md,相当于带着"项目说明书"上岗。
如果项目已经有 CLAUDE.md? 更好。这是项目维护者专门写给 AI 看的文档,cc 会直接以此为知识基础。建议团队把这个文件纳入版本管理,随项目迭代持续维护。
# CLAUDE.md 示例片段(团队应持续维护)
## 技术栈
- 前端:React 18 + TypeScript + Zustand
- 后端:Go + Gin + GORM
- 数据库:PostgreSQL
## 关键约定
- API 路径统一 /api/v1/ 前缀
- 所有金额字段用分为单位(int64)
- 前端组件放在 src/components/,页面放在 src/pages/
有了这个文件,新成员(不管是人还是 AI)入项成本大幅降低。
四、三种模式的协作节奏
cc 提供了三种工作模式,理解它们的定位很关键:
| 模式 | 场景 | 典型命令 |
|---|---|---|
| Chat(聊天) | 探索代码、问"这个函数是干嘛的"、"为什么这么写" | 自由提问 |
| Plan(规划) | 需求模糊、改动复杂时,先出方案再动手 | /plan |
| Craft(执行) | 方案已明确,直接开干 | 切回普通模式描述任务 |
推荐的协作节奏:
接手新项目 → /init → Chat 模式熟悉代码
需求来了 → /plan → 讨论方案 → 审核计划
方案确认 → Craft 模式 → 描述具体任务 → cc 执行
改完了 → Chat 模式 → "帮我检查一下改动有没有问题"
这个流程走下来,cc 从一个"代码补全工具"变成了一个有上下文、有规划能力、能主动沟通的协作者。
五、实战案例:从零搭建宣传页
原文提到的实战场景很典型 —— "帮我制作一个网页,用来宣传吉马程序员"。
如果直接描述这个需求,新手可能会写:
❌ "帮我做个网页"
然后得到一个不确定长什么样的结果。
更好的做法是进入规划模式后这样描述:
✅ "帮我做一个用于宣传'吉马程序员'的单页网站。需要包含:一个 Hero 区展示品牌名和 Slogan;服务介绍卡片(3-4 个);一个联系方式区块;整体风格偏现代、简洁、科技感。先出设计稿,确认后再写代码。"
cc 会先给布局方案,确认后再输出完整 HTML/CSS/JS。这就是 Plan Mode 降低 Prompt 门槛的典型场景 —— 你不需要一次说清楚所有细节,cc 会帮你补全。
六、常用指令速查
| 指令 | 作用 |
|---|---|
/init | 初始化项目,生成 CLAUDE.md |
/plan | 进入规划模式,先讨论再动手 |
/clear | 清空会话上下文 |
/compact | 压缩上下文(节省 Token) |
/status | 查看当前会话状态 |
/model | 切换模型 |
/trust | 信任当前目录 |
/untrust | 取消信任当前目录 |
结语
Claude Code 真正厉害的地方不是"一句话生成整个 App",而是它把 AI 从一个工具升级为了一个协作者。
门禁卡式的权限设计让你敢用、愿用;规划模式让你不需要成为 Prompt 大师也能描述清楚需求;/init 和 CLAUDE.md 让项目知识可沉淀、可复用。这些设计加在一起,解决的其实是软件工程里最古老的问题 ——沟通成本。
把 cc 当实习生用,它就是个实习生。把它当结对编程搭档用,它就能成为你的第二大脑。
本文基于 Claude Code 实战经验整理,首发于稀土掘金。欢迎评论区交流你的使用心得。