用 AI 编程工具的 10 个交互技巧
用 AI 编程工具的 10 个交互技巧
1. 先让它说方案,再让它写代码
收到需求后直接说"做吧",AI 会立刻撸代码。但方向错了,后面全是沉没成本。
加一句就行:
先别写代码。告诉我你打算怎么实现,涉及哪些文件,有什么需要注意的。
这篇系列里很多文章都有这一步。第 9 篇从零建项目,Claude Code 先出了架构方案我才让它动手。第 6 篇重构 467 行代码,它先分析了模块划分方案。这是回报率最高的一句话——30 秒的确认省掉后面 10 分钟的回滚。
2. 跑偏了不用重来,直接修正方向
AI 写着写着走错路了——很正常。不用 Ctrl+C 重新开始,在对话里纠正就行:
停。刚才那个 database.py 不要用 async,改回同步的 SQLAlchemy。其他部分继续。
它的上下文里有你之前的对话,知道你的意图,知道之前的代码。重开 session 等于让它重新理解项目。已经跑了 10 个测试,只剩 1 个方向不对——告诉它哪错了就行。
3. 测试挂了让 AI 自己修
你什么都不用做。看它表演。
AI 跑完测试看到报错,会自己分析原因、修改代码、重新跑。有时候这个过程会反复两三次。不要插手——除非它在同一个地方反复犯同一个错误(那说明它不理解业务意图,需要你纠正)。
第 8 篇写测试那篇,validator 重构后 7/8 测试通过,Claude Code 自己定位到是输出格式从 string 变成了 dataclass,自己修了测试。我没碰键盘。
4. 大任务分步提交,别一锅端
一个需求涉及 5 个模块的改动。一次性全让 AI 做完,出了问题你不知道是哪一步坏了。
拆开:
先做 database 层的改动。做完了停下来让我看。
确认没问题:
继续,做 service 层。
这样每一步都是一个可控的 diff。出了问题范围明确,回滚也容易。第 6 篇拆模块就是这么做的——先拆 cleaner,跑通测试,再拆 loader。
5. 对话太长就重开一个 session
AI 会疲劳——不是技术上的,是上下文太长了,它的注意力被稀释,开始引用前面已经推翻的方案。
信号很明显:
- 反复改同一个文件,改过去又改回来
- 忽略你几分钟前刚说的要求
- 生成的代码跟你当前项目状态不对应(它在用半个小时前的版本)
这时候结束 session,新开一个。你丢掉的上下文 AI 可以重新读——它的 Read 和 Grep 工具两秒钟就扫完项目。
6. 给参照物,比给规则快
说"用单引号"不如说"参照 src/utils/format.js 的写法"。
AI 理解规则靠语义匹配——它知道"单引号"是什么意思,但面对 20 条规则时难免漏一条。而给它一个文件路径,它会直接读那个文件的代码,把风格照搬过来。
第 10 篇讲 CLAUDE.md 时提到过这个技巧——在 CLAUDE.md 里写一行"如果不确定怎么写,参照 src/services/order-service.js",比写 200 行风格规范更管用。
7. 先搞出能跑的,再优化
不要第一版就追求"最优解"。让 AI 先写一个朴素的实现——O(n²) 也行,代码长点也行。跑通之后再优化。
先写一个能跑通的基础版本。跑通之后,再分析有没有可以优化的地方。
这个顺序有两个好处:第一,你能更快看到结果,知道方向对不对;第二,AI 在跑通的代码上做优化,比从零开始"写出最佳实践"成功率更高。
8. 别看都不看就 Accept
AI 生成的代码,按 Accept 用不了一秒。但这个时间省不得。
前几篇里反复出现的一个现象——AI 代码 90% 没问题,但那 10% 的坑往往是:
- 引了一个项目里不存在的 import 路径
- 覆盖了你刚改的文件(它读的是旧版本)
- 函数签名对但行为有细微偏差
看一眼 diff,特别是 import、文件路径、函数签名这三样。10 秒钟的审查,抵掉半小时的排查。
9. 拒绝时给理由,别只说"不对"
你如果只说"不对,重写",AI 会把整个方案推翻——包括其中对的部分。
不对,数据库连接应该用连接池而不是每次 new 一个连接。其他部分没问题。
AI 会保留其他代码,只修正数据库连接这一处。不仅快,而且不会引入新问题——它只动了一个点,其他部分没变。
第 8 篇让 AI 写测试时,我对它说"consolidate_invoices 的测试没有覆盖 mixed status 的场景"。它补了这一个测试,没动其他 10 个。
10. 知道什么时候关掉 AI,自己写
这个可能是最重要的。
有些场景 AI 效率反而低:
- 改一个函数名——全局搜索替换,三秒钟,不用开 AI
- 微调一个 CSS 值——手写快得多
- 业务决策——折扣封顶到底多少,AI 只能列出可能方案,拍板的是你
第 1 篇对比过——写小函数用 Copilot Tab 补全最快,连 Ctrl+I 都不用。AI 是好工具,但不是所有螺丝都要用电钻拧。
AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。
更多推荐

所有评论(0)