zcode-acp-server 0.76.3 → 0.78.0

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 (65) hide show
  1. package/README.md +67 -29
  2. package/README.zh-CN.md +22 -22
  3. package/dist/account-setup.d.ts +9 -0
  4. package/dist/account-setup.d.ts.map +1 -0
  5. package/dist/account-setup.js +80 -0
  6. package/dist/account-setup.js.map +1 -0
  7. package/dist/backend/credentials.d.ts +3 -3
  8. package/dist/backend/credentials.d.ts.map +1 -1
  9. package/dist/backend/credentials.js +5 -5
  10. package/dist/backend/credentials.js.map +1 -1
  11. package/dist/cli.d.ts +3 -0
  12. package/dist/cli.d.ts.map +1 -1
  13. package/dist/cli.js +9 -1
  14. package/dist/cli.js.map +1 -1
  15. package/dist/code-fingerprint.json +2 -2
  16. package/dist/config/account-provider.d.ts +45 -0
  17. package/dist/config/account-provider.d.ts.map +1 -1
  18. package/dist/config/account-provider.js +155 -8
  19. package/dist/config/account-provider.js.map +1 -1
  20. package/dist/config/bridge-accounts.d.ts +40 -0
  21. package/dist/config/bridge-accounts.d.ts.map +1 -0
  22. package/dist/config/bridge-accounts.js +193 -0
  23. package/dist/config/bridge-accounts.js.map +1 -0
  24. package/dist/config/options.d.ts.map +1 -1
  25. package/dist/config/options.js +2 -1
  26. package/dist/config/options.js.map +1 -1
  27. package/dist/config/provider-registry.d.ts.map +1 -1
  28. package/dist/config/provider-registry.js +2 -2
  29. package/dist/config/provider-registry.js.map +1 -1
  30. package/dist/handlers/authenticate.d.ts +17 -0
  31. package/dist/handlers/authenticate.d.ts.map +1 -0
  32. package/dist/handlers/authenticate.js +25 -0
  33. package/dist/handlers/authenticate.js.map +1 -0
  34. package/dist/handlers/replay.d.ts +9 -0
  35. package/dist/handlers/replay.d.ts.map +1 -1
  36. package/dist/handlers/replay.js +28 -7
  37. package/dist/handlers/replay.js.map +1 -1
  38. package/dist/handlers/session.d.ts +0 -26
  39. package/dist/handlers/session.d.ts.map +1 -1
  40. package/dist/handlers/session.js +20 -114
  41. package/dist/handlers/session.js.map +1 -1
  42. package/dist/i18n.d.ts +3 -0
  43. package/dist/i18n.d.ts.map +1 -1
  44. package/dist/i18n.js +4 -0
  45. package/dist/i18n.js.map +1 -1
  46. package/dist/index.d.ts.map +1 -1
  47. package/dist/index.js +5 -0
  48. package/dist/index.js.map +1 -1
  49. package/dist/remote/hub-server.d.ts.map +1 -1
  50. package/dist/remote/hub-server.js +98 -1
  51. package/dist/remote/hub-server.js.map +1 -1
  52. package/dist/remote/session-close-endpoint.d.ts.map +1 -1
  53. package/dist/remote/session-close-endpoint.js +25 -7
  54. package/dist/remote/session-close-endpoint.js.map +1 -1
  55. package/dist/server.d.ts +8 -0
  56. package/dist/server.d.ts.map +1 -1
  57. package/dist/server.js +17 -5
  58. package/dist/server.js.map +1 -1
  59. package/dist/tasks-index.d.ts.map +1 -1
  60. package/dist/tasks-index.js +5 -2
  61. package/dist/tasks-index.js.map +1 -1
  62. package/docs/REMOTE-CLIENTS.md +36 -4
  63. package/docs/REPLAY-GUIDE.md +5 -0
  64. package/docs/TROUBLESHOOTING.md +6 -2
  65. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"account-provider.d.ts","sourceRoot":"","sources":["../../src/config/account-provider.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AAQH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAgFzD;;;;;;GAMG;AACH,wBAAgB,oBAAoB,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,CAiB/D;AAED,+EAA+E;AAC/E,wBAAgB,mBAAmB,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,CAuB9D;AAyHD;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,wBAAwB,CACtC,iBAAiB,EAAE,MAAM,GAAG,SAAS,GACpC;IAAE,MAAM,EAAE,MAAM,CAAA;CAAE,GAAG,IAAI,CAyB3B;AAED,0EAA0E,CAAC,MAAM,WAAW,sBAAsB;IAChH,QAAQ,EAAE,MAAM,CAAC;IACjB,2BAA2B,EAAE,MAAM,CAAC;IACpC,SAAS,EAAE,MAAM,CACf,MAAM,EACN;QAAE,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;QAAC,MAAM,EAAE;YAAE,IAAI,EAAE,MAAM,CAAC;YAAC,QAAQ,EAAE,OAAO,CAAA;SAAE,CAAA;KAAE,CAC5E,CAAC;IACF,MAAM,EAAE,MAAM,CACZ,MAAM,EACN;QACE,YAAY,EAAE,WAAW,GAAG,SAAS,GAAG,aAAa,GAAG,SAAS,CAAC;QAClE,QAAQ,EAAE,OAAO,CAAC;QAClB,OAAO,EAAE,OAAO,CAAC;KAClB,CACF,CAAC;CACH;AAED;;;;GAIG;AACH,wBAAgB,0BAA0B,IAAI,sBAAsB,GAAG,IAAI,CA6B1E;AAED;;;;;GAKG;AACH,wBAAsB,yBAAyB,CAC7C,OAAO,EAAE,YAAY,EACrB,MAAM,EAAE,MAAM,MAAM,GACnB,OAAO,CAAC,OAAO,CAAC,CA2BlB"}
1
+ {"version":3,"file":"account-provider.d.ts","sourceRoot":"","sources":["../../src/config/account-provider.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AAQH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAQzD,8CAA8C;AAC9C,MAAM,WAAW,mBAAmB;IAClC,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,MAAM,CAAC,EAAE;QACP,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;QAC3B,MAAM,CAAC,EAAE;YAAE,IAAI,CAAC,EAAE,MAAM,CAAC;YAAC,IAAI,CAAC,EAAE,MAAM,CAAC;YAAC,WAAW,CAAC,EAAE,MAAM,CAAA;SAAE,CAAC;QAChE,GAAG,CAAC,EAAE;YAAE,IAAI,CAAC,EAAE,MAAM,CAAC;YAAC,OAAO,CAAC,EAAE,MAAM,CAAA;SAAE,CAAC;KAC3C,CAAC;CACH;AAED,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE;QAAE,mBAAmB,CAAC,EAAE;YAAE,aAAa,CAAC,EAAE,mBAAmB,EAAE,CAAA;SAAE,CAAA;KAAE,CAAC;CAC9E;AAqCD;;;;;GAKG;AACH,wBAAgB,gBAAgB,IAAI;IAAE,KAAK,EAAE,YAAY,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,GAAG,IAAI,CAiB/E;AAaD;;;;;;GAMG;AACH,wBAAgB,oBAAoB,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,CAiB/D;AAED,+EAA+E;AAC/E,wBAAgB,mBAAmB,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,CAuB9D;AAsOD;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,wBAAwB,CACtC,iBAAiB,EAAE,MAAM,GAAG,SAAS,GACpC;IAAE,MAAM,EAAE,MAAM,CAAA;CAAE,GAAG,IAAI,CA+B3B;AAED;;;;;;;GAOG;AACH,wBAAgB,uBAAuB,IAAI,OAAO,CAcjD;AAED,0EAA0E,CAAC,MAAM,WAAW,sBAAsB;IAChH,QAAQ,EAAE,MAAM,CAAC;IACjB,2BAA2B,EAAE,MAAM,CAAC;IACpC,SAAS,EAAE,MAAM,CACf,MAAM,EACN;QAAE,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;QAAC,MAAM,EAAE;YAAE,IAAI,EAAE,MAAM,CAAC;YAAC,QAAQ,EAAE,OAAO,CAAA;SAAE,CAAA;KAAE,CAC5E,CAAC;IACF,MAAM,EAAE,MAAM,CACZ,MAAM,EACN;QACE,YAAY,EAAE,WAAW,GAAG,SAAS,GAAG,aAAa,GAAG,SAAS,CAAC;QAClE,QAAQ,EAAE,OAAO,CAAC;QAClB,OAAO,EAAE,OAAO,CAAC;KAClB,CACF,CAAC;CACH;AAED;;;;GAIG;AACH,wBAAgB,0BAA0B,IAAI,sBAAsB,GAAG,IAAI,CA6B1E;AAED;;;;;GAKG;AACH,wBAAsB,yBAAyB,CAC7C,OAAO,EAAE,YAAY,EACrB,MAAM,EAAE,MAAM,MAAM,GACnB,OAAO,CAAC,OAAO,CAAC,CA2BlB"}
@@ -24,12 +24,13 @@
24
24
  * ignores it, so the path we hash must be the same one the CLI resolved.
25
25
  */
26
26
  import { createHash } from "node:crypto";
27
- import { existsSync, readFileSync } from "node:fs";
27
+ import { existsSync, readFileSync, statSync } from "node:fs";
28
28
  import os from "node:os";
29
29
  import path from "node:path";
30
30
  import { readCredentialStoreSync } from "../backend/credential-store.js";
31
31
  import { BUILTIN_PROVIDER_ENV, builtinProviderEnv } from "../backend/resolve.js";
32
- import { log, warn, ZCODE_CREDS_PATH } from "../utils.js";
32
+ import { log, warn, zcodePersonalProviderPath, ZCODE_CREDS_PATH } from "../utils.js";
33
+ import { bridgeOverlays, readCredentialConfig } from "./bridge-accounts.js";
33
34
  /** The bundled provider-table file the CLI boots from. */
34
35
  const PROVIDER_CONFIG_NAME = "zcode-builtin.json";
35
36
  /**
@@ -57,12 +58,25 @@ function builtinTablePath() {
57
58
  : "/Applications/ZCode.app/Contents/Resources/config/provider/zcode-builtin.json";
58
59
  return existsSync(bundled) ? bundled : null;
59
60
  }
60
- function readBuiltinTable() {
61
+ let tableCache = null;
62
+ /**
63
+ * The parsed table, memoized by path, inode, size, mtime, and ctime. The
64
+ * runtime-headers path reads it several times before every model request, and
65
+ * the file is ~180 KB. Inode and ctime catch a same-size rewrite or rename
66
+ * that keeps the mtime, because utimes cannot set ctime.
67
+ */
68
+ export function readBuiltinTable() {
61
69
  const file = builtinTablePath();
62
70
  if (!file)
63
71
  return null;
64
72
  try {
65
- return { table: JSON.parse(readFileSync(file, "utf8")), file };
73
+ const { ino, size, mtimeMs, ctimeMs } = statSync(file);
74
+ const key = `${file}\0${ino}:${size}:${mtimeMs}:${ctimeMs}`;
75
+ if (tableCache?.key !== key) {
76
+ const table = JSON.parse(readFileSync(file, "utf8"));
77
+ tableCache = { key, table };
78
+ }
79
+ return { table: tableCache.table, file };
66
80
  }
67
81
  catch (e) {
68
82
  warn(`account-provider: unreadable provider table (${e instanceof Error ? e.message : String(e)})`);
@@ -173,12 +187,113 @@ function storeIndividualCodingPlanKey(accountProviderId) {
173
187
  * 4. `setting.json` — last resort: the Settings UI's remembered pick per
174
188
  * family. A SELECTION record, not an entitlement.
175
189
  *
190
+ * Bridge accounts (`acp-accounts.json`, written by `zcode-acp setup`) sit
191
+ * above the whole ladder: an explicit user key entitles its family's
192
+ * individual coding plan even over an `unavailable` verdict, because
193
+ * deliberate user input beats a possibly stale cache. Only families the
194
+ * credential overlay applied count (see bridgeOverlays), so a family whose
195
+ * installed catalog is unusable gains nothing. They never count as a
196
+ * verdict, so an account for one family leaves source 3 open for the other.
197
+ *
198
+ * Manual plan keys from provider_config.json (`zhipu-coding-plan-api-key`
199
+ * rules, #344) sit at the source-2 tier — see manualCodingPlanKeys below.
200
+ *
176
201
  * Verified 2026-09 against the desktop's own pushed account snapshot: sources
177
202
  * 1+2 produced exactly its entitlement set (bigmodel individual true, every
178
203
  * zai/start/team plan false); source 3 restores the same outcome on fresh
179
204
  * desktop-only layouts (verified 2026-10 against a real store).
180
205
  */
206
+ /**
207
+ * Manual coding-plan api keys from provider_config.json (#344).
208
+ *
209
+ * The desktop's Settings → Model Provider → "Use API key" flow writes the plan
210
+ * key as a personal rule with access type `zhipu-coding-plan-api-key`, while
211
+ * an OAuth login writes NO legacy config.json key at all — so a 3.12+
212
+ * desktop-only machine had no entitlement source the ladder above could read:
213
+ * every account model switch failed with "Provider Registry 中不存在 Model"
214
+ * and the reporter had to copy the key into config.json by hand. These rules
215
+ * are the same tier as config.json's builtin entries — an explicit user key,
216
+ * not a verdict — so they ADD to the ladder without arming sawVerdict, and a
217
+ * coding-plan-cache `unavailable` verdict (about the ACCOUNT plan, not manual
218
+ * keys) does not suppress them.
219
+ *
220
+ * The family comes from the rule's api.baseUrl (the official coding-plan
221
+ * endpoints; the rule id itself — e.g. `zai-api` — is user-chosen and carries
222
+ * no family promise). Upstream plans to fold this access type back into
223
+ * plain `api-key` (todo-157, domain-gated) — matching then moves to the
224
+ * baseUrl alone, which this already reads.
225
+ */
226
+ function manualCodingPlanKeys() {
227
+ const families = codingPlanFamiliesByBaseUrl();
228
+ const out = new Map();
229
+ for (const rule of readPersonalProviderRules()) {
230
+ if (rule.enabled === false)
231
+ continue;
232
+ if (rule.config?.access?.type !== "zhipu-coding-plan-api-key")
233
+ continue;
234
+ const apiKey = rule.config.access.apiKey?.trim();
235
+ const baseUrl = rule.config.api?.baseUrl?.replace(/\/+$/, "");
236
+ const family = baseUrl ? families.get(baseUrl) : undefined;
237
+ if (!apiKey || !family)
238
+ continue;
239
+ out.set(`builtin:${family}-coding-plan`, apiKey);
240
+ }
241
+ return out;
242
+ }
243
+ let personalRulesCache = null;
244
+ /**
245
+ * Personal provider rules, memoized by the same stat key as the builtin table
246
+ * — the runtime-headers path re-reads these before every model request.
247
+ */
248
+ function readPersonalProviderRules() {
249
+ const file = zcodePersonalProviderPath();
250
+ try {
251
+ const { ino, size, mtimeMs, ctimeMs } = statSync(file);
252
+ const key = `${file}\0${ino}:${size}:${mtimeMs}:${ctimeMs}`;
253
+ if (personalRulesCache?.key !== key) {
254
+ const parsed = JSON.parse(readFileSync(file, "utf8"));
255
+ personalRulesCache = { key, rules: parsed.config?.providerConfigRules?.providerRules ?? [] };
256
+ }
257
+ return personalRulesCache.rules;
258
+ }
259
+ catch {
260
+ return []; // absent (pre-3.12 desktop / hermetic HOME) — nothing to add
261
+ }
262
+ }
263
+ /**
264
+ * baseUrl → family for the OFFICIAL individual coding-plan endpoints. Derived
265
+ * from the installed table (a zhipu-account rule's api.baseUrl IS its family's
266
+ * coding-plan endpoint), with the frozen official pair as the table-absent
267
+ * fallback (headless Linux): api.z.ai → zai, open.bigmodel.cn → bigmodel —
268
+ * the same endpoints the shipped table carries.
269
+ */
270
+ function codingPlanFamiliesByBaseUrl() {
271
+ const out = new Map([
272
+ ["https://api.z.ai/api/anthropic", "zai"],
273
+ ["https://open.bigmodel.cn/api/anthropic", "bigmodel"],
274
+ ]);
275
+ for (const rule of readBuiltinTable()?.table.config?.providerConfigRules?.providerRules ?? []) {
276
+ if (rule.config?.access?.type !== "zhipu-account")
277
+ continue;
278
+ if (rule.config?.access?.mode !== "individual-coding-plan")
279
+ continue;
280
+ const family = rule.config?.access?.accountType;
281
+ const baseUrl = rule.config?.api?.baseUrl?.replace(/\/+$/, "");
282
+ if (family && baseUrl)
283
+ out.set(baseUrl, family);
284
+ }
285
+ return out;
286
+ }
181
287
  function entitledBuiltinProviders() {
288
+ const out = desktopEntitledBuiltinProviders();
289
+ for (const family of Object.keys(bridgeOverlays()))
290
+ out.add(`builtin:${family}-coding-plan`);
291
+ for (const legacyId of manualCodingPlanKeys().keys())
292
+ out.add(legacyId);
293
+ return out;
294
+ }
295
+ /** Sources 1-4 above, read from the raw desktop files only. */
296
+ function desktopEntitledBuiltinProviders() {
182
297
  const out = new Set();
183
298
  const credsDir = path.dirname(ZCODE_CREDS_PATH);
184
299
  let sawVerdict = false;
@@ -276,20 +391,52 @@ export function codingPlanRequestAuthFor(accountProviderId) {
276
391
  return null;
277
392
  if (!entitledBuiltinProviders().has(legacyId))
278
393
  return null;
279
- // config.json first (the pre-3.12 builtin: provider's own spelling); a fresh
280
- // desktop-only layout has none — fall through to the stored plan key.
394
+ // A bridge account's key, then config.json (the pre-3.12 builtin: provider's
395
+ // own spelling), merged by readCredentialConfig. A fresh desktop-only layout
396
+ // has neither, so the stored plan key answers.
281
397
  try {
282
- const cfg = JSON.parse(readFileSync(ZCODE_CREDS_PATH, "utf8"));
398
+ const cfg = readCredentialConfig(ZCODE_CREDS_PATH);
283
399
  const apiKey = cfg.provider?.[legacyId]?.options?.apiKey?.trim();
284
400
  if (apiKey)
285
401
  return { apiKey };
286
402
  }
287
403
  catch {
288
- // unreadable/absent config — the store decides
404
+ // unreadable/absent config — the manual key or the store decides
289
405
  }
406
+ // The desktop's own manual plan key (#344): 3.12+ writes it to
407
+ // provider_config.json, never config.json — rank it above the encrypted
408
+ // store (a fresh-install account key) but below the bridge's own setups.
409
+ const manual = manualCodingPlanKeys().get(legacyId);
410
+ if (manual)
411
+ return { apiKey: manual };
290
412
  const stored = storeIndividualCodingPlanKey(accountProviderId);
291
413
  return stored ? { apiKey: stored } : null;
292
414
  }
415
+ /**
416
+ * Whether any usable ZCode credential exists — the `authenticate` method's
417
+ * readiness check (#344). True when a manual coding-plan key sits in
418
+ * provider_config.json, a bridge account is saved, the merged config.json
419
+ * view holds any provider key, or the desktop ladder found an entitlement.
420
+ * False means the editor user gets the actionable sign-in error instead of a
421
+ * silent success that dies on the first turn.
422
+ */
423
+ export function zcodeCredentialsPresent() {
424
+ if (manualCodingPlanKeys().size > 0)
425
+ return true;
426
+ if (Object.keys(bridgeOverlays()).length > 0)
427
+ return true;
428
+ try {
429
+ const cfg = readCredentialConfig(ZCODE_CREDS_PATH);
430
+ for (const entry of Object.values(cfg.provider ?? {})) {
431
+ if (entry?.options?.apiKey?.trim())
432
+ return true;
433
+ }
434
+ }
435
+ catch {
436
+ // unreadable desktop config — the ladder below still speaks
437
+ }
438
+ return desktopEntitledBuiltinProviders().size > 0;
439
+ }
293
440
  /**
294
441
  * Build the account snapshot: every coding-plan provider the bundled table
295
442
  * declares, with entitlement taken from config.json's enabled builtin plans.
@@ -1 +1 @@
1
- {"version":3,"file":"account-provider.js","sourceRoot":"","sources":["../../src/config/account-provider.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"account-provider.js","sourceRoot":"","sources":["../../src/config/account-provider.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,40 @@
1
+ export type CodingPlanFamily = "zai" | "bigmodel";
2
+ type Accounts = Partial<Record<CodingPlanFamily, {
3
+ apiKey: string;
4
+ }>>;
5
+ interface Provider {
6
+ name?: string;
7
+ kind?: string;
8
+ enabled?: boolean;
9
+ options?: {
10
+ apiKey?: string;
11
+ baseURL?: string;
12
+ };
13
+ models?: Record<string, unknown>;
14
+ }
15
+ export interface CredentialConfig {
16
+ provider?: Record<string, Provider>;
17
+ }
18
+ export declare function bridgeAccountsPath(): string;
19
+ export declare function readBridgeAccounts(file?: string): Accounts;
20
+ export declare function saveBridgeAccount(family: CodingPlanFamily, apiKey: string, file?: string): Promise<void>;
21
+ /** Use the installed public catalog rather than inventing plan model IDs. */
22
+ export declare function codingPlanCatalog(family: CodingPlanFamily): {
23
+ models: string[];
24
+ baseURL: string;
25
+ name: string;
26
+ };
27
+ type Overlay = {
28
+ apiKey: string;
29
+ catalog: ReturnType<typeof codingPlanCatalog>;
30
+ };
31
+ /**
32
+ * The saved accounts whose family the installed catalog supports. The overlay
33
+ * and the entitlement rung both read this, so a skipped family is neither
34
+ * overlaid nor entitled.
35
+ */
36
+ export declare function bridgeOverlays(): Partial<Record<CodingPlanFamily, Overlay>>;
37
+ /** Desktop entries retain their order; explicit bridge keys override only their plan. */
38
+ export declare function readCredentialConfig(legacyFile: string): CredentialConfig;
39
+ export {};
40
+ //# sourceMappingURL=bridge-accounts.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bridge-accounts.d.ts","sourceRoot":"","sources":["../../src/config/bridge-accounts.ts"],"names":[],"mappings":"AASA,MAAM,MAAM,gBAAgB,GAAG,KAAK,GAAG,UAAU,CAAC;AAClD,KAAK,QAAQ,GAAG,OAAO,CAAC,MAAM,CAAC,gBAAgB,EAAE;IAAE,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC,CAAC,CAAC;AACtE,UAAU,QAAQ;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,OAAO,CAAC,EAAE;QAAE,MAAM,CAAC,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAChD,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAClC;AACD,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;CACrC;AAED,wBAAgB,kBAAkB,IAAI,MAAM,CAE3C;AAYD,wBAAgB,kBAAkB,CAAC,IAAI,SAAuB,GAAG,QAAQ,CAqDxE;AAED,wBAAsB,iBAAiB,CACrC,MAAM,EAAE,gBAAgB,EACxB,MAAM,EAAE,MAAM,EACd,IAAI,SAAuB,GAC1B,OAAO,CAAC,IAAI,CAAC,CAmCf;AAED,6EAA6E;AAC7E,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,gBAAgB,GAAG;IAC3D,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;CACd,CAsBA;AAoBD,KAAK,OAAO,GAAG;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,UAAU,CAAC,OAAO,iBAAiB,CAAC,CAAA;CAAE,CAAC;AAEjF;;;;GAIG;AACH,wBAAgB,cAAc,IAAI,OAAO,CAAC,MAAM,CAAC,gBAAgB,EAAE,OAAO,CAAC,CAAC,CAa3E;AAED,yFAAyF;AACzF,wBAAgB,oBAAoB,CAAC,UAAU,EAAE,MAAM,GAAG,gBAAgB,CAgCzE"}
@@ -0,0 +1,193 @@
1
+ /** Bridge-owned Coding Plan keys. Desktop configuration is never modified. */
2
+ import { randomUUID } from "node:crypto";
3
+ import { constants, closeSync, fstatSync, lstatSync, openSync, readFileSync } from "node:fs";
4
+ import { mkdir, rename, rmdir, unlink, writeFile } from "node:fs/promises";
5
+ import path from "node:path";
6
+ import { warn, zcodeHomeDir } from "../utils.js";
7
+ import { readBuiltinTable } from "./account-provider.js";
8
+ export function bridgeAccountsPath() {
9
+ return path.join(zcodeHomeDir(), "v2", "acp-accounts.json");
10
+ }
11
+ function validKey(value) {
12
+ return (typeof value === "string" && value.length > 0 && value.length <= 4096 && /^[!-~]+$/u.test(value));
13
+ }
14
+ function fixOrRemove(file) {
15
+ return `Fix or remove ${file}, then run zcode-acp setup again.`;
16
+ }
17
+ export function readBridgeAccounts(file = bridgeAccountsPath()) {
18
+ let fd;
19
+ try {
20
+ // lstat also rejects dangling links on platforms without O_NOFOLLOW.
21
+ if (lstatSync(file).isSymbolicLink())
22
+ throw new Error("Linked bridge account configuration");
23
+ // Without O_NONBLOCK, opening a FIFO waits for a writer. With it, the
24
+ // isFile() check below rejects the FIFO.
25
+ fd = openSync(file, constants.O_RDONLY | (constants.O_NOFOLLOW ?? 0) | (constants.O_NONBLOCK ?? 0));
26
+ }
27
+ catch (error) {
28
+ if (error.code === "ENOENT")
29
+ return {};
30
+ throw new Error(`Cannot read bridge account configuration. ${fixOrRemove(file)}`);
31
+ }
32
+ try {
33
+ const info = fstatSync(fd);
34
+ const link = lstatSync(file);
35
+ if (link.isSymbolicLink() ||
36
+ link.ino !== info.ino ||
37
+ link.dev !== info.dev ||
38
+ info.size > 64 * 1024 ||
39
+ !info.isFile() ||
40
+ info.nlink !== 1 ||
41
+ (process.platform !== "win32" &&
42
+ (info.mode & 0o077 ||
43
+ (typeof process.getuid === "function" && info.uid !== process.getuid()))))
44
+ throw new Error("Bridge account configuration must be an owner-only regular file");
45
+ const parsed = JSON.parse(readFileSync(fd, "utf8"));
46
+ if (parsed?.version !== 1 ||
47
+ !parsed.accounts ||
48
+ typeof parsed.accounts !== "object" ||
49
+ Array.isArray(parsed.accounts))
50
+ throw new Error();
51
+ const out = {};
52
+ for (const [family, account] of Object.entries(parsed.accounts)) {
53
+ if ((family !== "zai" && family !== "bigmodel") ||
54
+ !validKey(account?.apiKey))
55
+ throw new Error();
56
+ out[family] = { apiKey: account.apiKey };
57
+ }
58
+ return out;
59
+ }
60
+ catch {
61
+ throw new Error(`Invalid or insecure bridge account configuration. ${fixOrRemove(file)}`);
62
+ }
63
+ finally {
64
+ closeSync(fd);
65
+ }
66
+ }
67
+ export async function saveBridgeAccount(family, apiKey, file = bridgeAccountsPath()) {
68
+ if ((family !== "zai" && family !== "bigmodel") || !validKey(apiKey))
69
+ throw new Error("Invalid Coding Plan account");
70
+ try {
71
+ await mkdir(path.dirname(file), { recursive: true, mode: 0o700 });
72
+ }
73
+ catch {
74
+ throw new Error("Cannot create private bridge account directory");
75
+ }
76
+ // Exclusive lock makes concurrent read-modify-write fail explicitly rather
77
+ // than silently losing the other family's key. No credential enters its name.
78
+ const lock = `${file}.lock`;
79
+ try {
80
+ await mkdir(lock, { mode: 0o700 });
81
+ }
82
+ catch {
83
+ throw new Error(`Account setup is already running or its lock is unavailable. If no setup is running, remove ${lock} and retry.`);
84
+ }
85
+ const temporary = `${file}.${randomUUID()}.tmp`;
86
+ try {
87
+ const accounts = readBridgeAccounts(file);
88
+ accounts[family] = { apiKey };
89
+ try {
90
+ await writeFile(temporary, JSON.stringify({ version: 1, accounts }) + "\n", {
91
+ flag: "wx",
92
+ mode: 0o600,
93
+ });
94
+ await rename(temporary, file);
95
+ }
96
+ catch {
97
+ throw new Error("Cannot save bridge account configuration; existing accounts were preserved");
98
+ }
99
+ }
100
+ finally {
101
+ await unlink(temporary).catch(() => undefined);
102
+ await rmdir(lock).catch(() => undefined);
103
+ }
104
+ }
105
+ /** Use the installed public catalog rather than inventing plan model IDs. */
106
+ export function codingPlanCatalog(family) {
107
+ // account-provider.ts imports this module back, so read only at call time.
108
+ const rule = readBuiltinTable()?.table.config?.providerConfigRules?.providerRules?.find((rule) => rule.providerId === `account:${family}-individual-coding-plan`);
109
+ const models = rule?.config?.builtinModelIds;
110
+ if (Array.isArray(models) &&
111
+ models.length &&
112
+ models.every((model) => typeof model === "string" && model.length))
113
+ return {
114
+ models,
115
+ name: family === "zai" ? "Z.ai Coding Plan" : "BigModel Coding Plan",
116
+ baseURL: family === "zai"
117
+ ? "https://api.z.ai/api/anthropic"
118
+ : "https://open.bigmodel.cn/api/anthropic",
119
+ };
120
+ throw new Error(`The installed ZCode provider table has no ${family} Coding Plan. Install a supported ZCode CLI or set ZCODE_BIN.`);
121
+ }
122
+ const warned = new Set();
123
+ /** Once per message: credential readers run before every model request. */
124
+ function warnOnce(message) {
125
+ if (warned.has(message))
126
+ return;
127
+ warned.add(message);
128
+ warn(message);
129
+ }
130
+ /** Saved accounts, or none when the file cannot be trusted. Never takes Desktop credentials down. */
131
+ function overlayAccounts() {
132
+ try {
133
+ return readBridgeAccounts();
134
+ }
135
+ catch (error) {
136
+ warnOnce(`bridge-accounts: ignoring saved accounts. ${error.message}`);
137
+ return {};
138
+ }
139
+ }
140
+ /**
141
+ * The saved accounts whose family the installed catalog supports. The overlay
142
+ * and the entitlement rung both read this, so a skipped family is neither
143
+ * overlaid nor entitled.
144
+ */
145
+ export function bridgeOverlays() {
146
+ const out = {};
147
+ for (const [family, account] of Object.entries(overlayAccounts())) {
148
+ try {
149
+ out[family] = {
150
+ apiKey: account.apiKey,
151
+ catalog: codingPlanCatalog(family),
152
+ };
153
+ }
154
+ catch (error) {
155
+ warnOnce(`bridge-accounts: skipping the ${family} account. ${error.message}`);
156
+ }
157
+ }
158
+ return out;
159
+ }
160
+ /** Desktop entries retain their order; explicit bridge keys override only their plan. */
161
+ export function readCredentialConfig(legacyFile) {
162
+ const overlays = bridgeOverlays();
163
+ let config;
164
+ try {
165
+ config = JSON.parse(readFileSync(legacyFile, "utf8"));
166
+ }
167
+ catch (error) {
168
+ if (!Object.keys(overlays).length)
169
+ throw new Error("Cannot read Desktop credential configuration");
170
+ // Saved accounts stand on their own, and the entitlement rung already
171
+ // counts them, so an unreadable Desktop file must not leave them unanswered.
172
+ if (error.code !== "ENOENT")
173
+ warnOnce("bridge-accounts: ignoring an unreadable Desktop credential configuration.");
174
+ config = {};
175
+ }
176
+ const provider = { ...config.provider };
177
+ for (const [family, { apiKey, catalog }] of Object.entries(overlays)) {
178
+ const id = `builtin:${family}-coding-plan`;
179
+ const desktop = provider[id];
180
+ // The bridge owns the key, endpoint, and enablement. Desktop per-model data
181
+ // (context window, reasoning variants) stays.
182
+ provider[id] = {
183
+ ...desktop,
184
+ name: desktop?.name ?? catalog.name,
185
+ kind: "anthropic",
186
+ enabled: true,
187
+ options: { ...desktop?.options, apiKey, baseURL: catalog.baseURL },
188
+ models: Object.fromEntries(catalog.models.map((model) => [model, desktop?.models?.[model] ?? {}])),
189
+ };
190
+ }
191
+ return { ...config, provider };
192
+ }
193
+ //# sourceMappingURL=bridge-accounts.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bridge-accounts.js","sourceRoot":"","sources":["../../src/config/bridge-accounts.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"options.d.ts","sourceRoot":"","sources":["../../src/config/options.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"options.d.ts","sourceRoot":"","sources":["../../src/config/options.ts"],"names":[],"mappings":"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"}
@@ -15,10 +15,11 @@ import { recordModelChoice } from "../lazy-sessions.js";
15
15
  import { clientConnectionRoot, CONFIG_DISPATCH, CONFIG_META, log, warn, ZCODE_CREDS_PATH, zcodePersonalProviderPath, } from "../utils.js";
16
16
  import { isBroadcastSource, sendSessionUpdate, sendSessionUpdateToOthers } from "../handlers/io.js";
17
17
  import { configProviderIdFor } from "./account-provider.js";
18
+ import { readCredentialConfig } from "./bridge-accounts.js";
18
19
  import { initialSessionMode } from "./settings.js";
19
20
  /** Read the config.json contents (UTF-8). Throws on read/parse failure. */
20
21
  function readConfig() {
21
- return JSON.parse(readFileSync(ZCODE_CREDS_PATH, "utf8"));
22
+ return readCredentialConfig(ZCODE_CREDS_PATH);
22
23
  }
23
24
  function readPersonalProviderConfig() {
24
25
  try {