borgmcp 2.2.0 → 2.4.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 (106) hide show
  1. package/README.md +36 -0
  2. package/dist/assimilate-cmd.d.ts +6 -0
  3. package/dist/assimilate-cmd.d.ts.map +1 -1
  4. package/dist/assimilate-cmd.js +31 -7
  5. package/dist/assimilate-cmd.js.map +1 -1
  6. package/dist/assimilate-deps.d.ts.map +1 -1
  7. package/dist/assimilate-deps.js +2 -0
  8. package/dist/assimilate-deps.js.map +1 -1
  9. package/dist/claude.d.ts.map +1 -1
  10. package/dist/claude.js +14 -0
  11. package/dist/claude.js.map +1 -1
  12. package/dist/cli-help.d.ts +2 -0
  13. package/dist/cli-help.d.ts.map +1 -1
  14. package/dist/cli-help.js +19 -0
  15. package/dist/cli-help.js.map +1 -1
  16. package/dist/cli-platform.d.ts +1 -0
  17. package/dist/cli-platform.d.ts.map +1 -1
  18. package/dist/cli-platform.js +5 -1
  19. package/dist/cli-platform.js.map +1 -1
  20. package/dist/console-prefix.d.ts +9 -10
  21. package/dist/console-prefix.d.ts.map +1 -1
  22. package/dist/console-prefix.js +23 -20
  23. package/dist/console-prefix.js.map +1 -1
  24. package/dist/cubes.d.ts +11 -0
  25. package/dist/cubes.d.ts.map +1 -1
  26. package/dist/cubes.js +10 -0
  27. package/dist/cubes.js.map +1 -1
  28. package/dist/display-identity.d.ts +34 -0
  29. package/dist/display-identity.d.ts.map +1 -0
  30. package/dist/display-identity.js +88 -0
  31. package/dist/display-identity.js.map +1 -0
  32. package/dist/docs-sections.d.ts.map +1 -1
  33. package/dist/docs-sections.js +9 -0
  34. package/dist/docs-sections.js.map +1 -1
  35. package/dist/drone-management.d.ts.map +1 -1
  36. package/dist/drone-management.js +6 -0
  37. package/dist/drone-management.js.map +1 -1
  38. package/dist/inbox-monitor.d.ts.map +1 -1
  39. package/dist/inbox-monitor.js +12 -0
  40. package/dist/inbox-monitor.js.map +1 -1
  41. package/dist/index.d.ts.map +1 -1
  42. package/dist/index.js +58 -16
  43. package/dist/index.js.map +1 -1
  44. package/dist/log-stream.d.ts.map +1 -1
  45. package/dist/log-stream.js +41 -15
  46. package/dist/log-stream.js.map +1 -1
  47. package/dist/parse-assimilate-args.d.ts +1 -1
  48. package/dist/parse-assimilate-args.d.ts.map +1 -1
  49. package/dist/parse-assimilate-args.js +5 -2
  50. package/dist/parse-assimilate-args.js.map +1 -1
  51. package/dist/regen-format.d.ts +2 -2
  52. package/dist/regen-format.d.ts.map +1 -1
  53. package/dist/regen-format.js +6 -5
  54. package/dist/regen-format.js.map +1 -1
  55. package/dist/regen.js +6 -2
  56. package/dist/regen.js.map +1 -1
  57. package/dist/remote-client.d.ts.map +1 -1
  58. package/dist/remote-client.js +8 -1
  59. package/dist/remote-client.js.map +1 -1
  60. package/dist/reset-local-seat-cmd.d.ts +8 -0
  61. package/dist/reset-local-seat-cmd.d.ts.map +1 -1
  62. package/dist/reset-local-seat-cmd.js +21 -2
  63. package/dist/reset-local-seat-cmd.js.map +1 -1
  64. package/dist/seat-reattach-guard.d.ts +21 -0
  65. package/dist/seat-reattach-guard.d.ts.map +1 -0
  66. package/dist/seat-reattach-guard.js +83 -0
  67. package/dist/seat-reattach-guard.js.map +1 -0
  68. package/dist/seats.d.ts +6 -2
  69. package/dist/seats.d.ts.map +1 -1
  70. package/dist/seats.js +37 -14
  71. package/dist/seats.js.map +1 -1
  72. package/dist/unknown-subcommand.d.ts +1 -1
  73. package/dist/unknown-subcommand.d.ts.map +1 -1
  74. package/dist/unknown-subcommand.js +1 -0
  75. package/dist/unknown-subcommand.js.map +1 -1
  76. package/dist/update-cmd.d.ts +58 -0
  77. package/dist/update-cmd.d.ts.map +1 -0
  78. package/dist/update-cmd.js +801 -0
  79. package/dist/update-cmd.js.map +1 -0
  80. package/docs/EXTRACTION_PROVENANCE.md +3 -3
  81. package/docs/LOCAL_SERVER.md +43 -0
  82. package/docs/RELEASING.md +145 -4
  83. package/docs/SEAT_LIFECYCLE.md +242 -0
  84. package/package.json +6 -3
  85. package/src/assimilate-cmd.ts +45 -7
  86. package/src/assimilate-deps.ts +2 -0
  87. package/src/claude.ts +15 -0
  88. package/src/cli-help.ts +22 -0
  89. package/src/cli-platform.ts +5 -2
  90. package/src/console-prefix.ts +25 -18
  91. package/src/cubes.ts +16 -0
  92. package/src/display-identity.ts +130 -0
  93. package/src/docs-sections.ts +9 -0
  94. package/src/drone-management.ts +6 -0
  95. package/src/inbox-monitor.ts +19 -0
  96. package/src/index.ts +66 -20
  97. package/src/log-stream.ts +38 -14
  98. package/src/parse-assimilate-args.ts +4 -2
  99. package/src/regen-format.ts +6 -5
  100. package/src/regen.ts +11 -2
  101. package/src/remote-client.ts +8 -0
  102. package/src/reset-local-seat-cmd.ts +26 -1
  103. package/src/seat-reattach-guard.ts +113 -0
  104. package/src/seats.ts +36 -14
  105. package/src/unknown-subcommand.ts +1 -0
  106. package/src/update-cmd.ts +1006 -0
@@ -0,0 +1,83 @@
1
+ import { readFileSync, statSync } from 'node:fs';
2
+ import { HEARTBEAT_STALE_MS, heartbeatPathFor, legacyHeartbeatPathFor, legacyPidfilePathFor, pidfilePathFor, } from './inbox-monitor.js';
3
+ function parseMonitorPid(raw) {
4
+ if (raw === null)
5
+ return null;
6
+ const match = /^([1-9]\d*)(?::[^:\s]+)?$/.exec(raw.trim());
7
+ if (!match)
8
+ return null;
9
+ const pid = Number(match[1]);
10
+ return Number.isSafeInteger(pid) ? pid : null;
11
+ }
12
+ /**
13
+ * Read-only preflight for reusing a worktree seat. A live PID always blocks:
14
+ * a stale heartbeat may mean the holder is wedged, but only an explicit
15
+ * `--force` decision may launch a second session onto that seat.
16
+ */
17
+ export function inspectLiveInboxMonitor(inboxPath, monitorStateRoot, deps = defaultSeatReattachGuardDeps()) {
18
+ const candidates = [
19
+ {
20
+ pidfile: pidfilePathFor(inboxPath, monitorStateRoot),
21
+ heartbeat: heartbeatPathFor(inboxPath, monitorStateRoot),
22
+ },
23
+ {
24
+ pidfile: legacyPidfilePathFor(inboxPath),
25
+ heartbeat: legacyHeartbeatPathFor(inboxPath),
26
+ },
27
+ ];
28
+ const staleMs = deps.heartbeatStaleMs ?? HEARTBEAT_STALE_MS;
29
+ for (const candidate of candidates) {
30
+ const pid = parseMonitorPid(deps.readPidfile(candidate.pidfile));
31
+ if (pid === null || !deps.isAlive(pid))
32
+ continue;
33
+ const heartbeatMtime = deps.readHeartbeatMtimeMs(candidate.heartbeat);
34
+ return {
35
+ pid,
36
+ heartbeat: heartbeatMtime === null
37
+ ? 'missing'
38
+ : deps.now - heartbeatMtime < staleMs
39
+ ? 'fresh'
40
+ : 'stale',
41
+ };
42
+ }
43
+ return null;
44
+ }
45
+ export function formatSeatReattachRefusal(holder, forcedCommand) {
46
+ const heartbeat = holder.heartbeat === 'fresh'
47
+ ? ''
48
+ : ` Its heartbeat is ${holder.heartbeat}, so the process may be wedged.`;
49
+ return (`This worktree's Borg seat already has a live session (inbox monitor pid ${holder.pid}).${heartbeat}\n` +
50
+ 'No agent was launched. Stop the existing session or use a fresh worktree with `borg assimilate --worktree <name>`. ' +
51
+ `If the live monitor is wedged, override once with \`${forcedCommand}\`.\n`);
52
+ }
53
+ export function defaultSeatReattachGuardDeps(now = Date.now()) {
54
+ return {
55
+ readPidfile: (path) => {
56
+ try {
57
+ return readFileSync(path, 'utf8');
58
+ }
59
+ catch {
60
+ return null;
61
+ }
62
+ },
63
+ readHeartbeatMtimeMs: (path) => {
64
+ try {
65
+ return statSync(path).mtimeMs;
66
+ }
67
+ catch {
68
+ return null;
69
+ }
70
+ },
71
+ isAlive: (pid) => {
72
+ try {
73
+ process.kill(pid, 0);
74
+ return true;
75
+ }
76
+ catch (error) {
77
+ return error?.code === 'EPERM';
78
+ }
79
+ },
80
+ now,
81
+ };
82
+ }
83
+ //# sourceMappingURL=seat-reattach-guard.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"seat-reattach-guard.js","sourceRoot":"","sources":["../src/seat-reattach-guard.ts"],"names":[],"mappings":"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"}
package/dist/seats.d.ts CHANGED
@@ -209,9 +209,13 @@ export declare function bindPendingSeatToWorktree(input: {
209
209
  roleClass?: 'queen' | 'worker';
210
210
  isHumanSeat?: boolean;
211
211
  }): Promise<BindPendingSeatOutcome>;
212
- /** The exact ACTIVE seat bound to `worktree`, or null. A pending record (no
213
- * worktree, or non-active) is NEVER surfaced as a live binding. */
212
+ /** The preferred ACTIVE seat bound to `worktree`, or null. A pending record (no
213
+ * worktree, or non-active) is NEVER surfaced as a live binding. Candidates use
214
+ * one total order across every process: unrejected before rejected, a sibling
215
+ * finalized into this worktree before an older in-place binding, then seat ref. */
214
216
  export declare function getActiveSeatForWorktree(worktree: string): Promise<SeatRecord | null>;
217
+ /** Deprioritize an exact seat after a definitive server auth or eviction verdict. */
218
+ export declare function markSeatRejected(ref: string): void;
215
219
  /**
216
220
  * CR#2: the seat bound to `worktree` regardless of state — an ACTIVE seat OR a
217
221
  * bound-PENDING record (a sibling whose activation failed, bound to its preserved
@@ -1 +1 @@
1
- {"version":3,"file":"seats.d.ts","sourceRoot":"","sources":["../src/seats.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"seats.d.ts","sourceRoot":"","sources":["../src/seats.ts"],"names":[],"mappings":"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"}
package/dist/seats.js CHANGED
@@ -52,6 +52,8 @@ function emptyStore() {
52
52
  }
53
53
  const ROLE_CLASSES = new Set(['queen', 'worker']);
54
54
  const OPERATION_KINDS = new Set(['seat', 'sibling']);
55
+ const SEAT_BEARER_RE = /^[A-Za-z0-9_-]{43,1024}$/;
56
+ const rejectedSeatRefs = new Set();
55
57
  function isNonEmptyString(value) {
56
58
  return typeof value === 'string' && value.length > 0;
57
59
  }
@@ -67,10 +69,10 @@ function isValidOperation(value) {
67
69
  /**
68
70
  * CR#2: FULL per-entry validation. Every key/value/invariant of a seat record is
69
71
  * checked — the ref is well-formed and self-consistent (the map key equals the
70
- * record's derived ref), state ∈ {pending,active}, the credential is a non-empty
71
- * string, the operation is well-shaped, an ACTIVE record carries ALL its required
72
- * server + binding fields, and a PENDING record carries NO active-only session
73
- * id. A single invalid entry ⇒ the whole store is rejected
72
+ * record's derived ref), state ∈ {pending,active}, the credential is an exact
73
+ * 32-byte base64url bearer, the operation is well-shaped, an ACTIVE record carries
74
+ * ALL its required server + binding fields, and a PENDING record carries NO
75
+ * active-only session id. A single invalid entry ⇒ the whole store is rejected
74
76
  * (fail closed at the caller, bytes preserved) — never a silent cast.
75
77
  */
76
78
  function isValidSeatRecord(ref, value) {
@@ -85,7 +87,8 @@ function isValidSeatRecord(ref, value) {
85
87
  !isNonEmptyString(r.cubeId) ||
86
88
  !isNonEmptyString(r.roleId) ||
87
89
  !isValidOperation(r.operation) ||
88
- !isNonEmptyString(r.credential)) {
90
+ typeof r.credential !== 'string' ||
91
+ !SEAT_BEARER_RE.test(r.credential)) {
89
92
  return false;
90
93
  }
91
94
  if (r.state !== 'pending' && r.state !== 'active')
@@ -158,7 +161,7 @@ function parseStore(raw) {
158
161
  !Array.isArray(replacement) &&
159
162
  Object.keys(replacement).length === 1 &&
160
163
  typeof replacement.credential === 'string' &&
161
- /^[A-Za-z0-9_-]{43}$/.test(replacement.credential);
164
+ SEAT_BEARER_RE.test(replacement.credential);
162
165
  let canonicalOrigin = false;
163
166
  try {
164
167
  const origin = new URL(String(withoutReplacement.origin));
@@ -263,6 +266,7 @@ export async function mintPendingSeat(input) {
263
266
  };
264
267
  txn.data.seats[ref] = record;
265
268
  await txn.commit();
269
+ rejectedSeatRefs.delete(ref);
266
270
  return record;
267
271
  });
268
272
  }
@@ -322,6 +326,7 @@ export async function prepareSeat(input) {
322
326
  };
323
327
  txn.data.seats[ref] = record;
324
328
  await txn.commit();
329
+ rejectedSeatRefs.delete(ref);
325
330
  return { ok: true, record };
326
331
  });
327
332
  }
@@ -361,6 +366,7 @@ export async function activateAndBindSeat(input) {
361
366
  ...(input.isHumanSeat !== undefined ? { isHumanSeat: input.isHumanSeat } : {}),
362
367
  };
363
368
  await txn.commit();
369
+ rejectedSeatRefs.delete(ref);
364
370
  return 'activated';
365
371
  });
366
372
  }
@@ -410,16 +416,29 @@ export async function bindPendingSeatToWorktree(input) {
410
416
  });
411
417
  }
412
418
  // ─── Hydration / enumeration (scan by worktree) ──────────────────────────────
413
- /** The exact ACTIVE seat bound to `worktree`, or null. A pending record (no
414
- * worktree, or non-active) is NEVER surfaced as a live binding. */
419
+ /** The preferred ACTIVE seat bound to `worktree`, or null. A pending record (no
420
+ * worktree, or non-active) is NEVER surfaced as a live binding. Candidates use
421
+ * one total order across every process: unrejected before rejected, a sibling
422
+ * finalized into this worktree before an older in-place binding, then seat ref. */
415
423
  export async function getActiveSeatForWorktree(worktree) {
416
424
  const store = await readStore();
417
- for (const [ref, record] of Object.entries(store.seats)) {
418
- if (record.state === 'active' && record.worktree === worktree && seatRef(record) === ref) {
419
- return record;
420
- }
421
- }
422
- return null;
425
+ const candidates = Object.entries(store.seats)
426
+ .filter(([ref, record]) => record.state === 'active' && record.worktree === worktree && seatRef(record) === ref)
427
+ .sort(([leftRef, left], [rightRef, right]) => {
428
+ const rejectionOrder = Number(rejectedSeatRefs.has(leftRef)) - Number(rejectedSeatRefs.has(rightRef));
429
+ if (rejectionOrder !== 0)
430
+ return rejectionOrder;
431
+ const operationOrder = Number(left.operation.kind === 'seat') - Number(right.operation.kind === 'seat');
432
+ if (operationOrder !== 0)
433
+ return operationOrder;
434
+ return leftRef < rightRef ? -1 : leftRef > rightRef ? 1 : 0;
435
+ });
436
+ return candidates[0]?.[1] ?? null;
437
+ }
438
+ /** Deprioritize an exact seat after a definitive server auth or eviction verdict. */
439
+ export function markSeatRejected(ref) {
440
+ if (REF_RE.test(ref))
441
+ rejectedSeatRefs.add(ref);
423
442
  }
424
443
  /**
425
444
  * CR#2: the seat bound to `worktree` regardless of state — an ACTIVE seat OR a
@@ -459,6 +478,8 @@ export async function findIncompleteSiblingAttempt(binding) {
459
478
  if (record.state === 'pending' &&
460
479
  record.worktree === undefined &&
461
480
  record.operation.kind === 'sibling' &&
481
+ record.operation.operationKey.startsWith('implicit-sibling:') &&
482
+ record.operation.operationKey.length > 'implicit-sibling:'.length &&
462
483
  record.origin === binding.origin &&
463
484
  record.trustIdentity === binding.trustIdentity &&
464
485
  record.cubeId === binding.cubeId &&
@@ -511,6 +532,7 @@ export async function resetSeatForWorktree(expected) {
511
532
  }
512
533
  delete txn.data.seats[expected.ref];
513
534
  await txn.commit();
535
+ rejectedSeatRefs.delete(expected.ref);
514
536
  return { outcome: 'reset', ref: expected.ref };
515
537
  });
516
538
  }
@@ -539,6 +561,7 @@ export async function clearSeat(ref) {
539
561
  if (txn.data.seats[ref] !== undefined) {
540
562
  delete txn.data.seats[ref];
541
563
  await txn.commit();
564
+ rejectedSeatRefs.delete(ref);
542
565
  }
543
566
  });
544
567
  }
package/dist/seats.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"seats.js","sourceRoot":"","sources":["../src/seats.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"seats.js","sourceRoot":"","sources":["../src/seats.ts"],"names":[],"mappings":"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"}
@@ -11,7 +11,7 @@
11
11
  * (`--cli`, `--remote`, agent passthrough, …) still fall through to launch.
12
12
  */
13
13
  /** The subcommands the claude.ts router dispatches on (lines 107-176). */
14
- export declare const KNOWN_SUBCOMMANDS: readonly ["setup", "assimilate", "reset-local-seat", "spawn", "sync", "cleanup", "launch-all", "server"];
14
+ export declare const KNOWN_SUBCOMMANDS: readonly ["setup", "update", "assimilate", "reset-local-seat", "spawn", "sync", "cleanup", "launch-all", "server"];
15
15
  /**
16
16
  * Returns the offending command string when argv[2] is an unknown non-flag
17
17
  * positional (caller should error + exit 1), or null when it's bare `borg`,
@@ -1 +1 @@
1
- {"version":3,"file":"unknown-subcommand.d.ts","sourceRoot":"","sources":["../src/unknown-subcommand.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,0EAA0E;AAC1E,eAAO,MAAM,iBAAiB,0GASpB,CAAC;AAEX;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,GAAG,IAAI,CAK1E"}
1
+ {"version":3,"file":"unknown-subcommand.d.ts","sourceRoot":"","sources":["../src/unknown-subcommand.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,0EAA0E;AAC1E,eAAO,MAAM,iBAAiB,oHAUpB,CAAC;AAEX;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,GAAG,IAAI,CAK1E"}
@@ -13,6 +13,7 @@
13
13
  /** The subcommands the claude.ts router dispatches on (lines 107-176). */
14
14
  export const KNOWN_SUBCOMMANDS = [
15
15
  'setup',
16
+ 'update',
16
17
  'assimilate',
17
18
  'reset-local-seat',
18
19
  'spawn',
@@ -1 +1 @@
1
- {"version":3,"file":"unknown-subcommand.js","sourceRoot":"","sources":["../src/unknown-subcommand.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,0EAA0E;AAC1E,MAAM,CAAC,MAAM,iBAAiB,GAAG;IAC/B,OAAO;IACP,YAAY;IACZ,kBAAkB;IAClB,OAAO;IACP,MAAM;IACN,SAAS;IACT,YAAY;IACZ,QAAQ;CACA,CAAC;AAEX;;;;GAIG;AACH,MAAM,UAAU,iBAAiB,CAAC,KAAyB;IACzD,IAAI,KAAK,KAAK,SAAS;QAAE,OAAO,IAAI,CAAC,CAAC,cAAc;IACpD,IAAI,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC;QAAE,OAAO,IAAI,CAAC,CAAC,8BAA8B;IACtE,IAAK,iBAAuC,CAAC,QAAQ,CAAC,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IAC1E,OAAO,KAAK,CAAC,CAAC,wCAAwC;AACxD,CAAC"}
1
+ {"version":3,"file":"unknown-subcommand.js","sourceRoot":"","sources":["../src/unknown-subcommand.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,0EAA0E;AAC1E,MAAM,CAAC,MAAM,iBAAiB,GAAG;IAC/B,OAAO;IACP,QAAQ;IACR,YAAY;IACZ,kBAAkB;IAClB,OAAO;IACP,MAAM;IACN,SAAS;IACT,YAAY;IACZ,QAAQ;CACA,CAAC;AAEX;;;;GAIG;AACH,MAAM,UAAU,iBAAiB,CAAC,KAAyB;IACzD,IAAI,KAAK,KAAK,SAAS;QAAE,OAAO,IAAI,CAAC,CAAC,cAAc;IACpD,IAAI,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC;QAAE,OAAO,IAAI,CAAC,CAAC,8BAA8B;IACtE,IAAK,iBAAuC,CAAC,QAAQ,CAAC,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IAC1E,OAAO,KAAK,CAAC,CAAC,wCAAwC;AACxD,CAAC"}
@@ -0,0 +1,58 @@
1
+ declare const CLIENT_PACKAGE = "borgmcp";
2
+ declare const SERVER_PACKAGE = "borgmcp-server";
3
+ export interface PublishedPackage {
4
+ name: typeof CLIENT_PACKAGE | typeof SERVER_PACKAGE;
5
+ version: string;
6
+ integrity: string;
7
+ sharedVersion: string;
8
+ }
9
+ export interface InstalledPackage {
10
+ name: typeof CLIENT_PACKAGE | typeof SERVER_PACKAGE;
11
+ version: string;
12
+ sharedVersion: string;
13
+ packageRoot: string;
14
+ binPath: string;
15
+ }
16
+ export interface UpdateTarget {
17
+ clientVersion: string;
18
+ serverVersion: string;
19
+ serverPresent?: boolean;
20
+ }
21
+ export interface UpdateOptions {
22
+ yes: boolean;
23
+ help?: boolean;
24
+ target?: UpdateTarget;
25
+ }
26
+ export type ParsedUpdateArgs = ({
27
+ ok: true;
28
+ } & UpdateOptions) | {
29
+ ok: false;
30
+ error: string;
31
+ };
32
+ export interface UpdateDeps {
33
+ currentClient(): Promise<InstalledPackage>;
34
+ currentServer(): Promise<InstalledPackage | null>;
35
+ publishedPackage(name: typeof CLIENT_PACKAGE | typeof SERVER_PACKAGE, version: string): Promise<PublishedPackage>;
36
+ installGlobal(name: typeof CLIENT_PACKAGE | typeof SERVER_PACKAGE, version: string): Promise<void>;
37
+ reenter(binPath: string, args: readonly string[]): Promise<number>;
38
+ serverJson(binPath: string, command: 'update' | 'status'): Promise<unknown>;
39
+ verifyRunningProtocol(origin: string): Promise<void>;
40
+ confirm(message: string): Promise<'yes' | 'no' | 'eof' | 'interrupted'>;
41
+ isTTY(): boolean;
42
+ stdout(text: string): void;
43
+ stderr(text: string): void;
44
+ calls?: string[];
45
+ }
46
+ export declare function parseUpdateArgs(args: readonly string[], reentryAuthorized?: boolean): ParsedUpdateArgs;
47
+ export declare function runUpdate(options: UpdateOptions, deps: UpdateDeps): Promise<number>;
48
+ export declare function inspectNpmPackageAt(input: {
49
+ name: typeof CLIENT_PACKAGE | typeof SERVER_PACKAGE;
50
+ binName: 'borg' | 'borg-mcp-server';
51
+ npmRoot: string;
52
+ commandPath: string;
53
+ invokedPath?: string;
54
+ }): Promise<InstalledPackage>;
55
+ export declare function buildDefaultUpdateDeps(): UpdateDeps;
56
+ export declare function runEarlyUpdate(argv: readonly string[], deps?: UpdateDeps): Promise<number | null>;
57
+ export {};
58
+ //# sourceMappingURL=update-cmd.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"update-cmd.d.ts","sourceRoot":"","sources":["../src/update-cmd.ts"],"names":[],"mappings":"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"}