2026年6月24日/ AI Application Notes
AI 编程工具搭配与工作流整理:IDE、CLI Agent、Skills 怎么组合
这篇整理目前常见的 AI 编程工具搭配方式:IDE、CLI Agent、Prompt-to-App、网页模型、Skills 和 AGENTS.md 分别适合什么场景,以及常见工作流的取舍。
AI 编程工具现在很容易被写成排行榜:哪个 IDE 更强,哪个 Agent 更聪明,哪个模型通过了更多 benchmark。实际用起来,问题通常不是“只选哪一个”,而是“这一步应该让谁来做”。
写一个能长期维护的项目,通常会同时用到几类工具:IDE 负责日常编辑,CLI Agent 负责跨文件任务和验证闭环,Prompt-to-App 工具负责早期原型,网页模型负责讨论、整理和审查思路。再往上,是 AGENTS.md、Skills、SPEC、测试和交接文档这些流程层工具。
下面不是工具榜单,而是一份工作流整理。重点是:适合什么场景,怎么搭配,坑在哪里。
为什么不是只选一个工具
单个 AI 编程工具很难覆盖完整开发链路。
IDE 很顺手,适合跟着代码上下文做小步修改,但一旦任务跨越多个目录、需要跑测试、需要检查构建输出,就容易变成边聊边改。
CLI Agent 更适合把“读代码、改文件、跑命令、看结果、再修正”串成闭环,但它对任务边界更敏感。如果没有清晰目标和验收标准,Agent 会很勤快地把事情做过头。
Prompt-to-App 工具能快速生成可点的原型,但生成速度不等于工程质量。越接近真实项目,越需要回到 IDE、CLI Agent 和测试里重整。
网页模型不适合直接改仓库,却很适合讨论方案、整理资料、做第二视角审查。它的价值不在“替你提交代码”,而在帮你想清楚问题。
所以更实用的视角是分层:
想法和资料整理 -> Web Chat
快速看见原型 -> Prompt-to-App
日常写代码 -> AI IDE
跨文件执行和验证 -> CLI Agent
长期项目纪律 -> SPEC / AGENTS.md / Skills / Tests / HANDOFF
工具分层
日常 IDE 流
代表工具包括 Cursor、Windsurf、VS Code + GitHub Copilot。
这类工具适合已有项目里的日常开发:补组件、改业务逻辑、读局部上下文、做多文件编辑、顺手写测试。它们离编辑器最近,反馈快,也最容易成为每天打开的主工具。
常见用法:
- 用 Cursor 或 Windsurf 处理“我知道要改哪块”的任务。
- 用 Copilot 做低摩擦补全、样板代码和局部建议。
- 在 UI 迭代、表单、页面状态、接口字段对齐这类任务里,让 IDE Agent 帮你快速铺开改动。
坑点也很明确:
- 容易边聊边改,没有先写清楚验收标准。
- UI 生成很顺,但不代表信息架构和状态边界合理。
- 多轮对话后上下文会变脏,旧需求容易混进新改动。
适合的约束方式是:改之前写 3-5 条任务边界,改完必须跑现有验证命令。任务一旦变成“顺便再改这里”,就停下来重新拆。
CLI Agent / Git 流
代表工具包括 Claude Code、Codex、Cline、Aider。
这类工具更像终端里的代理工程师。它们适合大型代码库阅读、跨目录修改、重构、修 bug、跑测试、看构建输出、整理提交。关键不是“它会写代码”,而是它能把文件系统、命令行、测试和 git 串起来。
常见用法:
- 让 Claude Code / Codex 接手明确任务:先读项目,再规划,再改,再验证。
- 用 Cline 做可控的批准式执行,尤其适合希望每步工具调用都看得见的场景。
- 用 Aider 做小步、git-native 的精确改动,让 diff 保持紧凑。
坑点:
- 任务边界不清时,它会消耗很多上下文和成本。
- 长任务如果没有
HANDOFF.md或任务日志,跨窗口接力会丢状态。 - 自动执行能力越强,越需要明确哪些文件不能碰、哪些命令不能跑。
适合的约束方式是:让 Agent 先读 README、SPEC、项目规则和 git status,再只围绕当前任务改文件。提交时只 stage 相关文件,不用 git add . 省事。
Prompt-to-App 原型流
代表工具包括 v0、Bolt.new、Lovable、Replit Agent。
这类工具适合“先看见东西”:产品想法、界面方向、小工具 MVP、非开发者参与的早期探索。它们能把一个模糊想法快速变成可点的原型,尤其适合判断方向有没有感觉。
常见用法:
- v0 更适合 UI / 组件方向探索。
- Bolt.new 更适合浏览器内快速搭一个可运行原型。
- Lovable 更适合用自然语言描述完整应用雏形。
- Replit Agent 更适合云 IDE 环境里的多语言小项目。
坑点:
- 生成代码经常“看起来完整”,但抽象、状态管理、错误处理和测试并不一定能长期维护。
- 原型工具喜欢从零生成一套结构,接入已有项目时需要人工重整。
- 权限、支付、数据迁移、生产配置这类高风险功能不适合靠原型工具一路推到底。
适合的约束方式是:把它当探索工具,不把第一版生成代码当最终架构。原型被验证后,再回到正式仓库里重建关键结构。
Web Chat + 手动实现流
代表工具包括 ChatGPT、Claude 网页端、Grok。
网页模型适合做方案讨论、资料整理、文案结构、代码审查思路、技术选型对比。它不直接拥有你的仓库上下文,反而适合做“第二张桌子”:把问题从代码里拿出来,重新组织。
常见用法:
- 写文章结构、需求采访问题、SPEC 初稿。
- 让另一个模型审查改动思路,而不是直接替你改。
- 搜集资料后,让它归纳共性、风险和不同工具定位。
坑点:
- 它不知道你的真实工作区状态。
- 容易给出听起来完整、但和项目约束不匹配的建议。
- 复制代码进出网页端很容易漏上下文。
适合的约束方式是:网页端负责“想清楚”,本地 Agent 或 IDE 负责“改清楚”。不要把网页端建议当成最终验收。
常见搭配
| 搭配 | 适合场景 | 优点 | 坑点 |
|---|---|---|---|
| v0 / Bolt / Lovable -> Cursor | 先出原型,再工程化 | 早期反馈快,适合找 UI 和产品方向 | 原型代码需要重整,不宜直接当长期架构 |
| Cursor / Windsurf + Claude Code / Codex | 日常开发 + 复杂任务 | IDE 顺手,CLI Agent 能读仓库、跑验证、收尾 | 两边上下文不同步,需要靠 SPEC 和 git 状态对齐 |
| Cline + 任意模型 API | 想要可控代理执行 | 工具调用透明,批准式流程清楚,MCP 扩展方便 | 配置、模型成本和上下文管理要自己负责 |
| Aider + git | 小步重构、精确修改 | diff 清晰,提交粒度自然,回滚容易 | 交互不如 IDE 顺滑,复杂产品讨论不占优 |
| Web Chat + 本地 Agent | 方案整理 + 落地执行 | 一个负责想清楚,一个负责改清楚 | 网页端建议必须由本地上下文校验 |
| 模型 A 实现 + 模型 B 审查 | 重要 PR、架构改动、高风险模块 | 更容易发现盲点 | 审查意见也会误判,最终仍要人裁决 |
我更建议把搭配理解成“阶段切换”,而不是固定套餐。一个功能可能先用网页模型讨论边界,再用 IDE 做局部实现,遇到跨文件验证时交给 CLI Agent,最后再让另一个模型做审查。
工作流怎么选
Vibe 原型流
想法 -> Prompt-to-App -> 看效果 -> 导出或复刻关键部分 -> 人工重整
适合产品探索、UI 方向不确定、需要一两天内看到可点版本的场景。
不适合复杂业务逻辑、权限、支付、数据迁移、生产配置。这里的问题不是 AI 不能写,而是早期原型默认缺少足够的边界和验证。
SPEC 优先流
需求采访 -> SPEC.md -> 任务拆分 -> 小步实现 -> 验证 -> HANDOFF
适合长期维护项目、多轮 AI 接力、需求容易漂移的功能。
这条流的关键不是写一份很正式的文档,而是把“做什么”和“不做什么”落到文件里。AI 不共享聊天记忆,但共享文件系统和 git 状态。只要下一轮能读到 SPEC.md、HANDOFF.md 和最近提交,就能少走很多弯路。
最小可用版本可以很轻:
SPEC.md写目标用户、功能清单、技术边界、验收标准。- 任务拆到 15-30 分钟一块。
- 每块结束记录已改文件、已验证内容、未验证风险。
TDD / TDAD 流
先写测试 -> 让 Agent 实现 -> 跑测试 -> 修失败 -> 重构
适合纯逻辑、API、数据处理、格式转换、回归风险高的模块。
AI 很适合根据失败用例迭代。测试在这里不只是质量检查,也是可执行的需求说明。比起让 Agent 猜“正确行为是什么”,测试能把边界直接钉住。
但它不适合所有任务。早期 UI 探索、文案结构、还没定型的产品原型,用严格 TDD 往往太重。更好的做法是:等行为稳定后,再把关键路径补成测试。
Review 流
模型 A 实现 -> 模型 B 审查 -> 人类裁决 -> 修复 -> 验证
适合重要 PR、架构改动、安全/权限/支付/数据相关代码。
多模型审查的价值在于发现盲点,而不是替人做最终判断。审查模型可能会把项目约定看错,也可能提出过度工程化建议。真正有用的方式是让它按“风险、回归、遗漏测试、边界条件”来审,而不是泛泛评价代码质量。
Handoff 接力流
AGENTS.md / HANDOFF.md -> 执行 -> 验证 -> 更新交接 -> 新窗口继续
适合个人项目长期维护、多工具接力、跨窗口继续。
关键原则很朴素:不要依赖聊天记忆。每轮结束时,把当前目标、已完成、正在做、下一步、改动文件、验证情况和风险写进文件。下一轮先读文件和 git 状态,再继续。
这条流看起来笨,但对长项目很有用。它能防止 AI 忘记前面的取舍,也能防止自己隔几天回来忘记为什么这么改。
Skills 和 AGENTS.md 解决什么问题
AGENTS.md、Skills、项目规则,本质上不是“更强提示词”,而是把容易反复提醒的工程纪律固化下来。
AGENTS.md 适合写项目级规则:
- 项目结构和技术栈。
- 常用命令和包管理器。
- 代码风格、测试方式、构建方式。
- 哪些文件不能随便动。
- 接管项目时必须先读什么。
- 提交前必须验证什么。
写法要克制。太短没有约束,太长又会稀释重点。更实用的做法是只写 AI 真的容易犯错、或者这个项目特有的规则。产品背景、架构细节、领域词汇可以拆到 CONTEXT.md、ARCHITECTURE.md 或任务文档里。
Skills 更像“可复用工作流”。比如:
- 需求还不清楚时,触发采访和澄清流程。
- 修 bug 时,先复现、隔离、找根因,再改代码。
- 做 TDD 时,强制红-绿-重构。
- 做代码评审时,只输出风险和可验证问题。
- 长任务结束时,强制更新交接文档。
Matt Pocock 的 Skills 更偏工程基本功,比如 /grill-me、/tdd、架构改进和 bug 诊断。Superpowers 更像一套完整方法论,强调 brainstorming、计划、TDD、系统调试、代码评审和完成前验证。
它们适合复杂任务和高风险任务。对小改动来说,完整流程可能过重。判断标准不是“有没有 Skills 就必须全部用上”,而是这次任务的风险是否值得引入更重的流程。
一套轻量默认配置
如果只是个人开发者维护一个项目,我会从轻量组合开始:
| 场景 | 建议工具 | 流程 |
|---|---|---|
| 想清楚要做什么 | Web Chat | 问题拆解、资料整理、文章结构、SPEC 初稿 |
| 日常改代码 | Cursor / Windsurf / Copilot | 小步修改,保留人工审查 |
| 跨文件任务 | Claude Code / Codex / Cline | 先读项目,再规划,再执行,再验证 |
| 精确重构 | Aider | 小 diff、小提交、紧贴 git |
| 快速原型 | v0 / Bolt / Lovable | 只验证方向,不直接背长期维护债 |
| 高风险改动 | CLI Agent + TDD + Review | 测试钉边界,多模型找盲点,人最终裁决 |
配套文件可以先保持简单:
README.md 给人看:项目是什么,怎么运行
SPEC.md 给项目看:目标、边界、验收标准
AGENTS.md 给 AI 看:规则、禁区、验证方式
HANDOFF.md 给下一轮看:当前状态和下一步
最重要的是建立闭环:
读上下文 -> 说清楚要改什么 -> 改小块 -> 跑验证 -> 看 diff -> 提交 -> 记录交接
这比追求“最强工具”更可靠。
哪些情况不要上重流程
重流程有价值,但不是越重越专业。
这些情况可以轻一点:
- 改一个明确错别字、链接、样式小问题。
- 写草稿、整理资料、调整文章结构。
- 早期 UI 探索,还没确定方向。
- 一次性脚本或低风险内部工具。
- 没有回归测试框架,且补测试成本远高于改动风险。
这些情况应该重一点:
- 权限、支付、安全、生产配置。
- 数据迁移、批量删除、不可逆操作。
- 共享组件、核心状态、公共 API。
- 多文件重构。
- 用户已经反复纠正方向,说明上下文需要重新落盘。
简单说:低风险任务追求速度,高风险任务追求可追溯。
持续更新清单
这类工具变化很快,文章最好保留成“索引”而不是“结论”。后续更新可以继续补:
- IDE Agent 的实际体验差异。
- CLI Agent 在大型仓库里的成本和上下文管理。
- Prompt-to-App 原型代码如何接回正式项目。
- Skills 在真实任务里哪些有用,哪些过重。
- TDD / TDAD 更适合哪些代码类型。
- 多模型审查的提示词和误报类型。
没亲自验证过的内容,应该标成资料整理;已经在项目里跑过的流程,再写成个人经验。这样文章会更耐放,也不容易变成宣传稿。
参考与延伸阅读:
- AGENTS.md 标准:https://agents.md/
- AGENTS.md GitHub:https://github.com/agentsmd/agents.md
- Matt Pocock Skills:https://github.com/mattpocock/skills
- Superpowers:https://github.com/obra/superpowers
- Claude Superpowers 插件页:https://claude.com/plugins/superpowers
- Addy Osmani 的 LLM coding workflow 文章:https://medium.com/@addyosmani/my-llm-coding-workflow-going-into-2026-52fe1681325e
- TDAD 相关论文资料:https://arxiv.org/html/2603.17973v1
Brief
AI coding tools are easier to reason about as combinations, not as one winner-takes-all choice.
A practical setup usually mixes an IDE for daily edits, a CLI agent for repo-level tasks, prompt-to-app tools for prototypes, and durable rules such as AGENTS.md or Skills for repeatable workflows.
The useful question is not which tool is strongest, but which workflow is light enough for the current risk level and structured enough to keep the project maintainable.