From c0dfef0995b14b7b378bdf7250a4d41c472ccf74 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=8E=8B=E6=80=A7=E9=A9=8A?= Date: Thu, 5 Nov 2026 08:35:47 +0800 Subject: [PATCH] =?UTF-8?q?Docs:=20=E9=A0=81=E9=9D=A2,=20Tailscale=20serve?= =?UTF-8?q?rs,=20no-questions=20install,=20hands'=20virtual=20screen=20and?= =?UTF-8?q?=20updates?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-Authored-By: Claude Opus 5.5 Claude-Session: https://claude.ai/code/session_01Uirha3oEtWeHh58zA7ErHa --- FEATURES.md | 9 +++++++++ README.md | 7 ++++--- docs/multi-device.md | 9 ++++++++- 3 files changed, 21 insertions(+), 4 deletions(-) diff --git a/FEATURES.md b/FEATURES.md index d7c7e2f..c358aea 100644 --- a/FEATURES.md +++ b/FEATURES.md @@ -1259,6 +1259,15 @@ computer_use_screenshot、click、mouse_move、mouse_button(按住/放開) - Bot 用 `open_for_person` 把它做好的網頁、圖表、報告、圖片、文件在你的螢幕上打開(網址也可以)。在 Bot 的電腦上做的檔案會先複製到這台 Mac。 +### 頁面(Bot 做、Bot 持續更新的報告) + +- 你請 Bot 追蹤、整理、比較一件之後還會回來看的事(例如「幫我追蹤一下台灣 FSD 狀況」),它用 `write_page` 做成一頁:先寫現況,再寫細節和來源(附日期)。回答裡用「[標題](page:ID)」連到它,回答下面出現頁面卡片(標題、開頭幾行、頁面圖示、「頁面 · 更新時間」、最近一次更新了什麼),點一下打開。 +- 頁面可以放表格、Mermaid 圖表(圓餅、長條、折線、時間軸…),以及頁面專用的區塊:```stats 數字卡片、```steps 進度(✓ 完成、◉ 進行中、○ 還沒到)、`> [!NOTE]`/`[!TIP]`/`[!WARNING]`/`[!IMPORTANT]` 提示框。這些區塊在聊天裡也能用。 +- 要定期追蹤時,Bot 會同時設例行任務:每次先 `read_page`、查新消息,有實質進展才更新頁面並告訴你;沒有就說「沒有新消息」,頁面不動。 +- 每次更新保留上一版(最多 10 版),打開頁面後下方「版本紀錄」可以看舊版。也可以複製成 Markdown、存成檔案(到「下載」)、刪除。 +- 右側面板「資料庫」最上面列出這個 Bot 的頁面。手機也能看:聊天裡的卡片、頁面連結、完整頁面(圖表由 AnyBot 畫好傳過去)。 +- 頁面存在大腦上,螢幕電腦和手機看到的是同一份。 + ### 生活卡片 - Bot 用 `show_card` 把機票、餐廳或地點、天氣、商品、活動整理成卡片顯示在聊天裡:圖示、標題、副標、最多 12 列「項目/內容」,以及「查看來源 ↗」。 diff --git a/README.md b/README.md index e309902..815ffc7 100644 --- a/README.md +++ b/README.md @@ -44,13 +44,13 @@ **步驟 1:架伺服器**(只做一次) -需要:一台 Linux 主機(2 GB 以上記憶體)、一個網域,網域的 A 紀錄要指到這台主機,80 和 443 埠要打開。 +需要:一台 Linux 主機(2 GB 以上記憶體),加上一個網域(A 紀錄指到這台、80 和 443 埠打開)或 Tailscale(不用網域,只有你的裝置連得到)。 ```sh curl -fsSL https://code.30cm.net/daniel.w/AnyBot/raw/branch/main/install.sh | sh -s -- server ``` -只會問三件事:**網域、帳號、密碼**。它會自動裝 Docker、申請 HTTPS 憑證、建立帳號、啟動大腦。完成畫面會告訴你網址。 +只會問三件事:**網址(網域或 Tailscale)、帳號、密碼**。它會自動裝 Docker、申請 HTTPS 憑證、建立帳號、啟動大腦。完成畫面會告訴你網址。 > 沒有伺服器?也可以先拿一台 Mac 當大腦,見 [docs/multi-device.md](docs/multi-device.md)(做法 B)。 @@ -133,7 +133,8 @@ make install # 安裝:Mac → ~/Applications/AnyBot.app;Linux → ~/.loca | 方式 | 用在 | 說明 | |---|---|---| -| **Docker Compose**(預設) | 伺服器 | `install.sh server` 用的就是它:帳號伺服器、大腦、Caddy(自動 HTTPS)三個容器,資料放在 Docker 磁碟區,重開機自動啟動。設定檔:[deploy/server/docker-compose.yml](deploy/server/docker-compose.yml) | +| **Docker Compose**(預設) | 伺服器 | `install.sh server` 用的就是它:帳號伺服器、大腦、Caddy(自動 HTTPS)三個容器,資料放在 Docker 磁碟區,重開機自動啟動。用 Tailscale 網址時不開 Caddy,改由 `tailscale serve` 提供 HTTPS。設定檔:[deploy/server/docker-compose.yml](deploy/server/docker-compose.yml) | +| 免問安裝(腳本、Ansible…) | 伺服器 | 答案用環境變數給:`ANYBOT_SETUP_USER=me ANYBOT_SETUP_PASSWORD=… [ANYBOT_SETUP_DOMAIN=網域] sh install.sh server`;不給網域時用這台的 Tailscale 網址 | | Portainer、Coolify、Dokploy… | 已經在用這些管理工具的伺服器 | 它們都吃標準的 `docker-compose.yml`:把 repo 加進去、指定 `deploy/server/docker-compose.yml`、在環境變數填 `ANYBOT_USER`、`ANYBOT_PASSWORD`、`ANYBOT_RELAY_PUBLIC_URL`。若工具自己處理 HTTPS,就拿掉 `caddy` 那一段,把網域導到 `relay` 的 8080 埠 | | **systemd**(使用者服務) | 手腳、沒螢幕的 Linux 大腦 | `anybot setup` 會自動建立 `anybot.service`;登出後也要繼續跑:`sudo loginctl enable-linger $USER` | | **launchd** | Mac 當大腦或帳號伺服器 | 見 [docs/multi-device.md](docs/multi-device.md) | diff --git a/docs/multi-device.md b/docs/multi-device.md index c6e126b..abb72a9 100644 --- a/docs/multi-device.md +++ b/docs/multi-device.md @@ -15,7 +15,10 @@ ### 做法 A:放在伺服器上(推薦,Mac 關機時大腦也還在) -需要:一台 Linux 主機(2 GB 以上記憶體;更小的請先加 swap,見 [install.md](install.md) 的常見問題)、一個 A 紀錄指到它的網域、打開 80 和 443 埠。Docker 沒裝會自動裝。 +需要:一台 Linux 主機(2 GB 以上記憶體;更小的請先加 swap,見 [install.md](install.md) 的常見問題),以及下面其中一種網址。Docker 沒裝會自動裝。 + +- **Tailscale**(不用網域):那台裝好 Tailscale,並在 Tailscale 管理頁打開 HTTPS(DNS › HTTPS Certificates)。設定時會出現「用 Tailscale:https://那台.xxx.ts.net」,選它就好;只有你 Tailscale 裡的手機和電腦連得到,不用開任何埠。 +- **自己的網域**:A 紀錄指到這台,打開 80 和 443 埠,HTTPS 憑證自動申請。 ```sh curl -fsSL https://code.30cm.net/daniel.w/AnyBot/raw/branch/main/install.sh | sh -s -- server @@ -63,6 +66,10 @@ curl -fsSL https://code.30cm.net/daniel.w/AnyBot/raw/branch/main/install.sh | sh 虛擬螢幕(Xvfb)、視窗管理員和輔助使用服務會一起裝好,Bot 看得到這台的畫面。 +這台登入了桌面(例如 GNOME)也一樣:Bot 用的是 AnyBot 自己開的虛擬螢幕,不會動到你的桌面,也不用有人在那台前面按「允許分享螢幕」。想讓 Bot 操作那台登入中的桌面,加 `--real-screen`。 + +更新:在那台再執行一次安裝的那一行(或 `cd ~/AnyBot && ./install.sh hands`),會換成新版並重新啟動,不用再配對。 + 只打 `anybot setup` 會出現一個畫面:填網址和配對碼(或改用帳號密碼)。給程式用: ```sh