agent-embassy 1.6.1 → 1.7.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 (105) hide show
  1. package/CHANGELOG.md +33 -0
  2. package/README.md +9 -9
  3. package/README.zh-CN.md +9 -9
  4. package/SECURITY.md +34 -77
  5. package/dist/src/gateway/acp-client.d.ts +117 -0
  6. package/dist/src/gateway/acp-client.js +382 -0
  7. package/dist/src/gateway/acp-client.js.map +1 -0
  8. package/dist/src/gateway/acp-provider.d.ts +65 -0
  9. package/dist/src/gateway/acp-provider.js +163 -0
  10. package/dist/src/gateway/acp-provider.js.map +1 -0
  11. package/dist/src/gateway/claude-helper-protocol.d.ts +3 -1
  12. package/dist/src/gateway/claude-helper-protocol.js +15 -5
  13. package/dist/src/gateway/claude-helper-protocol.js.map +1 -1
  14. package/dist/src/gateway/claude-helper-supervisor.d.ts +3 -1
  15. package/dist/src/gateway/claude-helper-supervisor.js +16 -2
  16. package/dist/src/gateway/claude-helper-supervisor.js.map +1 -1
  17. package/dist/src/gateway/claude-helper.js +4 -3
  18. package/dist/src/gateway/claude-helper.js.map +1 -1
  19. package/dist/src/gateway/claude-peer.d.ts +1 -1
  20. package/dist/src/gateway/claude-peer.js +11 -13
  21. package/dist/src/gateway/claude-peer.js.map +1 -1
  22. package/dist/src/gateway/claude-runtime.d.ts +0 -20
  23. package/dist/src/gateway/claude-runtime.js +6 -127
  24. package/dist/src/gateway/claude-runtime.js.map +1 -1
  25. package/dist/src/gateway/cli-copy.d.ts +1 -1
  26. package/dist/src/gateway/cli-copy.en.d.ts +3 -1
  27. package/dist/src/gateway/cli-copy.en.js +5 -2
  28. package/dist/src/gateway/cli-copy.en.js.map +1 -1
  29. package/dist/src/gateway/cli-copy.js +2 -0
  30. package/dist/src/gateway/cli-copy.js.map +1 -1
  31. package/dist/src/gateway/cli-copy.zh-CN.d.ts +3 -1
  32. package/dist/src/gateway/cli-copy.zh-CN.js +5 -2
  33. package/dist/src/gateway/cli-copy.zh-CN.js.map +1 -1
  34. package/dist/src/gateway/cli.d.ts +2 -2
  35. package/dist/src/gateway/cli.js +73 -6
  36. package/dist/src/gateway/cli.js.map +1 -1
  37. package/dist/src/gateway/codex-app-server.d.ts +5 -74
  38. package/dist/src/gateway/codex-app-server.js +9 -599
  39. package/dist/src/gateway/codex-app-server.js.map +1 -1
  40. package/dist/src/gateway/codex-doctor.d.ts +33 -0
  41. package/dist/src/gateway/codex-doctor.js +148 -0
  42. package/dist/src/gateway/codex-doctor.js.map +1 -0
  43. package/dist/src/gateway/codex-local-transport.d.ts +13 -26
  44. package/dist/src/gateway/codex-local-transport.js +31 -76
  45. package/dist/src/gateway/codex-local-transport.js.map +1 -1
  46. package/dist/src/gateway/compatibility.d.ts +6 -66
  47. package/dist/src/gateway/compatibility.js +14 -296
  48. package/dist/src/gateway/compatibility.js.map +1 -1
  49. package/dist/src/gateway/config.d.ts +9 -0
  50. package/dist/src/gateway/config.js +6 -2
  51. package/dist/src/gateway/config.js.map +1 -1
  52. package/dist/src/gateway/control.d.ts +16 -1
  53. package/dist/src/gateway/control.js +128 -59
  54. package/dist/src/gateway/control.js.map +1 -1
  55. package/dist/src/gateway/dashboard-copy.d.ts +1 -1
  56. package/dist/src/gateway/dashboard-copy.en.d.ts +19 -44
  57. package/dist/src/gateway/dashboard-copy.en.js +42 -67
  58. package/dist/src/gateway/dashboard-copy.en.js.map +1 -1
  59. package/dist/src/gateway/dashboard-copy.js +19 -44
  60. package/dist/src/gateway/dashboard-copy.js.map +1 -1
  61. package/dist/src/gateway/dashboard-copy.zh-CN.d.ts +19 -44
  62. package/dist/src/gateway/dashboard-copy.zh-CN.js +42 -67
  63. package/dist/src/gateway/dashboard-copy.zh-CN.js.map +1 -1
  64. package/dist/src/gateway/dashboard-model.d.ts +41 -76
  65. package/dist/src/gateway/dashboard-model.js +167 -257
  66. package/dist/src/gateway/dashboard-model.js.map +1 -1
  67. package/dist/src/gateway/dashboard.d.ts +0 -3
  68. package/dist/src/gateway/dashboard.js +77 -76
  69. package/dist/src/gateway/dashboard.js.map +1 -1
  70. package/dist/src/gateway/deepseek-detect.d.ts +7 -6
  71. package/dist/src/gateway/deepseek-detect.js +31 -115
  72. package/dist/src/gateway/deepseek-detect.js.map +1 -1
  73. package/dist/src/gateway/live-dashboard-app/app.js +175 -621
  74. package/dist/src/gateway/live-dashboard-command.js +2 -4
  75. package/dist/src/gateway/live-dashboard-command.js.map +1 -1
  76. package/dist/src/gateway/live-dashboard-http.d.ts +1 -2
  77. package/dist/src/gateway/live-dashboard-http.js +14 -15
  78. package/dist/src/gateway/live-dashboard-http.js.map +1 -1
  79. package/dist/src/gateway/progress-watch-machine.d.ts +1 -4
  80. package/dist/src/gateway/progress-watch-machine.js.map +1 -1
  81. package/dist/src/gateway/provenance-envelope.d.ts +3 -2
  82. package/dist/src/gateway/provenance-envelope.js +44 -11
  83. package/dist/src/gateway/provenance-envelope.js.map +1 -1
  84. package/dist/src/gateway/providers.d.ts +19 -85
  85. package/dist/src/gateway/providers.js +132 -835
  86. package/dist/src/gateway/providers.js.map +1 -1
  87. package/dist/src/gateway/server.d.ts +8 -9
  88. package/dist/src/gateway/server.js +63 -99
  89. package/dist/src/gateway/server.js.map +1 -1
  90. package/dist/src/gateway/service.d.ts +48 -51
  91. package/dist/src/gateway/service.js +748 -540
  92. package/dist/src/gateway/service.js.map +1 -1
  93. package/dist/src/gateway/store.d.ts +20 -29
  94. package/dist/src/gateway/store.js +306 -838
  95. package/dist/src/gateway/store.js.map +1 -1
  96. package/dist/src/gateway/types.d.ts +63 -54
  97. package/dist/src/gateway/types.js +51 -91
  98. package/dist/src/gateway/types.js.map +1 -1
  99. package/docs/CONFIGURATION.md +11 -10
  100. package/docs/CONFIGURATION.zh-CN.md +10 -9
  101. package/docs/DASHBOARD.md +4 -38
  102. package/docs/DASHBOARD.zh-CN.md +4 -2
  103. package/docs/GATEWAY-ARCHITECTURE.md +61 -119
  104. package/package.json +1 -1
  105. package/skills/embassy-peer/SKILL.md +6 -6
@@ -1,305 +1,23 @@
1
- import { BridgeError } from "../errors.js";
2
- export const compatibilitySurfaceDefinitions = [
3
- { surface: "claude", required: true },
4
- { surface: "codex", required: true },
5
- { surface: "deepseek", required: false },
6
- ];
7
- export const compatibilitySurfaces = Object.freeze(compatibilitySurfaceDefinitions.map(({ surface }) => surface));
8
- /** Exact upstream builds exercised by this release's deterministic suite. */
9
- export const certifiedCompatibilityVersions = Object.freeze({
10
- claude: Object.freeze(["2.1.227"]),
11
- codex: Object.freeze(["0.147.0"]),
12
- deepseek: Object.freeze([]),
13
- });
1
+ export const compatibilitySurfaces = Object.freeze([
2
+ "claude",
3
+ "codex",
4
+ "deepseek",
5
+ ]);
14
6
  /** Bounded evidence used when a version banner is present but not parseable. */
15
7
  export const UNKNOWN_COMPATIBILITY_VERSION = "unknown";
16
- export const compatibilityTiers = [
17
- "certified",
18
- "schema_attested",
19
- "incompatible",
20
- ];
21
- export const compatibilityProbeNames = {
22
- claude: [
23
- "launcher",
24
- "version",
25
- "registry_schema",
26
- "messaging_socket",
27
- "protocol_constants",
28
- ],
29
- codex: [
30
- "installation",
31
- "control_socket",
32
- "initialize",
33
- "thread_list",
34
- ],
35
- deepseek: ["installation", "harness_home", "version"],
36
- };
37
- const compatibilityOptionalProbeNames = {
38
- claude: [],
39
- codex: ["write_attestation"],
40
- deepseek: [],
41
- };
42
8
  const VERSION_PATTERN = /^(?=.{1,128}$)([0-9]{1,4})\.([0-9]{1,4})\.([0-9]{1,4})(?:-([0-9A-Za-z-]{1,64}(?:\.[0-9A-Za-z-]{1,64}){0,7}))?$/;
43
- const SAFE_CODE_PATTERN = /^[A-Z][A-Z0-9_]{0,63}$/;
44
- const PERSISTED_PROBE_NAME_PATTERN = /^[a-z][a-z0-9_]{0,63}$/;
45
- const PERSISTED_PROBE_CAPACITY = 32;
46
- function legacyVersionDriftCode(surface) {
47
- switch (surface) {
48
- case "claude":
49
- return "CLAUDE_VERSION_DRIFT";
50
- case "codex":
51
- return "CODEX_VERSION_DRIFT";
52
- case "deepseek":
53
- return "DEEPSEEK_HARNESS_VERSION_DRIFT";
54
- }
55
- const exhaustive = surface;
56
- return exhaustive;
57
- }
58
- function unsupportedVersionCode(surface, version, certifiedVersions = certifiedCompatibilityVersions[surface]) {
59
- if (version === UNKNOWN_COMPATIBILITY_VERSION) {
60
- switch (surface) {
61
- case "claude":
62
- return "CLAUDE_VERSION_UNPARSEABLE";
63
- case "codex":
64
- return "CODEX_APP_SERVER_VERSION_UNPARSEABLE";
65
- case "deepseek":
66
- return "DEEPSEEK_HARNESS_VERSION_UNPARSEABLE";
67
- }
68
- const exhaustive = surface;
69
- return exhaustive;
70
- }
71
- if (certifiedVersions.some((certifiedVersion) => sharesCompatibilityMajor(certifiedVersion, version))) {
72
- return undefined;
73
- }
74
- switch (surface) {
75
- case "claude":
76
- return "CLAUDE_PEER_VERSION_UNSUPPORTED";
77
- case "codex":
78
- return "CODEX_APP_SERVER_VERSION_UNSUPPORTED";
79
- case "deepseek":
80
- return "DEEPSEEK_HARNESS_VERSION_UNSUPPORTED";
81
- }
82
- const exhaustive = surface;
83
- return exhaustive;
84
- }
85
- function compatibilityVersionParts(version) {
86
- const match = VERSION_PATTERN.exec(version);
87
- const prerelease = match?.[4];
88
- if (match === null ||
89
- prerelease?.split(".").some((identifier) => /^[0-9]+$/.test(identifier) &&
90
- identifier.length > 1 &&
91
- identifier.startsWith("0"))) {
92
- return undefined;
93
- }
94
- return {
95
- major: Number(match[1]),
96
- minor: Number(match[2]),
97
- prerelease: prerelease !== undefined,
98
- };
99
- }
100
- function isStableCompatibilityVersion(version) {
101
- return compatibilityVersionParts(version)?.prerelease === false;
102
- }
103
- function compatibilitySeries(version) {
104
- const parsed = compatibilityVersionParts(version);
105
- if (parsed === undefined)
106
- return undefined;
107
- return parsed.major === 0 ? `0.${parsed.minor}` : String(parsed.major);
108
- }
109
9
  export function isCompatibilityVersion(value) {
110
- return (typeof value === "string" &&
111
- compatibilityVersionParts(value) !== undefined);
112
- }
113
- export function isCompatibilityVersionEvidence(value) {
114
- return value === UNKNOWN_COMPATIBILITY_VERSION || isCompatibilityVersion(value);
115
- }
116
- export function sharesCompatibilityMajor(left, right) {
117
- const leftSeries = compatibilitySeries(left);
118
- return leftSeries !== undefined && leftSeries === compatibilitySeries(right);
119
- }
120
- function hasCurrentProbeSequence(surface, probes) {
121
- const required = compatibilityProbeNames[surface];
122
- const optional = compatibilityOptionalProbeNames[surface];
123
- const suffix = probes.slice(required.length);
124
- return !(probes.length < required.length ||
125
- probes.length > required.length + optional.length ||
126
- required.some((name, index) => probes[index]?.name !== name)) && suffix.every((probe, index) => optional.indexOf(probe.name) >
127
- optional.indexOf(suffix[index - 1]?.name ?? "") &&
128
- probe.outcome === "pass" && probe.safeErrorCode === undefined);
129
- }
130
- function normalizeProbes(surface, probes) {
131
- if (!hasCurrentProbeSequence(surface, probes) ||
132
- probes.some((probe) => (probe.outcome !== "pass" && probe.outcome !== "fail") ||
133
- (probe.safeErrorCode !== undefined &&
134
- !SAFE_CODE_PATTERN.test(probe.safeErrorCode)) ||
135
- (probe.outcome === "pass" && probe.safeErrorCode !== undefined) ||
136
- (probe.outcome === "fail" && probe.safeErrorCode === undefined))) {
137
- throw new BridgeError("COMPAT_PROBE_SET_INVALID", "Compatibility probes must contain the exact ordered surface probe set plus known passing optional probes.");
138
- }
139
- return probes.map((probe) => Object.freeze({ ...probe }));
140
- }
141
- function persistedProbeSet(value) {
142
- if (value.length === 0 || value.length > PERSISTED_PROBE_CAPACITY) {
143
- return undefined;
144
- }
145
- const names = new Set();
146
- for (const candidate of value) {
147
- if (typeof candidate !== "object" ||
148
- candidate === null ||
149
- Array.isArray(candidate)) {
150
- return undefined;
151
- }
152
- const probe = candidate;
153
- const keys = Object.keys(probe);
154
- if (keys.length !== (probe.safeErrorCode === undefined ? 2 : 3) ||
155
- keys.some((key) => key !== "name" && key !== "outcome" && key !== "safeErrorCode") ||
156
- typeof probe.name !== "string" ||
157
- !PERSISTED_PROBE_NAME_PATTERN.test(probe.name) ||
158
- names.has(probe.name) ||
159
- (probe.outcome !== "pass" && probe.outcome !== "fail") ||
160
- (probe.safeErrorCode !== undefined &&
161
- (typeof probe.safeErrorCode !== "string" ||
162
- !SAFE_CODE_PATTERN.test(probe.safeErrorCode))) ||
163
- (probe.outcome === "pass") !== (probe.safeErrorCode === undefined)) {
164
- return undefined;
165
- }
166
- names.add(probe.name);
167
- }
168
- return value;
169
- }
170
- export function evaluateCompatibilityAttestation(input) {
171
- const observedAt = Date.parse(input.checkedAt);
172
- if (!Number.isFinite(observedAt) ||
173
- new Date(observedAt).toISOString() !== input.checkedAt) {
174
- throw new BridgeError("COMPAT_TIMESTAMP_INVALID", "Compatibility evidence requires a valid timestamp.");
175
- }
176
- if (!isCompatibilityVersionEvidence(input.version)) {
177
- throw new BridgeError("COMPAT_VERSION_INVALID", "Compatibility versions must be bounded semantic versions or explicit unknown evidence.");
178
- }
179
- const certified = new Set(input.certifiedVersions);
180
- if (certified.size !== input.certifiedVersions.length ||
181
- (input.certifiedVersions.length === 0 &&
182
- compatibilitySurfaceDefinitions.find(({ surface }) => surface === input.surface)?.required !== false) ||
183
- input.certifiedVersions.some((version) => !isStableCompatibilityVersion(version))) {
184
- throw new BridgeError("COMPAT_CERTIFIED_SET_INVALID", "The certified version inventory must be nonempty, unique, stable, and bounded.");
185
- }
186
- const normalizedProbes = normalizeProbes(input.surface, input.probes);
187
- const failed = normalizedProbes.find((probe) => probe.outcome === "fail");
188
- let tier;
189
- let safeErrorCode;
190
- if (failed !== undefined) {
191
- tier = "incompatible";
192
- safeErrorCode = failed.safeErrorCode;
193
- }
194
- else if (certified.has(input.version)) {
195
- tier = "certified";
196
- }
197
- else {
198
- safeErrorCode = unsupportedVersionCode(input.surface, input.version, input.certifiedVersions);
199
- tier = safeErrorCode === undefined ? "schema_attested" : "incompatible";
200
- }
201
- return Object.freeze({
202
- schemaVersion: 1,
203
- surface: input.surface,
204
- version: input.version,
205
- tier,
206
- checkedAt: new Date(observedAt).toISOString(),
207
- probes: normalizedProbes,
208
- ...(safeErrorCode === undefined ? {} : { safeErrorCode }),
209
- });
210
- }
211
- /**
212
- * Validate the immutable evidence carried by a persisted attestation without
213
- * consulting this build's release inventory. A release may later certify or
214
- * stop certifying the observed version; neither change can corrupt evidence
215
- * written by an earlier release.
216
- */
217
- export function isPersistedCompatibilityAttestation(value) {
218
- if (typeof value !== "object" || value === null || Array.isArray(value)) {
219
- return false;
220
- }
221
- const candidate = value;
222
- const keys = Object.keys(candidate);
223
- const expected = new Set([
224
- "schemaVersion",
225
- "surface",
226
- "version",
227
- "tier",
228
- "checkedAt",
229
- "probes",
230
- ...(candidate.safeErrorCode === undefined ? [] : ["safeErrorCode"]),
231
- ]);
232
- if (keys.length !== expected.size || keys.some((key) => !expected.has(key))) {
233
- return false;
234
- }
235
- if (candidate.schemaVersion !== 1 ||
236
- !compatibilitySurfaces.includes(candidate.surface) ||
237
- !isCompatibilityVersionEvidence(candidate.version) ||
238
- !compatibilityTiers.includes(candidate.tier) ||
239
- typeof candidate.checkedAt !== "string" ||
240
- !Number.isFinite(Date.parse(candidate.checkedAt)) ||
241
- new Date(Date.parse(candidate.checkedAt)).toISOString() !==
242
- candidate.checkedAt ||
243
- !Array.isArray(candidate.probes) ||
244
- (candidate.safeErrorCode !== undefined &&
245
- (typeof candidate.safeErrorCode !== "string" ||
246
- !SAFE_CODE_PATTERN.test(candidate.safeErrorCode)))) {
10
+ if (typeof value !== "string")
247
11
  return false;
248
- }
249
- try {
250
- const persistedProbes = persistedProbeSet(candidate.probes);
251
- if (persistedProbes === undefined)
252
- return false;
253
- const failed = persistedProbes.find((probe) => probe.outcome === "fail");
254
- if (candidate.tier === "certified") {
255
- return (failed === undefined &&
256
- isStableCompatibilityVersion(candidate.version) &&
257
- candidate.safeErrorCode === undefined);
258
- }
259
- if (candidate.tier === "incompatible") {
260
- if (failed !== undefined) {
261
- return candidate.safeErrorCode === failed.safeErrorCode;
262
- }
263
- return candidate.safeErrorCode !== undefined;
264
- }
265
- return (failed === undefined &&
266
- candidate.safeErrorCode === undefined &&
267
- candidate.version !== UNKNOWN_COMPATIBILITY_VERSION);
268
- }
269
- catch {
12
+ const match = VERSION_PATTERN.exec(value);
13
+ if (match === null)
270
14
  return false;
271
- }
15
+ const prerelease = match[4];
16
+ return prerelease === undefined || !prerelease.split(".").some((identifier) => /^[0-9]+$/.test(identifier) &&
17
+ identifier.length > 1 &&
18
+ identifier.startsWith("0"));
272
19
  }
273
- /** Validate a fresh attestation against this build's admission policy. */
274
- export function isCompatibilityAttestation(value) {
275
- if (!isPersistedCompatibilityAttestation(value))
276
- return false;
277
- if (!hasCurrentProbeSequence(value.surface, value.probes)) {
278
- return false;
279
- }
280
- if (value.tier === "certified") {
281
- return certifiedCompatibilityVersions[value.surface]
282
- .includes(value.version);
283
- }
284
- if (value.tier === "incompatible") {
285
- if (value.probes.some((probe) => probe.outcome === "fail"))
286
- return true;
287
- return (value.safeErrorCode ===
288
- unsupportedVersionCode(value.surface, value.version) ||
289
- (value.version !== UNKNOWN_COMPATIBILITY_VERSION &&
290
- value.safeErrorCode === legacyVersionDriftCode(value.surface)));
291
- }
292
- return (!certifiedCompatibilityVersions[value.surface]
293
- .includes(value.version) &&
294
- unsupportedVersionCode(value.surface, value.version) === undefined);
295
- }
296
- export function compatibilityCoversWrites(attestation) {
297
- return (attestation.surface === "codex" &&
298
- isStableCompatibilityVersion(attestation.version) &&
299
- attestation.tier === "schema_attested" &&
300
- attestation.probes.some((probe) => probe.name === "write_attestation" && probe.outcome === "pass"));
301
- }
302
- export function compatibilityCacheKey(attestation) {
303
- return `${attestation.surface}\0${attestation.version}`;
20
+ export function isCompatibilityVersionEvidence(value) {
21
+ return (value === UNKNOWN_COMPATIBILITY_VERSION || isCompatibilityVersion(value));
304
22
  }
305
23
  //# sourceMappingURL=compatibility.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"compatibility.js","sourceRoot":"","sources":["../../../src/gateway/compatibility.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"compatibility.js","sourceRoot":"","sources":["../../../src/gateway/compatibility.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,qBAAqB,GAAG,MAAM,CAAC,MAAM,CAAC;IACjD,QAAQ;IACR,OAAO;IACP,UAAU;CACF,CAAC,CAAC;AAIZ,gFAAgF;AAChF,MAAM,CAAC,MAAM,6BAA6B,GAAG,SAAkB,CAAC;AAqBhE,MAAM,eAAe,GACnB,gHAAgH,CAAC;AAEnH,MAAM,UAAU,sBAAsB,CAAC,KAAc;IACnD,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC;IAC5C,MAAM,KAAK,GAAG,eAAe,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC1C,IAAI,KAAK,KAAK,IAAI;QAAE,OAAO,KAAK,CAAC;IACjC,MAAM,UAAU,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;IAC5B,OAAO,UAAU,KAAK,SAAS,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,CAC5D,CAAC,UAAU,EAAE,EAAE,CACb,UAAU,CAAC,IAAI,CAAC,UAAU,CAAC;QAC3B,UAAU,CAAC,MAAM,GAAG,CAAC;QACrB,UAAU,CAAC,UAAU,CAAC,GAAG,CAAC,CAC7B,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,8BAA8B,CAC5C,KAAc;IAEd,OAAO,CACL,KAAK,KAAK,6BAA6B,IAAI,sBAAsB,CAAC,KAAK,CAAC,CACzE,CAAC;AACJ,CAAC"}
@@ -1,6 +1,13 @@
1
1
  import { type GatewayInboundMode, type GatewayStoreLimits } from "./types.js";
2
+ import type { AcpLaunchSpec } from "./acp-client.js";
2
3
  export declare const gatewayDeliveryNoticeModes: readonly ["merged", "verbose", "quiet"];
3
4
  export type GatewayDeliveryNoticeMode = (typeof gatewayDeliveryNoticeModes)[number];
5
+ export type GatewayAcpProviderConfig = Readonly<{
6
+ provider: "deepseek" | "grok";
7
+ alias: string;
8
+ /** Test/operator injection; omitted entries use the reviewed provider default. */
9
+ launch?: AcpLaunchSpec;
10
+ }>;
4
11
  export type GatewayConfig = {
5
12
  stateDir: string;
6
13
  controlSocketPath: string;
@@ -15,6 +22,8 @@ export type GatewayConfig = {
15
22
  stallNoticeMs: number;
16
23
  /** Native Claude sender notice policy; omitted injected configs mean merged. */
17
24
  deliveryNotices?: GatewayDeliveryNoticeMode;
25
+ /** Embassy-owned ACP routes exist at boot and spawn only on first dispatch. */
26
+ acpProviders?: readonly GatewayAcpProviderConfig[];
18
27
  limits: GatewayStoreLimits;
19
28
  };
20
29
  export declare function defaultGatewayStateDir(env?: NodeJS.ProcessEnv): string;
@@ -73,7 +73,7 @@ export function loadGatewayConfig(env = process.env) {
73
73
  const stallNoticeMs = Math.min(Math.floor(messageDeadlineMs / 2), 120_000);
74
74
  const limits = {
75
75
  maxRoutes: boundedInteger("EMBASSY_MAX_ROUTES", env.EMBASSY_MAX_ROUTES, 128, 2, gatewayPublicSnapshotLimits.routes),
76
- maxPairs: boundedInteger("EMBASSY_MAX_PAIRS", env.EMBASSY_MAX_PAIRS, 128, 1, gatewayPublicSnapshotLimits.pairs),
76
+ maxConsentEdges: boundedInteger("EMBASSY_MAX_PAIRS", env.EMBASSY_MAX_PAIRS, 128, 1, gatewayPublicSnapshotLimits.consentEdges),
77
77
  maxWatches: boundedInteger("EMBASSY_MAX_WATCHES", env.EMBASSY_MAX_WATCHES, PROGRESS_WATCH_DEFAULT_CAPACITY, 1, PROGRESS_WATCH_HARD_CAPACITY),
78
78
  eventCapacity: boundedInteger("EMBASSY_EVENT_CAPACITY", env.EMBASSY_EVENT_CAPACITY, 500, 10, gatewayPublicSnapshotLimits.messages),
79
79
  eventTtlMs: boundedInteger("EMBASSY_EVENT_TTL_MS", env.EMBASSY_EVENT_TTL_MS, 86_400_000, 60_000, 604_800_000),
@@ -100,7 +100,7 @@ export function loadGatewayConfig(env = process.env) {
100
100
  const conservativeStateBudget = limits.eventCapacity * 512 +
101
101
  limits.dedupeCapacity * 384 +
102
102
  limits.maxRoutes * 1_024 +
103
- limits.maxPairs * 512 +
103
+ limits.maxConsentEdges * 512 +
104
104
  (limits.maxWatches ?? PROGRESS_WATCH_DEFAULT_CAPACITY) * 768 +
105
105
  limits.maxQueueMessages * 512 +
106
106
  limits.maxRoutes * 256;
@@ -116,6 +116,10 @@ export function loadGatewayConfig(env = process.env) {
116
116
  inboundMode: "paired",
117
117
  stallNoticeMs,
118
118
  deliveryNotices: deliveryNoticeMode(env.EMBASSY_DELIVERY_NOTICES),
119
+ acpProviders: Object.freeze([
120
+ { provider: "deepseek", alias: "dsh-main@this-mac" },
121
+ { provider: "grok", alias: "grok-main@this-mac" },
122
+ ]),
119
123
  limits,
120
124
  };
121
125
  }
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../../../src/gateway/config.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../../../src/gateway/config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAC3C,OAAO,EACL,2BAA2B,GAG5B,MAAM,YAAY,CAAC;AACpB,OAAO,EACL,+BAA+B,EAC/B,4BAA4B,GAC7B,MAAM,6BAA6B,CAAC;AAGrC,MAAM,CAAC,MAAM,0BAA0B,GAAG;IACxC,QAAQ;IACR,SAAS;IACT,OAAO;CACC,CAAC;AA+BX,MAAM,YAAY,GAAG,yCAAyC,CAAC;AAC/D,MAAM,2BAA2B,GAAG,CAAC,GAAG,IAAI,GAAG,IAAI,CAAC;AACpD,SAAS,cAAc,CACrB,IAAY,EACZ,KAAyB,EACzB,QAAgB,EAChB,OAAe,EACf,OAAe;IAEf,IAAI,KAAK,KAAK,SAAS;QAAE,OAAO,QAAQ,CAAC;IACzC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;QACzB,MAAM,IAAI,WAAW,CACnB,+BAA+B,EAC/B,GAAG,IAAI,4BAA4B,OAAO,YAAY,OAAO,GAAG,CACjE,CAAC;IACJ,CAAC;IACD,MAAM,MAAM,GAAG,MAAM,CAAC,QAAQ,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;IAC1C,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,MAAM,GAAG,OAAO,IAAI,MAAM,GAAG,OAAO,EAAE,CAAC;QAC1E,MAAM,IAAI,WAAW,CACnB,+BAA+B,EAC/B,GAAG,IAAI,4BAA4B,OAAO,YAAY,OAAO,GAAG,CACjE,CAAC;IACJ,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,MAAM,UAAU,sBAAsB,CACpC,MAAyB,OAAO,CAAC,GAAG;IAEpC,IACE,CAAC,GAAG,CAAC,iBAAiB,KAAK,SAAS;QAClC,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;QAC1C,CAAC,GAAG,CAAC,cAAc,KAAK,SAAS;YAC/B,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC,EACvC,CAAC;QACD,MAAM,IAAI,WAAW,CACnB,+BAA+B,EAC/B,+DAA+D,CAChE,CAAC;IACJ,CAAC;IACD,OAAO,CACL,GAAG,CAAC,iBAAiB;QACrB,CAAC,GAAG,CAAC,cAAc;YACjB,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,cAAc,EAAE,eAAe,CAAC;YAChD,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE,eAAe,CAAC,CAAC,CACjE,CAAC;AACJ,CAAC;AAED,SAAS,iBAAiB,CAAC,KAAyB;IAClD,MAAM,KAAK,GAAG,CAAC,KAAK,IAAI,UAAU,CAAC;SAChC,KAAK,CAAC,GAAG,CAAC;SACV,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;SAC1B,MAAM,CAAC,OAAO,CAAC,CAAC;IACnB,IACE,KAAK,CAAC,MAAM,KAAK,CAAC;QAClB,KAAK,CAAC,MAAM,GAAG,EAAE;QACjB,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC9C,IAAI,GAAG,CAAC,KAAK,CAAC,CAAC,IAAI,KAAK,KAAK,CAAC,MAAM,EACpC,CAAC;QACD,MAAM,IAAI,WAAW,CACnB,+BAA+B,EAC/B,kGAAkG,CACnG,CAAC;IACJ,CAAC;IACD,OAAO,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC;AACnC,CAAC;AAED,SAAS,gBAAgB,CAAC,IAAY,EAAE,KAAyB;IAC/D,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,GAAG;QAAE,OAAO,IAAI,CAAC;IACtD,IAAI,KAAK,KAAK,GAAG;QAAE,OAAO,KAAK,CAAC;IAChC,MAAM,IAAI,WAAW,CACnB,+BAA+B,EAC/B,GAAG,IAAI,mCAAmC,CAC3C,CAAC;AACJ,CAAC;AAED,SAAS,kBAAkB,CACzB,KAAyB;IAEzB,MAAM,SAAS,GAAG,KAAK,IAAI,QAAQ,CAAC;IACpC,IACE,0BAA0B,CAAC,QAAQ,CACjC,SAAsC,CACvC,EACD,CAAC;QACD,OAAO,SAAsC,CAAC;IAChD,CAAC;IACD,MAAM,IAAI,WAAW,CACnB,+BAA+B,EAC/B,qEAAqE,CACtE,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,iBAAiB,CAC/B,MAAyB,OAAO,CAAC,GAAG;IAEpC,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,sBAAsB,CAAC,GAAG,CAAC,CAAC,CAAC;IAC3D,MAAM,iBAAiB,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,cAAc,CAAC,CAAC;IAC9D,IAAI,MAAM,CAAC,UAAU,CAAC,iBAAiB,CAAC,GAAG,GAAG,EAAE,CAAC;QAC/C,MAAM,IAAI,WAAW,CACnB,+BAA+B,EAC/B,uFAAuF,CACxF,CAAC;IACJ,CAAC;IAED,MAAM,iBAAiB,GAAG,cAAc,CACtC,6BAA6B,EAC7B,GAAG,CAAC,2BAA2B,EAC/B,UAAU,EACV,KAAK,EACL,UAAU,CACX,CAAC;IACF,yEAAyE;IACzE,6EAA6E;IAC7E,MAAM,aAAa,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,iBAAiB,GAAG,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC;IAE3E,MAAM,MAAM,GAAuB;QACjC,SAAS,EAAE,cAAc,CACvB,oBAAoB,EACpB,GAAG,CAAC,kBAAkB,EACtB,GAAG,EACH,CAAC,EACD,2BAA2B,CAAC,MAAM,CACnC;QACD,eAAe,EAAE,cAAc,CAC7B,mBAAmB,EACnB,GAAG,CAAC,iBAAiB,EACrB,GAAG,EACH,CAAC,EACD,2BAA2B,CAAC,YAAY,CACzC;QACD,UAAU,EAAE,cAAc,CACxB,qBAAqB,EACrB,GAAG,CAAC,mBAAmB,EACvB,+BAA+B,EAC/B,CAAC,EACD,4BAA4B,CAC7B;QACD,aAAa,EAAE,cAAc,CAC3B,wBAAwB,EACxB,GAAG,CAAC,sBAAsB,EAC1B,GAAG,EACH,EAAE,EACF,2BAA2B,CAAC,QAAQ,CACrC;QACD,UAAU,EAAE,cAAc,CACxB,sBAAsB,EACtB,GAAG,CAAC,oBAAoB,EACxB,UAAU,EACV,MAAM,EACN,WAAW,CACZ;QACD,cAAc,EAAE,cAAc,CAC5B,yBAAyB,EACzB,GAAG,CAAC,uBAAuB,EAC3B,KAAK,EACL,EAAE,EACF,OAAO,CACR;QACD,WAAW,EAAE,cAAc,CACzB,uBAAuB,EACvB,GAAG,CAAC,qBAAqB,EACzB,OAAO,EACP,KAAK,EACL,UAAU,CACX;QACD,gBAAgB,EAAE,cAAc,CAC9B,4BAA4B,EAC5B,GAAG,CAAC,0BAA0B,EAC9B,GAAG,EACH,CAAC,EACD,MAAM,CACP;QACD,wBAAwB,EAAE,cAAc,CACtC,6BAA6B,EAC7B,GAAG,CAAC,2BAA2B,EAC/B,EAAE,EACF,CAAC,EACD,KAAK,CACN;QACD,mBAAmB,EAAE,cAAc,CACjC,uBAAuB,EACvB,GAAG,CAAC,qBAAqB,EACzB,EAAE,EACF,CAAC,EACD,KAAK,CACN;QACD,aAAa,EAAE,cAAc,CAC3B,yBAAyB,EACzB,GAAG,CAAC,uBAAuB,EAC3B,SAAS,EACT,KAAK,EACL,UAAU,CACX;QACD,eAAe,EAAE,cAAc,CAC7B,2BAA2B,EAC3B,GAAG,CAAC,yBAAyB,EAC7B,MAAM,EACN,CAAC,EACD,SAAS,CACV;QACD,iBAAiB;QACjB,iBAAiB,EAAE,cAAc,CAC/B,oBAAoB,EACpB,GAAG,CAAC,kBAAkB,EACtB,EAAE,EACF,CAAC,EACD,MAAM,CACP;QACD,YAAY,EAAE,cAAc,CAC1B,wBAAwB,EACxB,GAAG,CAAC,sBAAsB,EAC1B,MAAM,EACN,KAAK,EACL,SAAS,CACV;KACF,CAAC;IACF,IAAI,MAAM,CAAC,eAAe,GAAG,MAAM,CAAC,aAAa,EAAE,CAAC;QAClD,MAAM,IAAI,WAAW,CACnB,+BAA+B,EAC/B,kEAAkE,CACnE,CAAC;IACJ,CAAC;IACD,IAAI,MAAM,CAAC,wBAAwB,GAAG,MAAM,CAAC,gBAAgB,EAAE,CAAC;QAC9D,MAAM,IAAI,WAAW,CACnB,+BAA+B,EAC/B,uEAAuE,CACxE,CAAC;IACJ,CAAC;IACD,IAAI,MAAM,CAAC,mBAAmB,GAAG,MAAM,CAAC,gBAAgB,EAAE,CAAC;QACzD,MAAM,IAAI,WAAW,CACnB,+BAA+B,EAC/B,iEAAiE,CAClE,CAAC;IACJ,CAAC;IACD,MAAM,uBAAuB,GAC3B,MAAM,CAAC,aAAa,GAAG,GAAG;QAC1B,MAAM,CAAC,cAAc,GAAG,GAAG;QAC3B,MAAM,CAAC,SAAS,GAAG,KAAK;QACxB,MAAM,CAAC,eAAe,GAAG,GAAG;QAC5B,CAAC,MAAM,CAAC,UAAU,IAAI,+BAA+B,CAAC,GAAG,GAAG;QAC5D,MAAM,CAAC,gBAAgB,GAAG,GAAG;QAC7B,MAAM,CAAC,SAAS,GAAG,GAAG,CAAC;IACzB,IAAI,uBAAuB,GAAG,2BAA2B,EAAE,CAAC;QAC1D,MAAM,IAAI,WAAW,CACnB,+BAA+B,EAC/B,uGAAuG,CACxG,CAAC;IACJ,CAAC;IAED,OAAO;QACL,QAAQ;QACR,iBAAiB;QACjB,YAAY,EAAE,iBAAiB,CAAC,GAAG,CAAC,aAAa,CAAC;QAClD,eAAe,EAAE,gBAAgB,CAC/B,0BAA0B,EAC1B,GAAG,CAAC,wBAAwB,CAC7B;QACD,eAAe,EAAE,gBAAgB,CAC/B,0BAA0B,EAC1B,GAAG,CAAC,wBAAwB,CAC7B;QACD,WAAW,EAAE,QAAQ;QACrB,aAAa;QACb,eAAe,EAAE,kBAAkB,CAAC,GAAG,CAAC,wBAAwB,CAAC;QACjE,YAAY,EAAE,MAAM,CAAC,MAAM,CAAC;YAC1B,EAAE,QAAQ,EAAE,UAAU,EAAE,KAAK,EAAE,mBAAmB,EAAE;YACpD,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,oBAAoB,EAAE;SAClD,CAAC;QACF,MAAM;KACP,CAAC;AACJ,CAAC"}
@@ -36,12 +36,27 @@ export type SelectClaudeParams = {
36
36
  /** Optional inherited Codex task identity used for fail-closed inference. */
37
37
  codexThreadId?: string;
38
38
  };
39
- export type PairParams = {
39
+ export type LegacyPairParams = {
40
40
  claudeAlias: string;
41
41
  codexAlias: string;
42
42
  /** Optional task attestation: when supplied it must match the alias's live registered thread exactly; when omitted, pairing binds to the alias's live registered endpoint without thread attestation. */
43
43
  codexThreadId?: string;
44
44
  };
45
+ export type GenericPairParams = {
46
+ aliases: readonly [string, string];
47
+ /** Optional exact Codex task attestation. Provider truth is checked by the service route binding. */
48
+ threadAttestation?: Readonly<{
49
+ alias: string;
50
+ threadId: string;
51
+ }>;
52
+ };
53
+ /** The legacy arm remains wire-compatible; new providers use the neutral arm. */
54
+ export type PairParams = LegacyPairParams | GenericPairParams;
55
+ export declare function pairParamAliases(params: Readonly<PairParams>): readonly [string, string];
56
+ export declare function pairParamThreadAttestation(params: Readonly<PairParams>): Readonly<{
57
+ alias: string;
58
+ threadId: string;
59
+ }> | undefined;
45
60
  export type SendToClaudeParams = {
46
61
  fromAlias: string;
47
62
  threadId: string;