agent-embassy 1.9.5 → 2.0.1

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 (69) hide show
  1. package/CHANGELOG.md +31 -0
  2. package/CONTRIBUTING.md +1 -1
  3. package/README.md +28 -21
  4. package/README.zh-CN.md +26 -20
  5. package/dist/src/gateway/claude-helper-protocol.d.ts +1 -1
  6. package/dist/src/gateway/claude-helper-protocol.js +3 -2
  7. package/dist/src/gateway/claude-helper-protocol.js.map +1 -1
  8. package/dist/src/gateway/claude-helper-supervisor.d.ts +1 -1
  9. package/dist/src/gateway/claude-helper-supervisor.js +1 -1
  10. package/dist/src/gateway/claude-helper-supervisor.js.map +1 -1
  11. package/dist/src/gateway/claude-helper.js +12 -4
  12. package/dist/src/gateway/claude-helper.js.map +1 -1
  13. package/dist/src/gateway/cli-copy.d.ts +1 -1
  14. package/dist/src/gateway/cli-copy.en.d.ts +9 -4
  15. package/dist/src/gateway/cli-copy.en.js +10 -6
  16. package/dist/src/gateway/cli-copy.en.js.map +1 -1
  17. package/dist/src/gateway/cli-copy.js +5 -0
  18. package/dist/src/gateway/cli-copy.js.map +1 -1
  19. package/dist/src/gateway/cli-copy.zh-CN.d.ts +9 -4
  20. package/dist/src/gateway/cli-copy.zh-CN.js +10 -6
  21. package/dist/src/gateway/cli-copy.zh-CN.js.map +1 -1
  22. package/dist/src/gateway/cli.d.ts +3 -9
  23. package/dist/src/gateway/cli.js +56 -63
  24. package/dist/src/gateway/cli.js.map +1 -1
  25. package/dist/src/gateway/codex-local-transport.d.ts +1 -1
  26. package/dist/src/gateway/codex-local-transport.js +2 -2
  27. package/dist/src/gateway/codex-local-transport.js.map +1 -1
  28. package/dist/src/gateway/config.d.ts +4 -3
  29. package/dist/src/gateway/config.js +5 -11
  30. package/dist/src/gateway/config.js.map +1 -1
  31. package/dist/src/gateway/control.d.ts +20 -41
  32. package/dist/src/gateway/control.js +54 -96
  33. package/dist/src/gateway/control.js.map +1 -1
  34. package/dist/src/gateway/dashboard-copy.en.js +2 -2
  35. package/dist/src/gateway/dashboard-copy.en.js.map +1 -1
  36. package/dist/src/gateway/dashboard-copy.zh-CN.js +2 -2
  37. package/dist/src/gateway/dashboard-copy.zh-CN.js.map +1 -1
  38. package/dist/src/gateway/federation-nodes.d.ts +1 -2
  39. package/dist/src/gateway/federation-nodes.js +29 -14
  40. package/dist/src/gateway/federation-nodes.js.map +1 -1
  41. package/dist/src/gateway/live-dashboard-app/app.js +2 -2
  42. package/dist/src/gateway/live-dashboard-command.d.ts +3 -1
  43. package/dist/src/gateway/live-dashboard-command.js +1 -1
  44. package/dist/src/gateway/live-dashboard-command.js.map +1 -1
  45. package/dist/src/gateway/providers.d.ts +3 -3
  46. package/dist/src/gateway/providers.js +7 -10
  47. package/dist/src/gateway/providers.js.map +1 -1
  48. package/dist/src/gateway/server.d.ts +1 -2
  49. package/dist/src/gateway/server.js +6 -13
  50. package/dist/src/gateway/server.js.map +1 -1
  51. package/dist/src/gateway/service.d.ts +3 -1
  52. package/dist/src/gateway/service.js +89 -35
  53. package/dist/src/gateway/service.js.map +1 -1
  54. package/dist/src/gateway/store.d.ts +1 -1
  55. package/dist/src/gateway/store.js +27 -26
  56. package/dist/src/gateway/store.js.map +1 -1
  57. package/dist/src/gateway/types.d.ts +4 -4
  58. package/docs/CONFIGURATION.md +27 -21
  59. package/docs/CONFIGURATION.zh-CN.md +19 -15
  60. package/docs/DASHBOARD.md +1 -1
  61. package/docs/DASHBOARD.zh-CN.md +1 -1
  62. package/docs/DELIVERY.md +2 -2
  63. package/docs/DELIVERY.zh-CN.md +2 -2
  64. package/docs/GATEWAY-ARCHITECTURE.md +48 -58
  65. package/package.json +1 -1
  66. package/skills/embassy-peer/SKILL.md +20 -15
  67. package/dist/src/gateway/state-v2-to-v3.d.ts +0 -24
  68. package/dist/src/gateway/state-v2-to-v3.js +0 -1034
  69. package/dist/src/gateway/state-v2-to-v3.js.map +0 -1
package/CHANGELOG.md CHANGED
@@ -4,6 +4,37 @@ All notable changes to this project are documented in this file.
4
4
 
5
5
  The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/).
6
6
 
7
+ ## [2.0.1] - 2026-09-01
8
+
9
+ Identical product to the unpublished v2.0.0 (its pipeline was failed by a test-hermeticity defect — dashboard-command tests leaned on the developer's real state inventory, red on CI since the mandatory `nodes.json` cut; no product defect). The dashboard-command tests are now hermetic.
10
+
11
+ ## [2.0.0] - 2026-09-01
12
+
13
+ ### Changed
14
+
15
+ - The private control protocol is version 2; version-1 control frames are refused rather than interpreted through a compatibility arm.
16
+ - One provider-neutral `embassy send --from <alias> --to <alias>` replaces both provider-named send verbs; the broker derives direction from the resolved route providers.
17
+
18
+ ### Added
19
+
20
+ - Background Claude Code sessions are first-class peers: discovery, selection, pairing, and message exchange work for `bg` sessions alongside interactive ones.
21
+
22
+ ### Fixed
23
+
24
+ - Two live Claude sessions sharing a display name no longer poison the public snapshot (previously `embassy status` failed entirely until restart): the colliding alias is fenced from listing, selection, and pairing while both sessions stay addressable by exact session UUID, and diagnostics count the collision.
25
+ - Connect-stage failures classify honestly: a permission-denied state directory or socket reports `CONTROL_CONNECT_DENIED` with the real remedy (grant this process access to the state directory; never start a second broker) in both locales; missing socket, nothing listening, and control-protocol version mismatch are distinct codes with distinct remedies. The real macOS-sandbox errno (EPERM) is regression-pinned.
26
+
27
+ ### Removed
28
+
29
+ - `pair` and `unpair` accept only explicit `--from` / `--to` endpoints; the legacy `--claude` / `--codex` arm is removed.
30
+ - State schema 4 no longer tolerates legacy 24-character delivery tokens or missing `busyPolicy`; older private state must use the reset-only upgrade path.
31
+ - `send-to-claude` and `send-to-codex` are removed with no compatibility aliases.
32
+
33
+ ### Upgrade note
34
+
35
+ - Before starting version 2.0, complete the [private state reset](docs/CONFIGURATION.md#private-state-reset) after settling all work under 1.9.x, and create the mandatory private `nodes.json` described in [Configuration](docs/CONFIGURATION.md) (use `nodes:[]` for a local-only broker).
36
+ - Authority-model correction: the prior published claim that generic `pair` and `unpair` attested an inherited endpoint identity was never enforced by the surviving generic arm. Same-UID access to the private control socket authorizes pair, unpair, select, and unselect controls. These operations do not attest inherited provider identity. Delivery in paired mode still requires the exact consent edge, and agents remain instructed to mutate only user-chosen edges.
37
+
7
38
  ## [1.9.5] - 2026-08-17
8
39
 
9
40
  ### Fixed
package/CONTRIBUTING.md CHANGED
@@ -124,7 +124,7 @@ native. Do not route around a hold or refusal or fabricate a successful receipt.
124
124
  terminal failure, ambiguity, expiry, and restart abandonment.
125
125
  - Never retry an ambiguous provider write. Requeue only a confirmed clean
126
126
  deferral that has not crossed an ambiguous mutation boundary.
127
- - The private mode-0600 v3 ledger retains bounded queued and recent bodies,
127
+ - The private mode-0600 v4 ledger retains bounded queued and recent bodies,
128
128
  opaque delivery tokens, and status. Queued or reserved work may resume once
129
129
  within its deadline and attempt budget against the same exact route and edge.
130
130
  Armed work settles `ambiguous`; accepted work settles `unconfirmed`; neither
package/README.md CHANGED
@@ -41,16 +41,13 @@ Embassy is built for one person, one macOS account, and agents you already trust
41
41
 
42
42
  ## Quickstart
43
43
 
44
- **Requirements:** macOS and Node.js 20+. Claude routes require peer protocol 1; Codex routes require Desktop configured to use its managed standalone App Server. DeepSeek is optional and launches from `DSH_HOME` (default `~/.dsh`) through the checkout's `demo:acp` script; Grok Build is optional and launches the release-pinned ACP package. A shell peer needs only the local CLI and its one-time token. The release-owned [support matrix](support/provider-support-matrix.json) records the exact tested provider artifacts and capabilities; it is release evidence, never a runtime allowlist:
44
+ **Requirements:** macOS and Node.js 20+. Claude routes require peer protocol 1; Codex routes use Codex CLI tasks with the managed standalone App Server. DeepSeek is optional and launches from `DSH_HOME` (default `~/.dsh`) through the checkout's `demo:acp` script; Grok Build is optional and launches the release-pinned ACP package. A shell peer needs only the local CLI and its one-time token. The release-owned [support matrix](support/provider-support-matrix.json) records the exact tested provider artifacts and capabilities; it is release evidence, never a runtime allowlist:
45
45
 
46
46
  ```bash
47
- ~/.codex/packages/standalone/current/codex app-server daemon start
48
- /usr/bin/open --env CODEX_APP_SERVER_USE_LOCAL_DAEMON=1 -a ChatGPT
47
+ codex app-server daemon start
49
48
  ```
50
49
 
51
- The first command starts the managed daemon if it is not already running (`restart` and `stop` also exist); the second launches the ChatGPT desktop app pointed at it. `CODEX_APP_SERVER_USE_LOCAL_DAEMON` is not documented by OpenAI; it is observed to work with this Desktop build and may change. Run the daemon command from a normal terminal, never from inside an agent session: Codex tasks inherit the daemon's environment, so a daemon started inside a Claude Code session leaks that session's identity into every task and registration fails closed with `CALLER_IDENTITY_CONFLICT` — fix it from a normal terminal with `codex app-server daemon restart`. The Claude session you select as a destination needs [`crossSessionInbound`](docs/CONFIGURATION.md) enabled — that is Claude Code's own setting, configured in Claude Code, not in Embassy.
52
-
53
- Desktop attaches to the managed standalone App Server when it launches. If the daemon restarts while Desktop is already open, waiting alone does not reconnect that app process: fully quit Desktop, rerun `/usr/bin/open --env CODEX_APP_SERVER_USE_LOCAL_DAEMON=1 -a ChatGPT`, and reopen the exact task.
50
+ Run the managed daemon from a normal terminal and use Codex CLI as the supported task host. Desktop's `CODEX_APP_SERVER_USE_LOCAL_DAEMON` attachment is broken in Desktop 26.820 and later ([openai/codex#41112](https://github.com/openai/codex/issues/41112)), so it is not a supported setup. If `CALLER_IDENTITY_CONFLICT` reports both identities, strip only the unwanted inherited identity at the call site: use `env -u CLAUDE_CODE_MESSAGING_SOCKET embassy …` for a Codex-side call, or `env -u CODEX_THREAD_ID embassy …` for a Claude-side call. The Claude destination needs [`crossSessionInbound`](docs/CONFIGURATION.md) enabled.
54
51
 
55
52
  Runtime delivery is best effort. Version and build strings are unverified metadata and never grant or withhold routing authority. Consent plus exact logical route/session identity authorizes an attempt; the current per-operation transport and correlated evidence determine its honest result. Unsupported or changed interfaces therefore fail with provider-local safe codes instead of an online compatibility tier. Embassy still validates the trust boundary: exact owned or executed artifacts and state paths, generations of artifacts it actually uses, strict consumed protocol fields, Claude peer protocol 1, bounded queues, and no replay after an ambiguous write.
56
53
 
@@ -58,7 +55,7 @@ Runtime delivery is best effort. Version and build strings are unverified metada
58
55
 
59
56
  ### 1. Start Embassy
60
57
 
61
- Run the foreground broker under the same OS account as Claude Code and Codex:
58
+ After creating the mandatory private `nodes.json` described in [Configuration](docs/CONFIGURATION.md), run the foreground broker under the same OS account as Claude Code and Codex:
62
59
 
63
60
  ```bash
64
61
  embassy serve
@@ -92,6 +89,8 @@ Registration records the exact inherited task identity and performs no App Serve
92
89
 
93
90
  A local shell harness can join as a `peer-*` route without a plugin, stable shell, daemon, PID binding, token file, or Keychain entry:
94
91
 
92
+ When native Codex inbound dispatch is unavailable, this shell-peer mailbox is the supported fallback channel: register once, keep its token only in agent memory, and receive with bounded `await` calls.
93
+
95
94
  ```bash
96
95
  embassy register-peer --alias peer-reviewer@this-mac
97
96
  ```
@@ -114,18 +113,24 @@ Pick one name from `availablePeers`:
114
113
  embassy select-claude --alias advisor@this-mac
115
114
  ```
116
115
 
117
- Run this from the operator terminal, or from inside the Codex task — either works, because `select-claude` uses an inherited Codex identity when one is present and resolves the sole registered task when one is not. `embassy select-claude --session <uuid>` selects the same session by its native UUID.
116
+ Run this from any same-UID process that can reach the private control socket. `embassy select-claude --session <uuid>` selects the same session by its native UUID.
118
117
 
119
- You should see `"accepted":true`. Registration and selection together form a pair this Claude session and this Codex task can now exchange messages through Embassy.
118
+ You should see `"accepted":true`. Selection creates no permission edge. Create the user-chosen edge explicitly:
120
119
 
121
- To connect any two routes from different providers, name both ends explicitly with `embassy pair --from <alias> --to <alias>`; many edges can coexist. The command must run under an inherited endpoint identity that belongs to the requested edge. The live dashboard offers the same bounded, confirmed operation to the local operator.
120
+ ```bash
121
+ embassy pair --from codex-reviewer@this-mac --to advisor@this-mac
122
+ ```
123
+
124
+ Conversely, `unselect-claude` removes the selected route, removes its incident consent edges, and settles their in-flight work from the durable attempt phase.
125
+
126
+ To connect any two routes from different providers, name both ends explicitly with `embassy pair --from <alias> --to <alias>`; many edges can coexist. Same-UID access to the private control socket authorizes the command, and agents must create only the edge the user chose. The live dashboard offers the same bounded, confirmed operation.
122
127
 
123
128
  ### 4. Send a message
124
129
 
125
130
  From the registered Codex task, send via stdin:
126
131
 
127
132
  ```bash
128
- embassy send-to-claude \
133
+ embassy send \
129
134
  --from codex-reviewer@this-mac \
130
135
  --to advisor@this-mac \
131
136
  --expects-reply <<'MSG'
@@ -135,10 +140,10 @@ MSG
135
140
 
136
141
  You should see a `conv_` conversation token and a `dlv_` delivery token. Because this send requested a reply, Claude's response is automatically routed back to the Codex task. In the other direction, a compatible Claude session uses its native `ListAgents` and `SendMessage` tools to contact `codex-reviewer` — no Embassy command needed.
137
142
 
138
- `send-to-codex` is the CLI form of that same direction, for a Claude session that prefers an explicit command. It takes the same flags and reads the body from stdin, and it must run inside the Claude session so it inherits that session's reply identity:
143
+ The same command runs in the other direction from a Claude session and inherits that session's reply identity:
139
144
 
140
145
  ```bash
141
- embassy send-to-codex \
146
+ embassy send \
142
147
  --from advisor@this-mac \
143
148
  --to codex-reviewer@this-mac \
144
149
  --expects-reply <<'MSG'
@@ -205,7 +210,7 @@ The broker also publishes mode-0600 static snapshots as `gateway-dashboard.html`
205
210
 
206
211
  Embassy publishes each registered Codex task into Claude Code's live-session registry as its own `codex-*` peer. Claude sessions discover those tasks through `ListAgents`; Codex uses its managed App Server. DeepSeek and Grok Build are boot-registered ACP routes whose owned subprocess and one route-local session start lazily on first dispatch. Universal shell peers use `peer-*` aliases and a pull mailbox authenticated by an alias plus one-time-minted token.
207
212
 
208
- A pair is one explicit permission edge between two named routes from different providers, bounded at 128 edges by default. Every edge is created explicitly with generic `pair --from/--to`; `select-claude` remains the one-Codex-task shorthand for a Claude↔Codex edge. Nothing is implied. Without an edge, a sender settles terminally as `SENDER_NOT_PAIRED`. `embassy serve --inbound open` is the explicit opt-out for supported native inbound senders.
213
+ A pair is one explicit permission edge between two named routes from different providers, bounded at 128 edges by default. Every edge is created explicitly with generic `pair --from/--to`; the same-UID private control socket is the command's authority, while agents are instructed to create only user-chosen edges. Selection is separate and implies no consent. Without an edge, a sender settles terminally as `SENDER_NOT_PAIRED`. `embassy serve --inbound open` is the explicit opt-out for supported native inbound senders.
209
214
 
210
215
  Delivery timing is directional. Once routing and pre-write checks pass, every Claude-bound body is written immediately to Claude's native mailbox regardless of its observed busy or idle state. `transport_written` records that mailbox write and is the Claude-bound terminal `delivered` boundary; it does not mean Claude read or consumed the body. Codex-bound ordinary bodies instead queue while the task is busy and start a turn when it goes idle. In the Claude-to-Codex direction only, a body with an exact leading `STEER:` prefix may enter the active turn at the App Server's next tool-call boundary; if that boundary is unavailable, the message returns to the normal queue.
211
216
 
@@ -224,7 +229,7 @@ Four embassy terms name real features:
224
229
  - **Registration and pairing** are the permission model: a Codex task is explicitly registered, and each pair is one explicit Claude↔Codex edge — only paired ends exchange messages, and many edges can coexist. No edge means `SENDER_NOT_PAIRED`; nothing is ever implicit.
225
230
  - **The ledger** is the delivery record: a receipt for every settled message, and a metadata-only dashboard.
226
231
  - **The pouch** is transit and the archive: bounded bodies, retained under bounded limits, private to your OS account — sealed against other users, not against you.
227
- - **Consulates** are the roadmap: the same model extended to Codex tasks on remote hosts over attach-only SSH designed, and deliberately disabled in v1.
232
+ - **Consulates** are configured Embassy nodes: brokers federate over attach-only SSH and keep destination-owned delivery and consent authority.
228
233
 
229
234
  ## For agents
230
235
 
@@ -246,7 +251,6 @@ Codex tasks can then be prompted with `$embassy-peer`; Claude Code discovers it
246
251
  | `serve` | operator | Start the foreground broker and dashboard |
247
252
  | `health` / `status` | operator | Check liveness and inspect the sanitized snapshot |
248
253
  | `refresh-dashboard` | operator | Refresh provider discovery and regenerate both static dashboard files |
249
- | `convert-state-v2-to-v3` | operator, broker stopped | Back up and convert the configured private state to native v3 without starting providers or the broker |
250
254
  | `dashboard --live [--lang en\|zh-CN] [--port <n>]` | operator | Start the live dashboard companion with bounded route-consent actions; requires a running `embassy serve` |
251
255
  | `delivery-status` | either provider | Read one delivery tracker with `embassy delivery-status --token dlv_<token>` |
252
256
  | `wait-delivery` | either provider | Wait for that tracker to settle, up to the delivery deadline |
@@ -254,12 +258,15 @@ Codex tasks can then be prompted with `$embassy-peer`; Claude Code discovers it
254
258
  | `register-codex` / `unregister-codex` | Codex task | Advertise or retire that exact task; both take `--alias <codex-alias>`, and `embassy register-codex --alias codex-successor@this-mac --succeeds codex-reviewer@this-mac` hands the registration to a different task |
255
259
  | `register-peer` / `unregister-peer` | shell harness | Register or retire a `peer-*` route; registration emits its raw token once, while authenticated calls use `--token-stdin` (or the optional stable-shell env form) |
256
260
  | `await` | registered shell peer | Long-poll the peer mailbox in bounded 30-second iterations; one waiter per route, 16 globally, with acknowledgement only after stdout flush |
257
- | `pair` / `unpair` | endpoint participant | Add or remove one cross-provider edge by naming both ends: `embassy pair --from advisor@this-mac --to grok-main@this-mac`; the inherited caller must belong to the edge |
258
- | `select-claude` / `unselect-claude` | operator or Codex task | One-task shorthand for `pair`/`unpair`, taking `--alias <name@host>` or `--session <uuid>`: resolves the Codex end only when it is unambiguous (inherited or sole registered task), otherwise fails closed |
259
- | `send-to-claude` | registered Codex task | Send one bounded message to a paired Claude session: `--from <codex-alias> --to <claude-alias>`, body on stdin, optional `--expects-reply` and `--track [--idle-minutes <n>]` |
260
- | `send-to-codex` | Claude session | Same flags and stdin body, using the inherited native reply identity |
261
+ | `pair` / `unpair` | same-UID control client | Add or remove one user-chosen cross-provider edge by naming both ends: `embassy pair --from advisor@this-mac --to grok-main@this-mac` |
262
+ | `select-claude` / `unselect-claude` | same-UID control client | Select or remove one Claude route using `--alias <name@host>` or `--session <uuid>`; selection creates no permission edge |
263
+ | `send` | registered Codex task, Claude session, or shell peer | Send one bounded stdin message between paired routes: `--from <alias> --to <alias>`, optional `--expects-reply` and `--track [--idle-minutes <n>]`; the broker derives direction from the resolved providers |
261
264
  | `reply` | conversation-token holder | Continue an active conversation with the full token returned to the initiator or delivered in the recipient's broker-owned reply hint: `--conversation conv_<token> --alias <your-alias>`, body on stdin, optional `--track [--idle-minutes <n>]` |
262
265
 
266
+ Version 2.0 accepts only fresh private state. Follow the
267
+ [reset-only state runbook](docs/CONFIGURATION.md#private-state-reset) before
268
+ starting it over an older installation.
269
+
263
270
  `--track` opens a progress watch over the conversation; `--idle-minutes <n>`
264
271
  sets the idle interval for bounded liveness nudges (1–1440, default 5, rejected
265
272
  without `--track`). If the watch ultimately times out, Embassy records it only
@@ -273,7 +280,7 @@ or by replying with a leading `DONE:`. See [Delivery](docs/DELIVERY.md).
273
280
  - **Compatibility is tested offline; runtime is best effort.** The release-owned support matrix records exact tested artifacts, protocols, capabilities, stop fidelity, limitations, and test dates. Runtime never imports that matrix and never turns a version fact into authority. It validates exact owned boundaries and protocol facts, attempts the current operation, and reports provider-local health and safe codes without replaying uncertainty.
274
281
  - **Native permissions stay native.** Embassy sends no Codex approval or sandbox overrides and answers no approval request. `crossSessionInbound` remains Claude's own control; Embassy cannot override it.
275
282
  - **Provenance is marked, not authenticated.** Routed bodies carry one broker-owned cross-session marker with the verified sender alias; it distinguishes the transport path for the receiving model but cannot make untrusted text safe or authenticate against code already running as your OS user.
276
- - **Bodies and delivery status stored, bounded, and yours.** Message bodies and their opaque delivery token/status persist in the broker's private mode-0600 v3 state under bounded retention; queued or reserved work may resume once after restart, while armed or provider-accepted work is never replayed. A delivery token never enters a public snapshot, normal log, provider receipt, or dashboard. Raw provider frames stay memory-only. The static dashboard files remain metadata-only; the live dashboard shows retained bodies.
283
+ - **Bodies and delivery status stored, bounded, and yours.** Message bodies and their opaque delivery token/status persist in the broker's private mode-0600 v4 state under bounded retention; queued or reserved work may resume once after restart, while armed or provider-accepted work is never replayed. A delivery token never enters a public snapshot, normal log, provider receipt, or dashboard. Raw provider frames stay memory-only. The static dashboard files remain metadata-only; the live dashboard shows retained bodies.
277
284
 
278
285
  See [SECURITY.md](SECURITY.md) for the full boundary and vulnerability-reporting process.
279
286
 
package/README.zh-CN.md CHANGED
@@ -37,16 +37,13 @@ Embassy 专为单人、单一 macOS 账户以及你已信任以该用户身份
37
37
 
38
38
  ## 快速开始
39
39
 
40
- **前置要求:** macOS 与 Node.js 20+。Claude 路由要求对等协议 1;Codex 路由要求 Desktop 使用托管独立 App Server。DeepSeek 是可选提供方,通过 `DSH_HOME`(默认 `~/.dsh`)指向的本地 checkout 中 `demo:acp` 脚本启动;Grok Build 也是可选提供方,通过发布版固定的 ACP 包启动。Shell 对等方只需要本地 CLI 与其仅铸造一次的令牌。发布版自有的[支持矩阵](support/provider-support-matrix.json)记录精确已测的提供方构件与能力;它只是发布证据,绝不是运行时允许列表:
40
+ **前置要求:** macOS 与 Node.js 20+。Claude 路由要求对等协议 1;Codex 路由使用由托管独立 App Server 支持的 Codex CLI 任务。DeepSeek 是可选提供方,通过 `DSH_HOME`(默认 `~/.dsh`)指向的本地 checkout 中 `demo:acp` 脚本启动;Grok Build 也是可选提供方,通过发布版固定的 ACP 包启动。Shell 对等方只需要本地 CLI 与其仅铸造一次的令牌。发布版自有的[支持矩阵](support/provider-support-matrix.json)记录精确已测的提供方构件与能力;它只是发布证据,绝不是运行时允许列表:
41
41
 
42
42
  ```bash
43
- ~/.codex/packages/standalone/current/codex app-server daemon start
44
- /usr/bin/open --env CODEX_APP_SERVER_USE_LOCAL_DAEMON=1 -a ChatGPT
43
+ codex app-server daemon start
45
44
  ```
46
45
 
47
- 第一条命令在托管守护进程未运行时启动它(也提供 `restart` `stop` 子命令);第二条以指向该守护进程的方式启动 ChatGPT 桌面应用。`CODEX_APP_SERVER_USE_LOCAL_DAEMON` 未见于 OpenAI 文档;它经验证适用于当前 Desktop 构建,未来可能变化。请在普通终端中运行守护进程命令,切勿在代理会话内运行:Codex 任务会继承守护进程的环境,因此在 Claude Code 会话内启动的守护进程会把该会话的身份泄漏到每个任务中,注册将以 `CALLER_IDENTITY_CONFLICT` 关闭失败——请在普通终端执行 `codex app-server daemon restart` 修复。你选择作为目的地的 Claude 会话需要启用 [`crossSessionInbound`](docs/CONFIGURATION.zh-CN.md)——这是 Claude Code 自身的设置,在 Claude Code 中配置,而非在 Embassy 中。
48
-
49
- Desktop 仅在启动时附着到托管独立 App Server。如果 Desktop 已打开时守护进程重启,单纯等待不会让该应用进程重新连接:请完全退出 Desktop,重新运行 `/usr/bin/open --env CODEX_APP_SERVER_USE_LOCAL_DAEMON=1 -a ChatGPT`,再打开该确切任务。
46
+ 请从普通终端运行托管守护进程,并使用 Codex CLI 作为受支持的任务宿主。Desktop 26.820 及更高版本中的 `CODEX_APP_SERVER_USE_LOCAL_DAEMON` 附着已损坏([openai/codex#41112](https://github.com/openai/codex/issues/41112)),因此不属于受支持设置。若 `CALLER_IDENTITY_CONFLICT` 报告两种身份,请只在调用点移除不需要的继承身份:Codex 侧使用 `env -u CLAUDE_CODE_MESSAGING_SOCKET embassy …`,Claude 侧使用 `env -u CODEX_THREAD_ID embassy …`。Claude 目的地仍需启用 [`crossSessionInbound`](docs/CONFIGURATION.zh-CN.md)
50
47
 
51
48
  运行时投递采用尽力而为模式。版本与构建字符串只是未经验证的元数据,绝不授予或撤销路由权限。同意加上精确的逻辑路由/会话身份会授权一次尝试;当前逐操作传输与相关证据决定诚实结果。接口不受支持或发生变化时,Embassy 会返回提供方局部的安全代码,而不是在线兼容性等级。Embassy 仍会验证信任边界:精确自有或执行的构件与状态路径、实际使用构件的代际、被消费协议字段的严格结构、Claude 对等协议 1、有界队列,以及结果不确定的写入绝不重放。
52
49
 
@@ -54,7 +51,7 @@ Desktop 仅在启动时附着到托管独立 App Server。如果 Desktop 已打
54
51
 
55
52
  ### 1. 启动 Embassy
56
53
 
57
- 在与 Claude Code 和 Codex 相同的 OS 账户下运行前台代理:
54
+ 创建[配置文档](docs/CONFIGURATION.zh-CN.md)所述的必需私有 `nodes.json` 后,在与 Claude Code 和 Codex 相同的 OS 账户下运行前台代理:
58
55
 
59
56
  ```bash
60
57
  embassy serve
@@ -85,6 +82,8 @@ embassy register-codex --alias codex-reviewer@this-mac
85
82
 
86
83
  本地 shell harness 可以作为 `peer-*` 路由加入,无需插件、稳定 shell、守护进程、PID 绑定、令牌文件或 Keychain 条目:
87
84
 
85
+ 当 Codex 原生入站投递不可用时,此 shell-peer 邮箱就是受支持的备用通道:注册一次,只在代理内存中保存令牌,并通过有界 `await` 调用接收消息。
86
+
88
87
  ```bash
89
88
  embassy register-peer --alias peer-reviewer@this-mac
90
89
  ```
@@ -107,18 +106,24 @@ TOKEN
107
106
  embassy select-claude --alias advisor@this-mac
108
107
  ```
109
108
 
110
- 这条命令可以在操作员终端中运行,也可以在 Codex 任务内运行——两者都可以,因为 `select-claude` 在存在继承的 Codex 身份时会使用它,不存在时则解析唯一一个已注册任务。`embassy select-claude --session <uuid>` 通过原生 UUID 选择同一个会话。
109
+ 任何能访问私有控制套接字的同 UID 进程都可以运行这条命令。`embassy select-claude --session <uuid>` 通过原生 UUID 选择同一个会话。
111
110
 
112
- 你应看到 `"accepted":true`。注册和选择共同构成一个配对——现在这个 Claude 会话和这个 Codex 任务可以通过 Embassy 交换消息。
111
+ 你应看到 `"accepted":true`。选择不会创建权限边。请显式创建用户选择的边:
113
112
 
114
- 要连接来自不同提供方的任意两条路由,请用 `embassy pair --from <alias> --to <alias>` 显式指定两端;多条边可以并存。命令必须在属于该请求边的继承端点身份下运行。本地操作者也可在实时仪表盘中执行同样的有界确认操作。
113
+ ```bash
114
+ embassy pair --from codex-reviewer@this-mac --to advisor@this-mac
115
+ ```
116
+
117
+ 反之,`unselect-claude` 会移除已选择的路由及其关联的同意边,并根据持久化尝试阶段结算这些边的在途工作。
118
+
119
+ 要连接来自不同提供方的任意两条路由,请用 `embassy pair --from <alias> --to <alias>` 显式指定两端;多条边可以并存。同 UID 对私有控制套接字的访问授权该命令,代理仍应只创建用户选择的边。实时仪表盘提供同样的有界确认操作。
115
120
 
116
121
  ### 4. 发送消息
117
122
 
118
123
  从已注册的 Codex 任务中,通过标准输入发送:
119
124
 
120
125
  ```bash
121
- embassy send-to-claude \
126
+ embassy send \
122
127
  --from codex-reviewer@this-mac \
123
128
  --to advisor@this-mac \
124
129
  --expects-reply <<'MSG'
@@ -128,10 +133,10 @@ MSG
128
133
 
129
134
  你应看到一个 `conv_` 对话令牌和一个 `dlv_` 投递令牌。因为此次发送请求了回复,Claude 的响应会被自动路由回 Codex 任务。反方向上,兼容的 Claude 会话使用其原生的 `ListAgents` 和 `SendMessage` 工具联系 `codex-reviewer`——无需 Embassy 命令。
130
135
 
131
- `send-to-codex` 是同一方向的 CLI 形式,供偏好显式命令的 Claude 会话使用。它接受相同的标志并从标准输入读取正文,并且必须在该 Claude 会话内运行,才能继承该会话的回复标识:
136
+ 同一命令也可从 Claude 会话向反方向发送,并继承该会话的回复标识:
132
137
 
133
138
  ```bash
134
- embassy send-to-codex \
139
+ embassy send \
135
140
  --from advisor@this-mac \
136
141
  --to codex-reviewer@this-mac \
137
142
  --expects-reply <<'MSG'
@@ -178,7 +183,7 @@ Embassy 会在实际写入提供方之前,为双向路由消息添加一个由
178
183
 
179
184
  Embassy 将每个已注册的 Codex 任务以各自的 `codex-*` 对等方身份发布到 Claude Code 的实时会话注册表中。Claude 会话通过 `ListAgents` 发现这些任务;Codex 使用托管 App Server。DeepSeek 与 Grok Build 是启动时登记的 ACP 路由,其自有子进程与单个路由本地会话会在首次投递时惰性启动。通用 shell 对等方使用 `peer-*` 别名与一个由别名加仅铸造一次的令牌认证的拉取邮箱。
180
185
 
181
- 配对是来自不同提供方的两条具名路由之间的单一显式权限边,默认上限 128 条。每条边都通过通用的 `pair --from/--to` 显式创建;`select-claude` 保留为单 Codex 任务建立 Claude↔Codex 边的简写。一切都不会被隐式推断。没有边时,发送方以 `SENDER_NOT_PAIRED` 终局结算。`embassy serve --inbound open` 是针对受支持原生入站发送方的显式退出选项。
186
+ 配对是来自不同提供方的两条具名路由之间的单一显式权限边,默认上限 128 条。每条边都通过通用的 `pair --from/--to` 显式创建;同 UID 私有控制套接字是命令权限,代理仍应只创建用户选择的边。选择与同意相互独立。没有边时,发送方以 `SENDER_NOT_PAIRED` 终局结算。`embassy serve --inbound open` 是针对受支持原生入站发送方的显式退出选项。
182
187
 
183
188
  投递时机因方向而异。通过路由与写前检查后,所有朝向 Claude 的正文都会立即写入 Claude 的原生邮箱,无论观测到 Claude 正繁忙还是空闲。`transport_written` 记录这次邮箱写入,并且就是朝向 Claude 的终局 `delivered` 边界;它不表示 Claude 已读取或消费正文。朝向 Codex 的普通正文则在任务忙碌时排队,并在任务空闲后启动轮次。仅在 Claude→Codex 方向,正文以精确 `STEER:` 开头的消息可以在 App Server 的下一个工具调用边界进入当前轮次;若该边界不可用,消息会回到普通队列。
184
189
 
@@ -217,7 +222,6 @@ cp -R "$(npm root -g)/agent-embassy/skills/embassy-peer" ~/.claude/skills/
217
222
  | `serve` | 操作员 | 启动前台代理和仪表盘 |
218
223
  | `health` / `status` | 操作员 | 检查存活状态并查看脱敏快照 |
219
224
  | `refresh-dashboard` | 操作员 | 刷新提供方发现,并重新生成两个静态仪表盘文件 |
220
- | `convert-state-v2-to-v3` | 操作员,代理已停止 | 备份已配置的私有状态并离线转换为原生 v3,不启动提供方或代理 |
221
225
  | `dashboard --live [--lang en\|zh-CN] [--port <n>]` | 操作员 | 启动带有限路由同意操作的实时仪表盘组件;需要 `embassy serve` 正在运行 |
222
226
  | `delivery-status` | 任一提供方 | 使用 `embassy delivery-status --token dlv_<token>` 读取单条投递跟踪器 |
223
227
  | `wait-delivery` | 任一提供方 | 等待该跟踪器结算,直至投递截止时间 |
@@ -225,12 +229,14 @@ cp -R "$(npm root -g)/agent-embassy/skills/embassy-peer" ~/.claude/skills/
225
229
  | `register-codex` / `unregister-codex` | Codex 任务 | 通告或注销该任务;两者都需要 `--alias <codex-alias>`,而 `embassy register-codex --alias codex-successor@this-mac --succeeds codex-reviewer@this-mac` 会将注册转交给另一个任务 |
226
230
  | `register-peer` / `unregister-peer` | shell harness | 注册或注销一条 `peer-*` 路由;注册只输出一次原始令牌,已认证调用使用 `--token-stdin`(也可选用稳定 shell 环境形式) |
227
231
  | `await` | 已注册 shell 对等方 | 以有界 30 秒迭代长轮询 peer 邮箱;每条路由一个等待者、全局 16 个,且只在 stdout 刷新后确认回执 |
228
- | `pair` / `unpair` | 端点参与方 | 显式指定两端来添加或移除一条跨提供方边:`embassy pair --from advisor@this-mac --to grok-main@this-mac`;继承调用方必须属于该边 |
229
- | `select-claude` / `unselect-claude` | 操作员或 Codex 任务 | `pair`/`unpair` 的单任务简写,接受 `--alias <name@host>` 或 `--session <uuid>`:仅在 Codex 端无歧义(继承标识或唯一已注册任务)时解析,否则以关闭状态失败 |
230
- | `send-to-claude` | 已注册的 Codex 任务 | 向已配对的 Claude 会话发送一条有界消息:`--from <codex-alias> --to <claude-alias>`,正文从标准输入读取,可选 `--expects-reply` 与 `--track [--idle-minutes <n>]` |
231
- | `send-to-codex` | Claude 会话 | 标志与正文输入方式相同,使用继承的原生回复标识 |
232
+ | `pair` / `unpair` | UID 控制客户端 | 显式指定两端来添加或移除一条用户选择的跨提供方边:`embassy pair --from advisor@this-mac --to grok-main@this-mac` |
233
+ | `select-claude` / `unselect-claude` | UID 控制客户端 | 使用 `--alias <name@host>` 或 `--session <uuid>` 选择或移除一条 Claude 路由;选择不会创建权限边 |
234
+ | `send` | 已注册的 Codex 任务、Claude 会话或 shell 对等方 | 在已配对路由之间发送一条有界标准输入消息:`--from <alias> --to <alias>`,可选 `--expects-reply` 与 `--track [--idle-minutes <n>]`;broker 根据解析后的提供方推导方向 |
232
235
  | `reply` | 对话令牌持有方 | 使用初始发送时返回或随入站来源提示收到的完整令牌继续一个活跃对话:`--conversation conv_<token> --alias <你的别名>`,正文从标准输入读取,可选 `--track [--idle-minutes <n>]`;调用方、对话参与关系和路由会重新检查 |
233
236
 
237
+ 版本 2.0 只接受全新的私有状态。用旧安装启动前,请遵循
238
+ [仅重置状态操作手册](docs/CONFIGURATION.zh-CN.md#私有状态重置)。
239
+
234
240
  `--track` 会为该对话开启一个进度监视;`--idle-minutes <n>` 设置有界活跃提醒的空闲间隔(1–1440,默认 5,未加 `--track` 时会被拒绝)。如果监视最终超时,Embassy 只在监视历史中记录该结算,不会发出运行时停滞告警。用 `untrack` 关闭监视,或在回复正文开头使用 `DONE:` 关闭。详见[投递](docs/DELIVERY.zh-CN.md)。
235
241
 
236
242
  ## 一分钟了解安全性
@@ -240,7 +246,7 @@ cp -R "$(npm root -g)/agent-embassy/skills/embassy-peer" ~/.claude/skills/
240
246
  - **兼容性在离线阶段测试;运行时尽力而为。** 发布版自有支持矩阵记录精确已测构件、协议、能力、停止保真度、限制与测试日期。运行时从不导入该矩阵,也绝不会把版本事实变成权限。它验证精确自有边界与协议事实,尝试当前操作,并以提供方局部健康度和安全代码报告结果,且绝不重放不确定写入。
241
247
  - **来源标记是提示,不是签名。** Embassy 在提供方写入边界生成跨会话来源封装,让接收模型能够区分代理路由消息及其已验证发送方别名;这不是密码学证明,也不会把不可信正文变成可信指令。
242
248
  - **原生权限保持原生。** Embassy 不发送任何 Codex 审批或沙盒覆盖,也不应答任何审批请求。`crossSessionInbound` 仍是 Claude 自身的控制机制;Embassy 无法覆盖它。
243
- - **消息体和投递状态有界保存,属于你。** 消息体及其不透明投递令牌/状态以有界保留策略持久化在 broker 的私有 mode-0600 v3 状态中;排队或已保留但尚未武装的邮件可在 broker 重启后恢复一次,已武装或已被提供方接受的工作绝不重放。投递令牌绝不会进入公开快照、普通日志、提供方回执或任何仪表盘。原始提供方帧仍仅存于内存。静态仪表盘文件保持仅元数据;实时仪表盘展示保留的正文。
249
+ - **消息体和投递状态有界保存,属于你。** 消息体及其不透明投递令牌/状态以有界保留策略持久化在 broker 的私有 mode-0600 v4 状态中;排队或已保留但尚未武装的邮件可在 broker 重启后恢复一次,已武装或已被提供方接受的工作绝不重放。投递令牌绝不会进入公开快照、普通日志、提供方回执或任何仪表盘。原始提供方帧仍仅存于内存。静态仪表盘文件保持仅元数据;实时仪表盘展示保留的正文。
244
250
 
245
251
  完整的安全边界和漏洞报告流程请参见 [SECURITY.md](SECURITY.md)。
246
252
 
@@ -18,7 +18,7 @@ export type ClaudeNativeHelperInitialization = Readonly<{
18
18
  type: "initialize";
19
19
  requestId: string;
20
20
  runtime: AttestedClaudePeerRuntime;
21
- hostId: "this-mac";
21
+ hostId: string;
22
22
  locale: DashboardLocale;
23
23
  deliveryNotices: GatewayDeliveryNoticeMode;
24
24
  maxPendingMessages: number;
@@ -7,6 +7,7 @@ const SAFE = /^[A-Z][A-Z0-9_]{0,95}$/;
7
7
  const ID = /^[A-Za-z0-9_-]{16,64}$/;
8
8
  const UUID = /^[0-9a-f]{8}-[0-9a-f]{4}-[1-8][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i;
9
9
  const ALIAS = /^[a-z][a-z0-9_-]{0,31}@[a-z0-9](?:[a-z0-9.-]{0,61}[a-z0-9])?$/;
10
+ const HOST = /^[a-z0-9](?:[a-z0-9.-]{0,61}[a-z0-9])?$/;
10
11
  const CONVERSATION = /^conv_[A-Za-z0-9_-]{16,64}$/;
11
12
  const PREPARATION = /^prep_[A-Za-z0-9_-]{24}$/;
12
13
  const SHA256 = /^[0-9a-f]{64}$/;
@@ -22,7 +23,7 @@ function exact(v, required, optional = []) {
22
23
  }
23
24
  function route(v) {
24
25
  return rec(v) && exact(v, ["provider", "hostId", "routeHandle", "registrationId"]) &&
25
- v.provider === "claude" && v.hostId === "this-mac" &&
26
+ v.provider === "claude" && typeof v.hostId === "string" && HOST.test(v.hostId) &&
26
27
  typeof v.routeHandle === "string" && UUID.test(v.routeHandle) && str(v.registrationId, 256);
27
28
  }
28
29
  function command(v) {
@@ -70,7 +71,7 @@ export function isClaudeNativeHelperParentMessage(v) {
70
71
  "deliveryNotices", "maxPendingMessages", "registration"]) || !rec(v.runtime) || !rec(v.registration))
71
72
  return false;
72
73
  return exact(v.runtime, ["sessionsDir", "socketDir"]) && str(v.runtime.sessionsDir) && v.runtime.sessionsDir.startsWith("/") &&
73
- str(v.runtime.socketDir) && v.runtime.socketDir.startsWith("/") && v.hostId === "this-mac" &&
74
+ str(v.runtime.socketDir) && v.runtime.socketDir.startsWith("/") && typeof v.hostId === "string" && HOST.test(v.hostId) &&
74
75
  (v.locale === "en" || v.locale === "zh-CN") && ["merged", "verbose", "quiet"].includes(String(v.deliveryNotices)) &&
75
76
  Number.isSafeInteger(v.maxPendingMessages) && Number(v.maxPendingMessages) >= 1 && Number(v.maxPendingMessages) <= 4_096 &&
76
77
  exact(v.registration, ["alias", "sourceProvider", "cwd"]) && source(v.registration.alias, v.registration.sourceProvider) &&
@@ -1 +1 @@
1
- {"version":3,"file":"claude-helper-protocol.js","sourceRoot":"","sources":["../../../src/gateway/claude-helper-protocol.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"claude-helper-protocol.js","sourceRoot":"","sources":["../../../src/gateway/claude-helper-protocol.ts"],"names":[],"mappings":"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"}
@@ -15,7 +15,7 @@ export type ClaudeNativeHelperClientCallbacks = Readonly<{
15
15
  export type ClaudeNativeHelperClientStartOptions = Readonly<{
16
16
  entryPath?: string;
17
17
  runtime: AttestedClaudePeerRuntime;
18
- hostId: "this-mac";
18
+ hostId: string;
19
19
  locale: DashboardLocale;
20
20
  deliveryNotices: GatewayDeliveryNoticeMode;
21
21
  maxPendingMessages: number;
@@ -177,7 +177,7 @@ export class ClaudeNativeHelperSupervisor {
177
177
  throw fault("CLAUDE_NATIVE_HELPER_CAPACITY", true);
178
178
  let helper, earlyExit = false;
179
179
  const buffered = [];
180
- const client = await this.#factory({ runtime: this.options.runtime, hostId: "this-mac", locale: this.options.locale,
180
+ const client = await this.#factory({ runtime: this.options.runtime, hostId: this.options.identity.hostId, locale: this.options.locale,
181
181
  deliveryNotices: this.options.deliveryNotices, maxPendingMessages: this.options.maxPendingMessages, registration: input,
182
182
  callbacks: { onEvent: (event) => helper ? this.#event(helper, event) : buffered.push(event),
183
183
  onExit: () => helper ? this.#exit(helper) : earlyExit = true } });
@@ -1 +1 @@
1
- {"version":3,"file":"claude-helper-supervisor.js","sourceRoot":"","sources":["../../../src/gateway/claude-helper-supervisor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"claude-helper-supervisor.js","sourceRoot":"","sources":["../../../src/gateway/claude-helper-supervisor.ts"],"names":[],"mappings":"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"}
@@ -20,6 +20,7 @@ export async function runClaudeNativeHelperProcess() {
20
20
  return;
21
21
  let adapter, listener;
22
22
  let registration;
23
+ let hostId;
23
24
  let maxPending = 0, preparation, admitted = 0, closing = false;
24
25
  const routes = new Map();
25
26
  let operations = Promise.resolve(), sends = Promise.resolve();
@@ -67,9 +68,9 @@ export async function runClaudeNativeHelperProcess() {
67
68
  let alias;
68
69
  try {
69
70
  const discovery = await active.discover();
70
- const found = !discovery.truncated && discovery.peers.find((peer) => peer.targetId === source && peer.kind === "interactive" && peer.alias === message.sourceAlias);
71
- if (found)
72
- alias = `${found.alias}@this-mac`;
71
+ const found = !discovery.truncated && discovery.peers.find((peer) => peer.targetId === source && (peer.kind === "interactive" || peer.kind === "bg") && peer.alias === message.sourceAlias);
72
+ if (found && hostId)
73
+ alias = `${found.alias}@${hostId}`;
73
74
  }
74
75
  catch { /* stale */ }
75
76
  if (!alias) {
@@ -99,6 +100,7 @@ export async function runClaudeNativeHelperProcess() {
99
100
  adapter = created;
100
101
  listener = opened;
101
102
  registration = message.registration;
103
+ hostId = message.hostId;
102
104
  maxPending = message.maxPendingMessages;
103
105
  await opened.advertise(message.registration.alias.slice(0, -suffix.length), message.registration.cwd);
104
106
  return { generation: opened.generation };
@@ -107,6 +109,7 @@ export async function runClaudeNativeHelperProcess() {
107
109
  adapter = undefined;
108
110
  listener = undefined;
109
111
  registration = undefined;
112
+ hostId = undefined;
110
113
  await opened?.close().catch(() => undefined);
111
114
  await created.close().catch(() => undefined);
112
115
  throw error;
@@ -118,12 +121,15 @@ export async function runClaudeNativeHelperProcess() {
118
121
  const active = adapter, opened = listener, advertised = registration;
119
122
  if (!active || !opened || !advertised || advertised.alias !== command.sourceAlias || advertised.sourceProvider !== command.sourceProvider)
120
123
  throw new BridgeError("CLAUDE_NATIVE_HELPER_NOT_INITIALIZED", "The exact native source advertisement is unavailable.", true);
124
+ if (command.binding.hostId !== hostId)
125
+ throw new BridgeError("CLAUDE_ROUTE_MISMATCH", "The selected Claude route targets another host.");
121
126
  const deadlineAt = Date.parse(command.deadlineAt);
122
127
  if (!Number.isFinite(deadlineAt) || deadlineAt <= Date.now())
123
128
  throw new BridgeError("CLAUDE_PEER_MESSAGE_EXPIRED", "The message expired before preparation.", true);
124
129
  if (command.authorization === "selected_route") {
125
130
  const discovery = await active.discover();
126
- if (discovery.truncated || !discovery.peers.some((peer) => peer.targetId === command.binding.routeHandle && peer.kind === "interactive"))
131
+ if (discovery.truncated || !discovery.peers.some((peer) => peer.targetId === command.binding.routeHandle &&
132
+ (peer.kind === "interactive" || peer.kind === "bg")))
127
133
  throw new BridgeError("CLAUDE_ROUTE_MISMATCH", "The selected Claude UUID is no longer live.", true);
128
134
  await active.assertTargetWorkspaceDisjoint(command.binding.routeHandle, command.stateRoot);
129
135
  }
@@ -171,6 +177,7 @@ export async function runClaudeNativeHelperProcess() {
171
177
  if (command.alias === registration.alias) {
172
178
  await listener.unadvertise(command.alias.slice(0, command.alias.lastIndexOf("@")));
173
179
  registration = undefined;
180
+ hostId = undefined;
174
181
  routes.clear();
175
182
  }
176
183
  return ok();
@@ -198,6 +205,7 @@ export async function runClaudeNativeHelperProcess() {
198
205
  adapter = undefined;
199
206
  listener = undefined;
200
207
  registration = undefined;
208
+ hostId = undefined;
201
209
  await active?.close().catch(() => undefined);
202
210
  if (process.connected)
203
211
  process.disconnect();