用“CC”接管一个遗留项目:权限、规划与信任的艺术

19 阅读6分钟

让 AI 像你的程序员一样安全、高效地理解和维护代码

接手一个已有项目,就像换岗后走进一个陌生的办公室——你需要门禁卡、文件索引,还得弄清楚前任留下的“黑话”与逻辑。
而如果这个“新员工”是一个 AI 编程助手(比如 Anthropic 的 CC),你不仅要把门禁卡给它,还要教会它最小权限安全边界

今天,我就用一次真实的 drumkit 代码标记乐 项目维护经历,带你看看如何用 CC 安全、优雅地接手一个旧项目,顺便用 /plan 模式完成一次“吉马程序员”宣传页面的制作。


一、信任文件夹:给 AI 一张“限权的门禁卡”

想象一下:你请了一个程序员帮你改项目,首先得给他办公室的门禁卡,他才能看代码、改文件、跑命令。
但你不会让他随意进出财务室或服务器机房——所以这张卡只限于你授权的那个文件夹

在 CC 中,这就是 信任文件夹 的概念。

bash

# 示例:授权 CC 访问当前项目目录
cc trust .

Anthropic 在 CC 里强调的正是 最小权限 + 安全边界

  • AI 默认不碰你的系统
  • 只有你明确授权,它才能读取、修改、执行命令
  • 就像给 Mac mini 的一台虚拟机权限,而不是整个主机

这种设计天然适合多人协作、开源项目或敏感业务代码的 AI 辅助维护。


二、/init:让 AI 先“读一遍项目”

当你信任了一个文件夹,CC 并不会立刻开始改代码。
它首先会问:这个项目是干什么的?有哪些关键文件?

这时候你就可以使用 /init 指令。

text

/init

CC 会扫描项目结构,读取代码、配置、注释,然后生成一份 Claude.md 文件。
这个文件就像是 AI 对这个项目的“理解笔记”:

  • 项目主要技术栈
  • 核心模块与依赖
  • 关键的接口、函数、配置
  • 已知的坑或约定

以后你再和 CC 对话,它都会优先参考这份文件,而不是每次从头猜。

这很像新人入职后写的第一份“项目认知报告”,只不过 AI 几秒钟就能完成。


三、chat 模式:像聊天一样深入了解项目

有了 Claude.md 作为基础,你就可以进入 chat 模式,像和同事聊天一样深入了解项目。

text

这个项目的 drumkit 模块是做什么的?

CC 会结合代码和你提问的上下文给出解释,甚至可以画简单的流程图或调用链。

你也可以让它:

  • 解释某段复杂逻辑
  • 找出某个 bug 的可能位置
  • 建议如何重构一个老模块

这种交互方式,比翻文档或 grep 代码高效得多,尤其适合你第一次接触一个项目


四、实战:制作“吉马程序员”宣传页(普通模式 vs 规划模式)

我们用一个实际任务来对比 CC 的两种工作模式。

任务目标

制作一个网页,用来宣传“吉马程序员”。

4.1 普通模式:直接给提示词

你可以直接对 CC 说:

text

帮我做一个宣传吉马程序员的网页,风格要酷一点,包含课程介绍、名师团队、学员评价。

CC 会直接生成一个 HTML/CSS/JS 页面,甚至内嵌样式和响应式布局。
优点:快,适合简单任务。
缺点:需求模糊时,结果可能偏离预期。

4.2 规划模式:先问再写(/plan)

对于稍复杂的任务,建议先进入 规划模式

text

/plan

CC 不会立刻写代码,而是先问你一系列问题,比如:

  • 目标用户是谁?(企业 HR?转行开发者?在校学生?)
  • 希望强调什么卖点?(就业率?项目实战?名师?)
  • 页面是否需要多端适配?
  • 是否需要表单提交或后台?

它会帮你把模糊的需求变成结构化的 Prompt,然后给出实现计划:

text

【规划】
1. 确定页面结构:头图、课程特色、名师卡片、学员评价、底部报名
2. 使用 Tailwind + 响应式栅格
3. 添加一个简单的报名表单(前端验证,暂不接后端)
4. 兼容移动端与桌面端

确认计划后,CC 才会开始生成代码。
结果更可控,更适合团队协作或需要交付验收的场景。


五、类比:给电商系统加购物车

规划模式的优势在更大规模的任务上体现得更明显。
比如:

给一个已有电商系统加购物车功能

CC 会先分析现有代码(通过 Claude.md + 代码扫描),然后给出影响范围:

  • 后端:新增购物车表、添加/删除/查询接口
  • 前端:购物车组件、状态管理、与登录模块的 token 校验
  • 兼容性:是否需要合并本地购物车与登录后购物车

并询问你优先级和限制条件,然后才动手实现。
这就像真正的软件工程师做技术方案设计,而不是盲目写代码。


六、Claude.md:项目的“长期记忆”

在 CC 的工作流中,Claude.md 是一个非常重要的文件。
它可以是:

  • 手动编写的项目指南
  • 或者由 /init 自动生成

内容示例:

markdown

# Claude.md for drumkit 项目

## 项目概述
一个基于 Web Audio API 的在线架子鼓模拟器。

## 核心模块
- drumkit.js:鼓组采样与播放逻辑
- ui-controller.js:界面交互与键盘映射

## 常见任务
- 新增音效:在 samples/ 下添加音频文件,并在 drumkit.js 注册
- 调整 UI 布局:修改 styles/main.css

## 注意事项
- 不要改动 AudioContext 的初始化顺序,会导致 iOS 无法播放
- MIDI 映射暂未实现

有了这份文件,你甚至可以把项目交给另一个 AI(或另一个同事),他们也能快速上手。


七、总结:CC 带来的项目维护新范式

能力传统方式使用 CC
理解项目读文档 + grep 代码/init 自动生成 Claude.md
权限控制全盘或手动授权信任文件夹 + 最小权限
需求澄清多次沟通或详细 PRD/plan 模式交互式澄清
执行复杂任务手工拆分 + 编码AI 自动规划并实现
长期记忆依赖文档文化Claude.md 持续维护

CC 不是简单的代码生成器,而是一个可以安全入驻你项目的 AI 工程师

它懂最小权限,会读项目,能聊需求,按计划交付。
而你,只需要在开始的时候,说一句:

text

/init
/plan

然后把那张“文件夹的门禁卡”交给它。


后记
这篇文章的灵感来自我用 CC 维护一个开源的 drumkit 项目的过程。
一开始我也不敢让它随便改代码,直到我理解了“信任文件夹 + /init + /plan”这套组合拳。
现在,它已经是我接手任何旧项目的第一位“编外队友”。

如果你也在维护一个有些年头、文档不全、不敢乱改的项目,不妨试试 CC。