我嘅 AI 智能代理編程終端配置
點樣用 Ghostty、Yazi、Fish 同 LazyGit 並行運行多個 AI 代理 - 一套為智能代理工作流打造嘅輕量終端技術棧。
AI 輔助編程嘅樽頸已經唔再係代理本身。Claude Code、Aider、Codex CLI 呢啲工具已經相當勁。真正嘅限制在於人嘅能力 - 點樣同時操控多個代理、監控佢哋嘅輸出、喺偏離方向嗰陣及時修正、最後將工作成果合併埋一齊。
我用咗一套終端行先嘅配置嚟處理呢個問題。四個工具,全部都輕量,全部都可以組合:終端用 Ghostty,檔案瀏覽用 Yazi,Shell 用 Fish,Git 操作用 LazyGit。以下講吓每個工具嘅角色。
點解揀終端
AI 編程代理天生就係 CLI native 嘅。佢哋讀取檔案、執行指令、喺終端入面輸出結果。當你想同時跑三個代理 - 一個開發功能、一個修 bug、一個寫測試 - 你需要三個並排顯示嘅 Shell session。
IDE 都做得到,但代價唔細。VS Code 加上多個整合終端、extension、language server 同埋編輯器本身,輕鬆食 2-4GB RAM。呢啲記憶體本來可以留畀 AI 代理用。每一個 context token、每一次 API call、每一次檔案讀取都喺爭奪同一堆系統資源。
輕量級終端配置扭轉咗呢個局面。我用嘅呢啲工具加埋一齊,資源佔用遠低過一個 Electron app,將系統資源留畀真正做嘢嘅代理。
Ghostty - 基礎設施
Ghostty 係一款 GPU 加速終端模擬器,macOS 上面用 Metal,Linux 上面用 OpenGL。佢用 Zig 寫,好快 - benchmark 顯示純文字 rendering 比 iTerm2 同 Kitty 快大概 4 倍,即使喺高負載下都維持到大約 60fps。
對代理工作流嚟講,最緊要嘅功能係原生分割同 tab。唔使 tmux。Ghostty 喺應用程式層面處理 pane 分割,rendering 流暢、字型縮放準確、唔使額外設定。開個新分割、啟動代理,即刻開始做嘢。
我嘅典型佈局係四個 pane:
- 左上:喺 feature branch 上面做嘢嘅 Claude Code
- 右上:處理另一個 task 嘅第二個代理
- 左下:監控檔案變化嘅 Yazi
- 右下:review 同 commit code 嘅 LazyGit
當 LLM stream 長回應嗰陣,有啲終端會喺高速輸出下面卡住。Ghostty 嘅 GPU rendering 可以無掉幀、無延遲噉處理,喺同時監控多個輸出 stream 嗰陣特別重要。
Yazi - 代理做嘢嗰陣嘅導航
當三個代理同時喺 codebase 入面改檔案嗰陣,你需要一種快速睇到變化嘅方式。Yazi 係用 Rust 寫嘅終端檔案管理員,有完全非同步嘅 I/O。所有操作都係 non-blocking 嘅,瀏覽大型目錄嗰陣唔會因為背景載入檔案預覽而停頓。
我喺一個 pane 入面長期開住 Yazi,主要用途包括:
- 監控變更 - 即時睇到代理建立同修改嘅檔案
- 檔案預覽 - 唔使開編輯器,直接喺終端入面睇 syntax highlighted 嘅 code、圖片甚至 PDF
- 批次重新命名 - 當代理產生嘅檔案命名唔符合預期嗰陣進行調整
- 快速跳轉目錄 - 利用 bookmark 同搜尋功能
Plugin 系統(基於 Lua)支援按需自訂。我用咗幾個 Git 狀態顯示同快速目錄跳轉嘅 plugin,不過預設配置已經幾好用。
Fish Shell - 降低認知負荷
喺四個終端 pane 之間來回切換嗰陣,認知負荷會好快累積。你瞄一眼 pane,需要諗返佢喺做乜、重新理解上下文、輸入指令,然後切去下一個。
Fish 透過開箱即用嘅功能減輕咗呢種摩擦:
- 自動建議:Fish 根據歷史記錄用灰色文字提示指令嘅後續部分。撳右方向鍵就可以接受。唔使 plugin。
- 語法高亮:有效指令顯示一種顏色,無效指令顯示另一種顏色。撳 Enter 之前就發現到拼寫錯誤。
- Tab 補全:Fish 自動解析 man page 產生補全清單。輸入指令撳 Tab,就有上下文相關嘅選項。
同 zsh 嘅關鍵區別係零設定。唔使裝 oh-my-zsh,唔使維護 .zshrc,唔使更新 plugin manager。Fish 裝完之後即刻可以用。當你專注管理代理嗰陣,debug Shell 設定係最唔想做嘅事。
LazyGit - 基於 worktree 嘅平行開發
呢度係呢套配置喺平行代理工作入面真正發光嘅地方。LazyGit 係一個 Git 終端 UI,佢嘅 worktree 支援令到多代理開發變得切實可行。
模式好簡單:每個代理喺獨立嘅 Git worktree 入面做嘢。Worktree 係 repo 嘅一個 linked copy,喺唔同目錄入面 checkout 唔同 branch。代理 A 喺 ./feature-auth/ 目錄下面嘅 feat/auth branch 做嘢,代理 B 喺 ./fix-perf/ 目錄下面嘅 fix/performance branch 做嘢。佢哋互相唔會掂到對方嘅檔案,所以平行做嘢嗰陣唔會有 merge conflict。
LazyGit 令到管理呢個工作流變得視覺化同高效:
- 建立 worktree - 一個鍵(
w)搞掂 - 切換 worktree - review 每個代理嘅工作成果
- Interactive rebase - merge 之前整理代理嘅 commit history
- 視覺化 diff - 並排比較 branch 之間嘅變更
- Undo/redo - 透過 reflog 整合,代理產生意外結果嗰陣撳
z回滾
冇視覺化 Git 工具嘅話,管理多個 worktree 意味住喺唔同目錄之間反覆 cd 同睇 git log 輸出。LazyGit 將呢一切整合到一個可以導航嘅介面入面。
全部串聯起嚟
一個典型嘅工作 session 係噉嘅:開 Ghostty,分成四個 pane。用 LazyGit 建兩個 worktree - 一個做功能開發,一個修 bug。喺左上 pane 啟動指向功能 worktree 嘅 Claude Code,喺右上 pane 啟動指向 bug fix worktree 嘅第二個代理。左下係 Yazi,可以瀏覽兩個 worktree 目錄同即時預覽變更。右下係 LazyGit,用嚟 review diff、stage 變更,最終 merge 兩個 branch。
關鍵在於呢啲工具冇一個會爭奪資源。Ghostty、Yazi、Fish、LazyGit 全部都係 compile 好嘅 native 程式。冇 Electron runtime,冇 JVM,冇喺背景食 memory 嘅 Python interpreter。系統資源完整噉留畀真正需要算力嘅 AI 代理。
總結
最好嘅 AI 代理編程環境唔在於你用邊個 AI model,而在於人嘅層面。同時跑多個代理、監控輸出、及時修正方向、乾淨噉 merge 工作 - 呢啲能力決定咗你嘅實際產出。
呢套技術棧有明確嘅主張,但保持精簡。Rendering 用 Ghostty,檔案用 Yazi,Shell 用 Fish,Git 用 LazyGit。每個工具都快、輕量、可組合。如果你喺用 AI 編程代理但仲未試過平行終端工作流,不妨從其中一個工具開始,睇吓佢會點樣改變你嘅工作方式。
訂閱通訊
獲取關於我最新項目、文章同埋 AI 和 Web 開發實驗嘅更新。