AI Engineer Europe 2026 · 工作坊 · 2026-04-28 · 84 分
從 Cursor 內部經驗談軟體工廠
Building your own software factory · Eric Zakariasson,Cursor
Cursor 工程師 Eric 談他們用自己的產品養出半自動「軟體工廠」的做法:程式碼結構、護欄、可驗證系統、雲端 agent 與自動化,後面接近一小時的聽眾問答。
概要
- 自主程度分六級Eric 引用 Dan Shapiro 的文章,從像高級自動補全的起點,一路到只給意圖、其餘交給 agent 的「dark factory」,並說多數人落在第二到第三級,自己在多數專案上大約是第四級。
- 蓋工廠的原料程式碼要好找、有可參照的既有寫法;護欄是規則、hook 與測試;enablers 是技能、MCP 與讓 agent 自己啟動開發環境的能力。Eric 認為最該多花時間的是讓 agent 能驗證自己的工作。
- 規則是長出來的Eric 說不該一次裝滿所有規則,agent 跑偏了才補一條,像 SOP 一樣,例子是 BugBot 擋掉資料庫的 foreign key,因為他們為了效能不用,但模型預設會加。
- 從 worker 變 manager工作從同步變非同步,要先把脈絡寫足再放手,還要自己拆工作、避免兩個 agent 改同一塊而衝突。Eric 自己用雲端 VM 隔離每個 agent,比 git worktree 乾淨,但比較貴。
- 把重複的事自動化Eric 展示每日回顧、讀已合併 PR 的留言、agentic code owner、continual learning 等 Cursor 內部的自動化,目的是找出人還卡在迴圈裡的地方。
- 問答談到人與組織聽眾問架構品質、團隊共用規則、關鍵系統、PM 與工程師的交接,以及工程師角色的走向。Eric 多半坦承還沒有定論,強調人仍要為上線的東西負責。
原話
▶ 07:18“rules should just emerge dynamically. If you're finding agents going off the rails, you should probably create a rule for that.”
規則應該動態長出來,發現 agent 跑偏了,就為那件事補一條
▶ 16:48“you are going to look way less at code so you are going to go from like worker to manager”
你會越來越少看程式碼,從工人變成管理者
▶ 32:00“storing the context and building the tools and keeping them up to date is more important than actually doing the work”
把脈絡存起來、把工具建好並保持更新,比自己動手做事更重要
▶ 40:31“if you as a human trust the tests, you probably are trusting the output, even though you don't have to look at the code.”
人如果信任測試,就大概能信任輸出,即使沒看程式碼
▶ 1:01:51“I love to like plan synchronously and then just execute the plans like asynchronously.”
我喜歡同步地規劃,再非同步地執行計畫
延伸
- Eric 提到之後會在 Cursor 3 加入巢狀 agent 與整體狀態的專案檢視,沒有說時程。
- 關於新人培養與團隊規模,Eric 自己說無法預測,聽眾討論也沒有結論。
章節
點時碼直接跳到原片的那一段。
- 開場與自主程度六級Eric 說 Cursor 還沒到真正的工廠;講完六級後,列出蓋工廠的理由:產能、輸出一致、能把創意放出來。
- 程式碼結構與慣例程式碼放在一起、有現成的認證與測試寫法,agent 就能照既有參考去做,跟新人上手同一個道理。
- 護欄與動態規則hook 擋住加密、認證這類敏感區域;規則不用一次全裝,agent 跑偏再補,還要有測試讓它驗自己。
- enablers 與執行環境技能與 MCP 給 agent 更多能力,例如加 feature flag;能自己啟動專案,就能開在獨立 VM 上放大。
- 可驗證系統後端靠單元與整合測試,網頁要真的點過;Eric 認為人們該在這件事上多花時間。
- Cursor 3 示範Eric 請 agent 啟動音樂製作專案的 dev server,並讓它自己寫 Playwright 端對端測試,守住播放鍵等行為。
- 自動審查與雲端 agent用 BugBot 做 PR 審查;雲端 agent 各有 VM,還能操作電腦錄下影片,證明自己測過鍵盤導覽的改動。
- 從 worker 到 manager看程式碼會變少、工作轉為非同步,要事先給足脈絡,並拆分工作避免合併衝突。
- 隔離環境比較 git worktree 與每個 agent 一台 VM,後者更貴、更費事,但能擴到上百上千個。
- 找出人卡住的地方複製 log、使用者回饋、Notion 規格這類人工搬運,都可以用技能、MCP 或自動化接掉;agent 的錯誤也是改進工廠的線索。
- 擴大規模與內部自動化先問 agent 自己的對話裡有哪些重複工作,再看 Cursor 內部的每日回顧、PR 留言學習、code owner 與 continual learning。
- 結語與帶走的事要把意圖講清楚,重大決定留給人,把工具與脈絡存起來;Eric 還講了 Lovable 朋友給 agent 一個「發牢騷」工具的故事。
- 問答:架構品質有聽眾擔心 agent 只顧趕快完成;Eric 說要有可參照的既有寫法,再讓別的 agent 重構,人則多做架構審查。
- 問答:團隊共用規則聽眾說每個人的規則各自藏在自己機器上;Eric 說這是文化問題,要有討論的場合,也不必人人都同意。
- 問答:關鍵系統在不能出錯的系統上,先花大量運算與 token,手寫關鍵測試、跑資安團隊的 security sentinel,把重點放在測試。
- 問答:讓 AI 幫忙建規則可以用 continual learning 外掛從對話記錄抽規則,Eric 說另一條路是依團隊改模型權重;新專案的規則則很難事先定。
- 問答:GUI 與驗收測試用雲端 agent 的電腦操作做測試,像請 QA 顧問一樣下指令;也請它把文件中某個詞的每處截圖回傳。
- 問答:PM 原型交給工程師交接雲端 agent 的連結或前端原型就夠,工程師通常要重寫而非遷移,也要跟 PM 講清楚想收到什麼。
- 問答:停擺風險人要對上線的東西負責,要做好觀測,關鍵區域可能每一行都要人審。
- 問答:自己怎麼工作Eric 同時有約五到十個雲端 agent 在跑,同步時做規劃,之後非同步執行,等待時自己切換脈絡。
- 問答:維護工廠的文件Cursor 3 做成多 agent 的控制台,規格則放在程式庫裡的資料夾,讓 agent 讀得到。
- 問答:工程師的角色寫程式變少,更多是定方向、對齊人與搭建 agent 的流水線;聽眾另外聊到新人培養與辦公室政治,Eric 沒有給答案。
- 問答:Linear 與 issue 自動化每張 Linear 票都會開一個雲端 agent,feature flag 全量兩週後自動開票移除;Eric 說這很花錢,不一定推薦。
- 問答:本機與 Cursor WorkersEric 先說本機長時間跑不太行,隨即改口,介紹前一天發表的 Cursor Workers,可在自己的機器上跑雲端 agent 的架構。
- 問答:協作與團隊型態不走傳統敏捷,每人對一塊負責到底,撞到再想辦法;也談到 PM、設計師、工程師與資料團隊各自的角色。
- 問答:雲端 agent 跑偏聽眾遇過 agent 跑去錯的 repo 空轉;Eric 說這是 Cursor 要改進的,團隊在偵測迴圈與觀測上投入。
名詞
- software factory
- Eric 的比喻:把規劃、產出、審查、測試都建成可重複的流水線,由 agent 去跑
- Dan Shapiro
- Eric 引用其文章,其中把軟體自動化分成六個階段
- dark factory
- 六級中的最高級:人只給意圖與目標,agent 在看不見的地方出貨
- Cursor 3
- Eric 說幾週前發表、完全重寫的版本,不再基於 VS Code,改成以 agent 為主的介面
- Glass
- Cursor 3 的介面名稱,示範中 agent 用它測試鍵盤導覽的改動
- BugBot
- Cursor 的 PR 審查工具,Eric 的例子是用它擋下不該用的 foreign key
- cloud agents
- 每個 agent 各有一台 VM 的雲端版本,能操作電腦並錄下影片當驗證
- Cursor Workers
- Eric 說前一天發表的架構,把雲端 agent 的編排用在自己的任何機器上
- agentic code owner
- Cursor 內部的自動化:依 PR 風險決定直接核准,或找出先前改過的人加入
- continual learning
- 掃過去的對話記錄,抽出記憶與規則的外掛
- security sentinel
- Eric 提到資安團隊做的自動化,針對改到特定檔案的 PR 跑多個檢查








