介紹

我一直聽到「迴圈工程」這個詞。它到處都是:我的資訊流、每一封 AI 電子報、我打開一半的開發影片裡都有。所以我也有了你大概會有的同樣疑問。這件事真的重要嗎?如果我是前端或全端開發者,我需要學它嗎?

我花了一些時間研究它,並做了一支影片來拆解它是什麼、以及它適合放在哪裡。這篇文章是文字版,並附上一個你可以直接套用的實作範例。

https://www.youtube.com/watch?v=Q1tgkuCcQBo

迴圈工程到底是什麼

這是我對它的理解:你給你的程式代理人一個目標,然後它會一次又一次地對自己迴圈執行,幾乎像遞迴一樣,直到那個目標達成。

你也可以把它拆成四個部分來看。你給代理人一個觸發條件,或是一個帶有明確結束狀態的系統提示詞。它根據那個觸發條件開始行動。它會觀察結果,確認工作是不是真的完成了。如果碰到停止條件,它就停下來;如果沒有,就再跑一輪。

迴圈的結構

大致上就是這樣。核心概念就是:你定義一個目標和一個停止條件,然後讓代理人自己把差距補起來。

這就是你已經認識的代理式迴圈

如果你曾經做過任何代理人相關的東西,這應該會很熟悉。這就是經典的代理式迴圈。你給代理人一組工具,它會利用這些工具,再加上自己的推理,去達成答案。

假設我想研究最新的科技趨勢。我給代理人一個搜尋 Google 的工具,和一個搜尋 Reddit 的工具。第一次先搜尋 Google,把找到的內容抓回來。這還不夠,所以它再迴圈一次,從 Reddit 抓資料。接著把兩邊的內容整合起來,再把答案交回給我。

代理式迴圈

你在聊天機器人裡也看過同樣的模式。你問它天氣,它可能呼叫幾個工具,查看你問題的上下文,然後回傳你要的答案。迴圈工程就是把這個模式,對準你實際的工作。

實際範例:用迴圈修一個 PR

讓我示範一下它在日常工作裡,為什麼值得存在。

我有一個拉取請求是用 Kiro Web 推上去的。它直接連到我的 GitHub 倉庫,我給它一個動作,它就幫我開了 PR。你也可以用 Claude Code、Cursor 和其他代理人工具做到這件事。

後來我注意到 CI/CD 管線裡有一些測試失敗了。我的 GitHub Actions 變紅了。所以我只給它一個提示:

修正這個 PR 上的所有問題。持續進行,直到全部修好。

最後那句就是停止條件。Kiro 在背景開始工作,一輪又一輪地跑,修正失敗專案,持續迴圈直到全部通過。我不用每一輪都盯著它。

測試是很適合從這裡開始的地方,因為通過或失敗的訊號,能讓迴圈很清楚地檢查自己做得對不對。

自動化是另一個大場景

迴圈另一個很適合發揮的地方,是排程執行。Addy Osmani 寫過一篇很棒的迴圈工程文章,他指出,能夠按照排程自動執行、自己進行發現與分流處理的自動化工作,非常適合這種模式。

如果你能找到某種工作,是 cron job 或排程工具每天都能觸發的,那它就是候選專案。舉幾個例子:

每天結束時,把所有測試都跑一遍,如果有任何地方壞掉,就讓代理人去修。或者讓你的文件保持最新。迴圈會把文件和最新程式碼做比對,持續執行直到兩者一致。

如果你使用 Claude Code,有兩個值得知道的指令:/loop/goal。它們可以讓你在會話中建立排程工作,而 /goal 可以讓你設定一個持久、可驗證的目標,而不是單次性的任務。你在 Kiro 和其他工具裡也能做同樣的事,只是你必須更明確,並自己撰寫系統提示詞來驅動它。

我的看法

接下來是我想稍微潑點冷水的部分。

不要為了到處塞進迴圈,就把整個工作流程拆掉。確實有一些地方很適合用,尤其是當你的代理人支援這種模式,而且你真的找到一個值得自動化的工作時。不過我還是認為,規格驅動開發,以及單純來回互動的 vibe coding,足以解決你日常工作中的大部分問題。迴圈是一個在正確時機該拿出來用的工具,不是一種信仰。

如果你想更深入了解,有三個人對我思考這件事的方式影響很大。Kent C. Dodds 做了一支很棒的影片,講他目前的發現以及他如何用這種方式工作。Theo 也做了一支很不錯的影片。而 Addy Osmani 的迴圈工程文章也很值得一讀。

所以我想問你一個和我在影片最後問的一樣的問題。下一個專案,你會試試迴圈工程嗎?還是你覺得那只是炒作?告訴我吧。

資源:


原文出處:https://dev.to/erikch/loop-engineering-do-frontend-and-fullstack-devs-actually-need-it-48eb


精選技術文章翻譯,幫助開發者持續吸收新知。

共有 0 則留言


精選技術文章翻譯,幫助開發者持續吸收新知。
🏆 本月排行榜
🥇
站長阿川
📝17   💬3   ❤️4
690
🥈
我愛JS
📝2   💬5   ❤️3
138
評分標準:發文×10 + 留言×3 + 獲讚×5 + 點讚×1 + 瀏覽數÷10
本數據每小時更新一次
📢 贊助商廣告 · 我要刊登