borgmcp 5.2.0 → 5.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 (82) hide show
  1. package/dist/agent-runtime.d.ts +3 -4
  2. package/dist/agent-runtime.d.ts.map +1 -1
  3. package/dist/agent-runtime.js +9 -5
  4. package/dist/agent-runtime.js.map +1 -1
  5. package/dist/agent-session-identity.d.ts +13 -0
  6. package/dist/agent-session-identity.d.ts.map +1 -0
  7. package/dist/agent-session-identity.js +106 -0
  8. package/dist/agent-session-identity.js.map +1 -0
  9. package/dist/assimilate-cmd.d.ts +1 -11
  10. package/dist/assimilate-cmd.d.ts.map +1 -1
  11. package/dist/assimilate-cmd.js +37 -48
  12. package/dist/assimilate-cmd.js.map +1 -1
  13. package/dist/assimilate-deps.d.ts.map +1 -1
  14. package/dist/assimilate-deps.js +1 -4
  15. package/dist/assimilate-deps.js.map +1 -1
  16. package/dist/claude.d.ts.map +1 -1
  17. package/dist/claude.js +36 -77
  18. package/dist/claude.js.map +1 -1
  19. package/dist/codex-app-server.d.ts +4 -6
  20. package/dist/codex-app-server.d.ts.map +1 -1
  21. package/dist/codex-app-server.js +4 -25
  22. package/dist/codex-app-server.js.map +1 -1
  23. package/dist/codex-app-wake.d.ts +8 -10
  24. package/dist/codex-app-wake.d.ts.map +1 -1
  25. package/dist/codex-app-wake.js +49 -66
  26. package/dist/codex-app-wake.js.map +1 -1
  27. package/dist/codex-launch.d.ts +15 -24
  28. package/dist/codex-launch.d.ts.map +1 -1
  29. package/dist/codex-launch.js +29 -55
  30. package/dist/codex-launch.js.map +1 -1
  31. package/dist/codex-remote.d.ts +15 -8
  32. package/dist/codex-remote.d.ts.map +1 -1
  33. package/dist/codex-remote.js +71 -70
  34. package/dist/codex-remote.js.map +1 -1
  35. package/dist/codex-wake-resolve.d.ts +12 -31
  36. package/dist/codex-wake-resolve.d.ts.map +1 -1
  37. package/dist/codex-wake-resolve.js +21 -38
  38. package/dist/codex-wake-resolve.js.map +1 -1
  39. package/dist/config-utils.js +2 -2
  40. package/dist/config-utils.js.map +1 -1
  41. package/dist/cubes.d.ts +0 -17
  42. package/dist/cubes.d.ts.map +1 -1
  43. package/dist/cubes.js +0 -81
  44. package/dist/cubes.js.map +1 -1
  45. package/dist/index.d.ts.map +1 -1
  46. package/dist/index.js +10 -5
  47. package/dist/index.js.map +1 -1
  48. package/dist/lifecycle-log-guard.d.ts +6 -8
  49. package/dist/lifecycle-log-guard.d.ts.map +1 -1
  50. package/dist/lifecycle-log-guard.js +74 -22
  51. package/dist/lifecycle-log-guard.js.map +1 -1
  52. package/dist/log-stream.d.ts.map +1 -1
  53. package/dist/log-stream.js +4 -1
  54. package/dist/log-stream.js.map +1 -1
  55. package/dist/opencode-drone.d.ts +2 -0
  56. package/dist/opencode-drone.d.ts.map +1 -1
  57. package/dist/opencode-drone.js +16 -0
  58. package/dist/opencode-drone.js.map +1 -1
  59. package/dist/regen-format.js +1 -1
  60. package/dist/regen-format.js.map +1 -1
  61. package/dist/regen.js +11 -1
  62. package/dist/regen.js.map +1 -1
  63. package/docs/SESSION_IDENTITY.md +15 -0
  64. package/package.json +1 -1
  65. package/src/agent-runtime.ts +9 -5
  66. package/src/agent-session-identity.ts +98 -0
  67. package/src/assimilate-cmd.ts +35 -58
  68. package/src/assimilate-deps.ts +0 -4
  69. package/src/claude.ts +34 -81
  70. package/src/codex-app-server.ts +8 -25
  71. package/src/codex-app-wake.ts +46 -73
  72. package/src/codex-launch.ts +43 -76
  73. package/src/codex-remote.ts +90 -82
  74. package/src/codex-wake-resolve.ts +26 -47
  75. package/src/config-utils.ts +2 -2
  76. package/src/cubes.ts +2 -100
  77. package/src/index.ts +10 -5
  78. package/src/lifecycle-log-guard.ts +70 -26
  79. package/src/log-stream.ts +4 -1
  80. package/src/opencode-drone.ts +14 -0
  81. package/src/regen-format.ts +1 -1
  82. package/src/regen.ts +7 -1
@@ -7,6 +7,7 @@
7
7
  export type AgentKind = 'claude' | 'codex' | 'opencode';
8
8
  /** Pinned into MCP-child environments by Borg launch paths. */
9
9
  export declare const BORG_AGENT_KIND_ENV = "BORG_AGENT_KIND";
10
+ export declare const BORG_CLAUDE_LAUNCH_CORRELATION_ENV = "BORG_CLAUDE_LAUNCH_CORRELATION";
10
11
  /** Transport capability only — never use it as the primary CLI identity. */
11
12
  export declare const BORG_CODEX_REMOTE_WAKE_ENV = "BORG_CODEX_REMOTE_WAKE";
12
13
  /** Legacy OpenCode runtime marker, retained for installed-config compatibility. */
@@ -31,11 +32,9 @@ export declare function codexAgentKindConfigArgs(): string[];
31
32
  * Pin the remote-wake transport capability separately from the CLI identity.
32
33
  *
33
34
  * Codex MCP children read their configured env rather than the wrapper's
34
- * inherited process env. Explicitly pinning "0" on a no-socket launch is
35
- * therefore necessary to override legacy static configs that used to persist
36
- * BORG_CODEX_REMOTE_WAKE="1" as an identity marker.
35
+ * inherited process env. Every Borg Codex launch owns a remote socket.
37
36
  */
38
- export declare function codexRemoteWakeConfigArgs(enabled?: boolean): string[];
37
+ export declare function codexRemoteWakeConfigArgs(): string[];
39
38
  /**
40
39
  * Codex MCP children do not inherit the wrapper environment. Pin the explicit
41
40
  * Borg state root into the per-launch child environment when one is active.
@@ -1 +1 @@
1
- {"version":3,"file":"agent-runtime.d.ts","sourceRoot":"","sources":["../src/agent-runtime.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH,MAAM,MAAM,SAAS,GAAG,QAAQ,GAAG,OAAO,GAAG,UAAU,CAAC;AAExD,+DAA+D;AAC/D,eAAO,MAAM,mBAAmB,oBAAoB,CAAC;AACrD,4EAA4E;AAC5E,eAAO,MAAM,0BAA0B,2BAA2B,CAAC;AACnE,mFAAmF;AACnF,eAAO,MAAM,iBAAiB,kBAAkB,CAAC;AAMjD;;;;GAIG;AACH,wBAAgB,uBAAuB,CAAC,GAAG,GAAE,MAAM,CAAC,UAAwB,GAAG,SAAS,CAEvF;AAED,kFAAkF;AAClF,wBAAgB,iCAAiC,CAC/C,GAAG,GAAE,MAAM,CAAC,UAAwB,GACnC,SAAS,GAAG,IAAI,CAKlB;AAED;;;;GAIG;AACH,wBAAgB,mBAAmB,CACjC,GAAG,EAAE,MAAM,CAAC,UAAU,EACtB,SAAS,EAAE,SAAS,GACnB,MAAM,CAAC,UAAU,CAQnB;AAED,8EAA8E;AAC9E,wBAAgB,wBAAwB,IAAI,MAAM,EAAE,CAEnD;AAED;;;;;;;GAOG;AACH,wBAAgB,yBAAyB,CAAC,OAAO,GAAE,OAAc,GAAG,MAAM,EAAE,CAK3E;AAED;;;GAGG;AACH,wBAAgB,wBAAwB,CACtC,GAAG,GAAE,MAAM,CAAC,UAAwB,GACnC,MAAM,EAAE,CAOV"}
1
+ {"version":3,"file":"agent-runtime.d.ts","sourceRoot":"","sources":["../src/agent-runtime.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAKH,MAAM,MAAM,SAAS,GAAG,QAAQ,GAAG,OAAO,GAAG,UAAU,CAAC;AAExD,+DAA+D;AAC/D,eAAO,MAAM,mBAAmB,oBAAoB,CAAC;AACrD,eAAO,MAAM,kCAAkC,mCAAmC,CAAC;AACnF,4EAA4E;AAC5E,eAAO,MAAM,0BAA0B,2BAA2B,CAAC;AACnE,mFAAmF;AACnF,eAAO,MAAM,iBAAiB,kBAAkB,CAAC;AAMjD;;;;GAIG;AACH,wBAAgB,uBAAuB,CAAC,GAAG,GAAE,MAAM,CAAC,UAAwB,GAAG,SAAS,CAEvF;AAED,kFAAkF;AAClF,wBAAgB,iCAAiC,CAC/C,GAAG,GAAE,MAAM,CAAC,UAAwB,GACnC,SAAS,GAAG,IAAI,CAKlB;AAED;;;;GAIG;AACH,wBAAgB,mBAAmB,CACjC,GAAG,EAAE,MAAM,CAAC,UAAU,EACtB,SAAS,EAAE,SAAS,GACnB,MAAM,CAAC,UAAU,CAYnB;AAED,8EAA8E;AAC9E,wBAAgB,wBAAwB,IAAI,MAAM,EAAE,CAEnD;AAED;;;;;GAKG;AACH,wBAAgB,yBAAyB,IAAI,MAAM,EAAE,CAKpD;AAED;;;GAGG;AACH,wBAAgB,wBAAwB,CACtC,GAAG,GAAE,MAAM,CAAC,UAAwB,GACnC,MAAM,EAAE,CAOV"}
@@ -5,8 +5,10 @@
5
5
  * agent_kind without re-assimilating.
6
6
  */
7
7
  import { BORG_STATE_ROOT_ENV } from './private-root.js';
8
+ import { randomBytes } from 'node:crypto';
8
9
  /** Pinned into MCP-child environments by Borg launch paths. */
9
10
  export const BORG_AGENT_KIND_ENV = 'BORG_AGENT_KIND';
11
+ export const BORG_CLAUDE_LAUNCH_CORRELATION_ENV = 'BORG_CLAUDE_LAUNCH_CORRELATION';
10
12
  /** Transport capability only — never use it as the primary CLI identity. */
11
13
  export const BORG_CODEX_REMOTE_WAKE_ENV = 'BORG_CODEX_REMOTE_WAKE';
12
14
  /** Legacy OpenCode runtime marker, retained for installed-config compatibility. */
@@ -42,7 +44,11 @@ export function withAgentRuntimeEnv(env, agentKind) {
42
44
  delete next[BORG_AGENT_KIND_ENV];
43
45
  delete next[BORG_CODEX_REMOTE_WAKE_ENV];
44
46
  delete next[BORG_OPENCODE_ENV];
47
+ delete next[BORG_CLAUDE_LAUNCH_CORRELATION_ENV];
45
48
  next[BORG_AGENT_KIND_ENV] = agentKind;
49
+ if (agentKind === 'claude') {
50
+ next[BORG_CLAUDE_LAUNCH_CORRELATION_ENV] = randomBytes(32).toString('base64url');
51
+ }
46
52
  if (agentKind === 'opencode')
47
53
  next[BORG_OPENCODE_ENV] = '1';
48
54
  return next;
@@ -55,14 +61,12 @@ export function codexAgentKindConfigArgs() {
55
61
  * Pin the remote-wake transport capability separately from the CLI identity.
56
62
  *
57
63
  * Codex MCP children read their configured env rather than the wrapper's
58
- * inherited process env. Explicitly pinning "0" on a no-socket launch is
59
- * therefore necessary to override legacy static configs that used to persist
60
- * BORG_CODEX_REMOTE_WAKE="1" as an identity marker.
64
+ * inherited process env. Every Borg Codex launch owns a remote socket.
61
65
  */
62
- export function codexRemoteWakeConfigArgs(enabled = true) {
66
+ export function codexRemoteWakeConfigArgs() {
63
67
  return [
64
68
  '-c',
65
- `mcp_servers.borg.env.${BORG_CODEX_REMOTE_WAKE_ENV}="${enabled ? '1' : '0'}"`,
69
+ `mcp_servers.borg.env.${BORG_CODEX_REMOTE_WAKE_ENV}="1"`,
66
70
  ];
67
71
  }
68
72
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"agent-runtime.js","sourceRoot":"","sources":["../src/agent-runtime.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAIxD,+DAA+D;AAC/D,MAAM,CAAC,MAAM,mBAAmB,GAAG,iBAAiB,CAAC;AACrD,4EAA4E;AAC5E,MAAM,CAAC,MAAM,0BAA0B,GAAG,wBAAwB,CAAC;AACnE,mFAAmF;AACnF,MAAM,CAAC,MAAM,iBAAiB,GAAG,eAAe,CAAC;AAEjD,SAAS,WAAW,CAAC,KAAyB;IAC5C,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,OAAO,IAAI,KAAK,KAAK,UAAU,CAAC;AACzE,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,uBAAuB,CAAC,MAAyB,OAAO,CAAC,GAAG;IAC1E,OAAO,iCAAiC,CAAC,GAAG,CAAC,IAAI,QAAQ,CAAC;AAC5D,CAAC;AAED,kFAAkF;AAClF,MAAM,UAAU,iCAAiC,CAC/C,MAAyB,OAAO,CAAC,GAAG;IAEpC,IAAI,WAAW,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAC;QAAE,OAAO,GAAG,CAAC,mBAAmB,CAAC,CAAC;IAC3E,IAAI,GAAG,CAAC,iBAAiB,CAAC,KAAK,GAAG;QAAE,OAAO,UAAU,CAAC;IACtD,IAAI,GAAG,CAAC,0BAA0B,CAAC,KAAK,GAAG;QAAE,OAAO,OAAO,CAAC;IAC5D,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,mBAAmB,CACjC,GAAsB,EACtB,SAAoB;IAEpB,MAAM,IAAI,GAAG,EAAE,GAAG,GAAG,EAAE,CAAC;IACxB,OAAO,IAAI,CAAC,mBAAmB,CAAC,CAAC;IACjC,OAAO,IAAI,CAAC,0BAA0B,CAAC,CAAC;IACxC,OAAO,IAAI,CAAC,iBAAiB,CAAC,CAAC;IAC/B,IAAI,CAAC,mBAAmB,CAAC,GAAG,SAAS,CAAC;IACtC,IAAI,SAAS,KAAK,UAAU;QAAE,IAAI,CAAC,iBAAiB,CAAC,GAAG,GAAG,CAAC;IAC5D,OAAO,IAAI,CAAC;AACd,CAAC;AAED,8EAA8E;AAC9E,MAAM,UAAU,wBAAwB;IACtC,OAAO,CAAC,IAAI,EAAE,wBAAwB,mBAAmB,UAAU,CAAC,CAAC;AACvE,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,yBAAyB,CAAC,UAAmB,IAAI;IAC/D,OAAO;QACL,IAAI;QACJ,wBAAwB,0BAA0B,KAAK,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,GAAG;KAC9E,CAAC;AACJ,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,wBAAwB,CACtC,MAAyB,OAAO,CAAC,GAAG;IAEpC,MAAM,SAAS,GAAG,GAAG,CAAC,mBAAmB,CAAC,CAAC;IAC3C,IAAI,SAAS,KAAK,SAAS;QAAE,OAAO,EAAE,CAAC;IACvC,OAAO;QACL,IAAI;QACJ,wBAAwB,mBAAmB,IAAI,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,EAAE;KAC3E,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"agent-runtime.js","sourceRoot":"","sources":["../src/agent-runtime.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AACxD,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAI1C,+DAA+D;AAC/D,MAAM,CAAC,MAAM,mBAAmB,GAAG,iBAAiB,CAAC;AACrD,MAAM,CAAC,MAAM,kCAAkC,GAAG,gCAAgC,CAAC;AACnF,4EAA4E;AAC5E,MAAM,CAAC,MAAM,0BAA0B,GAAG,wBAAwB,CAAC;AACnE,mFAAmF;AACnF,MAAM,CAAC,MAAM,iBAAiB,GAAG,eAAe,CAAC;AAEjD,SAAS,WAAW,CAAC,KAAyB;IAC5C,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,OAAO,IAAI,KAAK,KAAK,UAAU,CAAC;AACzE,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,uBAAuB,CAAC,MAAyB,OAAO,CAAC,GAAG;IAC1E,OAAO,iCAAiC,CAAC,GAAG,CAAC,IAAI,QAAQ,CAAC;AAC5D,CAAC;AAED,kFAAkF;AAClF,MAAM,UAAU,iCAAiC,CAC/C,MAAyB,OAAO,CAAC,GAAG;IAEpC,IAAI,WAAW,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAC;QAAE,OAAO,GAAG,CAAC,mBAAmB,CAAC,CAAC;IAC3E,IAAI,GAAG,CAAC,iBAAiB,CAAC,KAAK,GAAG;QAAE,OAAO,UAAU,CAAC;IACtD,IAAI,GAAG,CAAC,0BAA0B,CAAC,KAAK,GAAG;QAAE,OAAO,OAAO,CAAC;IAC5D,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,mBAAmB,CACjC,GAAsB,EACtB,SAAoB;IAEpB,MAAM,IAAI,GAAG,EAAE,GAAG,GAAG,EAAE,CAAC;IACxB,OAAO,IAAI,CAAC,mBAAmB,CAAC,CAAC;IACjC,OAAO,IAAI,CAAC,0BAA0B,CAAC,CAAC;IACxC,OAAO,IAAI,CAAC,iBAAiB,CAAC,CAAC;IAC/B,OAAO,IAAI,CAAC,kCAAkC,CAAC,CAAC;IAChD,IAAI,CAAC,mBAAmB,CAAC,GAAG,SAAS,CAAC;IACtC,IAAI,SAAS,KAAK,QAAQ,EAAE,CAAC;QAC3B,IAAI,CAAC,kCAAkC,CAAC,GAAG,WAAW,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;IACnF,CAAC;IACD,IAAI,SAAS,KAAK,UAAU;QAAE,IAAI,CAAC,iBAAiB,CAAC,GAAG,GAAG,CAAC;IAC5D,OAAO,IAAI,CAAC;AACd,CAAC;AAED,8EAA8E;AAC9E,MAAM,UAAU,wBAAwB;IACtC,OAAO,CAAC,IAAI,EAAE,wBAAwB,mBAAmB,UAAU,CAAC,CAAC;AACvE,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,yBAAyB;IACvC,OAAO;QACL,IAAI;QACJ,wBAAwB,0BAA0B,MAAM;KACzD,CAAC;AACJ,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,wBAAwB,CACtC,MAAyB,OAAO,CAAC,GAAG;IAEpC,MAAM,SAAS,GAAG,GAAG,CAAC,mBAAmB,CAAC,CAAC;IAC3C,IAAI,SAAS,KAAK,SAAS;QAAE,OAAO,EAAE,CAAC;IACvC,OAAO;QACL,IAAI;QACJ,wBAAwB,mBAAmB,IAAI,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,EAAE;KAC3E,CAAC;AACJ,CAAC"}
@@ -0,0 +1,13 @@
1
+ export type AgentSessionIdentity = {
2
+ kind: 'known';
3
+ id: string;
4
+ source: string;
5
+ observedAt: string;
6
+ } | {
7
+ kind: 'unknown';
8
+ reason: string;
9
+ };
10
+ /** Identity only: no credential, authorization, liveness, or expiry semantics. */
11
+ export declare function recordClaudeSessionStart(payload: string, env?: NodeJS.ProcessEnv, worktree?: string): Promise<void>;
12
+ export declare function resolveAgentSessionIdentity(env?: NodeJS.ProcessEnv, worktree?: string): Promise<AgentSessionIdentity>;
13
+ //# sourceMappingURL=agent-session-identity.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"agent-session-identity.d.ts","sourceRoot":"","sources":["../src/agent-session-identity.ts"],"names":[],"mappings":"AAUA,MAAM,MAAM,oBAAoB,GAC5B;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,EAAE,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,MAAM,CAAA;CAAE,GACjE;IAAE,IAAI,EAAE,SAAS,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC;AAYxC,kFAAkF;AAClF,wBAAsB,wBAAwB,CAC5C,OAAO,EAAE,MAAM,EACf,GAAG,GAAE,MAAM,CAAC,UAAwB,EACpC,QAAQ,SAAoB,GAC3B,OAAO,CAAC,IAAI,CAAC,CAoBf;AAED,wBAAsB,2BAA2B,CAC/C,GAAG,GAAE,MAAM,CAAC,UAAwB,EACpC,QAAQ,SAAoB,GAC3B,OAAO,CAAC,oBAAoB,CAAC,CA2C/B"}
@@ -0,0 +1,106 @@
1
+ import { randomBytes } from 'node:crypto';
2
+ import { readFile, rename, unlink, writeFile } from 'node:fs/promises';
3
+ import { join } from 'node:path';
4
+ import { BORG_CLAUDE_LAUNCH_CORRELATION_ENV, resolveReportableSessionAgentKind } from './agent-runtime.js';
5
+ import { findProjectRoot } from './cubes.js';
6
+ import { ensurePrivateBorgConfigRoot } from './private-root.js';
7
+ import { CodexAppServerClient } from './codex-app-server.js';
8
+ import { codexAppServerSocketFromEnv, isCodexSubagentSource } from './codex-wake-resolve.js';
9
+ import { resolveOpenCodeAgentSessionId } from './opencode-drone.js';
10
+ function validId(value) {
11
+ return typeof value === 'string' && value.length > 0 && value.length <= 512 && !/[\s\x00-\x1f\x7f]/.test(value);
12
+ }
13
+ function claudeCorrelation(env) {
14
+ const value = env[BORG_CLAUDE_LAUNCH_CORRELATION_ENV];
15
+ if (!value || !/^[A-Za-z0-9_-]{43}$/.test(value))
16
+ return null;
17
+ return Buffer.from(value, 'base64url').toString('base64url') === value ? value : null;
18
+ }
19
+ /** Identity only: no credential, authorization, liveness, or expiry semantics. */
20
+ export async function recordClaudeSessionStart(payload, env = process.env, worktree = findProjectRoot()) {
21
+ const correlation = claudeCorrelation(env);
22
+ if (!correlation)
23
+ return;
24
+ let sessionId;
25
+ try {
26
+ sessionId = JSON.parse(payload)?.session_id;
27
+ }
28
+ catch { /* Persist unknown rather than retain an old id. */ }
29
+ const root = join(worktree, '.borgmcp');
30
+ await ensurePrivateBorgConfigRoot(root);
31
+ try {
32
+ await writeFile(join(root, '.gitignore'), '*\n', { flag: 'wx', mode: 0o600 });
33
+ }
34
+ catch (error) {
35
+ if (error.code !== 'EEXIST')
36
+ throw error;
37
+ }
38
+ const path = join(root, 'claude-session.json');
39
+ const temporary = `${path}.${randomBytes(16).toString('hex')}.tmp`;
40
+ try {
41
+ await writeFile(temporary, JSON.stringify({
42
+ correlation, session_id: validId(sessionId) ? sessionId : null,
43
+ observedAt: new Date().toISOString(),
44
+ }) + '\n', { flag: 'wx', mode: 0o600 });
45
+ await rename(temporary, path);
46
+ }
47
+ finally {
48
+ await unlink(temporary).catch((error) => { if (error.code !== 'ENOENT')
49
+ throw error; });
50
+ }
51
+ }
52
+ export async function resolveAgentSessionIdentity(env = process.env, worktree = findProjectRoot()) {
53
+ const kind = resolveReportableSessionAgentKind(env);
54
+ try {
55
+ if (kind === 'claude') {
56
+ const correlation = claudeCorrelation(env);
57
+ if (!correlation)
58
+ return { kind: 'unknown', reason: 'claude-launch-correlation-missing' };
59
+ const record = JSON.parse(await readFile(join(worktree, '.borgmcp', 'claude-session.json'), 'utf8'));
60
+ if (record?.correlation !== correlation)
61
+ return { kind: 'unknown', reason: 'claude-launch-correlation-mismatch' };
62
+ if (!validId(record.session_id) || typeof record.observedAt !== 'string' || !Number.isFinite(Date.parse(record.observedAt))) {
63
+ return { kind: 'unknown', reason: 'claude-session-start-invalid' };
64
+ }
65
+ // Last observed hook, not proof of freshness: a skipped resume hook is
66
+ // undetectable without a future per-call harness session handoff.
67
+ return { kind: 'known', id: `claude:${record.session_id}`, source: 'claude-session-start', observedAt: record.observedAt };
68
+ }
69
+ if (kind === 'codex') {
70
+ const socket = codexAppServerSocketFromEnv(env);
71
+ if (!socket)
72
+ return { kind: 'unknown', reason: 'codex-launch-socket-missing' };
73
+ const client = new CodexAppServerClient(socket);
74
+ try {
75
+ await client.connect();
76
+ const candidates = [];
77
+ for (const id of await client.loadedThreadIds()) {
78
+ const thread = await client.readThread(id);
79
+ // An unreadable candidate could be another user thread; do not guess.
80
+ if (!thread)
81
+ return { kind: 'unknown', reason: 'codex-thread-unreadable' };
82
+ if (thread.ephemeral !== true && !isCodexSubagentSource(thread.source) &&
83
+ (thread.threadSource === undefined || thread.threadSource === 'user'))
84
+ candidates.push(thread.id);
85
+ }
86
+ if (candidates.length !== 1 || !validId(candidates[0]))
87
+ return { kind: 'unknown', reason: 'codex-user-thread-not-unique' };
88
+ return { kind: 'known', id: `codex:${candidates[0]}`, source: 'codex-launch-thread', observedAt: new Date().toISOString() };
89
+ }
90
+ finally {
91
+ client.close();
92
+ }
93
+ }
94
+ if (kind === 'opencode') {
95
+ const id = await resolveOpenCodeAgentSessionId();
96
+ return validId(id)
97
+ ? { kind: 'known', id: `opencode:${id}`, source: 'opencode-launch-binding', observedAt: new Date().toISOString() }
98
+ : { kind: 'unknown', reason: 'opencode-launch-binding-unavailable-or-changed' };
99
+ }
100
+ return { kind: 'unknown', reason: 'agent-harness-unknown' };
101
+ }
102
+ catch {
103
+ return { kind: 'unknown', reason: `${kind ?? 'agent'}-session-source-unavailable` };
104
+ }
105
+ }
106
+ //# sourceMappingURL=agent-session-identity.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"agent-session-identity.js","sourceRoot":"","sources":["../src/agent-session-identity.ts"],"names":[],"mappings":"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"}
@@ -221,16 +221,6 @@ export interface AssimilateDeps {
221
221
  setCliPreferenceForWorktree: (cli: BorgCli, worktree: string) => Promise<void>;
222
222
  resolveCli: (explicit?: BorgCli) => Promise<BorgCli>;
223
223
  prepareCodexRemoteLaunch: () => Promise<CodexRemoteLaunch>;
224
- setCodexWakeTarget: (cubeId: string, droneId: string, target: {
225
- threadId: string;
226
- socketPath: string;
227
- }) => Promise<void>;
228
- findLoadedCodexThread: (options: {
229
- socketPath: string;
230
- cwd: string;
231
- previewIncludes: string;
232
- updatedAfter: number;
233
- }) => Promise<string | null>;
234
224
  }
235
225
  export type AuthorityResolutionDeps = Pick<AssimilateDeps, 'connectServer' | 'cwd' | 'defaultAuthority' | 'detectLocalServer' | 'ensureLocalServerInstalled' | 'getActiveCube' | 'getHostname' | 'hasPersistedActiveCube' | 'isTTY' | 'peekPendingServerEnrollment' | 'preparePrivateRoot' | 'prompt' | 'promptSecret' | 'resumePendingServerEnrollment' | 'resumeServerEnrollment' | 'runSync' | 'stderr'>;
236
226
  type AssimilationAuthority = {
@@ -260,7 +250,7 @@ export interface FinalizationInput {
260
250
  rollbackWorktree: () => void;
261
251
  }
262
252
  export declare function finalizeAssimilationSeat(input: FinalizationInput, deps: FinalizationDeps): Promise<AssimilationPhaseOutcome<void>>;
263
- export type LaunchDeps = Pick<AssimilateDeps, 'exec' | 'findLoadedCodexThread' | 'getInboxPath' | 'isTTY' | 'prepareCodexRemoteLaunch' | 'probeMcpReady' | 'resolveCliApprovals' | 'setCodexWakeTarget' | 'setTerminalTitle' | 'stderr' | 'stdout'>;
253
+ export type LaunchDeps = Pick<AssimilateDeps, 'exec' | 'getInboxPath' | 'isTTY' | 'prepareCodexRemoteLaunch' | 'probeMcpReady' | 'resolveCliApprovals' | 'setTerminalTitle' | 'stderr' | 'stdout'>;
264
254
  export interface LaunchInput {
265
255
  flags: AssimilateFlags;
266
256
  result: AssimilateResult;
@@ -1 +1 @@
1
- {"version":3,"file":"assimilate-cmd.d.ts","sourceRoot":"","sources":["../src/assimilate-cmd.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"assimilate-cmd.d.ts","sourceRoot":"","sources":["../src/assimilate-cmd.ts"],"names":[],"mappings":"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"}
@@ -4,12 +4,10 @@ import { roleSlug, matchRoleByName, occupiedRoleIdsForAutoRole, pickDefaultRole,
4
4
  import { validateName } from './name-validator.js';
5
5
  import { renderAssimilationWelcome } from './assimilate-welcome.js';
6
6
  import { shellEscape } from './shell-escape.js';
7
- import { withCodexCwdArg } from './codex-remote.js';
8
- import { buildAgentKickoffPrompt, buildKickoffWakePathClause, recordCodexWakeTarget, socketPathFromRemoteArgs, } from './codex-launch.js';
7
+ import { buildAgentKickoffPrompt, buildKickoffWakePathClause, buildCodexLaunchArgs, } from './codex-launch.js';
9
8
  import { perWorktreeBranchName, computeWorktreePath, localBranchExists, isMerged } from './worktree-lifecycle.js';
10
9
  import { DroneEvictedError } from './drone-lifecycle.js';
11
- import { codexBorgSessionConfigArgs } from './launch-gate.js';
12
- import { codexAgentKindConfigArgs, codexRemoteWakeConfigArgs, codexStateRootConfigArgs, withAgentRuntimeEnv, } from './agent-runtime.js';
10
+ import { withAgentRuntimeEnv, } from './agent-runtime.js';
13
11
  import { inboxPathForDrone, } from './cubes.js';
14
12
  import { monitorStateRootForWorktree } from './inbox-monitor.js';
15
13
  import { formatSeatReattachRefusal, inspectLiveInboxMonitor, } from './seat-reattach-guard.js';
@@ -444,13 +442,10 @@ export async function launchAssimilatedAgent(input, deps) {
444
442
  `will recover if the MCP server takes longer to start.\n`);
445
443
  }
446
444
  const inboxPath = deps.getInboxPath(result.cube_id, result.drone_id);
447
- const codexWakeNonce = cli === 'codex' ? `borg-wake-${randomUUID()}` : null;
448
445
  const monitorClause = buildKickoffWakePathClause(cli, cli === 'claude' ? inboxPath : null, cli === 'claude' ? monitorStateRoot : null);
449
- let codexWakePathClause;
450
- let remoteArgs = [];
451
446
  let launchArgs;
452
- let codexSocketPath = null;
453
447
  let codexServerCleanup = null;
448
+ let codexRemote = null;
454
449
  const launchApproval = deps.resolveCliApprovals
455
450
  ? await deps.resolveCliApprovals(cli, agentCwd, { skipOverride: flags.noBorgApprovalOverride })
456
451
  : { codexArgs: [] };
@@ -471,41 +466,36 @@ export async function launchAssimilatedAgent(input, deps) {
471
466
  for (const key of modelEnv.unset)
472
467
  delete childEnv[key];
473
468
  if (cli === 'codex') {
474
- const remote = await deps.prepareCodexRemoteLaunch();
475
- if (remote.warning) {
476
- deps.stderr(`warning: ${remote.warning}\n`);
477
- codexWakePathClause =
478
- '⚠ Codex wake-path capability check failed: remote-control is unavailable for this session. Run borg_regen manually whenever you return, and expect only fallback wakeups until relaunch.';
479
- }
480
- else {
481
- codexWakePathClause = 'Codex wake-path capability check passed: remote-control socket established for this session.';
469
+ codexRemote = await deps.prepareCodexRemoteLaunch();
470
+ if (!codexRemote.ready) {
471
+ const stderr = codexRemote.stderr ? `\n${codexRemote.stderr}` : '';
472
+ deps.stderr(`Codex launch refused: ${codexRemote.reason}${stderr}\n`);
473
+ return 1;
482
474
  }
483
- remoteArgs = remote.args;
484
- if (Object.keys(remote.env).length > 0)
485
- Object.assign(childEnv, remote.env);
486
- codexSocketPath = socketPathFromRemoteArgs(remote.args);
487
- codexServerCleanup = remote.server?.cleanup ?? null;
475
+ Object.assign(childEnv, codexRemote.env);
476
+ codexServerCleanup = codexRemote.server.cleanup;
488
477
  }
489
478
  const kickoff = buildAgentKickoffPrompt({
490
479
  cli,
491
- codexWakeNonce,
492
480
  monitorClause,
493
- codexWakePathClause,
494
481
  });
495
482
  let openCodeKickoff = null;
496
483
  let dronePort;
497
484
  launchArgs = [kickoff];
498
485
  if (cli === 'codex') {
499
- launchArgs = [
500
- ...codexLaunchDirectoryArgs(launchAccessPaths),
501
- ...launchApproval.codexArgs,
502
- ...codexBorgSessionConfigArgs(),
503
- ...codexAgentKindConfigArgs(),
504
- ...codexRemoteWakeConfigArgs(codexSocketPath !== null),
505
- ...codexStateRootConfigArgs(),
506
- ...remoteArgs,
507
- ...withCodexCwdArg(launchArgs, agentCwd),
508
- ];
486
+ const plan = buildCodexLaunchArgs({
487
+ remote: codexRemote,
488
+ cwd: agentCwd,
489
+ kickoff,
490
+ approvalArgs: launchApproval.codexArgs,
491
+ accessArgs: codexLaunchDirectoryArgs(launchAccessPaths),
492
+ });
493
+ if (!plan.ready) {
494
+ codexServerCleanup?.();
495
+ deps.stderr(`Codex launch refused: ${plan.reason}\n`);
496
+ return 1;
497
+ }
498
+ launchArgs = plan.args;
509
499
  }
510
500
  else if (cli === 'opencode') {
511
501
  dronePort = await allocateOpenCodePort();
@@ -517,17 +507,13 @@ export async function launchAssimilatedAgent(input, deps) {
517
507
  childEnv[BORG_OPENCODE_LAUNCH_CORRELATION_ENV] = openCodeKickoff.correlationIdentity;
518
508
  launchArgs = buildOpenCodeLaunchArgs(agentCwd, dronePort, openCodeKickoff.prompt);
519
509
  }
520
- const exitPromise = deps.exec(cli, launchArgs, agentCwd, childEnv);
521
- if (cli === 'codex' && codexSocketPath && codexWakeNonce) {
522
- void recordCodexWakeTarget({
523
- deps,
524
- cubeId: result.cube_id,
525
- droneId: result.drone_id,
526
- socketPath: codexSocketPath,
527
- cwd: agentCwd,
528
- previewNeedle: codexWakeNonce,
529
- launchedAtSeconds: Math.floor(Date.now() / 1000),
530
- });
510
+ let exitPromise;
511
+ try {
512
+ exitPromise = deps.exec(cli, launchArgs, agentCwd, childEnv);
513
+ }
514
+ catch (error) {
515
+ codexServerCleanup?.();
516
+ throw error;
531
517
  }
532
518
  if (cli === 'opencode' && openCodeKickoff) {
533
519
  const launchKickoff = openCodeKickoff;
@@ -540,13 +526,16 @@ export async function launchAssimilatedAgent(input, deps) {
540
526
  launchIdentity: launchKickoff.correlationIdentity,
541
527
  }).then(() => injectInitialKickoff(launchKickoff)).catch(() => { });
542
528
  }
543
- const exitCode = await exitPromise;
544
- if (codexServerCleanup) {
529
+ let exitCode;
530
+ try {
531
+ exitCode = await exitPromise;
532
+ }
533
+ finally {
545
534
  try {
546
- codexServerCleanup();
535
+ codexServerCleanup?.();
547
536
  }
548
537
  catch {
549
- // Best-effort cleanup after a normal Codex exit.
538
+ // Best-effort cleanup after Codex exits or fails to spawn.
550
539
  }
551
540
  }
552
541
  if (spawnedWorktreePath && originalCwd !== spawnedWorktreePath) {