agent-embassy 1.9.4 → 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 (72) hide show
  1. package/CHANGELOG.md +41 -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/peer-protocol.d.ts +1 -0
  46. package/dist/src/gateway/peer-protocol.js +5 -0
  47. package/dist/src/gateway/peer-protocol.js.map +1 -1
  48. package/dist/src/gateway/providers.d.ts +3 -3
  49. package/dist/src/gateway/providers.js +7 -10
  50. package/dist/src/gateway/providers.js.map +1 -1
  51. package/dist/src/gateway/server.d.ts +1 -2
  52. package/dist/src/gateway/server.js +6 -13
  53. package/dist/src/gateway/server.js.map +1 -1
  54. package/dist/src/gateway/service.d.ts +3 -1
  55. package/dist/src/gateway/service.js +93 -39
  56. package/dist/src/gateway/service.js.map +1 -1
  57. package/dist/src/gateway/store.d.ts +1 -1
  58. package/dist/src/gateway/store.js +30 -29
  59. package/dist/src/gateway/store.js.map +1 -1
  60. package/dist/src/gateway/types.d.ts +4 -4
  61. package/docs/CONFIGURATION.md +27 -21
  62. package/docs/CONFIGURATION.zh-CN.md +19 -15
  63. package/docs/DASHBOARD.md +1 -1
  64. package/docs/DASHBOARD.zh-CN.md +1 -1
  65. package/docs/DELIVERY.md +2 -2
  66. package/docs/DELIVERY.zh-CN.md +2 -2
  67. package/docs/GATEWAY-ARCHITECTURE.md +48 -58
  68. package/package.json +1 -1
  69. package/skills/embassy-peer/SKILL.md +20 -15
  70. package/dist/src/gateway/state-v2-to-v3.d.ts +0 -24
  71. package/dist/src/gateway/state-v2-to-v3.js +0 -1034
  72. package/dist/src/gateway/state-v2-to-v3.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"providers.js","sourceRoot":"","sources":["../../../src/gateway/providers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"providers.js","sourceRoot":"","sources":["../../../src/gateway/providers.ts"],"names":[],"mappings":"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"}
@@ -13,7 +13,6 @@ import { type LocalClaudeGatewayProviderOptions, type LocalCodexGatewayProviderO
13
13
  import { type GatewayProviderAdapter, type GatewayServiceOptions } from "./service.js";
14
14
  import { GatewayStore } from "./store.js";
15
15
  import { type GatewayInboundMode } from "./types.js";
16
- export declare const GATEWAY_LOCAL_HOST_ID = "this-mac";
17
16
  export type GatewayServerReadyResult = Readonly<{
18
17
  status: "ready";
19
18
  hostId: string;
@@ -33,7 +32,7 @@ type ServerService = Readonly<{
33
32
  }>;
34
33
  type Signal = "SIGINT" | "SIGTERM";
35
34
  export type GatewayServerDependencies = {
36
- loadConfig?: (env: NodeJS.ProcessEnv) => GatewayConfig;
35
+ loadConfig?: (env: NodeJS.ProcessEnv, inventory: GatewayNodeInventory) => GatewayConfig;
37
36
  loginHome?: () => string;
38
37
  loadNodeInventory?: (stateDir: string) => Promise<GatewayNodeInventory>;
39
38
  attestClaudeRuntime?: () => Promise<AttestedClaudePeerRuntime>;
@@ -1,11 +1,12 @@
1
1
  import { userInfo } from "node:os";
2
+ import path from "node:path";
2
3
  import { BridgeError } from "../errors.js";
3
4
  import { createAcpGatewayProvider } from "./acp-provider.js";
4
5
  import { attestClaudePeerRuntime } from "./claude-runtime.js";
5
6
  import { createLocalCodexTransportFactory, resolveManagedLocalCodexInstallation, LocalCodexTransportError, managedCodexControlSocketPath } from "./codex-local-transport.js";
6
7
  import { createStatelessCodexOperationTransport } from "./codex-stateless-transport.js";
7
8
  import { createSystemCodexDoctorInspector, diagnoseCodexAttachment, diagnoseMissingManagedCodexLayout } from "./codex-doctor.js";
8
- import { loadGatewayConfig } from "./config.js";
9
+ import { defaultGatewayStateDir, loadGatewayConfig } from "./config.js";
9
10
  import { DASHBOARD_FILE_NAME } from "./dashboard.js";
10
11
  import { loadGatewayNodeInventory } from "./federation-nodes.js";
11
12
  import { resolveDeepSeekAcpLaunch } from "./deepseek-detect.js";
@@ -15,7 +16,6 @@ import { createLocalClaudeGatewayProvider, createLocalCodexGatewayProvider } fro
15
16
  import { GatewayService } from "./service.js";
16
17
  import { GatewayStore } from "./store.js";
17
18
  import { gatewayInboundModes } from "./types.js";
18
- export const GATEWAY_LOCAL_HOST_ID = "this-mac";
19
19
  const GROK_ACP_LAUNCH = Object.freeze({
20
20
  kind: "npx", package: "@xai-official/grok@1.0.5", args: ["agent", "stdio"],
21
21
  });
@@ -102,21 +102,14 @@ export async function runGatewayServer(options, dependencies = {}) {
102
102
  return { kind: "shutdown" };
103
103
  });
104
104
  try {
105
- const loaded = d.loadConfig(env);
106
- const inventory = await d.loadNodeInventory(loaded.stateDir);
107
- if (inventory.configured && env.EMBASSY_HOSTS !== undefined) {
108
- throw serverError("INVALID_GATEWAY_CONFIGURATION", "nodes.json and EMBASSY_HOSTS cannot both define gateway hosts.");
109
- }
105
+ const inventory = await d.loadNodeInventory(path.resolve(defaultGatewayStateDir(env)));
106
+ const loaded = d.loadConfig(env, inventory);
110
107
  const inboundMode = options.inboundMode ?? loaded.inboundMode;
111
108
  if (!gatewayInboundModes.includes(inboundMode)) {
112
109
  throw serverError("INVALID_GATEWAY_CONFIGURATION", "The gateway inbound mode must be paired or open.");
113
110
  }
114
- const localHost = inventory.host;
115
- const config = { ...loaded, inboundMode, hostId: localHost, peerNodes: inventory.nodes,
116
- allowedHosts: Object.freeze([localHost, ...inventory.nodes]),
117
- ...(loaded.acpProviders === undefined ? {} : { acpProviders: loaded.acpProviders.map((definition) => ({ ...definition,
118
- alias: definition.alias.endsWith(`@${GATEWAY_LOCAL_HOST_ID}`)
119
- ? `${definition.alias.slice(0, -GATEWAY_LOCAL_HOST_ID.length)}${localHost}` : definition.alias })) }) };
111
+ const localHost = loaded.hostId;
112
+ const config = { ...loaded, inboundMode };
120
113
  const home = d.loginHome();
121
114
  const acquiring = d.acquireInstanceLease(home).then((value) => ({ kind: "lease", value }), (error) => ({ kind: "error", error }));
122
115
  const acquired = await Promise.race([acquiring, stop]);
@@ -1 +1 @@
1
- {"version":3,"file":"server.js","sourceRoot":"","sources":["../../../src/gateway/server.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"server.js","sourceRoot":"","sources":["../../../src/gateway/server.ts"],"names":[],"mappings":"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"}
@@ -10,7 +10,7 @@ export type GatewayAdapterRouteObservationState = GatewayAdapterRouteState | "un
10
10
  export type GatewayAdapterDiscovery = Readonly<{
11
11
  alias: string;
12
12
  routeHandle: string;
13
- kind: "interactive";
13
+ kind: "interactive" | "bg";
14
14
  state: GatewayAdapterRouteState;
15
15
  }>;
16
16
  export type GatewayAdapterRegistryObservation = Readonly<{
@@ -172,6 +172,7 @@ export declare class GatewayService {
172
172
  private readonly connectors;
173
173
  private readonly routeObservations;
174
174
  private readonly candidates;
175
+ private readonly collidingClaudeAliases;
175
176
  private readonly conversations;
176
177
  private readonly messageContexts;
177
178
  private readonly activeAttempts;
@@ -234,6 +235,7 @@ export declare class GatewayService {
234
235
  private unpair;
235
236
  private resolvePairEndpoints;
236
237
  private assertThread;
238
+ private send;
237
239
  private sendToClaude;
238
240
  private sendToCodex;
239
241
  private reply;
@@ -1,9 +1,9 @@
1
1
  import { createHash, randomBytes, timingSafeEqual } from "node:crypto";
2
2
  import { BridgeError } from "../errors.js";
3
- import { createGatewayConversationId, startGatewayControlServer, pairParamAliases, pairParamThreadAttestation, } from "./control.js";
3
+ import { createGatewayConversationId, startGatewayControlServer, } from "./control.js";
4
4
  import { publishGatewayDashboard } from "./dashboard.js";
5
5
  import { spawnPeerClient } from "./peer-client.js";
6
- import { peerEdgeRef } from "./peer-protocol.js";
6
+ import { peerEdgeRef, peerRouteRef } from "./peer-protocol.js";
7
7
  import { PROGRESS_WATCH_DEFAULT_CAPACITY, PROGRESS_WATCH_DEFAULT_IDLE_MS, PROGRESS_WATCH_HARD_CAPACITY, commitProgressWatchNudge, createProgressWatch, deferProgressWatchNudge, inspectProgressWatchDue, recordProgressWatchActivity, } from "./progress-watch-machine.js";
8
8
  import { GatewayStore } from "./store.js";
9
9
  import { CONNECTOR_OBSERVATION_STALE_AFTER_MS, GATEWAY_PUBLIC_SNAPSHOT_BYTE_BUDGET, gatewayPublicSnapshotLimits, gatewayRegistrationIngressPrefixes, parseDirection, projectGatewayPublicSnapshot, } from "./types.js";
@@ -76,9 +76,13 @@ function connectorKey(identity) {
76
76
  return `${identity.provider}\0${identity.hostId}`;
77
77
  }
78
78
  function publicRegistry(value, previouslyParseable) {
79
- const rejected = [...value.rejected]
80
- .filter((row) => SAFE_CODE.test(row.safeErrorCode) && Number.isSafeInteger(row.count) && row.count > 0)
81
- .sort((left, right) => left.safeErrorCode.localeCompare(right.safeErrorCode));
79
+ const counts = new Map();
80
+ for (const row of value.rejected)
81
+ if (SAFE_CODE.test(row.safeErrorCode) && Number.isSafeInteger(row.count) && row.count > 0)
82
+ counts.set(row.safeErrorCode, (counts.get(row.safeErrorCode) ?? 0) + row.count);
83
+ const rejected = [...counts].map(([safeErrorCode, count]) => ({ safeErrorCode, count }))
84
+ .sort((left, right) => left.safeErrorCode < right.safeErrorCode ? -1 :
85
+ left.safeErrorCode > right.safeErrorCode ? 1 : 0);
82
86
  const retained = rejected.slice(0, gatewayPublicSnapshotLimits.registryRejectionCodes);
83
87
  return {
84
88
  entriesScanned: Math.max(0, value.entriesScanned),
@@ -133,6 +137,7 @@ export class GatewayService {
133
137
  connectors = new Map();
134
138
  routeObservations = new Map();
135
139
  candidates = new Map();
140
+ collidingClaudeAliases = new Set();
136
141
  conversations = new Map();
137
142
  messageContexts = new Map();
138
143
  activeAttempts = new Map();
@@ -231,7 +236,7 @@ export class GatewayService {
231
236
  const now = this.now().getTime();
232
237
  this.nextDiscoveryAt = now + DISCOVERY_INTERVAL_MS;
233
238
  this.nextDoctorAt = now + CODEX_DOCTOR_INTERVAL_MS;
234
- this.nextPeerRefreshAt = (this.config.peerNodes?.length ?? 0) > 0 ? now : 0;
239
+ this.nextPeerRefreshAt = this.config.peerNodes.length > 0 ? now : 0;
235
240
  for (const target of await this.store.inspectDispatchableTargets())
236
241
  this.kick(target);
237
242
  await this.publish();
@@ -342,8 +347,7 @@ export class GatewayService {
342
347
  observeSnapshot: () => this.observeSnapshot(),
343
348
  deliveryStatus: (params) => this.deliveryStatus(params.token),
344
349
  untrack: (params) => decide(async () => this.untrack(params.conversationId)),
345
- sendToClaude: (params) => this.sendToClaude(params),
346
- sendToCodex: (params) => this.sendToCodex(params),
350
+ send: (params) => this.send(params),
347
351
  reply: (params) => this.reply(params),
348
352
  refreshDashboard: async () => {
349
353
  if (this.closing) {
@@ -359,8 +363,8 @@ export class GatewayService {
359
363
  };
360
364
  }
361
365
  async buildPeerCatalog(peerHost) {
362
- const localHost = this.config.hostId ?? this.config.allowedHosts[0];
363
- if (!(this.config.peerNodes ?? []).includes(peerHost))
366
+ const localHost = this.config.hostId;
367
+ if (!this.config.peerNodes.includes(peerHost))
364
368
  throw new BridgeError("PEER_NOT_CONFIGURED", "The requested peer host is not configured.");
365
369
  const [snapshot, privateRoutes, privateEdges] = await Promise.all([
366
370
  this.snapshot(), this.store.inspectPrivateRoutes(), this.store.inspectPrivateConsentEdges(),
@@ -371,7 +375,7 @@ export class GatewayService {
371
375
  const routes = localRoutes.map((route) => {
372
376
  const row = publicRoutes.get(route.alias);
373
377
  return {
374
- ref: route.binding.registrationId, alias: route.alias, provider: route.binding.provider, host: localHost,
378
+ ref: peerRouteRef(localHost, route.binding.registrationId), alias: route.alias, provider: route.binding.provider, host: localHost,
375
379
  enabled: route.enabled, state: row?.state ?? (route.enabled ? "stale" : "disabled"),
376
380
  queueDepth: row?.queueDepth ?? 0, ...(row?.lastSeenAt === undefined ? {} : { lastSeenAt: row.lastSeenAt }),
377
381
  ...(row?.safeErrorCode === undefined ? {} : { safeErrorCode: row.safeErrorCode }),
@@ -387,7 +391,7 @@ export class GatewayService {
387
391
  return [];
388
392
  const endpoint = (route) => ({ alias: route.alias, provider: route.binding.provider,
389
393
  host: route.binding.hostId, routeRef: route.registrationMode === "federated_peer"
390
- ? route.binding.routeHandle : route.binding.registrationId });
394
+ ? route.binding.routeHandle : peerRouteRef(localHost, route.binding.registrationId) });
391
395
  const endpoints = [endpoint(rows[0]), endpoint(rows[1])];
392
396
  return [{ ref: peerEdgeRef(endpoints), ownerHost: localHost, endpoints }];
393
397
  });
@@ -400,7 +404,7 @@ export class GatewayService {
400
404
  })), routes, consentEdges, alerts: snapshot.alerts.filter((alert) => (alert.host === undefined || alert.host === localHost) && (alert.alias === undefined || aliasHost(alert.alias) === localHost)), };
401
405
  }
402
406
  async receivePeerHandoff(peerHost, handoff) {
403
- if (!(this.config.peerNodes ?? []).includes(peerHost))
407
+ if (!this.config.peerNodes.includes(peerHost))
404
408
  throw new BridgeError("PEER_NOT_CONFIGURED", "The sending peer host is not configured.");
405
409
  const enqueued = await this.store.enqueuePeerHandoff(peerHost, handoff);
406
410
  if (enqueued.messageId !== undefined) {
@@ -474,6 +478,7 @@ export class GatewayService {
474
478
  };
475
479
  });
476
480
  const availablePeers = [...this.candidates.values()]
481
+ .filter((candidate) => !this.collidingClaudeAliases.has(candidate.alias))
477
482
  .slice(0, gatewayPublicSnapshotLimits.availablePeers)
478
483
  .map((candidate) => ({
479
484
  alias: candidate.alias,
@@ -594,7 +599,7 @@ export class GatewayService {
594
599
  }
595
600
  async advertise(route) {
596
601
  const hostId = route.registrationMode === "federated_peer"
597
- ? (this.config.hostId ?? this.config.allowedHosts[0]) : route.binding.hostId;
602
+ ? this.config.hostId : route.binding.hostId;
598
603
  await this.claudeAdapter(hostId)?.advertiseNativeSourcePeer?.({
599
604
  alias: route.alias,
600
605
  sourceProvider: route.binding.provider,
@@ -603,7 +608,7 @@ export class GatewayService {
603
608
  }
604
609
  async unadvertise(route) {
605
610
  const hostId = route.registrationMode === "federated_peer"
606
- ? (this.config.hostId ?? this.config.allowedHosts[0]) : route.binding.hostId;
611
+ ? this.config.hostId : route.binding.hostId;
607
612
  await this.claudeAdapter(hostId)?.unadvertiseNativeSourcePeer?.(route.alias);
608
613
  }
609
614
  reconcileAdvertisement(route) {
@@ -714,12 +719,12 @@ export class GatewayService {
714
719
  this.kick(existing.alias, existing.binding.registrationId);
715
720
  return undefined;
716
721
  }
717
- if (params.token !== undefined || !params.alias.endsWith(`@${this.config.hostId ?? this.config.allowedHosts[0]}`)) {
722
+ if (params.token !== undefined || !params.alias.endsWith(`@${this.config.hostId}`)) {
718
723
  throw new BridgeError("ROUTE_UNREGISTERED", "The route binding does not match.");
719
724
  }
720
725
  const token = `peer_${randomBytes(24).toString("base64url")}`;
721
726
  await this.store.registerRoute({ alias: params.alias, binding: {
722
- provider: "peer", hostId: this.config.hostId ?? this.config.allowedHosts[0],
727
+ provider: "peer", hostId: this.config.hostId,
723
728
  routeHandle: peerHandle(process.getuid(), params.alias, token), registrationId: registrationId(),
724
729
  }, registrationMode: "explicit_opt_in" });
725
730
  const installed = (await this.store.inspectPrivateRoute(params.alias));
@@ -846,11 +851,8 @@ export class GatewayService {
846
851
  const endpoints = await this.resolvePairEndpoints(params, true);
847
852
  const aliases = endpoints.aliases;
848
853
  const ownerHost = aliases.map(aliasHost).sort()[0];
849
- if ((this.config.hostId ?? this.config.allowedHosts[0]) !== ownerHost)
854
+ if (this.config.hostId !== ownerHost)
850
855
  throw new ConsentOwnerError(ownerHost);
851
- const attestation = pairParamThreadAttestation(params);
852
- if (attestation !== undefined)
853
- await this.assertThread(attestation.alias, attestation.threadId);
854
856
  this.assertWritable();
855
857
  const existed = await this.store.hasConsentEdge(endpoints);
856
858
  await this.store.addConsentEdge(endpoints);
@@ -861,11 +863,8 @@ export class GatewayService {
861
863
  const endpoints = await this.resolvePairEndpoints(params, false);
862
864
  const aliases = endpoints.aliases;
863
865
  const ownerHost = aliases.map(aliasHost).sort()[0];
864
- if ((this.config.hostId ?? this.config.allowedHosts[0]) !== ownerHost)
866
+ if (this.config.hostId !== ownerHost)
865
867
  throw new ConsentOwnerError(ownerHost);
866
- const attestation = pairParamThreadAttestation(params);
867
- if (attestation !== undefined)
868
- await this.assertThread(attestation.alias, attestation.threadId);
869
868
  this.assertWritable();
870
869
  const existed = await this.store.hasConsentEdge(endpoints);
871
870
  const result = await this.store.removeConsentEdge(endpoints);
@@ -878,9 +877,13 @@ export class GatewayService {
878
877
  this.kick(alias);
879
878
  }
880
879
  async resolvePairEndpoints(params, maySelect) {
881
- const raw = pairParamAliases(params);
880
+ const raw = params.aliases;
882
881
  const aliases = [raw[0], raw[1]];
882
+ if (maySelect && aliases.some((alias) => PUBLIC_ALIAS.test(alias)))
883
+ await this.refreshClaudeDiscovery().catch(() => undefined);
883
884
  for (let index = 0; index < aliases.length; index += 1) {
885
+ if (maySelect && this.collidingClaudeAliases.has(aliases[index]))
886
+ throw new BridgeError("PEER_ALIAS_COLLISION", "The Claude alias is ambiguous.");
884
887
  if (PUBLIC_ALIAS.test(aliases[index]))
885
888
  continue;
886
889
  const selected = await this.resolveClaudeSelector(aliases[index], maySelect);
@@ -910,12 +913,31 @@ export class GatewayService {
910
913
  }
911
914
  return route;
912
915
  }
916
+ async send(params) {
917
+ const source = await this.store.inspectPrivateRoute(params.fromAlias);
918
+ const directTarget = await this.store.inspectPrivateRoute(params.toAlias);
919
+ const target = directTarget ?? await this.resolveSelectedClaudeRoute(params.toAlias);
920
+ if (source?.binding.provider === "codex" && (target?.binding.provider === "claude" || target?.binding.provider === "peer") && "threadId" in params) {
921
+ return this.sendToClaude(params);
922
+ }
923
+ if (source?.binding.provider === "claude" && (target?.binding.provider === "codex" || target?.binding.provider === "peer") && "replyAddress" in params) {
924
+ return this.sendToCodex(params);
925
+ }
926
+ if (source?.binding.provider === "peer" && "peerToken" in params) {
927
+ return target?.binding.provider === "claude" ? this.sendToClaude(params) : this.sendToCodex(params);
928
+ }
929
+ return { accepted: false, code: "route_mismatch" };
930
+ }
913
931
  async sendToClaude(params) {
914
932
  try {
915
933
  this.assertWritable();
916
934
  const source = "peerToken" in params && params.peerToken !== undefined
917
935
  ? await this.assertPeer({ alias: params.fromAlias, token: params.peerToken })
918
- : await this.assertThread(params.fromAlias, params.threadId);
936
+ : params.threadId === undefined
937
+ ? undefined
938
+ : await this.assertThread(params.fromAlias, params.threadId);
939
+ if (source === undefined)
940
+ throw new BridgeError("ROUTE_NOT_AVAILABLE", "The source route is absent.");
919
941
  const direct = await this.store.inspectPrivateRoute(params.toAlias);
920
942
  const target = direct?.binding.provider === "peer" ? direct : await this.resolveSelectedClaudeRoute(params.toAlias);
921
943
  if (target === undefined)
@@ -1331,7 +1353,7 @@ export class GatewayService {
1331
1353
  return false;
1332
1354
  }
1333
1355
  const sourceEndpoint = { alias: source.alias, provider: source.binding.provider,
1334
- host: source.binding.hostId, routeRef: source.binding.registrationId };
1356
+ host: source.binding.hostId, routeRef: peerRouteRef(source.binding.hostId, source.binding.registrationId) };
1335
1357
  const targetEndpoint = { alias: target.alias, provider: target.binding.provider,
1336
1358
  host: target.binding.hostId, routeRef: target.binding.routeHandle };
1337
1359
  const params = {
@@ -1641,7 +1663,7 @@ export class GatewayService {
1641
1663
  }
1642
1664
  async onClaudeMessage(event) {
1643
1665
  const target = await this.store.inspectPrivateRoute(event.targetAlias);
1644
- const localHost = this.config.hostId ?? this.config.allowedHosts[0];
1666
+ const localHost = this.config.hostId;
1645
1667
  if (target === undefined || (target.binding.hostId !== event.endpoint.hostId &&
1646
1668
  !(target.registrationMode === "federated_peer" && event.endpoint.hostId === localHost))) {
1647
1669
  throw new BridgeError("ROUTE_NOT_AVAILABLE", "The native target is absent.");
@@ -2119,7 +2141,7 @@ export class GatewayService {
2119
2141
  const due = [
2120
2142
  this.nextDiscoveryAt || now + DISCOVERY_INTERVAL_MS,
2121
2143
  this.nextDoctorAt || now + CODEX_DOCTOR_INTERVAL_MS,
2122
- ...((this.config.peerNodes?.length ?? 0) > 0
2144
+ ...(this.config.peerNodes.length > 0
2123
2145
  ? [this.nextPeerRefreshAt || now + PEER_REFRESH_INTERVAL_MS]
2124
2146
  : []),
2125
2147
  ...(deadlineAt === undefined ? [] : [Date.parse(deadlineAt)]),
@@ -2167,8 +2189,8 @@ export class GatewayService {
2167
2189
  this.scheduleWake();
2168
2190
  }
2169
2191
  async refreshPeers() {
2170
- const localHost = this.config.hostId ?? this.config.allowedHosts[0];
2171
- await Promise.all((this.config.peerNodes ?? []).map(async (peerHost) => {
2192
+ const localHost = this.config.hostId;
2193
+ await Promise.all(this.config.peerNodes.map(async (peerHost) => {
2172
2194
  let failureCode = "PEER_TUNNEL_UNAVAILABLE";
2173
2195
  try {
2174
2196
  let client = this.peerClients.get(peerHost);
@@ -2244,16 +2266,30 @@ export class GatewayService {
2244
2266
  }
2245
2267
  async refreshClaudeDiscovery() {
2246
2268
  const seen = new Set();
2269
+ const nextCollisions = new Set();
2270
+ const refreshedHosts = new Set();
2247
2271
  for (const adapter of this.adapters) {
2248
2272
  if (adapter.identity.provider !== "claude" || adapter.discoverClaudePeers === undefined)
2249
2273
  continue;
2250
2274
  const snapshot = await adapter.discoverClaudePeers();
2251
2275
  const observedAt = this.now().toISOString();
2252
- for (const peer of snapshot.peers) {
2253
- if (!PUBLIC_ALIAS.test(peer.alias) ||
2254
- !peer.alias.endsWith(`@${adapter.identity.hostId}`) ||
2255
- !PRIVATE_HANDLE.test(peer.routeHandle))
2256
- continue;
2276
+ const peers = snapshot.peers.filter((peer) => PUBLIC_ALIAS.test(peer.alias) &&
2277
+ peer.alias.endsWith(`@${adapter.identity.hostId}`) && PRIVATE_HANDLE.test(peer.routeHandle));
2278
+ const aliasHandles = new Map();
2279
+ for (const peer of peers) {
2280
+ const handles = aliasHandles.get(peer.alias) ?? new Set();
2281
+ handles.add(peer.routeHandle);
2282
+ aliasHandles.set(peer.alias, handles);
2283
+ }
2284
+ const collidingAliases = new Set([...aliasHandles].filter(([, handles]) => handles.size > 1).map(([alias]) => alias));
2285
+ refreshedHosts.add(adapter.identity.hostId);
2286
+ if (!snapshot.complete)
2287
+ for (const alias of this.collidingClaudeAliases)
2288
+ if (alias.endsWith(`@${adapter.identity.hostId}`))
2289
+ collidingAliases.add(alias);
2290
+ for (const alias of collidingAliases)
2291
+ nextCollisions.add(alias);
2292
+ for (const peer of peers) {
2257
2293
  const key = `${adapter.identity.hostId}\0${peer.routeHandle}`;
2258
2294
  seen.add(key);
2259
2295
  this.candidates.set(key, { ...peer, adapter, observedAt });
@@ -2264,13 +2300,28 @@ export class GatewayService {
2264
2300
  runtime.health = snapshot.complete ? "healthy" : "degraded";
2265
2301
  const registry = snapshot.registry ?? adapter.latestRegistryObservation?.();
2266
2302
  if (registry !== undefined) {
2267
- runtime.registry = publicRegistry(registry, runtime.registry?.parseableRecordSeenSinceBoot ?? false);
2303
+ runtime.registry = publicRegistry({ ...registry, rejected: [
2304
+ ...registry.rejected,
2305
+ ...(collidingAliases.size === 0 ? [] : [{ safeErrorCode: "PEER_ALIAS_COLLISION",
2306
+ count: collidingAliases.size }]),
2307
+ ] }, runtime.registry?.parseableRecordSeenSinceBoot ?? false);
2268
2308
  }
2269
2309
  }
2270
2310
  }
2271
2311
  for (const [key] of this.candidates)
2272
2312
  if (!seen.has(key))
2273
2313
  this.candidates.delete(key);
2314
+ for (const alias of this.collidingClaudeAliases)
2315
+ if (refreshedHosts.has(aliasHost(alias)))
2316
+ this.collidingClaudeAliases.delete(alias);
2317
+ const retainedCollisions = new Set([...nextCollisions].slice(0, gatewayPublicSnapshotLimits.availablePeers));
2318
+ // Discovery currently caps rows such that collisions cannot overflow this independent public bound.
2319
+ // If those constants diverge, discard overflow candidates rather than expose an unfenced alias.
2320
+ for (const [key, candidate] of this.candidates)
2321
+ if (nextCollisions.has(candidate.alias) && !retainedCollisions.has(candidate.alias))
2322
+ this.candidates.delete(key);
2323
+ for (const alias of retainedCollisions)
2324
+ this.collidingClaudeAliases.add(alias);
2274
2325
  }
2275
2326
  async refreshCodexDoctor() {
2276
2327
  if (this.codexDoctor === undefined)
@@ -2285,7 +2336,10 @@ export class GatewayService {
2285
2336
  async resolveClaudeSelector(selector, refresh) {
2286
2337
  if (refresh)
2287
2338
  await this.refreshClaudeDiscovery().catch(() => undefined);
2288
- return [...this.candidates.values()].find((candidate) => candidate.alias === selector || candidate.routeHandle === selector);
2339
+ if (this.collidingClaudeAliases.has(selector))
2340
+ throw new BridgeError("PEER_ALIAS_COLLISION", "The Claude alias is ambiguous.");
2341
+ return [...this.candidates.values()].find((candidate) => candidate.routeHandle === selector ||
2342
+ candidate.alias === selector);
2289
2343
  }
2290
2344
  async resolveSelectedClaudeRoute(selector) {
2291
2345
  return (await this.store.listLogicalRoutes()).find((route) => route.binding.provider === "claude" &&