AI 编程工具这两年迭代太快,叫法也乱。我天天在嵌入式 AI 编程里跟 Agent、Copilot、Cursor 这些名字打交道,一开始没觉得有什么区别,真正用起来才发现是两码事。折腾过几轮,我按干活方式分成两类:补全型和 Agent 型。
上篇结尾预告过,这篇就聊工具分工。补全、Agent、人,三者的活怎么切,今天挨个说清。
01 两种工具,根本不是一回事
补全型,就是输入法。你在编辑器里敲,它在光标后面猜下一段。GitHub Copilot、Cursor 的 Tab 补全、Tabnine 都算这一类。快是真快,视野也真窄,它只看当前文件。
Agent 型是实习生,丢任务给它,它自己读工程、改文件、跑命令、看报错,改完再跑一轮。Claude Code、Codex CLI、Cursor 的 Agent 模式都算。慢,费 token,但能自己干活。
输入法不会替你做决定,实习生会。这个差别,放到嵌入式开发里被放得特别大。
怎么判断一个工具到底是哪一类?看执行权在谁手里。它改完代码,要不要你自己复制、自己粘贴、自己编译。要,就是补全;不要,才是 Agent。
容易混,是因为界面长得像。同一款工具里补全和 Agent 并存,菜单挨着菜单,不少人开着 Agent 模式当补全用,白费了 token,还嫌它慢。
02 补全型在嵌入式里擅长什么
补全最适合的,是那些一眼就知道怎么写的代码。头文件、寄存器宏、HAL 库调用骨架、重复的外设初始化,这些样板活,它能省一大半打字量。
举个具体的。你写一行注释:USART1,115200,8N1。它能把 HAL_UART_Init、GPIO 复用、中断开启一整段补出来,省事是真省事。
边界也清楚:它不理解工程,不知道你的板子是什么芯片、什么时钟。跨文件的逻辑接不上。你在 A 文件定义的东西,到 B 文件它就当不存在。
没人喂上下文的时候,补全默认你用的是最常见的板子。时钟配置按训练数据里出现最多的写,编译一个错没有,烧进去外设全不转。这种亏,我吃过一次就记住了。
所以嵌入式里用补全,先把上下文喂够。芯片、时钟、引脚写进注释,它补出来的代码才靠谱。D3 那篇的硬件上下文,就是干这个用的。
03 Agent 型能管到哪一步
Agent 型的本事,是把整个工程当上下文。让它读,它就通读一遍;让它改,跨文件也下得去手。编译报错丢给它,它自己定位、自己改,改完再编译,直到干净为止。
这套在纯软件工程里已经很顺。嵌入式差在末了一环,它手里没有板子。时序对不对、引脚冲不冲突、上板能不能跑,它看不见。编译通过离能上板,还差一大段路。
我的用法是:代码生成交给它,报错循环交给它,上板验证留给自己。终端输出整段贴过去,它自己找文件、改代码、再编译,几轮下来编译干净,我再送审查。
Agent 有个毛病,敢下重手。改错文件、顺手删了不该删的,我都撞见过。版本控制是底线,它每次动完,先看 diff 再放行。
04 嵌入式里怎么分派
分派的标准就三条:跨不跨文件、要不要跑工具、沾不沾硬件。
三条都不沾的,交给补全。写一段独立初始化、填一个结构体、改一处寄存器配置,补全很快。
跨文件或者要跑工具的,交给 Agent。重构、加功能、查编译报错,这类它干得比人快。
沾硬件的,人自己来。时序、上板、示波器,Agent 现在干不了。
套用到任务上,一遍就过。改个日志打印,单文件不碰硬件,补全。给整个工程换时钟源,跨文件动配置,Agent。排查上电偶发重启,得上板量波形,人。
这套标准不是写死的。工具在进化,边界在动,判断的尺子不用换,量出来的结果过几个月可能就不一样。隔段时间回头看一眼就行。

▲ 两类工具的分工边界(自绘)
05 例子:屏幕驱动的分工
拿 SPI 屏幕驱动说。工程结构、引脚定义、时钟配置,这些跨文件的活,Agent 改。单文件里的函数体、寄存器操作,补全写。波特率分频、上板时序,人核。
具体到 Agent 那摊活,它是把 SPI 相关的文件串起来动:头文件补声明、主程序加初始化调用、工程目录扫一遍确认没有漏文件。补全只负责函数体里的寄存器读写。人盯剩下的两样:分频值和上板波形。
一轮下来,分到人手里的活就剩核对和上板两件事。
这轮分工有个前提:工程说明书得先喂好。D2 那份就是干这个的,Agent 进工程先读,补全也认。缺了它,工具全在瞎猜。
06 Agent 能不能自己调编译器
AI Agent 自己调编译器,这事有开源方案了。条件是把编译、烧录这些命令,封装成它能调用的 Skill。
Skill 说白了就是给命令写使用说明。keil build 怎么调、工程在哪个目录、烧录用哪根调试器,写成一段结构化的说明,AI 到该用的时候自己会去调。
开源项目 embeddedskills 干的就是这个。Keil、GCC 的编译,J-Link、OpenOCD 的烧录调试,串口、CAN 的通信监控,全部封装成 Skill。AI 改完代码自己编译,看到报错自己改,再编译一轮。
这一步打通,嵌入式里“改代码→编译→烧录→验证”的循环,人就能从中间退出来大半。
自动化到哪一步为止,边界也清楚。编译烧录能交出去,硬件验证交不出去。板子上的事,人还在。

▲ 从需求到上板,任务怎么分派(自绘)
补全和 Agent 的划分,业界没有统一口径,本文按公开评测里常见的分档思路讲。文中引用的两组数字——AI 生成驱动框架提效 50% 到 70%、提示词补齐后首次通过率提升 63%——出自什么值得买《AI 能否独立完成嵌入式开发全流程?》,168 位作者联合实测;embeddedskills 为 GitHub 开源项目;Claude Code、Codex CLI、Cursor、Copilot 等工具情况来自官方文档与公开对比。分工清单按本号操作习惯整理,仅供参考。封面与配图由 AI 技术生成。
两类工具分清楚,效率差一半。下次开工程,可以照着这张图分派。