# 第 5 章 共享雲端電腦：文件、瀏覽器與接管

剛接觸 Grok Bot 的使用者通常會產生幾個常見誤解。這些誤區往往會導致後續開發和維護遇到障礙：

- 誤以為新建一個 Bot 就會多出一台獨立的虛擬機器。
- 誤以為讓幾個 Bot 一起幹活時，它們能直接讀懂對方的聊天記錄。
- 在需要第三方工具登錄時，直接把帳號密碼甚至 API Token 貼進聊天視窗。

等到雲端電腦因為系統維護或底層更新突然清空，安裝好的環境和指令碼全沒了。此時大家才發現自己對這台雲端電腦的底層機制一無所知。

同一帳號下的所有 Bot 都在同一台雲端電腦上工作，共享同一個磁盤與檔案系統。它們看不見彼此的會話記錄，協作全靠磁盤上的文件流轉。

遇到登錄驗證時，正確的做法是直接在雲端瀏覽器接管螢幕輸入憑據，而不是把密碼交給模型。同時這台雲端電腦本質上是一個隨時可能被重新建構的臨時容器，平台底層更新或管理員執行維護時，手動安裝的軟體套件都會丟失。

這一章帶你拆解這台雲端電腦的真實工作方式。你將學會怎樣在多 Bot 之間安全交接文件與螢幕、如何通過本地桌面路由網路流量以應對白名單限制，以及如何用一套輕量標準化的備份流水線，讓整個環境在經歷重置後能夠有條不紊地快速恢復。


![共享雲端電腦：文件、瀏覽器與接管](https://grok-bot-learn.gh.miniasp.com/info/05-computer.png)

## 共享電腦的底層機制：一台機器與多個 Bot

**你帳號下的所有 Bot 共用同一台託管 Linux 電腦。** 無論切到哪個 Bot，面對的都是同一個 `/workspace` 根目錄和持久磁盤。

聊天記錄獨立保存在外部，即使在機器裡執行 `rm -rf` 刪空或系統崩潰重啟，對話與列表依然都在。

**新建 Bot 不等於安全隔離。** 任何 Bot 只要拿到命令列權限，就能讀寫 `/workspace` 裡的所有資料，千萬別在裡面放未經加密的敏感資訊。

版本演進：
- v0.68.0：支援在設定中移除其他電腦
- v0.68.1（2026-10-07 發表）：螢幕分辨率從 1280×800 升到 1920×1200，操作與截圖回應更快
- v0.70.2：增加專屬郵箱，支援網頁直接存為 PDF

底層細節可看 [《4.6 虛擬機器、記憶與備份》](https://jcng5q8n0f3z.feishu.cn/wiki/KUggwkhqqiRyxZkwTLhcrCU2ncg)。

## 多 Bot 螢幕與工作狀態監控

### 狀態與組態

**側邊欄常駐三類狀態**。
- 需關注：等回答、審批或交接。
- 未讀活動：已完成任務，等看結果。
- 工作狀態：正在跑指令碼、抓網頁或調工具。

點頂部名稱進「查看對話詳情」，可改當前 Bot 的名稱、標記與頭像。個人 Bot 沒單獨描述框，**直接發訊息**就能調定位。

### 監控與通知

雲端操作支援**實時看螢幕**。

**處於焦點時通知自動抑制**，只在側邊欄和 Dock 標未讀；離線可在組態檔開通知，推送到桌面或手機。

## 瀏覽器接管：移交螢幕，不交密碼

![瀏覽器接管：移交螢幕，不交密碼](https://grok-bot-learn.gh.miniasp.com/info/05-computer-s3.png)

別把帳密發進聊天框。你和 Bot 共用瀏覽器，**移交螢幕，不交密碼**。

### 接管步驟

1. 觸發暫停：Bot 打開登錄頁，遇帳密、掃碼或 2FA 時暫停。
2. 接管輸入：點選全螢幕接管鍵鼠。
3. 人工登錄：自填帳密或掃碼驗證。
4. 移交執行：**登錄後通知 Bot 複用 Cookie 執行**，碰不到明文密碼。

### 審批閘門

按 `Cmd+,` 在「常規」-「Bot」設定。

- **規則衝突以「先詢問」（Ask first）為準**。
- 企業規則顯示 `Required by your admin. You can't edit or delete this rule.` 無法修改。
- v0.70.2 強化了發信與發文、支付以及改正式環境前的確認。

詳見 [設定和通知](https://cursor.com/cn/docs/grok-bot/settings)。

## 多 Bot 文件交接約定與目錄規劃

### 文件協作模式

Bot 間讀不了聊天記錄，**多 Bot 協作的唯一通道是共享磁盤文件**。

提示詞只需傳入上一棒文件路徑，詳見 [《4.6 虛擬機器、記憶與備份》](https://jcng5q8n0f3z.feishu.cn/wiki/KUggwkhqqiRyxZkwTLhcrCU2ncg)。

1. 整理員抓取生成 `tweets.md`
2. 分析師提煉輸出 `profile.md`
3. 設計師依畫像生成 `design.md`
4. 工程師讀設計建構程式碼

### 目錄規劃

建機之初定好目錄，免得多 Bot 把文件寫亂。

| 目錄路徑 | 存放內容 | 寫入規範 |
| --- | --- | --- |
| `/workspace/handoff/` | 中間產物 | 統一 Markdown 或 JSON，帶任務前綴 |
| `/workspace/projects/` | 專案程式碼與資產 | 按項目分獨立子目錄，關聯 Git 倉庫 |
| `/workspace/tools/` | 本地自寫指令碼 | 僅留無密鑰原始碼，排查後同步備份倉 |
| `~/.env` 或本地文件 | API 密鑰 | 僅保存在本地，**嚴禁提交程式碼倉或在會話打印** |

### 磁盤清理與 Disk Saver

系統報 `Computer is low on disk space` 或 `Computer is critically low on disk space` 警告，去側邊欄點 **Disk Saver** 的「Go to Disk Saver」看清理建議。

**未經確認它絕不擅自刪除文件**，拒絕清理現有文件就原樣保留。

## 本地網路出口：路由與訪問私有網路

![本地網路出口：路由與訪問私有網路](https://grok-bot-learn.gh.miniasp.com/info/05-computer-s5.png)

解決微信公眾號、企業內網 IP 白名單或局域網訪問，**走本地設備中繼流量就行**。

### 開啟步驟
1. 按 `Cmd+,` 進設定，點 **電腦**。
2. 在 **你的電腦** 找到當前電腦，打開 **通過當前電腦路由流量**。

### 限制與避坑
- 每次限單台。外部識別為本地 IP，Bot 也能直接訪問局域網。
- **僅對新請求生效**，已有 TCP 長連線仍走原路線。
- 管理員若關 `Allow Local Egress Routing`，開關置灰提示 `Disabled by your admin. You can't turn this on.`，5 分鐘內強制斷開，見 [設定和通知](https://cursor.com/cn/docs/grok-bot/settings)。
- `Execution on this computer` 控制本地 Shell，預設逐條確認，**切勿隨意放開全自動**。

## 重建、更新與終止：雲端電腦的生命週期

![重建、更新與終止：雲端電腦的生命週期](https://grok-bot-learn.gh.miniasp.com/info/05-computer-s6.png)

重構**清空自裝環境**，保留磁盤與登錄態。

見 [Grok Bot 電腦](https://cursor.com/cn/help/grok-bot/computer-recovery) 和 [管理 Grok Bot 電腦](https://cursor.com/cn/docs/grok-bot/computers)。

| 操作 | 保留 | 清除與坑點 |
| - | - | - |
| 軟體更新 | 全部 | 無 |
| 更新/重建 | 磁盤與文件 | 清自裝環境；重跑指令碼 |
| 終止 VMs | 磁盤 | 閒置 30 天關機丟進度 |
| Recover/Reset | 已存資料 | 中斷任務，丟未存程式碼 |

顯示 `Reconnecting` 時**別盲目 Reset**，按順序排查。

1. **點 Retry**。重連中磁盤完好，亂點破壞現場。
2. **徹底退出**。macOS 需 `Cmd+Q` 退出再重啟，別隻點紅叉。
3. **查更新**。進「設定」>「電腦」，Bot 空閒再更新。
4. **優先 Recover**。彈出選項先選它，儘量存快照。
5. **最後 Reset**。確認無未存程式碼且全失效再重置。

## 災備流水線：服務總帳與冪等恢復指令碼

![災備流水線：服務總帳與冪等恢復指令碼](https://grok-bot-learn.gh.miniasp.com/info/05-computer-s7.png)

更新或重置會清空環境。鐵柱AGI（@cgnot996）在 2026-10-10 提出方案，**只備拉起方法，不存整機**。

他用 5.1MB 私有倉庫管 10 個 Bot 的 20 個服務（18 項必恢復，含 4 個常駐、14 個按需與 2 個密鑰路徑項），詳見[課程](https://jcng5q8n0f3z.feishu.cn/wiki/Q6ZdwzjO5i6z0pkdMfyca8Cbnye)。

### 規範結構與入帳

倉庫 `vm-services` 包含四部分。
- `REGISTRY.md` 與 `registry.json`：總帳及組態。
- `restore/restore-<服務名>.sh`：單服務指令碼，**必須冪等**。
- `restore/restore-all.sh`：依序裝庫、CLI 並起後台服務，統計失敗。
- `service-src/`：原始碼歸檔，排除 `.env`、記錄與虛擬環境。

新服務登記包含這幾項。短 ID 與負責 Bot；程式碼及資料路徑；安裝方式（apt/pip/npm/Docker）與系統依賴；啟動和檢查命令（--version 或端口）；是否必恢復；密鑰絕對路徑（**嚴禁記錄明文**）；掃碼或 OAuth 等步驟。

### 兩套提示詞

發給「虛擬機器服務管家」Bot，其他 Bot 部署依此交差。

::: details 部署與登記提示詞
```text
你是「虛擬機器服務管家」，只管一件事：記下這台虛擬機器上部署過的所有第三方服務，並在電腦更新或換帳號之後，按記錄把它們原樣恢復。

你維護的東西：
1. 一份登記總帳，人和機器各讀一份：REGISTRY.md（表格）和 registry.json（給指令碼讀）。
2. 每個服務一個恢復指令碼 restore/restore-<服務>.sh，必須冪等，重複跑也不會出錯。
3. 一個總入口 restore/restore-all.sh，按依賴順序呼叫各個恢復指令碼，最後彙總哪些失敗了。
4. 一份原始碼備份 service-src/：各 Bot 自己寫的服務程式碼和指令碼，同步時排除密鑰、記錄、執行狀態、虛擬環境和個人資料，並先掃一遍明文密鑰，命中就停。
5. 以上全部跟著一個私有 Git 倉庫存（「你的備份倉庫地址」）。總帳、恢復指令碼、原始碼都在倉庫裡，密鑰永遠不進倉庫。

登記規則（其他 Bot 部署任何服務都必須來找你登記）：
每項必須包含：
- 名稱和短 id、用途、負責的 Bot
- 路徑：程式碼、組態、資料分別在哪
- 安裝方式和依賴（apt / pip / npm / Docker / 系統定時任務）
- 啟停命令、健康檢查命令
- 更新後的恢復步驟，或者對應的恢復指令碼
- 是否必恢復：是 / 否
- 密鑰：只寫存放路徑，絕不寫明文
- 需要真人完成的步驟（OAuth 登錄、掃碼、匯入 cookie）單獨標出來

你的工作方式：
- 先弄清哪些會丟、哪些能留：電腦更新一般保留工作目錄，但系統包、常駐行程、全域安裝的命令列工具會丟；重置則什麼都不留。所以要記的是“怎麼重建”，不是去拷整台機器。
- 能從公開渠道重裝的（apt、pip、npm、上游 Git 倉庫）只記安裝命令；自己寫的程式碼必須進原始碼備份，否則重置後就找不回來。
- 收到登記先核對：路徑是否真實存在、健康檢查能不能過。登記寫的和實際不一樣時，以實際為準，並告訴負責的 Bot。
- 多個定時任務合併成一份 crontab 真源時，檢查每一條是不是都在真源裡，不在的要靠恢復指令碼補回去。
- 故意停掉的服務要寫清楚“為什麼停、什麼條件下重開”，免得被當成漏裝。
- 只有主人說“電腦更新完了”才跑總恢復，不盲跑。跑完交驗收：每項是成功、失敗，還是要真人處理。
- 每次有服務新增、刪除或原始碼大改，先重新同步原始碼備份，再把總帳、指令碼、原始碼一起提交推送到備份倉庫。換帳號或重置時，就靠這份備份把整套設定帶走。
- 刪掉的服務要徹底清除：總帳只反映現在真實的狀態。
```
:::

重置後配好 Git 憑證發給恢復 Bot。**驗收標準按清單彙報結果、用時與檢查狀態**。

::: details 重置後的一鍵恢復提示詞
```text
這台電腦剛重置過（或者是換了新帳號），之前部署的服務都沒了。請按我的備份把它們恢復到可用狀態，規則如下。

備份在哪：
- 備份倉庫：<你的備份倉庫地址>，分支 <分支名>
- 倉庫裡有：登記總帳（REGISTRY.md 和 registry.json）、每個服務的恢復指令碼（restore/）、自寫服務的原始碼備份（service-src/）
- 倉庫裡沒有密鑰，這是故意的

請按這個順序做：
1. 把備份倉庫拉到工作目錄，先讀總帳，告訴我一共登記了幾項、哪些標了「必恢復」、哪些只留密鑰不用恢復。先列出來，不要動手。
2. 把自寫服務的原始碼從 service-src/ 放回總帳寫的原位置。只補缺失的，已經存在的目錄不要覆蓋。
3. 按總帳的依賴順序逐項恢復：先裝系統依賴（比如 cron、ffmpeg），再裝命令列工具，最後拉起常駐服務和定時任務。每項都用它自己的恢復指令碼，指令碼要能重複跑。
4. 每裝完一項就跑它登記的健康檢查。失敗了先看記錄、試著修一次；修不好就記下原因，接著做下一項，不要卡住。
5. 把需要我本人做的事彙總成一張清單：要重新提供的密鑰（只說放哪個路徑、叫什麼名字，別讓我把密鑰貼進聊天）、要重新登錄授權的工具（OAuth、掃碼、設備碼）。然後一項一項帶我做，每做完一項馬上覆查。
6. 故意暫停的任務保持暫停，總帳裡寫了原因和重開條件的照辦。別因為“看起來漏裝了”就自作主張打開。
7. 最後交驗收清單，每項一行：服務名、結果（成功 / 失敗 / 等我處理）、健康檢查輸出摘要、花了多久。再告訴我總共用了多少時間、成功了幾項。

不要做的事：
- 不要把任何密鑰寫進倉庫、記錄或聊天
- 不要跑總帳沒登記的安裝
- 不要用“重置電腦”當修復手段
- 恢復完如果有任何改動（路徑變了、版本升級了），更新總帳，提交推回備份倉庫
```
:::

## 容易踩的坑

### 憑證與權限
- **別在聊天框貼密鑰**：網頁端手動輸；CLI 的 Token 寫入 `~/.env`，指令碼讀環境變數。
- **Bot 間無隔離**：共享 `/workspace` 與權限。敏感資產靠私有倉庫和人工審批，多開沒用。

### 協作與依賴
- **交接須落盤**：Bot 互不讀會話。A 的結果存為 Markdown 或 JSON，光靠說 B 會幻覺。
- **依賴不持久**：更新、Recover 或 Reset 會清空 `apt install` 與 `npm install -g` 的內容，`node_modules` 和 `.venv` 也不備份。

  **恢復指令碼須包含** `npm install` 與 `pip install -r requirements.txt`。

### 運維與網路
- **見 Reconnecting 別按 Reset**：會丟未存盤改動並強行重建，**先重試或重啟客戶端**。
- **定時任務集中管**：crontab 須統一存入 Git 倉庫維護。
- **開本地路由須重啟**：開啟「通過當前電腦路由流量」若 IP 沒變，重啟該行程。

## 做完怎麼驗收

1. Bot A 往 `/workspace/handoff/test.json` 寫時間戳記。**Bot B 讀取並準確說出**即通暢。
2. 在「設定」>「電腦」開啟「通過當前電腦路由流量」，終端跑 `curl -s https://api.ipify.org`。**外網 IP 需與本地一致**，非機房 IP。
3. 讓 Bot 打開 GitHub 登錄頁，**必須在密碼框前暫停並提示移交**。手動登錄後繼續，確認記錄無明文密碼。
4. 確認私有 Git 已提交 `REGISTRY.md`、`registry.json` 與指令碼。在測試目錄拉取並執行：
```bash
bash restore/restore-all.sh
```
**健康檢查需全數通過**，無衝突報錯，總帳服務正常監聽。

## 延伸閱讀

### 官方文件與知識庫

- [管理 Grok Bot 電腦](https://cursor.com/cn/docs/grok-bot/computers)：官方關於企業版多電腦批量重建、終止與 30 天閒置清理的完整規則。
- [設定和通知](https://cursor.com/cn/docs/grok-bot/settings)：官方關於桌面端設定、本地命令執行、流量中繼路由與 Auto-review 模式的說明。
- [Grok Bot 電腦](https://cursor.com/cn/help/grok-bot/computer-recovery)：官方關於 Update、Recover、Reset 的區別與排錯自查清單。

### 社群實戰參考

- [《4.6 虛擬機器、記憶與備份》](https://jcng5q8n0f3z.feishu.cn/wiki/KUggwkhqqiRyxZkwTLhcrCU2ncg)：詳細拆解雲端電腦底層架構、上下文組織地圖與多 Bot 文件協作。
- [《Grok Bot 虛擬機器重置後工具全沒了？備份恢復課程（附提示詞）》](https://jcng5q8n0f3z.feishu.cn/wiki/Q6ZdwzjO5i6z0pkdMfyca8Cbnye)：社群作者鐵柱AGI（@cgnot996）分享的虛擬機器服務管家設計、總帳登記表與一鍵恢復實戰。
