如果只看演示视频AI 编程几乎是完美的。输入一句帮我做一个后台管理系统。几分钟以后页面有了 接口有了 数据库有了 测试也有了看起来开发效率直接提高十倍。但真正把 ChatGPT、Plus、Pro、Codex 放进日常开发以后会发现事情没有这么简单。AI 确实能显著提高开发效率。但与此同时它也会带来一批新的工程问题。例如代码写得太快可能导致Review 跟不上Agent 修改文件太方便可能导致一个小需求改了几十个文件模型非常自信又可能导致代码看起来正确 实际上没有运行所以到了 2026 年我认为开发者真正需要掌握的已经不只是怎么让 ChatGPT / Codex 帮我写代码还包括怎么避免 AI 把项目越改越乱下面整理 15 个我认为非常常见的 AI 编程坑。如果已经开始使用 ChatGPT Plus、Pro、Codex 做真实项目这些问题基本迟早都会遇到。一、坑 1一句话就让 Codex 开始改代码这是最常见的情况。比如帮我优化一下登录系统。然后 Agent 直接开始修改 auth.ts接着修改 session.ts再修改 middleware.ts最后顺手重构 API问题是“优化”到底是什么意思可能是性能优化也可能是安全优化也可能只是修一个登录超时问题任务越模糊Agent 自由发挥越多。更好的方式先写先不要修改代码。 请分析当前登录系统并说明 1. 当前认证流程 2. 主要模块 3. 已知问题 4. 可能的改进点 5. 哪些修改风险最高。 等我确认以后再实施。核心原则Explore ↓ Plan ↓ Implement不要Prompt ↓ 直接改二、坑 2以为 AI“看懂了项目”AI 输出我已经理解当前项目架构。很多人就真的默认它理解了。其实未必。尤其项目比较大时Agent 可能只看了几个入口文件然后根据经验推测整个系统。例如它看到auth.ts就假设所有认证逻辑都在 auth.ts结果真正权限判断其实还藏在middleware service database trigger里面。我的习惯不要问你理解了吗而是让它证明。例如请告诉我 登录请求从浏览器发出以后 完整经过哪些文件和函数 最终在哪里生成 Session。 列出真实调用链。如果它能准确列出login page ↓ api/login ↓ AuthService.login ↓ verifyPassword ↓ createSession ↓ Redis那才说明它至少真正调查过。所以不要相信 AI 说“我懂了”要让它展示理解过程的结果。三、坑 3一次让 AI 修改太多文件这是 Coding Agent 特别容易出现的问题。例如一个需求修复订单页面金额显示错误。正常可能修改13 个文件Agent 最后Changed 19 files包括订单组件 价格工具 API 数据库模型 类型定义 UI组件 测试 配置这时候就应该警惕了。因为Change Surface 越大通常意味着潜在回归风险越大推荐规则在 AGENTS.md 或 Prompt 里加入Prefer the smallest reasonable change. Do not refactor unrelated code. If the task requires touching more than 5 files, explain why before proceeding.虽然“5 个”不是绝对标准但这种限制可以强迫 Agent先思考修改范围而不是想到哪里改到哪里四、坑 4AI 为了修 Bug顺便把架构重构了例如原本只是修复用户退出后页面没有跳转AI 看到代码以后说当前认证逻辑耦合度较高我将顺便进行结构优化。然后拆 Hook 改 Context 重写 AuthProvider 改变 Router最后 Bug 修好了。但是 Pull Request1300 -900这种修改特别难 Review。原则Bug Fix 应该尽量满足Bug Fix ≠ Refactor可以直接告诉 CodexThis is a bug-fix task. Do not perform architectural refactoring. If you identify architectural problems, report them separately after fixing the bug.这句话非常实用。五、坑 5测试通过就认为功能正确这是非常危险的一个误区。Agent 最后告诉你Tests: 43 passed看起来很完美。但可能存在两个问题。第一测试本来就没覆盖这个 Bug第二Agent 修改了测试让测试适配新代码。结果就是100% tests passed但业务已经发生错误变化。正确做法要求它告诉你哪些测试原来就存在 哪些是新增的 哪些已有测试被修改 为什么修改例如List separately: Existing tests executed New tests added Existing tests modified For every modified existing test, explain why its expected behavior changed.尤其 Legacy 项目非常重要。六、坑 6为了消灭 TypeScript 报错疯狂使用 any这个我相信很多人都遇到过。原本constresponseawaitapi.getUser()TypeScript 报错。AI 修改constresponse:anyawaitapi.getUser()完成。或者// ts-ignore错误没了。但问题没有解决。只是TypeScript 不再提醒你了推荐规则直接加入Do not use: - any - ts-ignore - ts-nocheck unless explicitly approved. Fix the underlying type mismatch instead.真正目标应该是Type Safety不是0 TypeScript Errors这两件事情不是一回事。七、坑 7AI 特别喜欢增加依赖例如你说帮我格式化一个日期。AInpminstalldate-fns你说实现一个简单重试。AInpminstallp-retry你说生成 UUID。又来一个包。最后package.json越来越长。实际很多能力项目现有依赖或者运行环境原生 API已经可以完成。建议写入项目规则Before adding a dependency: 1. check whether an existing dependency already supports it; 2. check whether the runtime provides native support; 3. estimate implementation complexity without the dependency. Do not install new packages for trivial functionality.依赖不是免费的。每一个依赖都有升级成本 安全风险 Bundle Size 维护风险八、坑 8让 Agent 直接接触生产环境Coding Agent 最大的区别是普通 ChatGPT建议你运行命令Codex 一类 Agent可能真的执行命令所以权限问题必须认真对待。例如生产数据库AWS Key服务器 SSH支付系统 Secret没有必要就不要暴露。特别是下面这种需求帮我看看生产数据库为什么慢。更稳妥的方式往往是日志 Query Plan 脱敏 Schema 测试环境 只读环境先给 Agent 分析。核心原则还是Least Privilege即最小权限原则Agent 需要什么就给什么。九、坑 9把 .env、Token、API Key 全部放进上下文这个问题和前一个类似。为了让 AI帮我配置项目很多人会直接复制.env里面可能有DATABASE_URL OPENAI_API_KEY STRIPE_SECRET_KEY AWS_SECRET_ACCESS_KEY这不是好的工程习惯。即使是在受控环境里也应该保持Secrets 最小暴露推荐把真实 Secret替换成占位符例如DATABASE_URLDATABASE_URL STRIPE_SECRET_KEYSTRIPE_SECRET_KEY让 AI 理解结构通常就已经足够。十、坑 10让 AI 同时“Review 自动修改”比如Review 代码并把发现的问题全部修好。看起来效率非常高。但问题是Agent Review ↓ 发现问题 ↓ 直接修改 ↓ 产生新的 Diff ↓ 继续 Review ↓ 继续修改最后你很难判断哪些是原问题以及哪些是 AI 后来产生的问题我更推荐Review和Fix分开。第一步Review the current Git Diff. Do not modify files. Report findings only.人工判断。然后Fix findings 1, 3 and 4 only. Do not address other findings.这样可控很多。十一、坑 11Prompt 写得特别长但没有边界很多人学 Prompt Engineering 后会写你是一位拥有20年经验的世界顶级架构师 精通Java、Python、Go、Rust……写 1000 字。最后真正需求只有修一下接口超时。真正重要的其实不是角色设定而是Goal Scope Constraints Verification例如下面这段反而更有效Goal: Reduce /api/orders P95 latency. Constraints: - API response must remain unchanged. - No database schema changes. - No new dependencies. - No caching in this iteration. First investigate the bottleneck. Do not modify code until you identify the likely cause.这就是我现在越来越认可的思路少一点角色扮演多一点工程边界。十二、坑 12让 AI“优化整个项目”以下 Prompt 建议慎用帮我全面优化这个项目。因为“优化”可以包含性能 架构 目录 命名 依赖 数据库 安全 UI 测试基本等于请自由发挥最终很容易变成巨型 Pull Request更好的方式分阶段。例如阶段 1 只做性能 Audit不修改。阶段 2 只处理最高优先级数据库查询问题。阶段 3 补对应性能测试。阶段 4 Review。复杂项目永远优先Small Task而不是Big Bang十三、坑 13忽略 AI 的“幻觉文件”和“幻觉 API”即使 Agent 可以访问仓库也不代表完全不会出现错误推断。例如它可能告诉你修改 src/services/userService.ts但项目根本没有这个文件。或者使用框架的 XXX API实际上当前版本并不存在。所以尤其涉及框架 API SDK 云服务 第三方库 数据库最好要求Inspect the actual installed version before using an API.例如Before implementing, check package.json and the installed framework version. Do not assume APIs from another version.这个习惯在Next.js React Prisma Python 库 SDK更新很快的生态里尤其重要。十四、坑 14AI 写了代码但根本没运行这是最经典的问题之一。AI功能已经完成。你问测试了吗它说根据代码逻辑应该可以正常运行。注意应该和已经差别很大。开发里真正需要的是Evidence所以可以明确写Do not say completed unless the relevant verification commands have actually been executed. Report the exact commands executed and their results.例如最终应该看到pnpm test PASS pnpm typecheck PASS pnpm lint PASS而不是代码应该没问题。十五、坑 15最后完全不看 Git Diff这是我认为最危险的一个习惯。因为 AI 写代码太快以后人很容易出现反正测试通过了 直接 Commit但最后人工 Review 仍然非常必要。至少应该自己看gitdiff重点检查它改了什么有没有删东西有没有加依赖有没有碰数据库有没有改变 API有没有修改测试有没有把 Secret 写进去我现在更喜欢的方式是Codex Self Review ↓ Human Review ↓ Commit而不是Codex ↓ Commit十六、一个比较稳妥的 AI 编程流程综合这 15 个坑我现在比较推荐下面这套流程需求 ↓ 明确 Goal ↓ 明确 Scope ↓ 明确 Constraints ↓ Explore Repository ↓ Implementation Plan ↓ Human Review ↓ Implement ↓ Test ↓ Type Check ↓ Lint / Build ↓ Codex Review ↓ Human Git Diff Review ↓ Commit看起来步骤多。实际长期使用以后反而更快。因为大量 AI 编程时间浪费在先乱改 ↓ 发现不对 ↓ 回滚 ↓ 重新修改真正提高效率的方式不是第一次写得最快而是第一次方向就是对的十七、我建议直接写进 AGENTS.md 的 10 条规则如果长期使用 Codex可以直接保存下面这一段# AI Development Rules 1. Prefer the smallest reasonable change. 2. Do not modify unrelated code. 3. Inspect existing implementations before creating new ones. 4. Do not introduce new dependencies unless necessary. 5. Preserve existing public APIs unless explicitly requested. 6. Do not use any, ts-ignore, or equivalent shortcuts to hide real type problems. 7. Do not modify existing tests merely to make them pass. 8. For complex tasks, inspect and plan before implementation. 9. Run relevant tests and checks after modification. 10. Review the final Git Diff before declaring completion.再增加Security Database Testing Project-specific rules就已经是一份非常实用的基础版本。十八、一个我现在很常用的“防失控 Prompt”复杂任务开始之前可以直接给 CodexBefore starting this task: 1. inspect the related implementation; 2. identify the minimum set of files that need to change; 3. identify backwards compatibility risks; 4. identify relevant tests. Do not modify code yet. After inspection, provide: Goal Root Cause / Current Behavior Files To Change Implementation Plan Risks Verification Plan Rules: - Prefer the smallest reasonable change. - Do not refactor unrelated code. - Do not add dependencies unless necessary. - Preserve public APIs. - Preserve existing behavior unless the task requires otherwise. Wait until the implementation path is clear before coding.这段 Prompt 的目的不是让 AI更聪明而是更有纪律我越来越觉得Coding Agent 最重要的能力之一就是纪律。十九、Plus、Pro、Codex 越强越需要工程纪律这是一个看起来有点反直觉的事情。很多人会觉得模型更强 ↓ 我可以管得更少实际可能正好相反。模型越强能操作的文件越多能完成的任务越复杂能够连续执行的步骤越长那么一旦目标或边界错了它也可能更快地朝错误方向走很远所以Capability ↑往往也意味着Control ↑这就是为什么使用 ChatGPT Plus、Pro 和 Codex 这类工具时我越来越看重AGENTS.md Task Scope Permissions Tests Git Diff Human Review这些东西。二十、不要追求“100% AI 编程”我不太赞同一种说法以后所有代码都应该完全让 AI 写。实际软件工程里人仍然负责很多非常关键的事情业务判断产品取舍架构边界风险判断是否值得修改是否允许 Breaking Change什么时候上线这些东西并不是简单生成代码可以替代的。所以我更愿意把未来的开发模式理解成Human ↓ 定义目标和边界 AI Agent ↓ 调查、实施、测试 Human ↓ Review 和最终判断而不是Human ↓ 一句 Prompt AI ↓ 整个项目自动完成二十一、结语AI 编程最大的风险不是它不会写代码如果总结这 15 个坑会发现大部分问题其实不是AI 不会写代码相反很多问题恰恰来自AI 太会写代码它能非常快速地加文件 改文件 重构 加依赖 补测试 运行命令所以开发者新的挑战变成如何控制修改方向和范围。真正稳定的 ChatGPT Codex 开发工作流应该是Understand ↓ Plan ↓ Constrain ↓ Implement ↓ Verify ↓ Review而不是Prompt ↓ Generate ↓ Commit如果你正在使用 ChatGPT Plus、Pro 或 Codex 做真实项目我认为最值得养成的三个习惯就是修改前先让 AI 解释它准备怎么改修改后必须让它真正运行验证提交前自己再看一遍 Git Diff这三个动作看起来非常基础。但可能比收藏几十个所谓的“神级 Prompt”更加重要。因为 AI 编程真正进入工程化阶段以后开发效率的竞争已经不只是谁生成代码更快。而是谁能让 AI 在正确的边界内稳定地完成正确的事情。这可能才是 2026 年使用 ChatGPT、Plus、Pro、Codex 最值得掌握的核心能力。