@songsid/agend 2.2.0-beta.16 → 2.2.0-beta.18

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (56) hide show
  1. package/README.md +19 -18
  2. package/README.zh-TW.md +19 -18
  3. package/dist/agent-whats-new.js +3 -1
  4. package/dist/agent-whats-new.js.map +1 -1
  5. package/dist/backend/antigravity.d.ts +25 -0
  6. package/dist/backend/antigravity.js +94 -9
  7. package/dist/backend/antigravity.js.map +1 -1
  8. package/dist/backend/kiro.d.ts +2 -0
  9. package/dist/backend/kiro.js +4 -0
  10. package/dist/backend/kiro.js.map +1 -1
  11. package/dist/backend/types.d.ts +5 -0
  12. package/dist/backend/types.js.map +1 -1
  13. package/dist/compact-watch.d.ts +9 -1
  14. package/dist/compact-watch.js +47 -6
  15. package/dist/compact-watch.js.map +1 -1
  16. package/dist/config-validator.js +26 -1
  17. package/dist/config-validator.js.map +1 -1
  18. package/dist/daemon.d.ts +8 -0
  19. package/dist/daemon.js +66 -6
  20. package/dist/daemon.js.map +1 -1
  21. package/dist/fleet-manager.js +78 -23
  22. package/dist/fleet-manager.js.map +1 -1
  23. package/dist/forged-envelope-scan.d.ts +4 -3
  24. package/dist/forged-envelope-scan.js +4 -3
  25. package/dist/forged-envelope-scan.js.map +1 -1
  26. package/dist/kiro-compact-pane.d.ts +38 -0
  27. package/dist/kiro-compact-pane.js +57 -0
  28. package/dist/kiro-compact-pane.js.map +1 -0
  29. package/dist/locale.js +8 -4
  30. package/dist/locale.js.map +1 -1
  31. package/dist/outbound-schemas.js +1 -1
  32. package/dist/outbound-schemas.js.map +1 -1
  33. package/dist/public-web-gateway.d.ts +2 -0
  34. package/dist/public-web-gateway.js +6 -1
  35. package/dist/public-web-gateway.js.map +1 -1
  36. package/dist/topic-commands.d.ts +9 -2
  37. package/dist/topic-commands.js +18 -6
  38. package/dist/topic-commands.js.map +1 -1
  39. package/dist/types.d.ts +8 -0
  40. package/dist/ui/chat-render.js +31 -6
  41. package/dist/ui/chat-store.js +5 -5
  42. package/dist/ui/chat-strings.js +6 -2
  43. package/dist/ui/chat-thread.js +90 -14
  44. package/dist/ui/panel-chat.js +1 -1
  45. package/dist/ui/panel-settings.js +1 -1
  46. package/dist/ui/shared/app.css +7 -0
  47. package/dist/web-api.d.ts +4 -0
  48. package/dist/web-api.js +135 -43
  49. package/dist/web-api.js.map +1 -1
  50. package/dist/web-chat-history.d.ts +14 -0
  51. package/dist/web-chat-history.js +18 -1
  52. package/dist/web-chat-history.js.map +1 -1
  53. package/dist/web-upload.d.ts +112 -1
  54. package/dist/web-upload.js +237 -36
  55. package/dist/web-upload.js.map +1 -1
  56. package/package.json +3 -3
package/README.md CHANGED
@@ -17,7 +17,7 @@ AgEnD (**Agent Engineering Daemon**) turns your Telegram or Discord into a comma
17
17
  <code>You → Telegram/Discord → AgEnD → Fleet of AI Agents → Results back to your phone</code>
18
18
  </p>
19
19
 
20
- [繁體中文](README.zh-TW.md) · [Documentation](docs/features.md) · [CLI Reference](docs/cli.md)
20
+ [繁體中文](README.zh-TW.md) · [Documentation](docs/features.md) · [CLI Reference](docs/cli.md) · [2.2 what’s new](docs/release-notes/2.2.0.md)
21
21
 
22
22
  ---
23
23
 
@@ -30,7 +30,7 @@ AgEnD (**Agent Engineering Daemon**) turns your Telegram or Discord into a comma
30
30
  | Long-running sessions accumulate stale context | CLI auto-compact + crash recovery with context snapshots |
31
31
  | No idea what your agents are doing overnight | Daily cost reports + hang detection alerts |
32
32
  | Agents work in silos, can't coordinate | Peer-to-peer collaboration via MCP tools |
33
- | Runaway costs from unattended sessions | Per-instance daily spending limits with auto-pause |
33
+ | Runaway costs from unattended sessions | Per-instance daily spending limits that stop the instance |
34
34
 
35
35
  ## Feature Highlights
36
36
 
@@ -64,19 +64,19 @@ AgEnD (**Agent Engineering Daemon**) turns your Telegram or Discord into a comma
64
64
 
65
65
  👥 **Teams & Task Board** — Named groups for targeted broadcasting. Shared task board for multi-step work tracking across instances.
66
66
 
67
- 📋 **Fleet Templates** — Define reusable fleet configurations. Deploy multi-instance setups with one command, each with its own git worktree.
67
+ 📋 **Fleet Templates** — Define reusable fleet configurations. Deploy multi-instance setups with one command; supply `branch` to give each role its own git worktree.
68
68
 
69
69
  😀 **Stickers & Persona Emoji** — Agents can send stickers on Discord and Telegram, and each agent can pick its own emoji so you can tell bots apart in a shared channel.
70
70
 
71
71
  📊 **Subscription Usage** — `/usage` (also the dashboard and the `get_usage` tool) shows the remaining quota of your Claude, Codex, Kiro, Grok, Muse and Antigravity subscriptions, one row per subscription.
72
72
 
73
- 🔑 **Credential Profiles** — Run instances, or ClassicBot channels, on a second subscription of the same backend with `backend_options.<backend>.credential_profile` (kiro-cli and Codex today). See [Configuration](docs/configuration.md#credential-profiles-multiple-subscriptions-of-one-backend).
73
+ 🔑 **Credential Profiles** — Run instances, or ClassicBot channels, on a second subscription of the same backend with `backend_options.<backend>.credential_profile` (kiro-cli, Codex and Claude Code today). See [Configuration](docs/configuration.md#credential-profiles-multiple-subscriptions-of-one-backend).
74
74
 
75
75
  🌐 **Sign In From Your Phone** — `/login` (fleet admins) signs a CLI in without SSH: device-code logins such as Codex and Grok post their link and code in the chat, and a sign-in that needs a terminal gets a time-limited, token-protected browser terminal on the host. For kiro-cli and Claude Code it can also open a temporary public link through a Cloudflare Quick Tunnel after you confirm; AgEnD downloads `cloudflared` if it is missing. Turn it off with `web_terminal.tunnel.allow_public: false`. See [Configuration](docs/configuration.md#finishing-a-login-away-from-the-machine-public-link).
76
76
 
77
77
  💤 **Auto-Pause & Wake** — With `auto_pause_after` (minutes, off by default) an idle instance is paused and wakes by itself when a message arrives. `/pause` and `/wake` do the same by hand.
78
78
 
79
- 🧠 **Memory Pressure Guard** — On Linux the fleet watches host memory: under pressure it slows new CLI starts, holds them while memory is critical, and posts a notice. On macOS the readings are only logged.
79
+ 🧠 **Memory Pressure Guard** — On Linux and macOS, host memory pressure slows new CLI starts and holds them while memory is critical. Status stays visible in logs, health and the dashboard; there are no chat broadcasts. A held human start, restart or wake action gets its reason.
80
80
 
81
81
  ## Use Cases
82
82
 
@@ -144,12 +144,13 @@ graph LR
144
144
  | Grok Build | `curl -fsSL https://x.ai/cli/install.sh \| bash` | `grok` (x.ai OAuth device flow). Needs CLI 1.0.13 or later; run `grok update` if the server refuses an older one |
145
145
  | Meta Muse Code | `mkdir -p "$HOME/.local/bin" && curl -fsSL https://api.meta.ai/muse-launcher.sh -o "$HOME/.local/bin/muse" && chmod +x "$HOME/.local/bin/muse" && MUSE_LAUNCHER_INSTALL=1 "$HOME/.local/bin/muse"` (the launcher keeps its binary beside itself, so it is saved first) | `muse login` |
146
146
 
147
- **Or install from chat with `/login <backend>`** (beta, fleet admins only), without SSH-ing into the host: when the CLI is not installed yet, `/login` runs the command above in a fleet window, finds the CLI where its installer put it, adds that directory to the fleet's PATH, and goes on to sign in. A bare `/login` offers every backend above.
147
+ **Or install from chat with `/login <backend>`** (beta, fleet admins only), without SSH-ing into the host: when the CLI is not installed yet, `/login` runs the command above in a fleet window, finds the CLI where its installer put it, adds that directory to the fleet's PATH, and offers sign-in where supported. OpenCode and Muse are install-only; Antigravity can be installed but has no isolated remote sign-in. A bare `/login` offers the available sign-in and missing-CLI installation actions.
148
148
 
149
149
  **Tested CLI versions (AgEnD 2.1.9).** Codex 0.155 to 0.159. Claude Code 2.1.286 (first-run, trust and resume screens captured from the real CLI). Kiro CLI 2.21 to 2.27 run live; older 2.x versions still start, with a warning to update, and anything newer than 2.27 is launched only after its own `--help` confirms the flags AgEnD pins (the legacy UI on kiro's v1 engine, the terminal UI on v2). A kiro-cli that can no longer run an instance that way is refused, not started on another engine (#1109). `kiro_ui: v3` is not supported yet (#849). Grok CLI 1.0.13 or later. Muse 1.3.0. Antigravity and OpenCode have no pinned version. Other versions usually work, but a new CLI release can change its screens, so AgEnD only claims a version after testing against it.
150
150
 
151
151
  ## Requirements
152
152
 
153
+ - macOS, or Linux with glibc and systemd. musl Linux such as Alpine, and Linux hosts without systemd, are not supported ([details](docs/upgrade-2.2.md#1-before-you-upgrade)).
153
154
  - Node.js ^22.14.0 || ^23.6.0 || >=24
154
155
  - tmux
155
156
  - One of the supported AI coding CLIs (installed and authenticated)
@@ -192,7 +193,7 @@ agend quickstart
192
193
  agend fleet start
193
194
  ```
194
195
 
195
- The quickstart will set up both `fleet.yaml` and `classicBot.yaml`. Run `agend quickstart` again to add users or guilds to existing config.
196
+ The quickstart sets up `fleet.yaml` and offers to configure `classicBot.yaml`. Run `agend quickstart` again to add users or guilds to existing config.
196
197
 
197
198
  ### Usage
198
199
 
@@ -205,7 +206,7 @@ The quickstart will set up both `fleet.yaml` and `classicBot.yaml`. Run `agend q
205
206
  | `/effort`, `/collab` | admin | Discord only: reasoning effort, collab mode |
206
207
  | `/stop`, `/load` | ClassicBot admin | Stop the agent in the current channel; load a saved conversation (`/load` is Discord only) |
207
208
 
208
- "Admin" is a fleet admin or a ClassicBot admin (`admin_users`) on Discord. On Telegram, `/pause`, `/wake`, `/compact` and `/save` take a ClassicBot admin. Fleet-wide commands such as `/usage` and `/status` also work in a ClassicBot channel on Discord. Who may `/start`: on Discord, anyone in an allowed server; on Telegram, a user in `allowed_users` in a private chat, or a ClassicBot admin in an allowed group (`/start@yourbot`).
209
+ "Admin" is a fleet admin or a ClassicBot admin (`admin_users`) on Discord. On Telegram, existing agents’ `/pause`, `/wake`, `/compact` and `/save` accept the owning fleet admin or a ClassicBot admin. Fleet-wide commands such as `/usage` and `/status` also work in a ClassicBot channel on Discord. Who may `/start`: on Discord, a ClassicBot admin or anyone in an explicitly allowed server; an unlisted new room can ask General for approval. On Telegram, a ClassicBot admin or explicitly allowed user can start privately; a group start requires a ClassicBot admin (`/start@yourbot`).
209
210
 
210
211
  On Discord, `/start` turns on collab mode: @-mention the bot to talk to it. See [Use Cases](docs/use-cases.md) for examples.
211
212
 
@@ -221,11 +222,11 @@ defaults:
221
222
  - "9876543210123456789"
222
223
  ```
223
224
 
224
- - **Empty or omitted** `allowed_guilds` → all servers allowed (default)
225
- - **Primary guild** (fleet.yaml `group_id`) → full access (topic mode + ClassicBot)
226
- - **Whitelisted guilds** → ClassicBot channels only
227
- - **A `/start` from a server that is not listed** posts an approval request with buttons to the General topic
228
- - **Hot reload** — changes detected every 30 seconds, no restart needed
225
+ - **Empty or omitted** `allowed_guilds` grants no server access to a non-admin starting a new room.
226
+ - **ClassicBot admins** bypass the lists; already registered rooms keep working. The primary fleet guild does not itself grant ClassicBot admission.
227
+ - **Explicitly allowed guilds** let non-admins start ClassicBot channels.
228
+ - **A non-admin `/start` in a new unlisted room** asks General for approval.
229
+ - **Reload** — changes are detected every 30 seconds. Launch-setting changes restart running agents; supported runtime settings update in place.
229
230
 
230
231
  ### Per-Channel Backend
231
232
 
@@ -246,9 +247,9 @@ Backend fallback: channel → `defaults.backend` → `fleet.yaml` defaults → `
246
247
 
247
248
  ```yaml
248
249
  defaults:
249
- allowed_guilds: ["123456789012345678"] # Discord servers (empty = all)
250
- allowed_groups: ["-1001234567890"] # Telegram groups (empty = all)
251
- allowed_users: ["123456789"] # Telegram users who may /start in a private chat (empty = all)
250
+ allowed_guilds: ["123456789012345678"] # Discord servers (empty = no grant)
251
+ allowed_groups: ["-1001234567890"] # Telegram groups (empty = no grant)
252
+ allowed_users: ["123456789"] # Telegram users who may /start in a private chat (empty = no grant)
252
253
  admin_users: ["123456789"] # ClassicBot admins (empty = nobody)
253
254
  ```
254
255
 
@@ -267,11 +268,11 @@ channels:
267
268
  credential_profile: work # "" = back to the shared login
268
269
  ```
269
270
 
270
- The channel's `backend_options` are merged over the fleet.yaml defaults'. Profiles work for kiro-cli and Codex; an invalid profile name keeps the agent from starting rather than running it on the wrong account, and a change restarts a running agent. Log the profile in first: see [Credential profiles](docs/configuration.md#credential-profiles-multiple-subscriptions-of-one-backend). Every other `classicBot.yaml` key is in the [Configuration reference](docs/configuration.md#classicbotyaml).
271
+ The channel's `backend_options` are merged over the fleet.yaml defaults'. Profiles work for kiro-cli, Codex and Claude Code; an invalid profile name keeps the agent from starting rather than running it on the wrong account, and a change restarts a running agent. Log the profile in first: see [Credential profiles](docs/configuration.md#credential-profiles-multiple-subscriptions-of-one-backend). Every other `classicBot.yaml` key is in the [Configuration reference](docs/configuration.md#classicbotyaml).
271
272
 
272
273
  ## Known Limitations
273
274
 
274
- - macOS (launchd) and Linux (systemd) supported; on Windows, run it inside WSL ([Windows install guide](https://songsid.github.io/AgEnD/install-windows/)). Native Windows is not supported
275
+ - macOS 11+ (launchd) and glibc 2.28+ Linux (systemd) are supported; on Windows, use WSL with systemd. Alpine/musl, non-systemd Linux and native Windows are unsupported. Run AgEnD inside WSL ([Windows install guide](https://songsid.github.io/AgEnD/install-windows/)). Native Windows is not supported
275
276
  - Official Telegram plugin in global `enabledPlugins` causes 409 polling conflicts
276
277
 
277
278
  ## License
package/README.zh-TW.md CHANGED
@@ -17,7 +17,7 @@ AgEnD(**Agent Engineering Daemon**)把你的 Telegram 或 Discord 變成 AI
17
17
  <code>你 → Telegram/Discord → AgEnD → AI Agent 團隊 → 結果回到你的手機</code>
18
18
  </p>
19
19
 
20
- [English](README.md) · [功能文件](docs/features.zh-TW.md) · [CLI 參考](docs/cli.zh-TW.md)
20
+ [English](README.md) · [功能文件](docs/features.zh-TW.md) · [CLI 參考](docs/cli.zh-TW.md) · [2.2 新功能](docs/release-notes/2.2.0.zh-TW.md)
21
21
 
22
22
  ---
23
23
 
@@ -30,7 +30,7 @@ AgEnD(**Agent Engineering Daemon**)把你的 Telegram 或 Discord 變成 AI
30
30
  | 長時間 session 累積過時 context | CLI 自動壓縮 context,當機後用 context 快照恢復 |
31
31
  | 不知道 agent 半夜在幹嘛 | 每日花費報告 + 卡住偵測通知 |
32
32
  | Agent 各做各的,無法協作 | 點對點協作,透過 MCP tools |
33
- | 無人看管時帳單暴增 | 每個 instance 每日花費上限,自動暫停 |
33
+ | 無人看管時帳單暴增 | 每個 instance 每日花費上限,達上限時停止 |
34
34
 
35
35
  ## 功能亮點
36
36
 
@@ -64,19 +64,19 @@ AgEnD(**Agent Engineering Daemon**)把你的 Telegram 或 Discord 變成 AI
64
64
 
65
65
  👥 **團隊與任務看板** — 用具名群組做定向廣播;共用的任務看板讓多個 instance 一起追蹤多步驟的工作。
66
66
 
67
- 📋 **Fleet 範本** — 把常用的 fleet 設定存成範本,一個指令就能部署多個 instance,每個都有自己的 git worktree。
67
+ 📋 **Fleet 範本** — 把常用的 fleet 設定存成範本,一個指令就能部署多個 instance;指定 `branch` 才會為各角色建立獨立的 git worktree。
68
68
 
69
69
  😀 **貼圖與代表表情** — agent 可以在 Discord 和 Telegram 傳貼圖,每個 agent 也能挑一個代表自己的表情,同一個頻道裡有好幾個 bot 時一眼就分得出是誰。
70
70
 
71
71
  📊 **訂閱用量** — `/usage`(儀表板和 `get_usage` 工具也看得到)顯示 Claude、Codex、Kiro、Grok、Muse、Antigravity 訂閱還剩多少額度,每個訂閱各佔一列。
72
72
 
73
- 🔑 **多組登入(credential profile)** — 用 `backend_options.<backend>.credential_profile`,讓 instance 或 ClassicBot 頻道改用同一個 backend 的第二個訂閱(目前支援 kiro-cli 和 Codex)。詳見[英文版設定參考](docs/configuration.md#credential-profiles-multiple-subscriptions-of-one-backend)。
73
+ 🔑 **多組登入(credential profile)** — 用 `backend_options.<backend>.credential_profile`,讓 instance 或 ClassicBot 頻道改用同一個 backend 的第二個訂閱(目前支援 kiro-cli、Codex 和 Claude Code)。詳見[英文版設定參考](docs/configuration.md#credential-profiles-multiple-subscriptions-of-one-backend)。
74
74
 
75
75
  🌐 **用手機完成登入** — `/login`(僅限 fleet 管理員)不必 SSH 就能讓 CLI 登入:Codex、Grok 這類裝置碼登入會把網址和代碼貼在聊天室;需要終端機的登入,則會在主機上開一個有時限、要權杖才能進入的瀏覽器終端機。kiro-cli 和 Claude Code 在你確認後,還能透過 Cloudflare Quick Tunnel 開一個暫時的公開連結;主機上沒有 `cloudflared` 時,AgEnD 會自動下載。要關掉這個功能,設定 `web_terminal.tunnel.allow_public: false`。詳見 [Configuration](docs/configuration.zh-TW.md#人不在機器旁完成-login公開連結)。
76
76
 
77
77
  💤 **自動暫停與喚醒** — 設定 `auto_pause_after`(分鐘,預設關閉)後,閒置的 instance 會被暫停,有新訊息進來時自動喚醒。也可以用 `/pause`、`/wake` 手動操作。
78
78
 
79
- 🧠 **記憶體壓力保護** — 在 Linux 上,fleet 會監看主機記憶體:吃緊時放慢新 CLI 的啟動,到了危險程度就先暫緩啟動,並發出通知。在 macOS 上只會記錄到日誌。
79
+ 🧠 **記憶體壓力保護** — Linux 和 macOS 的主機記憶體吃緊時,fleet 會放慢新 CLI 的啟動,危急時暫緩啟動。日誌、health 和儀表板仍顯示狀態,不再發送聊天廣播;人手動啟動、重啟或喚醒而被暫緩時,會收到原因。
80
80
 
81
81
  ## 使用情境
82
82
 
@@ -144,12 +144,13 @@ graph LR
144
144
  | Grok Build | `curl -fsSL https://x.ai/cli/install.sh \| bash` | `grok`(x.ai OAuth device flow)。CLI 需 1.0.13 以上,舊版會被伺服器拒絕,請執行 `grok update` |
145
145
  | Meta Muse Code | `mkdir -p "$HOME/.local/bin" && curl -fsSL https://api.meta.ai/muse-launcher.sh -o "$HOME/.local/bin/muse" && chmod +x "$HOME/.local/bin/muse" && MUSE_LAUNCHER_INSTALL=1 "$HOME/.local/bin/muse"`(launcher 會把 binary 放在自己旁邊,所以要先存檔) | `muse login` |
146
146
 
147
- **也可以在聊天室用 `/login <backend>` 安裝**(beta、僅限 fleet 管理員),不必 SSH 進主機:CLI 還沒安裝時,`/login` 會在 fleet 視窗執行上表的指令,到安裝程式實際放置的位置找到 CLI,把那個目錄加進 fleet 的 PATH,然後接著登入。單獨輸入 `/login` 會列出上表所有 backend。
147
+ **也可以在聊天室用 `/login <backend>` 安裝**(beta、僅限 fleet 管理員),不必 SSH 進主機:CLI 還沒安裝時,`/login` 會在 fleet 視窗執行上表的指令,到安裝程式實際放置的位置找到 CLI,把那個目錄加進 fleet 的 PATH,並在支援時提供登入。OpenCode 與 Muse 只能安裝;Antigravity 可安裝,但沒有獨立的遠端登入流程。單獨輸入 `/login` 會列出可用的登入及缺少 CLI 的安裝操作。
148
148
 
149
149
  **已測試的 CLI 版本(AgEnD 2.1.9)**:Codex 0.155 到 0.159;Claude Code 2.1.286(首次啟動、trust、resume 畫面都從真實 CLI 擷取);Kiro CLI 2.21 到 2.27 實際跑過;更舊的 2.x 仍可啟動,但會提醒更新;比 2.27 更新的版本,要先用它自己的 `--help` 確認 AgEnD 鎖定的參數(legacy UI 搭 kiro 的 v1 engine、terminal UI 搭 v2)還在才會啟動。若 kiro-cli 已無法這樣執行某個 instance,AgEnD 會拒絕啟動,不會換成別的 engine 執行(#1109)。`kiro_ui: v3` 尚未支援(#849);Grok CLI 1.0.13 以上;Muse 1.3.0。Antigravity 與 OpenCode 沒有釘定版本。其他版本通常也能用,但 CLI 新版可能改動畫面,所以 AgEnD 只在實測過後才宣稱支援某個版本。
150
150
 
151
151
  ## 系統需求
152
152
 
153
+ - macOS,或有 glibc 與 systemd 的 Linux。不支援 musl Linux(例如 Alpine)與沒有 systemd 的 Linux 主機([說明](docs/upgrade-2.2.zh-TW.md#1-升級前))。
153
154
  - Node.js ^22.14.0 || ^23.6.0 || >=24
154
155
  - tmux
155
156
  - 以下任一 AI coding CLI(需安裝並完成認證)
@@ -192,7 +193,7 @@ agend quickstart
192
193
  agend fleet start
193
194
  ```
194
195
 
195
- quickstart 會同時設定好 `fleet.yaml` 和 `classicBot.yaml`。之後要新增使用者或伺服器,再跑一次 `agend quickstart` 就好。
196
+ quickstart 會設定 `fleet.yaml`,並詢問是否設定 `classicBot.yaml`。之後要新增使用者或伺服器,再跑一次 `agend quickstart` 就好。
196
197
 
197
198
  ### 用法
198
199
 
@@ -205,7 +206,7 @@ quickstart 會同時設定好 `fleet.yaml` 和 `classicBot.yaml`。之後要新
205
206
  | `/effort`、`/collab` | 管理員 | 僅限 Discord:推理強度、collab 模式 |
206
207
  | `/stop`、`/load` | ClassicBot 管理員 | 停止目前頻道的 agent;載入已儲存的對話(`/load` 僅限 Discord) |
207
208
 
208
- 在 Discord 上,「管理員」指 fleet 管理員或 ClassicBot 管理員(`admin_users`)。在 Telegram 上,`/pause`、`/wake`、`/compact`、`/save` 只限 ClassicBot 管理員。`/usage`、`/status` 這類全 fleet 的指令,在 Discord 的 ClassicBot 頻道裡也能用。誰能 `/start`:Discord 上是允許的伺服器裡的任何人;Telegram 上是私訊時列在 `allowed_users` 的使用者,或在允許的群組裡(`/start@你的bot`)的 ClassicBot 管理員。
209
+ 在 Discord 上,「管理員」指 fleet 管理員或 ClassicBot 管理員(`admin_users`)。在 Telegram 上,既有 agent 的 `/pause`、`/wake`、`/compact`、`/save` 接受所屬 fleet 管理員或 ClassicBot 管理員。`/usage`、`/status` 這類全 fleet 的指令,在 Discord 的 ClassicBot 頻道裡也能用。誰能 `/start`:Discord 上是 ClassicBot 管理員,或明確允許的伺服器裡的使用者;未列入的新聊天室可向 General 請求核准。Telegram 私訊可由 ClassicBot 管理員或明確列入 `allowed_users` 的使用者啟動;群組必須由 ClassicBot 管理員執行 `/start@你的bot`。
209
210
 
210
211
  在 Discord 上,`/start` 會開啟 collab 模式:@ 這個 bot 就能跟它對話。實際用法請見[使用情境](docs/use-cases.zh-TW.md)。
211
212
 
@@ -221,11 +222,11 @@ defaults:
221
222
  - "9876543210123456789"
222
223
  ```
223
224
 
224
- - `allowed_guilds` **留空或不寫** → 所有伺服器都允許(預設)
225
- - **主要伺服器**(fleet.yaml 的 `group_id`)→ 完整權限(topic 模式 + ClassicBot)
226
- - **白名單內的伺服器** → 只能用 ClassicBot 頻道
227
- - **不在名單上的伺服器打 `/start`** → 會在 General topic 貼出一則附按鈕的核准請求
228
- - **熱重載** — 每 30 秒偵測一次變更,不用重啟
225
+ - `allowed_guilds` **留空或不寫**,不會讓非管理員取得在新聊天室啟動的權限。
226
+ - **ClassicBot 管理員**略過名單;已登錄的聊天室繼續運作。主要 fleet 伺服器本身不會授予 ClassicBot 啟動權限。
227
+ - **明確允許的伺服器**可由非管理員啟動 ClassicBot 頻道。
228
+ - **非管理員在未列入的新聊天室執行 `/start`**,會向 General 請求核准。
229
+ - **重新載入** — 每 30 秒偵測變更;啟動設定改變會重啟執行中的 agent,支援的執行期設定則直接套用。
229
230
 
230
231
  ### 每個頻道指定 backend
231
232
 
@@ -246,9 +247,9 @@ Backend 的決定順序:頻道 → `defaults.backend` → `fleet.yaml` 的 def
246
247
 
247
248
  ```yaml
248
249
  defaults:
249
- allowed_guilds: ["123456789012345678"] # Discord 伺服器(留空 = 全部允許)
250
- allowed_groups: ["-1001234567890"] # Telegram 群組(留空 = 全部允許)
251
- allowed_users: ["123456789"] # 可以在私訊裡 /start 的 Telegram 使用者(留空 = 全部允許)
250
+ allowed_guilds: ["123456789012345678"] # Discord 伺服器(留空 = 不授權)
251
+ allowed_groups: ["-1001234567890"] # Telegram 群組(留空 = 不授權)
252
+ allowed_users: ["123456789"] # 可以在私訊裡 /start 的 Telegram 使用者(留空 = 不授權)
252
253
  admin_users: ["123456789"] # ClassicBot 管理員(留空 = 沒有人)
253
254
  ```
254
255
 
@@ -267,11 +268,11 @@ channels:
267
268
  credential_profile: work # "" = 回到共用的登入
268
269
  ```
269
270
 
270
- 頻道的 `backend_options` 會覆蓋在 fleet.yaml defaults 的設定之上。目前 kiro-cli 和 Codex 支援 profile;profile 名稱不合法時,agent 會直接不啟動,而不是用錯的帳號跑;改了設定,執行中的 agent 會重啟。記得先讓這個 profile 登入,做法見[英文版設定參考](docs/configuration.md#credential-profiles-multiple-subscriptions-of-one-backend)。`classicBot.yaml` 的其他欄位請見 [Configuration](docs/configuration.zh-TW.md#classicbotyaml)。
271
+ 頻道的 `backend_options` 會覆蓋在 fleet.yaml defaults 的設定之上。目前 kiro-cli、Codex 和 Claude Code 支援 profile;profile 名稱不合法時,agent 會直接不啟動,而不是用錯的帳號跑;改了設定,執行中的 agent 會重啟。記得先讓這個 profile 登入,做法見[英文版設定參考](docs/configuration.md#credential-profiles-multiple-subscriptions-of-one-backend)。`classicBot.yaml` 的其他欄位請見 [Configuration](docs/configuration.zh-TW.md#classicbotyaml)。
271
272
 
272
273
  ## 已知限制
273
274
 
274
- - 支援 macOS(launchd)和 Linux(systemd);Windows 請在 WSL 裡執行([Windows 安裝指南](https://songsid.github.io/AgEnD/zh-tw/install-windows/)),不支援原生 Windows
275
+ - 支援 macOS 11+(launchd)和 glibc 2.28+ Linux(systemd);Windows 請在啟用 systemd 的 WSL 裡執行;不支援 Alpine/musl 或非 systemd Linux([Windows 安裝指南](https://songsid.github.io/AgEnD/zh-tw/install-windows/)),不支援原生 Windows
275
276
  - 全域 `enabledPlugins` 裡有官方 Telegram plugin 會造成 409 polling 衝突
276
277
 
277
278
  ## 授權
@@ -25,7 +25,7 @@ export const AGENT_WHATS_NEW = [
25
25
  { id: "2.2-web-chat", since: "2.2.0-beta.1",
26
26
  text: "Web chat: people can write to you from the dashboard. Their messages arrive as `[user:… via web, …]` — answer with `reply` as usual; their files show as `[📷 Image: PATH]` / `[📎 File: NAME → PATH]`. Attach a `.html` file and the web chat previews it." },
27
27
  { id: "2.2-delivery-status", since: "2.2.0-beta.1",
28
- text: "`delivery_status` takes a `message_id` from an inbound header (\"Delivery not found\" = never delivered) and shows `consumed_at` / `consumed_via`. Never resend on `uncertain`." },
28
+ text: "`delivery_status` takes a `message_id` from an inbound header and shows `consumed_at` / `consumed_via`. \"Delivery not found\" may mean hidden by ACL, expired retention, or never delivered. Do not act; ask the sender to explicitly forward a verifiable reference. Never resend on `uncertain`." },
29
29
  { id: "2.2-task-list", since: "2.2.0-beta.1",
30
30
  text: "`task` `list` returns live tasks only by default: `filter_status` (one or a list) for done or cancelled, `verbose: true` for full records." },
31
31
  { id: "2.2-create-refusals", since: "2.2.0-beta.1",
@@ -36,6 +36,8 @@ export const AGENT_WHATS_NEW = [
36
36
  text: "`reply` takes `poll: {seconds, multi?, reveal?: \"close\"|\"live\", show_voters?}` with 2–10 `buttons` as the options: a vote by everyone who may talk to you there, closing `seconds` (10–86400) after it is posted; the reply's result has `poll_id`. At the close the results come to you as one `[poll results]` message in the poll's chat — post the answer or scores yourself. `close_poll({poll_id})` ends one of your polls early." },
37
37
  { id: "2.2-web-identity", since: "2.2.0-beta.11",
38
38
  text: "A web-chat person signed in with a `/web` code arrives as `[user:<name> via web, id:<their Discord/Telegram user id>]` — the same id as on that platform, so you can recognise them; they may change the name. Recognition only: `via web` is never a verified message from that account and grants no permission." },
39
+ { id: "2.2-delivery-status-evidence", since: "2.2.0",
40
+ text: "Correction: `Delivery not found` can mean hidden by ACL, expired retention, or never delivered; it is not proof of non-delivery. Do not act; ask the sender to explicitly forward a verifiable reference. Never resend on `uncertain`." },
39
41
  ];
40
42
  /**
41
43
  * The released AgEnD version this code belongs to, or null. A source checkout (a `.git` beside its package.json) has a
@@ -1 +1 @@
1
- {"version":3,"file":"agent-whats-new.js","sourceRoot":"","sources":["../src/agent-whats-new.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"agent-whats-new.js","sourceRoot":"","sources":["../src/agent-whats-new.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,26 @@
1
1
  import { type CliBackend, type CliBackendConfig, type ErrorPattern, type RuntimeDialog, type StartupDialog } from "./types.js";
2
+ /**
3
+ * Board 0340ec89: the instructions file agy reads, relative to the workspace. agy (verified 1.3.6) loads
4
+ * `.agents/AGENTS.md`, the root `AGENTS.md` and `GEMINI.md` — not the lowercase `.agents/agents.md` AgEnD wrote before,
5
+ * which on a case-sensitive filesystem (Linux) it never read (tests/fixtures/agy-1.3.6-audit). The root `AGENTS.md` is
6
+ * shared with codex, grok and muse instances in the same workspace, so agy keeps its own folder.
7
+ */
8
+ export declare const AGY_AGENTS_FILE: string;
9
+ /** The legacy lowercase file, when it is a file of its own (not the new name on a case-insensitive filesystem). */
10
+ export declare function agyLegacyAgentsFile(workDir: string): string | null;
11
+ /**
12
+ * Before anything writes agy's instructions: a legacy `.agents/agents.md` with no `.agents/AGENTS.md` beside it becomes
13
+ * that file (moved whole, so a person's own lines in it are kept — and now read). When anything already sits at the new
14
+ * name the legacy file is left as it is; each writer then moves only its own AgEnD block out of it. On a case-insensitive
15
+ * filesystem the two names are one file: nothing to do.
16
+ *
17
+ * The move never replaces what is at the new name (#1914 review): link(2) refuses any existing entry there — a file, a
18
+ * directory, a symlink even a dangling one — and one that appears meanwhile; only after it succeeds does the legacy name
19
+ * go. Where hard links are not possible the legacy file stays (writers move their blocks out, as when both exist).
20
+ */
21
+ export declare function migrateAgyAgentsFile(workDir: string): void;
22
+ /** A symlink whose target does not exist: writing through it would create a file wherever it points. */
23
+ export declare function danglingSymlink(path: string): boolean;
2
24
  /** Parse `agy models`, which may emit TSV slug/display pairs or legacy single-column names. */
3
25
  /**
4
26
  * agy's logged-out startup screen, as the CLI paints it (captured offline from 1.0.10 and 1.3.1):
@@ -47,10 +69,13 @@ export declare class AntigravityBackend implements CliBackend {
47
69
  readonly binaryName = "agy";
48
70
  private binaryPath;
49
71
  private readonly mcpWrapperPath;
72
+ /** Recorded by writeConfig, handed to the operator after the launch is built (consumeLaunchWarning). */
73
+ private pendingLaunchWarning;
50
74
  constructor(instanceDir: string, userHome?: string, agendHome?: string);
51
75
  /** #1811: what the last launch left out and why — the Log tab and daemon.log, never a channel. */
52
76
  private quietLaunchNotes;
53
77
  consumeQuietLaunchNotes(): string[];
78
+ consumeLaunchWarning(): string | null;
54
79
  buildCommand(config: CliBackendConfig): string;
55
80
  /** agy >= 1.1.0 accepts hidden working directories (upstream issue #20). */
56
81
  resolveWorkingDirectory(workingDirectory: string, instanceName?: string): string;
@@ -4,11 +4,69 @@ import { dirname, join } from "node:path";
4
4
  import { ensureInstanceDir } from "../private-dir.js";
5
5
  import { homedir } from "node:os";
6
6
  import { execFileSync } from "node:child_process";
7
- import { chmodSync, closeSync, existsSync, mkdirSync, openSync, readFileSync, renameSync, rmSync, statSync, unlinkSync, writeFileSync, } from "node:fs";
7
+ import { chmodSync, closeSync, existsSync, linkSync, lstatSync, mkdirSync, openSync, readFileSync, renameSync, rmSync, statSync, unlinkSync, writeFileSync, } from "node:fs";
8
8
  import { cliBinaryIdentity, resolveBinary, shellQuote, warnIfModelMismatch, } from "./types.js";
9
9
  import { appendWithMarker, removeMarker } from "./marker-utils.js";
10
10
  import { getAgendHome } from "../paths.js";
11
11
  import { PIE_CLASS } from "../tui-glyphs.js";
12
+ import { t } from "../locale.js";
13
+ /**
14
+ * Board 0340ec89: the instructions file agy reads, relative to the workspace. agy (verified 1.3.6) loads
15
+ * `.agents/AGENTS.md`, the root `AGENTS.md` and `GEMINI.md` — not the lowercase `.agents/agents.md` AgEnD wrote before,
16
+ * which on a case-sensitive filesystem (Linux) it never read (tests/fixtures/agy-1.3.6-audit). The root `AGENTS.md` is
17
+ * shared with codex, grok and muse instances in the same workspace, so agy keeps its own folder.
18
+ */
19
+ export const AGY_AGENTS_FILE = join(".agents", "AGENTS.md");
20
+ const AGY_LEGACY_AGENTS_FILE = join(".agents", "agents.md");
21
+ /** Whether two paths are one file (same device and inode): on a case-insensitive filesystem the two names are. */
22
+ function sameFile(a, b) {
23
+ try {
24
+ const x = statSync(a), y = statSync(b);
25
+ return x.ino === y.ino && x.dev === y.dev;
26
+ }
27
+ catch {
28
+ return false;
29
+ }
30
+ }
31
+ /** The legacy lowercase file, when it is a file of its own (not the new name on a case-insensitive filesystem). */
32
+ export function agyLegacyAgentsFile(workDir) {
33
+ const lower = join(workDir, AGY_LEGACY_AGENTS_FILE);
34
+ return existsSync(lower) && !sameFile(lower, join(workDir, AGY_AGENTS_FILE)) ? lower : null;
35
+ }
36
+ /**
37
+ * Before anything writes agy's instructions: a legacy `.agents/agents.md` with no `.agents/AGENTS.md` beside it becomes
38
+ * that file (moved whole, so a person's own lines in it are kept — and now read). When anything already sits at the new
39
+ * name the legacy file is left as it is; each writer then moves only its own AgEnD block out of it. On a case-insensitive
40
+ * filesystem the two names are one file: nothing to do.
41
+ *
42
+ * The move never replaces what is at the new name (#1914 review): link(2) refuses any existing entry there — a file, a
43
+ * directory, a symlink even a dangling one — and one that appears meanwhile; only after it succeeds does the legacy name
44
+ * go. Where hard links are not possible the legacy file stays (writers move their blocks out, as when both exist).
45
+ */
46
+ export function migrateAgyAgentsFile(workDir) {
47
+ const lower = agyLegacyAgentsFile(workDir);
48
+ if (!lower)
49
+ return;
50
+ try {
51
+ linkSync(lower, join(workDir, AGY_AGENTS_FILE));
52
+ }
53
+ catch {
54
+ return;
55
+ }
56
+ try {
57
+ unlinkSync(lower);
58
+ }
59
+ catch { /* another instance removed it first */ }
60
+ }
61
+ /** A symlink whose target does not exist: writing through it would create a file wherever it points. */
62
+ export function danglingSymlink(path) {
63
+ try {
64
+ return lstatSync(path).isSymbolicLink() && !existsSync(path);
65
+ }
66
+ catch {
67
+ return false;
68
+ }
69
+ }
12
70
  /** Parse `agy models`, which may emit TSV slug/display pairs or legacy single-column names. */
13
71
  /**
14
72
  * agy's logged-out startup screen, as the CLI paints it (captured offline from 1.0.10 and 1.3.1):
@@ -134,6 +192,8 @@ export class AntigravityBackend {
134
192
  binaryName = "agy";
135
193
  binaryPath;
136
194
  mcpWrapperPath;
195
+ /** Recorded by writeConfig, handed to the operator after the launch is built (consumeLaunchWarning). */
196
+ pendingLaunchWarning = null;
137
197
  constructor(instanceDir, userHome = homedir(), agendHome = getAgendHome()) {
138
198
  this.instanceDir = instanceDir;
139
199
  this.userHome = userHome;
@@ -144,6 +204,11 @@ export class AntigravityBackend {
144
204
  /** #1811: what the last launch left out and why — the Log tab and daemon.log, never a channel. */
145
205
  quietLaunchNotes = [];
146
206
  consumeQuietLaunchNotes() { const notes = this.quietLaunchNotes; this.quietLaunchNotes = []; return notes; }
207
+ consumeLaunchWarning() {
208
+ const warning = this.pendingLaunchWarning;
209
+ this.pendingLaunchWarning = null;
210
+ return warning;
211
+ }
147
212
  buildCommand(config) {
148
213
  // agy 1.1.17+ has no per-workspace MCP config and no --mcp-config flag. Its
149
214
  // global MCP child does inherit the CLI process environment, so MCP-mode
@@ -177,13 +242,29 @@ export class AntigravityBackend {
177
242
  return workingDirectory;
178
243
  }
179
244
  writeConfig(config) {
180
- // Write .agents/agents.md in the persistent configured workspace.
245
+ // Write .agents/AGENTS.md in the persistent configured workspace (board 0340ec89: the name agy reads).
181
246
  const cwd = this.resolveWorkingDirectory(config.workingDirectory, config.instanceName);
247
+ this.pendingLaunchWarning = null;
182
248
  const agentsDir = join(cwd, ".agents");
183
249
  mkdirSync(agentsDir, { recursive: true });
250
+ migrateAgyAgentsFile(cwd);
251
+ // This instance's block in a legacy file that stays (a person's own file beside the new one) moves out of it.
252
+ const legacy = agyLegacyAgentsFile(cwd);
253
+ if (legacy) {
254
+ try {
255
+ if (removeMarker(legacy, config.instanceName))
256
+ rmSync(legacy, { force: true });
257
+ }
258
+ catch { /* best effort */ }
259
+ }
184
260
  if (config.instructions) {
185
- const agentsPath = join(agentsDir, "agents.md");
186
- appendWithMarker(agentsPath, config.instanceName, config.instructions);
261
+ const target = join(cwd, AGY_AGENTS_FILE);
262
+ // A person's symlink there is theirs: a live one is written through (its file is what agy reads), a dangling one is
263
+ // kept and not followed — nothing is created where it points — and the launch says so.
264
+ if (danglingSymlink(target))
265
+ this.pendingLaunchWarning = t("agy.instructions_link_dangling", target);
266
+ else
267
+ appendWithMarker(target, config.instanceName, config.instructions);
187
268
  }
188
269
  if (config.agentMode === "mcp" && Object.keys(config.mcpServers).length > 0) {
189
270
  this.writeMcpEnvWrapper(config);
@@ -361,12 +442,16 @@ exec ${shellQuote(process.execPath)} -e ${shellQuote(js)}
361
442
  catch { /* best effort — never block launch on statusline config */ }
362
443
  }
363
444
  cleanup(config) {
364
- const agentsPath = join(config.workingDirectory, ".agents", "agents.md");
365
- try {
366
- if (removeMarker(agentsPath, config.instanceName))
367
- rmSync(agentsPath, { force: true });
445
+ // This instance's block, from the file agy reads and from a legacy one that is still a file of its own.
446
+ for (const agentsPath of [join(config.workingDirectory, AGY_AGENTS_FILE), agyLegacyAgentsFile(config.workingDirectory)]) {
447
+ if (!agentsPath)
448
+ continue;
449
+ try {
450
+ if (removeMarker(agentsPath, config.instanceName))
451
+ rmSync(agentsPath, { force: true });
452
+ }
453
+ catch { /* best effort */ }
368
454
  }
369
- catch { /* best effort */ }
370
455
  try {
371
456
  unlinkSync(this.mcpWrapperPath);
372
457
  }
@@ -1 +1 @@
1
- {"version":3,"file":"antigravity.js","sourceRoot":"","sources":["../../src/backend/antigravity.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"antigravity.js","sourceRoot":"","sources":["../../src/backend/antigravity.ts"],"names":[],"mappings":"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"}
@@ -256,6 +256,8 @@ export declare class KiroBackend implements CliBackend {
256
256
  * flags were already checked against the binary's own --help.
257
257
  */
258
258
  private noteVersionGate;
259
+ /** Board 907c7899: classic and TUI V2 say on the pane how a /compact ended (verified 2.30.0); V3 is not read. */
260
+ compactPaneUi(): "legacy" | "tui" | null;
259
261
  consumeLaunchWarning(): string | null;
260
262
  private shouldWarnUnsupportedEffort;
261
263
  writeConfig(config: CliBackendConfig): void;
@@ -1098,6 +1098,10 @@ export class KiroBackend {
1098
1098
  // Appended: the launch's isolation warnings (#906, recorded by writeConfig) must not be overwritten by this one.
1099
1099
  this.addLaunchWarning(warning);
1100
1100
  }
1101
+ /** Board 907c7899: classic and TUI V2 say on the pane how a /compact ended (verified 2.30.0); V3 is not read. */
1102
+ compactPaneUi() {
1103
+ return this.activeUi === "v3" ? null : this.activeUi;
1104
+ }
1101
1105
  consumeLaunchWarning() {
1102
1106
  const warning = this.launchWarning;
1103
1107
  this.launchWarning = null;