2026 年把程式設計 Agent 裝在筆電上,最常見的失敗不是模型不夠聰明,而是筆電合蓋、磁碟混著私人檔案、金鑰進了 shell 歷史。一臺 Linux VPS 可以把「始終線上的執行環境」和「你手裡的編輯器」拆開。這篇教學從註冊服務商帳號寫到 VS Code 或 Cursor 遠端改程式碼。驗收標準不是 SSH 能連上,而是筆電斷開以後,tmux 裡的 Agent 會話還在,並且你有一份改動前的快照。
為什麼 AI 程式設計環境會從筆電搬到 VPS
舊方式是本機裝 CLI,Agent 直接改你的家目錄。新方式是把工作目錄、依賴快取和長期會話放在一臺只做開發的 VPS 上,筆電只負責顯示和按鍵。矛盾不在「雲貴不貴」,而在執行邊界。合蓋會殺掉本機行程,系統更新會打斷一次長任務,同一臺機器上還有瀏覽器登入態和私人倉庫。VPS 把這些從 Agent 的預設可寫範圍裡拿掉。
它解決不了另一類問題。Linux VPS 沒有 macOS,不能簽名 iOS,也沒有 Xcode。它也不是訓練叢集:呼叫雲端模型的程式設計 Agent 吃的是記憶體、磁碟和穩定的會話,不是一塊資料中心 GPU。如果你要的是本地推理而不是遠端改倉庫,先看 AI PC 選購指南,不要為了寫程式碼去買顯示卡機器。
區域比套餐名更先決定體感。Remote SSH 的延遲發生在你和 VPS 之間,模型 API 的延遲發生在 VPS 和模型服務之間。人在東亞、機器在美東,按鍵會先慢下來,哪怕模型本身很快。選離座位近的區域,再談核數。
先把 AI 程式設計環境拆成五層
按層買,不要按廣告詞買。跳板機、編碼機、建置機、macOS 節點和 GPU 雲回答的是不同的問題。把它們當成同一種「雲主機」比較,就會用 2GB 的機器跑 Node,或者用 Linux 去編 iOS。
| 層級 | 它負責什麼 | 不夠時的症狀 | 不該塞進來的東西 |
|---|---|---|---|
| 跳板 | 只維持 SSH | 一安裝依賴就被系統殺掉 | Agent、資料庫、容器 |
| 編碼 VPS | git、語言執行時、一個 CLI Agent、tmux | 並行測試和容器開始搶記憶體 | Xcode、模型訓練 |
| 建置機 | 更多核、更多記憶體、容器 | 互動式編輯變卡 | 日常瀏覽器登入態 |
| macOS 節點 | 簽名、模擬器、Apple 工具鏈 | Linux 上永遠缺少工具 | 把它當成通用 Linux 主機 |
| GPU 雲 | 訓練和大批次推理 | 改 bug 的間隙 GPU 空轉 | 日常改倉庫 |
編碼層的實用下限是 4 個 vCPU、8GB 記憶體和大約 80GB 磁碟。1GB 或 2GB 只夠做跳板。磁碟要留給 node_modules、語言快取和若干份檢出;根分割槽用過八成就先清快取,再考慮加大,而不是等安裝指令碼報一個含糊的錯誤。
遠端入口才是分水嶺,不是模型
模型能力不是分水嶺,執行邊界落在哪臺機器上才是。同一個人可以同時擁有 Cursor 和 Claude Code,如果一個改的是筆電副本、另一個改的是 VPS 上的檢出,你看到的 diff 就不是 Agent 以為自己改過的那份。
| 工具 | 入口 | 執行能力 | 上下文 | 適合人群 |
|---|---|---|---|---|
| VS Code Remote SSH | 本機編輯器連到 VPS | 終端、除錯和擴充套件在遠端跑 | 開啟的是遠端倉庫 | 想留住熟悉編輯器的人 |
| Cursor Remote SSH | 同樣走 SSH | 補全和 Agent 改的是遠端檔案 | 遠端工作區 | 希望編輯和 Agent 看同一份檢出 |
| Claude Code 或 Codex CLI | VPS 上的 tmux | 能改檔案、跑測試 | 你顯式開啟的目錄 | 筆電合蓋後仍要繼續的長任務 |
| 遠端 Mac | 遠端 macOS | Xcode、簽名、iOS 模擬器 | Apple 工程 | 工具鏈要求 macOS 的人 |
CLI 怎麼選,不在這篇展開模型排名。入口、執行和上下文的差別可以看 Pi、Claude Code 與 Codex 的實測對比。這篇只要求你先選定一個 CLI,把它放進 tmux,並且讓編輯器連的是同一臺機器上的同一份檢出。
按場景選機器,而不是按套餐名
| 如果你是 | 就選 | 不要選 |
|---|---|---|
| 只跟模型聊天,不改倉庫 | 本機客戶端 | 任何 VPS |
| 寫 Web 或後端,希望合蓋後測試還在跑 | 8GB 起的編碼 VPS,加上 tmux | 1GB 跳板 |
| 要同時開容器和端到端測試 | 記憶體再加一檔的建置機 | 和互動開發擠在 8GB 上 |
| 要編 iOS 或跑 Xcode | 租用一臺遠端 Mac | Linux VPS |
| 要訓練權重 | GPU 雲 | 這臺程式設計 VPS |
| 團隊要長期自動化,不只是你一個人遠端寫 | 雲端 Mac 上的自動化 | 把流水線塞進個人 VPS |
個人編碼 VPS 和個人筆電的差別是會話和磁碟邊界,不是「更智慧」。團隊流水線還要許可權、日誌和誰能登入。那是另一臺機器的問題,不要在這篇的 dev 使用者上順手開啟密碼登入。
一套夠用的推薦組合
系統用 Ubuntu 24.04 LTS。使用者叫 dev,sudo 仍然要密碼,Agent 不以 root 執行。SSH 只用 ed25519。密碼登入要關,但必須在金鑰登入已經成功、並且服務商網頁控制檯還開著的時候再關。執行時是 git、Python 3、Node 22 LTS 和 tmux。API 金鑰放在 ~/.config/ai-dev/provider.env,目錄 700,檔案 600,並寫進倉庫的忽略列表。
編輯器側用 VS Code 或 Cursor 的 Remote SSH,Host 名寫在你自己電腦的 ~/.ssh/config,不要寫在 VPS 上。長任務進一個固定名字的 tmux 會話,例如 agent。每次讓 Agent 做大範圍修改之前,先在服務商控制檯做快照。
五個會讓環境作廢的誤區
- 用跳板機的記憶體跑編碼棧。 Node 裝到一半行程被殺掉,看起來像網路故障,其實是記憶體。
- 金鑰還沒驗證就關掉密碼登入。 正確順序是:新開一個金鑰會話成功,舊的控制檯視窗先留著,然後再改 sshd。
- 把 API 金鑰寫進命令列。 它會進 shell 歷史,也會被 Agent 讀到。金鑰只從 600 的檔案進入會話。
- 給 dev 配免密碼 sudo。 Agent 能跑命令。免密碼 sudo 意味著一次誤操作就能改 sshd 或防火牆。sudo 保留密碼。
- 把 iOS 工程克隆到 Linux 上再找 xcodebuild。 工具不會出現。這類工程從一開始就放在 遠端 Mac。
從註冊到遠端開發的七步
每一步都有一個可以觀察的結果。上一步沒有結果,不要開始下一步。
- 註冊。 開啟服務商帳號的兩步驟驗證,選離你近的區域,記下公網 IP。帳單信箱和復原碼放在你自己的密碼管理器裡,不放在這臺即將交給 Agent 的機器上。
- 金鑰。 在自己的電腦上生成 ed25519,只把
.pub貼進服務商。私鑰留在本機。 - 使用者。 建立 dev 並加入 sudo。用金鑰以 dev 登入成功後,再關閉 root 登入和密碼登入。改 sshd 之前,保持一個已經登入的控制檯視窗。
- 執行時。 安裝 git、編譯工具、Python、tmux,以及 Node 22 LTS。用版本命令驗收,不用「安裝指令碼沒報錯」驗收。
- 倉庫。 用 dev 克隆一個可以丟棄的測試倉庫,跑一遍現有測試。確認 Agent 稍後只會拿到這個目錄,而不是整個家目錄。
- Agent。 按廠商當前文件安裝一個 CLI。金鑰寫入 600 的 env 檔案,由會話讀取。在 tmux 裡啟動,先讓它只解釋倉庫結構,不要第一天就做大重構。
- 遠端編輯。 本機 SSH 配置增加 Host,用 VS Code 或 Cursor 連上,改一個檔案並提交到測試分支。斷開筆電網路,再從控制檯執行
tmux attach -t agent。會話還在,就做快照。這一步完成,環境才算搭好。
ssh-keygen -t ed25519 -C "ai-dev-vps" -f ~/.ssh/id_ed25519_ai_vps # 上傳的是 id_ed25519_ai_vps.pub
sudo adduser dev sudo usermod -aG sudo dev sudo apt update sudo apt install -y git tmux build-essential python3 python3-venv python3-pip # Node 22 LTS 用發行版或 NodeSource 的當前說明安裝 node -v python3 --version git --version
Host ai-vps HostName YOUR_VPS_IP User dev IdentityFile ~/.ssh/id_ed25519_ai_vps IdentitiesOnly yes
mkdir -p ~/.config/ai-dev chmod 700 ~/.config/ai-dev install -m 600 /dev/null ~/.config/ai-dev/provider.env # provider.env 裡只放一行,例如 ANTHROPIC_API_KEY=replace-me tmux new -s agent
/etc/ssh/sshd_config.d/99-ai-dev.conf 裡寫上 PermitRootLogin no、PasswordAuthentication no 和 PubkeyAuthentication yes 之前,先另開一個金鑰會話。服務商控制檯留著,避免唯一的門被自己關上。
常見問題
1GB 或 2GB 的 VPS 夠不夠跑 AI 程式設計?
不夠。跳板機只能維持 SSH。Node、語言服務和程式設計 Agent 同時在時,8GB 記憶體才是日常編碼的地板。Docker 和並行測試還要再加一檔。
程式設計 Agent 需要 GPU VPS 嗎?
呼叫雲端模型的 CLI 不需要。GPU 留給訓練和大批次本地推理。日常改倉庫、跑測試,買的是記憶體、磁碟和離你近的區域。
能在 Linux VPS 上編 iOS 嗎?
不能。簽名、模擬器和 xcodebuild 屬於 macOS。用遠端 Mac,不要在 Linux 上排查一個永遠不會出現的工具。
金鑰放在 VPS 上安全嗎?
只在這臺機器為你所有、許可權收緊、並且倉庫不會提交該檔案時才相對安全。檔案 600、目錄 700,不要寫進 shell 歷史,也不要交給 root 身份的 Agent。
SSH 能連上是否就算環境搭好了?
不算。驗收是筆電斷開後 tmux 會話還在,測試倉庫能被 Agent 改動,並且你有一份改動前的快照。
總結
先定執行邊界,再註冊。編碼 VPS 適合合蓋後還要跑的 Linux 倉庫;Xcode 和簽名去 macOS 節點;訓練去 GPU。七步都有觀察結果之後,遠端開發才算搭好。SSH 通了,只說明門開了。