业州愚公接手了一个由朋友留下的老专案,该专案包含两万多行的Python程序码,变数名全是缩写且没有注解,让他完全看不懂。业州愚公决定使用AI工具Cursor来帮助他理解和修改这个专案。通过使用Cursor,业州愚公可以让AI先读懂整个专案,然后再一步一步地安全地修改程序码。这次的实测使业州愚公的修改方式发生了变化,他不再需要为了看不懂的程序码而推辞。业州愚公的经历表明,AI工具可以有效地帮助开发者接手和修改复杂的老专案。
菜鸟之友系列:《AI 工具实操与提示词》・工具篇作者:业州愚公
朋友丢给我一个他写了三年的 Python 专案,说:「帮我加个汇出报表的功能就行。」我打开数据夹,四十多个文件、两万多行程序码,变数名全是缩写,没有半行注解。以前遇到这种场面,我的做法只有一种:跟朋友说最近太忙。
这次我没有躲。我花了几天,把一个叫 Cursor 的 AI 程序码编辑器当成主力工具,把那个功能做出来了。这篇文章不谈理论,只讲一个非科班出身的人,怎么用 Cursor 看懂别人的程序码、再安全地动它。所有介面细节都以官方最新版本为准。
很多人第一反应是:我编辑器里已经装了 AI 补全套件,还要 Cursor 干嘛?
差别在于「它知道多少」。外挂式的 AI 助手,每次只看到你当前打开的文件,就像一个顾问只能透过门缝看你的专案。而 Cursor 是一个专门为 AI 重做的程序码编辑器(介面长得跟 VS Code 很像,很多习惯可以直接带过来),它可以把整个专案建立索引——你问「报表功能的数据是从哪张表读的」,它能跨着十几个文件去回答,而不是只盯着你眼前这一页。
| 对比项目 | 传统编辑器+AI 外挂 | Cursor |
|---|---|---|
| AI 能看到的范围 | 主要是当前文件 | 整个专案(建立索引后) |
| 改程序码的方式 | 你贴问题、复制答案回来 | 直接在编辑器里生成并套用修改 |
| 对新手的意义 | 能问单点问题 | 能跟着它读懂整个专案的结构 |
| 上手成本 | 低,但能力受限 | 需要适应一两天,回报大 |
一句话总结:外挂是「查字典」,Cursor 更像「请了一个坐你旁边的同事」。
Cursor 到官网下载安装即可,有免费方案,用量与付费细节以官方最新版本为准。装完别急着写程序,先做三件事,效率差很多。
第一件:登入并打开你的专案数据夹。 用选单里的 Open Folder 打开整个专案根目录,而不是单开一个文件。它建立索引需要一点时间,专案越大等越久,这一步值得等。
第二件:找到 AI 对话面板。 侧边栏有 Chat 入口(快捷键一般是 Ctrl+L 或 Cmd+L),这是你接下来最常用的地方。第一次打开时建议在设置里找一下 Privacy Mode(隐私模式)的选项,介意程序码被用于训练的话把它打开,具体策略以官方说明为准。
隐私这件事值得多说一句:公司的、客户的程序码丢给任何云端 AI 之前,先确认你有没有权限这么做。免费方案与付费方案在数据处理上的差异,以官方最新条款为准,别凭印象。
第三件:写一份专案规则。 Cursor 支持在专案里放一个规则档(早期叫 .cursorrules,新版整合进 Rules 设置,以官方最新版本为准),用大白话告诉它这个专案的规矩。我给朋友的专案写了三行:「回覆用繁体中文」「改动前先说明要动哪些文件」「每次只改一小步」。这份规则会影响之后每一次对话,省掉大量重复交代。
新手最容易犯的错,是把 Cursor 当成一个万能聊天框,什么都往对话里塞。它其实有三种明确分工的用法:
| 用法 | 触发方式 | 适合干什么 | 我的实测体感 |
|---|---|---|---|
| Tab 自动补全 | 打字时自动出现灰色建议,按 Tab 接受 | 写重复样板、补完你已经写了一半的程序码 | 最不吵人,命中率意外地高 |
| 行内编辑(Inline Edit) | 选中一段程序码,快捷键呼叫(一般为 Ctrl+K 或 Cmd+K) | 对着「这一段」提需求:加例外处理、换个写法、加注解 | 范围明确,改坏了好回头 |
| 对话与 Agent | 侧边 Chat 面板,可下达多步骤任务 | 跨文件的理解、新功能从零搭、一次改多个文件 | 能力最强,也最需要盯着看 |
分工原则很简单:知道要改哪一行,用行内编辑;不知道程序码在哪,用对话去问;要一口气做好几件事,才交给 Agent。 反过来用(什么都丢给 Agent)是新手烧额度又改坏程序的最大来源。
对话时有一个符号非常好用:@。在 Chat 输入框里打 @,可以引用特定文件、数据夹或整个程序码库(codebase)。
我实测的第一个问题就是这么问的:「@codebase 这个专案的报表数据从哪里读取?最后写到哪里?」它给出的回答带着具体档名和行号,我按图索骥翻过去核对,大方向是对的。这一刻的价值很难形容——以前我要在几十个文件里全域搜索半天的事,变成一次提问。
不过要泼一盆冷水:它给的档名和行号要自己点开核对。我在这一周里也遇过它指向一个相似但不对的文件。AI 对程序码的理解是「读出来的猜测」,不是「执行过的结论」。
我把 Cursor 当成一位新来的实习生:它读整个专案的速度比我快得多,指出来的路大部分是对的,但你把钥匙交给它之前,还是要自己看一眼地图。
回到开头那个任务。我的完整流程是这样的,你可以照抄:
第一步,先让它当导览。 我用 @codebase 问了三个问题:专案入口在哪、数据怎么流动、有没有现成的汇出相关程序码。花二十分钟,把它的回答整理成我自己的一张纸条。
第二步,让它出方案,不出程序码。 我明确要求:「先不要写程序码,告诉我你打算改哪几个文件、每个文件做什么。」它列了四个文件的改动计画。这一步是安全闸:方案错了改需求是零成本,程序码错了改起来就麻烦了。
第三步,按方案一小步一小步做。 每一步,我用行内编辑或对话让它生成那一小块,立刻看懂、立刻测试、立刻提交版本控制。绝不让它一口气改完四个文件。
第四步,让它当审稿人。 功能跑通后,我把改动范围圈出来问它:「这段有什么边界情况没考虑到?」它指出了一个日期格式在不同作业系统下的坑,是实打实的价值。
一周实测下来,我踩过的坑集中在三类,新手请直接记下:
一、生成的程序码不一定能跑。 它有时引用一个这个专案里根本没安装的套件,或用旧版的函式写法。所以每一小步都要真的执行测试,不能只看着「像对的」就往下走。
二、Agent 模式改起来很爽,回头也很痛。 它一次动五六个文件时,你要逐个核对改了什么。养成用 Git 的习惯:让 AI 动手之前先 commit,改坏了随时退回去。这条是底线,没有商量的余地。
三、它对「你的业务规则」一无所知。 程序码逻辑它能看懂,但「我们公司报表金额一律不四舍五入」这种规矩,它不会知道,除非你写进规则档或在对话里明说。AI 改出来「语法对、业务错」的程序码,是最难被新手发现的错。
工具的门槛比你想像的低,真正的门槛是「每一小步都验证」的纪律。Cursor 把写程序的手艺门槛拉低了,但没有把「判断对错」的责任拉低——那部分,永远是你的。
工具推荐随身机器人(新用户免费试用 7 天)
读完程序码要找人来问、写完程序要找人帮忙看文件,随身机器人随叫随到。新用户免费试用 7 天,去 sylogs.com 首页即可开通。
下一篇预告: 不想花钱订阅、也不想把数据传到云端?下一篇实测 Ollama——在自己的电脑上离线跑开源大模型,断网也能用,具体怎么装、怎么选模型、一般家用电脑跑得动多大的,一次讲清楚。
业州愚公 | SY 视野(sylogs.com)原创内容,转载请注明出处。
编辑评论 / Editor's Note
开发人员在接手旧专案时,常常会面临到难以理解程序码的挑战,这种情况可能会浪费大量时间和资源。透过AI技术的辅助,可以更快速地理解程序码结构和逻辑,从而提高开发效率和降低错误风险。这种方法不仅可以帮助开发人员更好地掌握旧专案,也可以提升整体的开发质量和效率。