一句话总结
正确工作流的灵魂是角色定位:人是 owner,AI 是不需要休息的初级搭档——人负责拆任务、给上下文、做验收,AI 负责高速产出初稿。标准循环:拆小任务 → 给足上下文 → 生成 → 测试验证 → 人工 review。核心技能不是"会写提示词",而是上下文工程——决定给模型看什么、不给它看什么。
初级理解
任务拆分决定成败:"帮我写一个电商下单功能"是坏任务(歧义巨大);"为本项目写 OrderService.createOrder 方法,遵循接口约定(见 IOrderService),扣减库存用现有 StockService.deduct,只实现主流程,异常抛 BusinessException"才是好任务。判断标准:任务的验收条件你能一句话说清,AI 才可能做对。
小步快跑:一次让 AI 做一个函数/一个用例,验证通过再下一步;一次性生成 500 行然后逐行调试,总耗时反而高于分步走。每个小步都落一次 commit,随时可回退。
中级深入
上下文工程四要素:
- 项目约定:规则文件(.cursorrules / CLAUDE.md)沉淀技术栈、目录结构、代码风格、禁用项——让 AI 每次开口就"懂规矩"
- 相关代码:显式给出接口定义、调用方示例、相似实现("参考 OrderService 的写法")——AI 模仿能力远强于凭空设计
- 验收标准:测试用例/输入输出示例直接给——示例是最精确的规格说明
- 负面清单:明确"不要做什么"(不要引入新依赖、不要改动现有方法签名)——防止 Agent 自作主张
先测试后实现(TDD 与 AI 天然契合):人写测试用例(定义"对"),AI 写实现(追求"绿")——验收标准前置,AI 跑偏立即被测试抓住。这是把"AI 不可靠"变成"可控"的最实用一招。
迭代修正的技巧:带着报错回去(贴完整堆栈 + 相关代码),说清"期望 vs 实际";连续两轮修不好就换策略——让 AI 先解释代码/复述需求,而不是继续盲改;修好一个问题后又坏另一个 → 说明任务太大,重新拆。
高级拓展
大代码库的上下文策略(资深岗考点):上下文窗口装不下整个仓库——分层给:任务相关的直接文件 + 接口签名摘要 + 架构文档;用工具的代码库索引(语义检索)自动带出相关片段;把"模块地图"写进规则文件。万行级重构拆成阶段:先让 AI 出迁移方案 → 人审方案 → 按文件分批执行 → 每批跑回归。
工程化集成:脚手架与样板由 AI 生成并入库团队复用;CI 中接 AI code review(第一道筛子,人审聚焦设计);内部工具文档喂给 Agent(通过 MCP 连接工单/文档系统),让"查资料"也自动化。度量看交付:周期时间、变更失败率、返工率。
遗留系统改造工作流(高价值场景):① 让 AI 为老模块生成"行为快照"测试(characterization tests)锁住现有行为;② 再让 AI 重构内部实现;③ 测试保持绿色即安全。——先锁行为再动刀,这句话说出来就是经验。
实战场景
场景一:新功能开发全流程(面试标准答案模板)
场景二:给老项目补单测
场景三:线上 bug 排查
面试模拟
Q:什么是"上下文工程"?为什么比提示词技巧更重要?
A:上下文工程是决定"模型这一轮能看到什么信息"的系统化方法——项目规范、相关代码、示例、负面清单的组织与取舍。它比话术重要是因为:模型输出质量的方差主要来自信息不足与误导,而不是措辞花哨度。工程化手段:规则文件沉淀 + 显式引用 + 按任务裁剪上下文,本质是给 AI 做信息架构。
Q:怎么避免团队里有人"AI 生成直接上线"?
A:靠流程不靠自觉:① AI 产出走同一 PR 门禁,CODEOWNERS 覆盖核心模块;② CI 强制单测覆盖率阈值 + 静态扫描 + 依赖审计;③ 规则文件统一 AI 行为(禁用库、风格);④ 事故复盘对事不对人——把踩坑点变成检查项。技术上堵死"绕过"的可能,文化上允许试错。
Q:AI 一直改不对一个复杂 bug,你的处理流程?
A:三轮法则——连续三轮没修好就停下。第一步换任务:让 AI 复述问题、解释相关代码,往往是我给的上下文有误;第二步换人:自己读代码定位根因(这时发现 AI 缺的关键信息);第三步换拆法:把"修复 bug"拆成"先复现的测试 + 最小修复"。核心认知:AI 修不好通常是我没把问题定义清楚,止损比硬磕重要。