如何在 VPS 上執行 Aider 或 Goose 程式碼代理
本文介紹如何在 VPS 上安裝 Aider 與 Goose,並透過 tmux 實現斷線續傳。針對 Ubuntu 24.04 使用者的 PEP 668 錯誤,以及在 Ubuntu 26.04 遇到的 numpy 依賴衝突問題,提供使用 pipx 與獨立 Python 3.12 環境的完整解決方案。
為何要在 VPS 上執行程式碼代理 (Coding Agent)
程式碼代理是一種能在終端機中讀取程式碼庫、撰寫變更並執行測試指令的工具。與筆記型電腦相比,在 VPS 上執行有三個優點:斷開連線後仍能持續工作、直接位於程式碼與建置工具旁,且可以與您自行託管的模型通訊。在 tmux 會話中啟動它,您就可以關閉筆記型電腦並在稍後繼續工作,這與 使用 tmux 在 VPS 上執行 Claude Code 的模式相同。
有兩個值得了解的終端機代理。Aider 是以終端機為原生、以 git 為核心的選項:它會為每次變更自動提交 (auto-commit) 並附上合理的訊息,讓您的歷史紀錄保持整潔且每次編輯皆可復原。它是歷史最悠久的終端機程式碼代理之一,儘管其發布速度有所放緩。Goose(來自 Block)則功能更廣:這是一個 Apache-2.0 授權的代理,擁有龐大的擴充生態系統,並支援包含本地 Ollama 模型在內的許多供應商,目前由 Linux Foundation 的 Agentic AI Foundation (AAIF) 開發。Aider 適合講求紀律、以 git 為中心的流程;Goose 則適合需要廣泛外掛集作為通用助理的使用者。
您需要的條件
您需要一台安裝了 git、tmux 以及最新版 Python 的 VPS 以執行 Aider,或是安裝 Goose 的安裝程式。此外,您需要一個模型:可以是來自 Anthropic 或 OpenAI 等供應商的託管 API 金鑰,或是透過 在同一台 VPS 上運行的 Ollama 提供的本地模型。自行託管的方案能讓程式碼保留在您自己的伺服器上且不產生 Token 費用,代價是需要足以執行高效能模型的記憶體。
安裝並執行 Aider
使用 pipx 在隔離環境中安裝 Aider。由於 Ubuntu 24.04 在虛擬環境外封鎖了原始的 pip install (PEP 668),因此 pipx 需透過 apt 安裝。接著在您的專案目錄中,於 tmux 會話內執行 Aider,以確保斷線後程式仍持續執行:
sudo apt install pipx
pipx ensurepath
pipx install aider-chat
tmux new -s aider
cd ~/my-project
aider版本說明:此安裝方式適用於 Ubuntu 24.04。在 Ubuntu 26.04 上目前會失敗,因為 Aider 鎖定的依賴項目包含舊版 numpy,該版本無法在 26.04 的 Python 3.14 上建置。解決方法是為 Aider 提供獨立的 Python 3.12:
pipx install --python 3.12 --fetch-missing-python aider-chatpipx 會為 Aider 下載獨立的解釋器,隨後安裝完成。這是 Aider 發布速度放緩的徵兆;若您介意,Goose 是維護更頻繁的選擇。
啟動後,按下 Ctrl-b 然後 d 即可脫離 (detach) 會話,代理會在筆記型電腦關閉時繼續工作;稍後使用 tmux attach -t aider 重新連接 (reattach) 以查看變更內容。Aider 會讀取您的儲存庫、提議編輯、套用變更並提交每一次編輯;當變更涉及多個檔案時,它能抓取額外檔案作為上下文。由於每次變更都是一個 commit,撤銷代理的操作僅需一個 git revert,這項安全機制讓使用過程非常安心。Goose 使用官方文件中的單行指令安裝,並同樣從終端機執行,透過其擴充功能來驅動任務:
curl -fsSL https://github.com/aaif-goose/goose/releases/download/stable/download_cli.sh | bash託管模型或自行託管模型
託管模型提供最佳品質且不需要本地硬體,但每次 Token 需支付費用,且您的程式碼會傳送到供應商端。Token 成本的累積速度會比大多數人預期的更快,因為代理在每次對話輪次都會重新傳送整個對話內容。Claude Code 對於 代理長對話實際消耗的 Token 成本 的分析也適用於此,因為 Aider 與 Goose 的計費方式相同。透過 Ollama 進行自行託管模型,可以將所有內容保留在您的伺服器上,且硬體成本結清後運行即為免費,但足以實用的程式碼模型需要大量的記憶體。這是需要權衡的取捨:品質與便利性對比隱私與成本。
若選擇自行託管,實際的問題在於哪種模型適合您的伺服器。在下載 8 GB 的模型到容量不足的機器前,請先評估規模:
安全性:它會編輯檔案並執行指令
程式碼代理並非被動工具。它會重寫檔案並可能執行建置與測試指令,因此請像對待任何會變更系統的程序一樣謹慎對待它。以下三個習慣可涵蓋大部分風險:在 git 儲存庫中工作,確保每次變更都有紀錄且可復原(Aider 會自動為您完成此動作);以一般非特權使用者身份執行代理,絕不要使用 root,遵循 最小權限原則,以防止錯誤指令影響整個系統;並強化伺服器本身的安全設定,因為程式碼 VPS 仍是公開伺服器,需配置僅限金鑰的 SSH、預設拒絕的防火牆等。OpenClaw 硬化指南 對於更具自主性的代理也採取相同的立場,其原則是通用的。
若要將程式碼代理整合進您的工作流程,使用 Claude 建立 AI 代理 展示了單一模型如何驅動您的工具;在 VPS 上執行 Google Gemini CLI 是另一種終端機選項;而 自行託管 OpenHands 則是更重型的自主方案。該領域中星數最高的開源專案目前也有自己的指南:在 VPS 上執行 OpenCode 使用相同的 tmux 與非特權使用者模式進行設定。
FAQ
我可以用本地模型取代付費 API 來執行程式碼代理嗎?
可以。Aider 與 Goose 都能與 Ollama 提供的本地模型協作,因此您可以完全自行託管程式碼代理,無需支付 Token 費用,且程式碼不會離開您的伺服器。關鍵在於記憶體:足以撰寫有用程式碼的模型需要大量 RAM 或 VRAM,因此在投入使用前,請先根據模型規模配置機器。
我該選擇 Aider 還是 Goose?
如果您的工作流程以終端機與 git 為中心,且您需要最成熟、開銷最低的選項,請選擇 Aider;它會自動提交每次變更,讓您的歷史紀錄可復原。如果您需要一個擁有龐大擴充生態系統並支援多種供應商的通用型助手,請選擇 Goose。兩者皆從終端機執行並支援 Ollama,因此兩者都適合 VPS。
自行託管程式碼模型需要多少記憶體?
這取決於模型的大小與量化程度。小型量化模型可以在幾 GB 記憶體下執行,而強大的模型需要更多資源,長上下文視窗也會增加需求。在下載模型前,請使用上述的規模評估工具來估算特定模型與上下文長度所需的記憶體。
讓 AI 代理編輯我的程式碼並執行指令是否安全?
只要養成正確的習慣即可控管風險。將工作保留在 git 儲存庫中以確保每次編輯都是可復原的 commit;以非特權使用者而非 root 身份執行代理;並像對待任何公開伺服器一樣強化 VPS 安全性。請審核它提交的變更而非盲目信任,特別是它想要在您的系統上執行的任何指令。