導 語
今天大家已經越來越接受coding agent參與開發,越來越多團隊開始把coding agent引入日常開發流程,TRAE/Codex/Claude Code/Cursor等coding agent被廣泛應用。
它可以讀代碼、改代碼、補測試、解釋問題,甚至能完成一部分自動修復工作??瓷先?,agent正在快速成為開發者的“第二工作臺”。
但在MCU場景里,一個agent真的有用,標準從來不只是會寫代碼,改完之后,能不能按正確方式把工程驗證清楚也很重要。
nxp-mcu-build-verify這個skill解決的,正是這件事。
本文不過多的介紹Skill的概念,更多介紹請參考https://mp.weixin.qq.com/s/LUyHgdaByxZuDyCfSxolIA
nxp-mcu-build-verify這個skill理論上支持所有支持skill的coding agent,例如TRAE/Codex/Claude Code/Cursor等,已經在Codex和Claude Code下進行了實測。
并且也支持所有NXP的通用MCU支持的IDE,包括Keil,IAR,MCUXpresso IDE和MCUXpresso for Visual Studio Code。
正 文
很多通用agent都擅長處理源碼、腳本和配置,也擅長調用常見構建命令??蒑CU工程并不是一個“統一入口、統一格式、統一工具鏈”的世界。
一個工程目錄背后,可能是IAR、Keil、MCUXpresso IDE,也可能是MCUXpresso VS Code。不同項目類型對應不同的工程文件、不同的原生構建工具、不同的配置名,甚至依賴不同的宿主機環境、工作區機制和IDE許可證狀態。
這意味著:如果不給coding agent一套專門的能力,它雖然會執行命令,卻不一定知道該執行什么命令,更不一定知道什么才算真正完成了編譯驗證。
通用Coding Agent在MCU場景里,最容易錯在哪?
如果把一個沒有專門skill的通用coding agent直接放進MCU工程里,它通常會出現幾類典型問題。
它容易錯誤回退到使用gcc,甚至是宿主機的x86 gcc,這是最常見、也最危險的一類誤判;很多通用agent在遇到IDE工程時,會本能地尋找一種“通用替代路徑”。
如果它發現目錄里有源碼文件,就可能嘗試gcc,甚至是嘗試使用宿主機的x86 gcc;如果它發現有部分CMake痕跡,就可能誤以為整個工程都能按通用CMake工程處理。
而對于IAR、Keil這類工程來說,回退到gcc,是明顯錯誤的。
它會花很多時間,大量浪費寶貴的上下文做“無效嘗試”;
沒有領域約束時,agent的典型策略是不斷試錯:
這條命令不行,換一條;
這個工具不行,換一個;
這個路徑失敗,再猜一個。
這種模式在工具鏈明確、規則嚴格的MCU開發里,往往會造成大量無效嘗試。不僅浪費時間,還會讓用戶很難判斷:agent到底是在做有效驗證,還是在漫無目的地碰運氣。
Coding Agent用了這個Skill有什么直接好處?
給coding agent提供nxp-mcu-build-verify,最大的價值,不在于它學會了一條命令,而在于它的工作方式發生了變化。它會從“能寫代碼的agent”,變成“能參與MCU工程編譯驗證閉環的agent”。
節省寶貴的上下文空間,大幅減少誤判和無效試錯;
上下文空間是Coding agent最寶貴的資源,減少了誤判和試錯能將節省出大量的上下文空間,用于執行真正的開發任務
提高了效率和自動化程度
有了這個skill之后,再也不用手動將IDE的編譯錯誤貼給coding agent了。現在coding agent可以自行編譯,并且能直接根據編譯結果進行排查,大大的提高了效率。這也讓MCU開發離自動擋又近了一小小步。
只用四個字,AI幫我解決bug
下面我們來真刀真槍演示一下這個skill。演示環境是Claude Code,在Windows下編譯Keil工程。
首先我們啟動小老弟claude code,讓小老弟幫忙“編譯一下”,注意,這里并沒有告知claude code這是一個什么工程:

可以看到,小老弟自動加載了skill,并識別到了這是個Keil的工程。
緊接著,小老弟開始按照skill進行編譯:

欸,編譯失敗了,當然這是我為了考驗小老弟和這個skill,故意制造了一個錯誤。
這種小問題是難不倒小老弟的,根據剛才編譯產生的報錯信息,小老弟干凈利落地找到了問題,并且已經自覺自動地修復好了:

大功告成!
從頭到尾,只說了4個字,AI就搞定了從編譯到排錯的所有問題。
讓我們檢查一下小老弟的上下文占用情況:

可以看到,有了skill標準的規定,coding agent再也不像無頭蒼蠅一樣自行胡亂嘗試,也不是一股腦加載所有提示詞,而是按需加載。這提高了效率,節省了很多上下文,可以用省下來的token錢去加油站加油。
結 語
這個skill開源在github:
https://github.com/0xchaihu/nxp-mcu-build-verify,歡迎大家試用和指導。
由于IDE的局限性,目前只支持Windows平臺。對IDE的兼容性考慮可能不夠,所以請盡可能在新的IDE配合使用(例如Keil 5.x以及IAR 9.5x以上版本)。
嵌入式IDE的兼容性和環境較為復雜,難免會有bug,歡迎大家反饋。
-
mcu
+關注
關注
147文章
19072瀏覽量
402482 -
NXP
+關注
關注
61文章
1409瀏覽量
198862 -
Agent
+關注
關注
0文章
215瀏覽量
29116
原文標題:會寫代碼還不夠,Coding Agent開發MCU軟件還需此技能~
文章出處:【微信號:NXP_SMART_HARDWARE,微信公眾號:恩智浦MCU加油站】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
通用Coding Agent在MCU場景里最容易錯在哪
評論