部落格
AI 程式助手不需要你一直盯著
當前的 AI 程式模式迫使你進入同步迴圈:輸入、等待、閱讀、重複。但真實的開發工作是非同步的。提示詞佇列、計畫模式和推播通知讓你像委託同事一樣委託 AI。
繼續查看該欄目下的產品與工程更新。
瀏覽此分類你有沒有發現,現在用 AI 寫程式的方式有點奇怪?
你打開終端,輸入一段指令,然後盯著螢幕看它一行一行地輸出。等它寫完了,你看一眼結果,再輸入下一條。如果中間你去倒杯水,回來可能發現它早就做完了,在那裡等你。或者更糟 — 它跑偏了,你沒能及時叫停,回來發現它改了一堆不該改的檔案。
這是一個同步的互動模式。你和 AI 輪流說話,一問一答,誰都不能離開。
但寫程式從來不是這樣的。
你的工作方式不是同步的
回想一下你平時怎麼工作。你可能同時開著三個 PR 的 review,等著 CI 跑完,中間穿插回覆 Slack 訊息,偶爾切到另一個分支處理一個 hotfix。你的注意力在多個任務之間跳轉,而不是鎖定在某一個上。
但當你用 AI 程式助手時,你被迫變成了一個同步的人。你必須坐在電腦前,看著它工作,等它問你問題,然後立刻回答。如果你在開會,AI 就只能等著。如果你在通勤,那就完全沒法用。
這不是 AI 的問題,是互動模式的問題。
如果你能提前告訴它接下來要做什麼
想像一個不同的場景。
早上到公司,你打開手機,花五分鐘把今天要讓 AI 做的事情列出來:先把那個登入頁面的表單驗證重構一下,然後把 API 的錯誤處理統一成新的格式,最後跑一遍測試看看有沒有什麼 break 的。
三個任務,排好隊,發出去。然後你去開站會了。
站會中間手機振了一下,通知告訴你第一個任務做完了。你瞟了一眼,結果看起來沒問題,第二個任務已經自動開始了。
站會結束後你看了一眼手機,第二個任務也完成了,但第三個任務跑測試時發現了兩個失敗的 case,AI 停下來等你確認。你看了一下失敗的原因,發現是預期行為變了,直接告訴它更新測試用例就好,然後把手機放回口袋。
午飯前,三個任務全部完成。你上午甚至沒有坐到電腦前。
這不是自動化,是委託
這裡有一個重要的區別。
自動化意味著你定義好規則,機器嚴格執行,不需要判斷。CI/CD 是自動化。Lint 是自動化。
但 AI 寫程式不是自動化 — 它需要做判斷,而且它的判斷不一定對。所以你不能完全放手,但你也不需要每一秒都盯著。
更合理的模式是委託:你告訴它要做什麼,它去做,遇到拿不準的事情來問你,做完了告訴你結果。就像你給一個靠譜的同事分配任務一樣。
這個模式要成立,需要幾個東西:
你要能提前規劃。 不是一條一條地發指令,而是一次性把多個任務排好隊。這樣 AI 完成一個就自動開始下一個,不用等你在線。
你要能中途調整方向。 如果你發現 AI 正在做的事情不太對,你應該能直接告訴它「換個方向」,而不是先取消、再重來。取消意味著丟掉上下文,而你真正想要的只是微調。
你要能在 AI 做之前看到它的計畫。 特別是大的改動 — 重構一個模組、升級一個依賴 — 你不會希望 AI 直接動手。你希望它先告訴你「我打算改這三個檔案,邏輯是這樣的」,你確認之後它再執行。
你要能不在螢幕前也知道發生了什麼。 任務完成了、出錯了、需要你做決定了 — 這些資訊應該主動找到你,而不是等你想起來去看。
手機是天然的非同步控制面板
為什麼是手機?
因為手機就是你處理非同步資訊的裝置。郵件、訊息、日曆提醒 — 你不會一直盯著它們,但它們會在需要的時候提醒你。AI 程式助手應該以同樣的方式工作。
你的電腦是寫程式的地方。AI 在上面跑,讀你的程式碼,改你的檔案,執行你的測試。但控制和監督不一定要在同一台機器上完成。
用手機看 AI 的執行計畫,確認之後讓它開始。在通勤的捷運上收到通知,知道昨晚排隊的任務已經全部完成。在會議間隙快速調整一下 AI 正在做的任務的方向。這些場景裡,手機比電腦更合適。
同步互動不會消失
我不是說同步模式沒用。當你在深度除錯一個 bug、和 AI 來回討論方案、或者做一些需要即時回饋的探索性工作時,同步模式仍然是最好的選擇。
但並非所有程式工作都需要深度參與。很多時候你很清楚要做什麼,只是執行起來繁瑣。這些任務不需要你盯著 AI 做,你只需要知道它做完了、做對了。
非同步模式補上的,是這塊拼圖。
這是 1.6.5 在做的事
Tactic Remote 1.6.5 的幾個新功能 — 計畫模式、提示詞佇列、轉向、推播通知 — 不是獨立的 feature,它們是同一個想法的不同切面:讓你能非同步地控制 AI 程式助手。
排好隊,看計畫,確認執行,收到通知。然後你去做更重要的事。
AI 程式助手不需要你一直盯著。它需要的是,在該找你的時候找得到你。