@moxt-ai/mobius 0.0.359 → 0.0.360

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 (103) hide show
  1. package/dist/cli.js +935 -490
  2. package/dist/cli.js.map +4 -4
  3. package/dist/engine/acp/adapter/agent-initialization.d.ts +2 -2
  4. package/dist/engine/acp/adapter/agent-initialization.d.ts.map +1 -1
  5. package/dist/engine/acp/adapter/agent-initialization.js.map +1 -1
  6. package/dist/engine/acp/adapter/claude/adapter.d.ts +21 -4
  7. package/dist/engine/acp/adapter/claude/adapter.d.ts.map +1 -1
  8. package/dist/engine/acp/adapter/claude/adapter.js +52 -15
  9. package/dist/engine/acp/adapter/claude/adapter.js.map +1 -1
  10. package/dist/engine/acp/adapter/codex/adapter.d.ts +22 -5
  11. package/dist/engine/acp/adapter/codex/adapter.d.ts.map +1 -1
  12. package/dist/engine/acp/adapter/codex/adapter.js +70 -20
  13. package/dist/engine/acp/adapter/codex/adapter.js.map +1 -1
  14. package/dist/engine/acp/adapter/configuration-changes.d.ts +25 -0
  15. package/dist/engine/acp/adapter/configuration-changes.d.ts.map +1 -0
  16. package/dist/engine/acp/adapter/configuration-changes.js +47 -0
  17. package/dist/engine/acp/adapter/configuration-changes.js.map +1 -0
  18. package/dist/engine/acp/adapter/execution-connections.d.ts +26 -0
  19. package/dist/engine/acp/adapter/execution-connections.d.ts.map +1 -0
  20. package/dist/engine/acp/adapter/{live-sessions.js → execution-connections.js} +92 -24
  21. package/dist/engine/acp/adapter/execution-connections.js.map +1 -0
  22. package/dist/engine/acp/adapter/lifecycle-output.d.ts +10 -0
  23. package/dist/engine/acp/adapter/lifecycle-output.d.ts.map +1 -0
  24. package/dist/engine/acp/adapter/lifecycle-output.js +26 -0
  25. package/dist/engine/acp/adapter/lifecycle-output.js.map +1 -0
  26. package/dist/engine/acp/adapter/native-session-lookup.d.ts +2 -2
  27. package/dist/engine/acp/adapter/native-session-lookup.d.ts.map +1 -1
  28. package/dist/engine/acp/adapter/native-session-lookup.js +4 -4
  29. package/dist/engine/acp/adapter/native-session-lookup.js.map +1 -1
  30. package/dist/engine/acp/adapter/pi/adapter.d.ts +21 -4
  31. package/dist/engine/acp/adapter/pi/adapter.d.ts.map +1 -1
  32. package/dist/engine/acp/adapter/pi/adapter.js +52 -15
  33. package/dist/engine/acp/adapter/pi/adapter.js.map +1 -1
  34. package/dist/engine/acp/adapter/query-processes.d.ts +6 -5
  35. package/dist/engine/acp/adapter/query-processes.d.ts.map +1 -1
  36. package/dist/engine/acp/adapter/query-processes.js +36 -36
  37. package/dist/engine/acp/adapter/query-processes.js.map +1 -1
  38. package/dist/engine/acp/adapter/query-scope.d.ts +8 -0
  39. package/dist/engine/acp/adapter/query-scope.d.ts.map +1 -0
  40. package/dist/engine/acp/adapter/query-scope.js +16 -0
  41. package/dist/engine/acp/adapter/query-scope.js.map +1 -0
  42. package/dist/engine/acp/adapter/query-session.d.ts +3 -4
  43. package/dist/engine/acp/adapter/query-session.d.ts.map +1 -1
  44. package/dist/engine/acp/adapter/query-session.js +26 -31
  45. package/dist/engine/acp/adapter/query-session.js.map +1 -1
  46. package/dist/engine/acp/adapter/session-events.d.ts +34 -6
  47. package/dist/engine/acp/adapter/session-events.d.ts.map +1 -1
  48. package/dist/engine/acp/adapter/session-events.js +95 -3
  49. package/dist/engine/acp/adapter/session-events.js.map +1 -1
  50. package/dist/engine/acp/content/content-externalizer.d.ts +1 -0
  51. package/dist/engine/acp/content/content-externalizer.d.ts.map +1 -1
  52. package/dist/engine/acp/content/content-externalizer.js.map +1 -1
  53. package/dist/engine/acp/native-history/preview-contract.d.ts +73 -16
  54. package/dist/engine/acp/native-history/preview-contract.d.ts.map +1 -1
  55. package/dist/engine/acp/protocol/session-config-protocol.d.ts +1 -0
  56. package/dist/engine/acp/protocol/session-config-protocol.d.ts.map +1 -1
  57. package/dist/engine/acp/protocol/session-config-protocol.js +1 -1
  58. package/dist/engine/acp/protocol/session-config-protocol.js.map +1 -1
  59. package/dist/engine/agent/runtime-agents.d.ts +4 -1
  60. package/dist/engine/agent/runtime-agents.d.ts.map +1 -1
  61. package/dist/engine/agent/runtime-agents.js +6 -4
  62. package/dist/engine/agent/runtime-agents.js.map +1 -1
  63. package/dist/engine/runtime/run.d.ts.map +1 -1
  64. package/dist/engine/runtime/run.js +6 -2
  65. package/dist/engine/runtime/run.js.map +1 -1
  66. package/dist/engine/session/api/session-api.d.ts +3 -0
  67. package/dist/engine/session/api/session-api.d.ts.map +1 -1
  68. package/dist/engine/session/api/session-api.js.map +1 -1
  69. package/dist/engine/session/live/agent-session-restore.d.ts +6 -16
  70. package/dist/engine/session/live/agent-session-restore.d.ts.map +1 -1
  71. package/dist/engine/session/live/agent-session.d.ts +7 -14
  72. package/dist/engine/session/live/agent-session.d.ts.map +1 -1
  73. package/dist/engine/session/live/agent-session.js +108 -87
  74. package/dist/engine/session/live/agent-session.js.map +1 -1
  75. package/dist/engine/session/live/session-restore.d.ts.map +1 -1
  76. package/dist/engine/session/live/session-restore.js +12 -35
  77. package/dist/engine/session/live/session-restore.js.map +1 -1
  78. package/dist/engine/session/manager/session-manager.d.ts.map +1 -1
  79. package/dist/engine/session/manager/session-manager.js +13 -5
  80. package/dist/engine/session/manager/session-manager.js.map +1 -1
  81. package/dist/engine/session/native/native-query.d.ts +5 -0
  82. package/dist/engine/session/native/native-query.d.ts.map +1 -0
  83. package/dist/engine/session/native/native-query.js +14 -0
  84. package/dist/engine/session/native/native-query.js.map +1 -0
  85. package/dist/engine/session/native/native-session-browser.d.ts.map +1 -1
  86. package/dist/engine/session/native/native-session-browser.js +27 -16
  87. package/dist/engine/session/native/native-session-browser.js.map +1 -1
  88. package/dist/engine/session/process/retained-agent-processes.d.ts +10 -10
  89. package/dist/engine/session/process/retained-agent-processes.d.ts.map +1 -1
  90. package/dist/engine/session/process/retained-agent-processes.js.map +1 -1
  91. package/dist/engine/session/prompt/execute-prompt.d.ts.map +1 -1
  92. package/dist/engine/session/prompt/execute-prompt.js +4 -1
  93. package/dist/engine/session/prompt/execute-prompt.js.map +1 -1
  94. package/dist/engine/util/branded-type.d.ts +4 -0
  95. package/dist/engine/util/branded-type.d.ts.map +1 -0
  96. package/dist/engine/util/branded-type.js +2 -0
  97. package/dist/engine/util/branded-type.js.map +1 -0
  98. package/dist/engine.js +874 -471
  99. package/dist/engine.js.map +4 -4
  100. package/package.json +1 -1
  101. package/dist/engine/acp/adapter/live-sessions.d.ts +0 -26
  102. package/dist/engine/acp/adapter/live-sessions.d.ts.map +0 -1
  103. package/dist/engine/acp/adapter/live-sessions.js.map +0 -1
@@ -1,11 +1,11 @@
1
1
  import { AcpExecutionError } from "../acp-error.ts";
2
2
  import type { AcpAgentDefinition } from "../agent/agent-definition.ts";
3
- import type { AdapterSessionConnection } from "./session-events.ts";
3
+ import type { AgentConnection } from "../connection/agent-connection.ts";
4
4
  export declare class RetryableAcpInitializationError extends AcpExecutionError {
5
5
  constructor(cause: unknown);
6
6
  }
7
7
  export declare function validateAgentRuntime(agent: AcpAgentDefinition, signal: AbortSignal): Promise<void>;
8
- export declare function initializeAgentConnection(connection: AdapterSessionConnection, agentId: string, verifiedVersion: string, signal: AbortSignal): Promise<{
8
+ export declare function initializeAgentConnection(connection: Pick<AgentConnection, "connection" | "initialize" | "race">, agentId: string, verifiedVersion: string, signal: AbortSignal): Promise<{
9
9
  capabilities: Readonly<{
10
10
  additionalDirectories: boolean;
11
11
  audioPrompt: boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"agent-initialization.d.ts","sourceRoot":"","sources":["../../../../src/engine/acp/adapter/agent-initialization.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AACpD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,8BAA8B,CAAC;AAEvE,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,qBAAqB,CAAC;AAEpE,qBAAa,+BAAgC,SAAQ,iBAAiB;IAClE,YAAY,KAAK,EAAE,OAAO,EAGzB;CACJ;AAED,wBAAsB,oBAAoB,CAAC,KAAK,EAAE,kBAAkB,EAAE,MAAM,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CAWxG;AAED,wBAAsB,yBAAyB,CAC3C,UAAU,EAAE,wBAAwB,EACpC,OAAO,EAAE,MAAM,EACf,eAAe,EAAE,MAAM,EACvB,MAAM,EAAE,WAAW;;;;;;;;;;;;;;;;;;GA6CtB"}
1
+ {"version":3,"file":"agent-initialization.d.ts","sourceRoot":"","sources":["../../../../src/engine/acp/adapter/agent-initialization.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AACpD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,8BAA8B,CAAC;AACvE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,mCAAmC,CAAC;AAGzE,qBAAa,+BAAgC,SAAQ,iBAAiB;IAClE,YAAY,KAAK,EAAE,OAAO,EAGzB;CACJ;AAED,wBAAsB,oBAAoB,CAAC,KAAK,EAAE,kBAAkB,EAAE,MAAM,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CAWxG;AAED,wBAAsB,yBAAyB,CAC3C,UAAU,EAAE,IAAI,CAAC,eAAe,EAAE,YAAY,GAAG,YAAY,GAAG,MAAM,CAAC,EACvE,OAAO,EAAE,MAAM,EACf,eAAe,EAAE,MAAM,EACvB,MAAM,EAAE,WAAW;;;;;;;;;;;;;;;;;;GA6CtB"}
@@ -1 +1 @@
1
- {"version":3,"file":"agent-initialization.js","sourceRoot":"","sources":["../../../../src/engine/acp/adapter/agent-initialization.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"agent-initialization.js","sourceRoot":"","sources":["../../../../src/engine/acp/adapter/agent-initialization.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AACrE,OAAO,EAAE,oBAAoB,EAAE,MAAM,kCAAkC,CAAC;AACxE,OAAO,EAAE,QAAQ,EAAE,MAAM,2BAA2B,CAAC;AACrD,OAAO,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AAGpD,OAAO,EAAE,wBAAwB,EAAE,MAAM,qCAAqC,CAAC;AAE/E,MAAM,OAAO,+BAAgC,SAAQ,iBAAiB;IAClE,YAAY,KAAc;QACtB,KAAK,CAAC,iCAAiC,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;QACpD,IAAI,CAAC,IAAI,GAAG,iCAAiC,CAAC;IAClD,CAAC;CACJ;AAED,MAAM,CAAC,KAAK,UAAU,oBAAoB,CAAC,KAAyB,EAAE,MAAmB;IACrF,MAAM,CAAC,cAAc,EAAE,CAAC;IACxB,MAAM,SAAS,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,kBAAkB,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,oBAAoB,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;IAChH,MAAM,CAAC,cAAc,EAAE,CAAC;IACxB,IAAI,SAAS,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC;QACtC,MAAM,IAAI,iBAAiB,CACvB,oFAAoF,EACpF,EAAE,EACF,uBAAuB,CAC1B,CAAC;IACN,CAAC;AACL,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,yBAAyB,CAC3C,UAAuE,EACvE,OAAe,EACf,eAAuB,EACvB,MAAmB;IAEnB,MAAM,UAAU;SACX,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,gDAAgD,EAAE,MAAM,CAAC;SAC7F,KAAK,CAAC,CAAC,KAAc,EAAE,EAAE;QACtB,MAAM,CAAC,cAAc,EAAE,CAAC;QACxB,MAAM,IAAI,+BAA+B,CAAC,KAAK,CAAC,CAAC;IACrD,CAAC,CAAC,CAAC;IACP,MAAM,WAAW,GAAG,MAAM,UAAU;SAC/B,IAAI,CACD,UAAU,CAAC,UAAU,CAAC,KAAK,CAAC,OAAO,CAC/B,OAAO,CAAC,KAAK,CAAC,UAAU,EACxB;QACI,kBAAkB,EAAE;YAChB,WAAW,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE;YAClC,IAAI,EAAE,EAAE;YACR,OAAO,EAAE,EAAE,UAAU,EAAE,EAAE,EAAE,aAAa,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,EAAE;SAC9D;QACD,UAAU,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,EAAE;QAChD,eAAe,EAAE,gBAAgB;KACpC,EACD,EAAE,kBAAkB,EAAE,MAAM,EAAE,CACjC,EACD,wCAAwC,EACxC,MAAM,CACT;SACA,KAAK,CAAC,CAAC,KAAc,EAAE,EAAE;QACtB,MAAM,CAAC,cAAc,EAAE,CAAC;QACxB,MAAM,IAAI,+BAA+B,CAAC,KAAK,CAAC,CAAC;IACrD,CAAC,CAAC,CAAC;IACP,IAAI,WAAW,CAAC,eAAe,KAAK,gBAAgB,EAAE,CAAC;QACnD,MAAM,IAAI,iBAAiB,CACvB,oDAAoD,EACpD,EAAE,EACF,0BAA0B,CAC7B,CAAC;IACN,CAAC;IACD,OAAO;QACH,YAAY,EAAE,wBAAwB,CAAC,WAAW,CAAC;QACnD,SAAS,EAAE,QAAQ,CAAC,WAAW,CAAC,SAAS,EAAE,KAAK,IAAI,WAAW,CAAC,SAAS,EAAE,IAAI,IAAI,OAAO,EAAE,GAAG,CAAC;QAChG,YAAY,EAAE,QAAQ,CAClB,eAAe,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,SAAS,EAAE,OAAO,IAAI,EAAE,CAAC,EACrF,GAAG,CACN;KACJ,CAAC;AACN,CAAC"}
@@ -1,6 +1,5 @@
1
1
  import type { AcpAgentDefinition } from "../../agent/agent-definition.ts";
2
- import type { Adapter, AdapterDependencies } from "../../native-history/preview-contract.ts";
3
- import { type LiveSessionConnectionOptions } from "../session-events.ts";
2
+ import type { Adapter, AdapterDependencies, NativeSessionQuery } from "../../native-history/preview-contract.ts";
4
3
  /**
5
4
  * Claude Code stores history that its harness replays as live ACP session updates
6
5
  * during `session/load`, so previews resume the saved session over ACP.
@@ -9,10 +8,28 @@ export declare class ClaudeAdapter implements Adapter {
9
8
  #private;
10
9
  constructor(agent: AcpAgentDefinition, dependencies: AdapterDependencies);
11
10
  readonly refreshAgent: Adapter["refreshAgent"];
12
- readonly getCapabilities: Adapter["getCapabilities"];
13
- readonly connectSession: (options: LiveSessionConnectionOptions) => import("../session-events.ts").AdapterSessionConnection;
11
+ readonly getCapabilities: (query: NativeSessionQuery) => Promise<Readonly<{
12
+ additionalDirectories: boolean;
13
+ audioPrompt: boolean;
14
+ closeSession: boolean;
15
+ deleteSession: boolean;
16
+ embeddedContextPrompt: boolean;
17
+ imagePrompt: boolean;
18
+ listSessions: boolean;
19
+ loadSession: boolean;
20
+ promptQueueing: boolean;
21
+ renameSession: boolean;
22
+ resumeSession: boolean;
23
+ steering: boolean;
24
+ unstableForkSession: boolean;
25
+ }>>;
26
+ readonly createSession: Adapter["createSession"];
27
+ readonly forkSession: Adapter["forkSession"];
28
+ readonly openSession: Adapter["openSession"];
29
+ readonly openSessionWithReplay: Adapter["openSessionWithReplay"];
14
30
  readonly cancel: Adapter["cancel"];
15
31
  readonly closeSession: Adapter["closeSession"];
32
+ readonly releaseSession: Adapter["releaseSession"];
16
33
  readonly prompt: Adapter["prompt"];
17
34
  readonly steer: Adapter["steer"];
18
35
  readonly renameSession: Adapter["renameSession"];
@@ -1 +1 @@
1
- {"version":3,"file":"adapter.d.ts","sourceRoot":"","sources":["../../../../../src/engine/acp/adapter/claude/adapter.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,iCAAiC,CAAC;AAC1E,OAAO,KAAK,EAAE,OAAO,EAAE,mBAAmB,EAAE,MAAM,0CAA0C,CAAC;AAI7F,OAAO,EAAuB,KAAK,4BAA4B,EAAE,MAAM,sBAAsB,CAAC;AAE9F;;;GAGG;AACH,qBAAa,aAAc,YAAW,OAAO;;IAKzC,YAAY,KAAK,EAAE,kBAAkB,EAAE,YAAY,EAAE,mBAAmB,EAIvE;IAED,QAAQ,CAAC,YAAY,EAAE,OAAO,CAAC,cAAc,CAAC,CAAuD;IACrG,QAAQ,CAAC,eAAe,EAAE,OAAO,CAAC,iBAAiB,CAAC,CACD;IACnD,QAAQ,CAAC,cAAc,YAAa,4BAA4B,6DAAgD;IAChH,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAmD;IACrF,QAAQ,CAAC,YAAY,EAAE,OAAO,CAAC,cAAc,CAAC,CAAyD;IACvG,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAmD;IACrF,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC,OAAO,CAAC,CAAkD;IAClF,QAAQ,CAAC,aAAa,EAAE,OAAO,CAAC,eAAe,CAAC,CAA0D;IAC1G,QAAQ,CAAC,gBAAgB,EAAE,OAAO,CAAC,kBAAkB,CAAC,CAA6D;IACnH,QAAQ,CAAC,YAAY,EAAE,OAAO,CAAC,cAAc,CAAC,CACmB;IACjE,QAAQ,CAAC,WAAW,EAAE,OAAO,CAAC,aAAa,CAAC,CACmC;IAC/E,QAAQ,CAAC,kBAAkB,EAAE,OAAO,CAAC,oBAAoB,CAAC,CACiC;IAC3F,QAAQ,CAAC,KAAK,QAAa,OAAO,CAAC,IAAI,CAAC,CAIlC;CACT"}
1
+ {"version":3,"file":"adapter.d.ts","sourceRoot":"","sources":["../../../../../src/engine/acp/adapter/claude/adapter.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,iCAAiC,CAAC;AAC1E,OAAO,KAAK,EAAE,OAAO,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,MAAM,0CAA0C,CAAC;AAQjH;;;GAGG;AACH,qBAAa,aAAc,YAAW,OAAO;;IAKzC,YAAY,KAAK,EAAE,kBAAkB,EAAE,YAAY,EAAE,mBAAmB,EAIvE;IAED,QAAQ,CAAC,YAAY,EAAE,OAAO,CAAC,cAAc,CAAC,CAAuD;IACrG,QAAQ,CAAC,eAAe,UAAiB,kBAAkB;;;;;;;;;;;;;;QAAoD;IAC/G,QAAQ,CAAC,aAAa,EAAE,OAAO,CAAC,eAAe,CAAC,CAazC;IACP,QAAQ,CAAC,WAAW,EAAE,OAAO,CAAC,aAAa,CAAC,CAkBrC;IACP,QAAQ,CAAC,WAAW,EAAE,OAAO,CAAC,aAAa,CAAC,CAerC;IACP,QAAQ,CAAC,qBAAqB,EAAE,OAAO,CAAC,uBAAuB,CAAC,CAgBzD;IACP,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC,QAAQ,CAAC,CAA2D;IAC7F,QAAQ,CAAC,YAAY,EAAE,OAAO,CAAC,cAAc,CAAC,CAAiE;IAC/G,QAAQ,CAAC,cAAc,EAAE,OAAO,CAAC,gBAAgB,CAAC,CAAiE;IACnH,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC,QAAQ,CAAC,CAA2D;IAC7F,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC,OAAO,CAAC,CAA0D;IAC1F,QAAQ,CAAC,aAAa,EAAE,OAAO,CAAC,eAAe,CAAC,CAAkE;IAClH,QAAQ,CAAC,gBAAgB,EAAE,OAAO,CAAC,kBAAkB,CAAC,CACG;IACzD,QAAQ,CAAC,YAAY,EAAE,OAAO,CAAC,cAAc,CAAC,CACmB;IACjE,QAAQ,CAAC,WAAW,EAAE,OAAO,CAAC,aAAa,CAAC,CAC6B;IACzE,QAAQ,CAAC,kBAAkB,EAAE,OAAO,CAAC,oBAAoB,CAAC,CACU;IACpE,QAAQ,CAAC,KAAK,QAAa,OAAO,CAAC,IAAI,CAAC,CAIlC;CACT"}
@@ -1,5 +1,7 @@
1
1
  import { runCleanup } from "../../../util/run-cleanup.js";
2
- import { AcpLiveSessions } from "../live-sessions.js";
2
+ import { nativeSessionIdSchema } from "../../protocol/native-session.js";
3
+ import { AcpExecutionConnections } from "../execution-connections.js";
4
+ import { createdNativeSessionId, normalizeOpenedSession, sessionWorkspace } from "../lifecycle-output.js";
3
5
  import { findNativeSession } from "../native-session-lookup.js";
4
6
  import { AgentQueryProcesses } from "../query-processes.js";
5
7
  import { AcpSessionConnector } from "../session-events.js";
@@ -10,24 +12,59 @@ import { AcpSessionConnector } from "../session-events.js";
10
12
  export class ClaudeAdapter {
11
13
  #queryProcesses;
12
14
  #connector;
13
- #liveSessions;
15
+ #executionConnections;
14
16
  constructor(agent, dependencies) {
15
17
  this.#connector = new AcpSessionConnector(dependencies.contentExternalizer);
16
- this.#liveSessions = new AcpLiveSessions(dependencies.contentExternalizer);
18
+ this.#executionConnections = new AcpExecutionConnections(dependencies.contentExternalizer);
17
19
  this.#queryProcesses = new AgentQueryProcesses(agent, dependencies.processes, this.#connector);
18
20
  }
19
21
  refreshAgent = (agent) => this.#queryProcesses.refreshAgent(agent);
20
- getCapabilities = (cwd, signal) => this.#queryProcesses.capabilities(cwd, signal);
21
- connectSession = (options) => this.#liveSessions.connectSession(options);
22
- cancel = (...args) => this.#liveSessions.cancel(...args);
23
- closeSession = (...args) => this.#liveSessions.closeSession(...args);
24
- prompt = (...args) => this.#liveSessions.prompt(...args);
25
- steer = (...args) => this.#liveSessions.steer(...args);
26
- renameSession = (...args) => this.#liveSessions.renameSession(...args);
27
- configureSession = (...args) => this.#liveSessions.configureSession(...args);
28
- listSessions = (cwd, cursor, signal) => this.#queryProcesses.listNativeSessions(cwd, cursor, signal);
29
- findSession = (cwd, nativeSessionId, budget, signal) => findNativeSession(this.listSessions, cwd, nativeSessionId, budget, signal);
30
- readSessionHistory = (cwd, additionalDirectories, request, signal) => this.#queryProcesses.previewSessionEvents(cwd, additionalDirectories, request, signal);
31
- close = async () => await runCleanup(() => this.#queryProcesses.close(), () => this.#liveSessions.close());
22
+ getCapabilities = async (query) => await this.#queryProcesses.capabilities(query);
23
+ createSession = (params) => this.#executionConnections.withConnection(params, async (execution, signal) => {
24
+ const { connection } = execution;
25
+ const response = await connection.race(connection.connection.agent.request(methods.agent.session.new, sessionWorkspace(params.scope), {
26
+ cancellationSignal: signal,
27
+ }), "ACP agent exited while starting a session", signal);
28
+ const nativeSessionId = createdNativeSessionId(response);
29
+ this.#executionConnections.bind(execution, nativeSessionId);
30
+ return normalizeOpenedSession(execution, nativeSessionId, response, signal);
31
+ });
32
+ forkSession = (params) => this.#executionConnections.withConnection(params, async (execution, signal) => {
33
+ const { connection } = execution;
34
+ const response = await connection.race(connection.connection.agent.request(methods.agent.session.fork, {
35
+ ...sessionWorkspace(params.scope),
36
+ sessionId: nativeSessionIdSchema.parse(params.sourceNativeSessionId),
37
+ }, { cancellationSignal: signal }), "ACP agent exited while forking a session", signal);
38
+ const nativeSessionId = createdNativeSessionId(response);
39
+ this.#executionConnections.bind(execution, nativeSessionId);
40
+ return normalizeOpenedSession(execution, nativeSessionId, response, signal);
41
+ });
42
+ openSession = (params) => this.#executionConnections.withConnection(params, async (execution, signal) => {
43
+ const { connection } = execution;
44
+ const nativeSessionId = nativeSessionIdSchema.parse(params.nativeSessionId);
45
+ this.#executionConnections.bind(execution, nativeSessionId);
46
+ const response = await connection.race(connection.connection.agent.request(methods.agent.session.resume, { ...sessionWorkspace(params.scope), sessionId: nativeSessionId }, { cancellationSignal: signal }), "ACP agent exited while resuming a session", signal);
47
+ return normalizeOpenedSession(execution, nativeSessionId, response, signal);
48
+ });
49
+ openSessionWithReplay = (params) => this.#executionConnections.withConnection(params, async (execution, signal) => {
50
+ const { connection } = execution;
51
+ const nativeSessionId = nativeSessionIdSchema.parse(params.nativeSessionId);
52
+ this.#executionConnections.bind(execution, nativeSessionId);
53
+ const response = await connection.race(connection.connection.agent.request(methods.agent.session.load, { ...sessionWorkspace(params.scope), sessionId: nativeSessionId }, { cancellationSignal: signal }), "ACP agent exited while loading a session", signal);
54
+ await connection.race(connection.events.drained(), "ACP agent exited while loading a session", signal);
55
+ return normalizeOpenedSession(execution, nativeSessionId, response, signal);
56
+ });
57
+ cancel = (...args) => this.#executionConnections.cancel(...args);
58
+ closeSession = (...args) => this.#executionConnections.closeSession(...args);
59
+ releaseSession = (params) => this.#executionConnections.releaseSession(params);
60
+ prompt = (...args) => this.#executionConnections.prompt(...args);
61
+ steer = (...args) => this.#executionConnections.steer(...args);
62
+ renameSession = (...args) => this.#executionConnections.renameSession(...args);
63
+ configureSession = (...args) => this.#executionConnections.configureSession(...args);
64
+ listSessions = async ({ query, cursor }) => await this.#queryProcesses.listNativeSessions(query, cursor);
65
+ findSession = ({ query, nativeSessionId, budget }) => findNativeSession(this.listSessions, query, nativeSessionId, budget);
66
+ readSessionHistory = async ({ query, request }) => await this.#queryProcesses.previewSessionEvents(query, request);
67
+ close = async () => await runCleanup(() => this.#queryProcesses.close(), () => this.#executionConnections.close());
32
68
  }
69
+ import { methods } from "@agentclientprotocol/sdk";
33
70
  //# sourceMappingURL=adapter.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"adapter.js","sourceRoot":"","sources":["../../../../../src/engine/acp/adapter/claude/adapter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"adapter.js","sourceRoot":"","sources":["../../../../../src/engine/acp/adapter/claude/adapter.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,5 @@
1
1
  import type { AcpAgentDefinition } from "../../agent/agent-definition.ts";
2
- import type { Adapter, AdapterDependencies, NativeSessionPreviewRequest, SessionEventPage } from "../../native-history/preview-contract.ts";
3
- import { type LiveSessionConnectionOptions } from "../session-events.ts";
2
+ import type { Adapter, AdapterDependencies, NativeSessionQuery } from "../../native-history/preview-contract.ts";
4
3
  /**
5
4
  * Previews saved Codex threads by reading the Codex app-server directly. The read is
6
5
  * short-lived and never resumes the source thread, so it needs no writer lock; ACP
@@ -10,10 +9,28 @@ export declare class CodexAdapter implements Adapter {
10
9
  #private;
11
10
  constructor(agent: AcpAgentDefinition, dependencies: AdapterDependencies);
12
11
  readonly refreshAgent: Adapter["refreshAgent"];
13
- readonly getCapabilities: Adapter["getCapabilities"];
14
- readonly connectSession: (options: LiveSessionConnectionOptions) => import("../session-events.ts").AdapterSessionConnection;
12
+ readonly getCapabilities: (query: NativeSessionQuery) => Promise<Readonly<{
13
+ additionalDirectories: boolean;
14
+ audioPrompt: boolean;
15
+ closeSession: boolean;
16
+ deleteSession: boolean;
17
+ embeddedContextPrompt: boolean;
18
+ imagePrompt: boolean;
19
+ listSessions: boolean;
20
+ loadSession: boolean;
21
+ promptQueueing: boolean;
22
+ renameSession: boolean;
23
+ resumeSession: boolean;
24
+ steering: boolean;
25
+ unstableForkSession: boolean;
26
+ }>>;
27
+ readonly createSession: Adapter["createSession"];
28
+ readonly forkSession: Adapter["forkSession"];
29
+ readonly openSession: Adapter["openSession"];
30
+ readonly openSessionWithReplay: Adapter["openSessionWithReplay"];
15
31
  readonly cancel: Adapter["cancel"];
16
32
  readonly closeSession: Adapter["closeSession"];
33
+ readonly releaseSession: Adapter["releaseSession"];
17
34
  readonly prompt: Adapter["prompt"];
18
35
  readonly steer: Adapter["steer"];
19
36
  readonly renameSession: Adapter["renameSession"];
@@ -21,6 +38,6 @@ export declare class CodexAdapter implements Adapter {
21
38
  readonly listSessions: Adapter["listSessions"];
22
39
  readonly findSession: Adapter["findSession"];
23
40
  readonly close: () => Promise<void>;
24
- readonly readSessionHistory: (cwd: string, _additionalDirectories: readonly string[], request: NativeSessionPreviewRequest, cancellation: AbortSignal) => Promise<SessionEventPage>;
41
+ readonly readSessionHistory: Adapter["readSessionHistory"];
25
42
  }
26
43
  //# sourceMappingURL=adapter.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"adapter.d.ts","sourceRoot":"","sources":["../../../../../src/engine/acp/adapter/codex/adapter.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,iCAAiC,CAAC;AAI1E,OAAO,KAAK,EACR,OAAO,EACP,mBAAmB,EACnB,2BAA2B,EAC3B,gBAAgB,EACnB,MAAM,0CAA0C,CAAC;AAMlD,OAAO,EAAuB,KAAK,4BAA4B,EAAE,MAAM,sBAAsB,CAAC;AAG9F;;;;GAIG;AACH,qBAAa,YAAa,YAAW,OAAO;;IASxC,YAAY,KAAK,EAAE,kBAAkB,EAAE,YAAY,EAAE,mBAAmB,EAcvE;IAED,QAAQ,CAAC,YAAY,EAAE,OAAO,CAAC,cAAc,CAAC,CAG5C;IACF,QAAQ,CAAC,eAAe,EAAE,OAAO,CAAC,iBAAiB,CAAC,CACD;IACnD,QAAQ,CAAC,cAAc,YAAa,4BAA4B,6DAAgD;IAChH,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC,QAAQ,CAAC,CAMhC;IACF,QAAQ,CAAC,YAAY,EAAE,OAAO,CAAC,cAAc,CAAC,CAAyD;IACvG,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAmD;IACrF,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC,OAAO,CAAC,CAAkD;IAClF,QAAQ,CAAC,aAAa,EAAE,OAAO,CAAC,eAAe,CAAC,CAA0D;IAC1G,QAAQ,CAAC,gBAAgB,EAAE,OAAO,CAAC,kBAAkB,CAAC,CAA6D;IACnH,QAAQ,CAAC,YAAY,EAAE,OAAO,CAAC,cAAc,CAAC,CACmB;IACjE,QAAQ,CAAC,WAAW,EAAE,OAAO,CAAC,aAAa,CAAC,CACmC;IAC/E,QAAQ,CAAC,KAAK,QAAa,OAAO,CAAC,IAAI,CAAC,CAMtC;IAEF,QAAQ,CAAC,kBAAkB,QAClB,MAAM,0BACa,SAAS,MAAM,EAAE,WAChC,2BAA2B,gBACtB,WAAW,KAC1B,OAAO,CAAC,gBAAgB,CAAC,CA0E1B;CACL"}
1
+ {"version":3,"file":"adapter.d.ts","sourceRoot":"","sources":["../../../../../src/engine/acp/adapter/codex/adapter.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,iCAAiC,CAAC;AAI1E,OAAO,KAAK,EACR,OAAO,EACP,mBAAmB,EAEnB,kBAAkB,EAErB,MAAM,0CAA0C,CAAC;AAUlD;;;;GAIG;AACH,qBAAa,YAAa,YAAW,OAAO;;IASxC,YAAY,KAAK,EAAE,kBAAkB,EAAE,YAAY,EAAE,mBAAmB,EAcvE;IAED,QAAQ,CAAC,YAAY,EAAE,OAAO,CAAC,cAAc,CAAC,CAG5C;IACF,QAAQ,CAAC,eAAe,UAAiB,kBAAkB;;;;;;;;;;;;;;QAAoD;IAc/G,QAAQ,CAAC,aAAa,EAAE,OAAO,CAAC,eAAe,CAAC,CAazC;IACP,QAAQ,CAAC,WAAW,EAAE,OAAO,CAAC,aAAa,CAAC,CAkBrC;IACP,QAAQ,CAAC,WAAW,EAAE,OAAO,CAAC,aAAa,CAAC,CAerC;IACP,QAAQ,CAAC,qBAAqB,EAAE,OAAO,CAAC,uBAAuB,CAAC,CAgBzD;IACP,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC,QAAQ,CAAC,CAMhC;IACF,QAAQ,CAAC,YAAY,EAAE,OAAO,CAAC,cAAc,CAAC,CAAiE;IAC/G,QAAQ,CAAC,cAAc,EAAE,OAAO,CAAC,gBAAgB,CAAC,CAAiE;IACnH,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC,QAAQ,CAAC,CAA2D;IAC7F,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC,OAAO,CAAC,CAA0D;IAC1F,QAAQ,CAAC,aAAa,EAAE,OAAO,CAAC,eAAe,CAAC,CAAkE;IAClH,QAAQ,CAAC,gBAAgB,EAAE,OAAO,CAAC,kBAAkB,CAAC,CACG;IACzD,QAAQ,CAAC,YAAY,EAAE,OAAO,CAAC,cAAc,CAAC,CACmB;IACjE,QAAQ,CAAC,WAAW,EAAE,OAAO,CAAC,aAAa,CAAC,CAC6B;IACzE,QAAQ,CAAC,KAAK,QAAa,OAAO,CAAC,IAAI,CAAC,CAMtC;IAEF,QAAQ,CAAC,kBAAkB,EAAE,OAAO,CAAC,oBAAoB,CAAC,CAgFxD;CACL"}
@@ -1,4 +1,5 @@
1
1
  import { createHash } from "node:crypto";
2
+ import { methods } from "@agentclientprotocol/sdk";
2
3
  import { decodeAcpSessionUpdate } from "@moxt-ai/mobius-sdk/protocol";
3
4
  import { revalidateExecutable, stopProcessTree } from "../../../util/process/executable.js";
4
5
  import { runCleanup } from "../../../util/run-cleanup.js";
@@ -6,7 +7,8 @@ import { AcpExecutionError } from "../../acp-error.js";
6
7
  import { CodexAppServerClient } from "../../harness/codex/app-server-client.js";
7
8
  import { replayCodexHistory } from "../../harness/codex/history.js";
8
9
  import { nativeSessionIdSchema } from "../../protocol/native-session.js";
9
- import { AcpLiveSessions } from "../live-sessions.js";
10
+ import { AcpExecutionConnections } from "../execution-connections.js";
11
+ import { createdNativeSessionId, normalizeOpenedSession, sessionWorkspace } from "../lifecycle-output.js";
10
12
  import { findNativeSession } from "../native-session-lookup.js";
11
13
  import { openPreviewEventCache } from "../preview-event-cache.js";
12
14
  import { AgentQueryProcesses } from "../query-processes.js";
@@ -21,7 +23,7 @@ export class CodexAdapter {
21
23
  #agent;
22
24
  #queryProcesses;
23
25
  #connector;
24
- #liveSessions;
26
+ #executionConnections;
25
27
  #dependencies;
26
28
  #contentExternalizer;
27
29
  #previewCache = null;
@@ -37,36 +39,82 @@ export class CodexAdapter {
37
39
  },
38
40
  };
39
41
  this.#connector = new AcpSessionConnector(this.#contentExternalizer, fitCodexToolEvent);
40
- this.#liveSessions = new AcpLiveSessions(this.#contentExternalizer, fitCodexToolEvent);
42
+ this.#executionConnections = new AcpExecutionConnections(this.#contentExternalizer, fitCodexToolEvent);
41
43
  this.#queryProcesses = new AgentQueryProcesses(agent, dependencies.processes, this.#connector);
42
44
  }
43
45
  refreshAgent = (agent) => {
44
46
  this.#agent = agent;
45
47
  this.#queryProcesses.refreshAgent(agent);
46
48
  };
47
- getCapabilities = (cwd, signal) => this.#queryProcesses.capabilities(cwd, signal);
48
- connectSession = (options) => this.#liveSessions.connectSession(options);
49
- cancel = async (target, signal) => {
49
+ getCapabilities = async (query) => await this.#queryProcesses.capabilities(query);
50
+ #executionParams = (params) => {
51
+ const externalize = params.scope.externalizeUpdate;
52
+ return externalize === undefined
53
+ ? params
54
+ : {
55
+ ...params,
56
+ scope: {
57
+ ...params.scope,
58
+ externalizeUpdate: (update, signal) => externalize(prepareCodexToolUpdate(update), signal),
59
+ },
60
+ };
61
+ };
62
+ createSession = (params) => this.#executionConnections.withConnection(this.#executionParams(params), async (execution, signal) => {
63
+ const { connection } = execution;
64
+ const response = await connection.race(connection.connection.agent.request(methods.agent.session.new, sessionWorkspace(params.scope), {
65
+ cancellationSignal: signal,
66
+ }), "ACP agent exited while starting a session", signal);
67
+ const nativeSessionId = createdNativeSessionId(response);
68
+ this.#executionConnections.bind(execution, nativeSessionId);
69
+ return normalizeOpenedSession(execution, nativeSessionId, response, signal);
70
+ });
71
+ forkSession = (params) => this.#executionConnections.withConnection(this.#executionParams(params), async (execution, signal) => {
72
+ const { connection } = execution;
73
+ const response = await connection.race(connection.connection.agent.request(methods.agent.session.fork, {
74
+ ...sessionWorkspace(params.scope),
75
+ sessionId: nativeSessionIdSchema.parse(params.sourceNativeSessionId),
76
+ }, { cancellationSignal: signal }), "ACP agent exited while forking a session", signal);
77
+ const nativeSessionId = createdNativeSessionId(response);
78
+ this.#executionConnections.bind(execution, nativeSessionId);
79
+ return normalizeOpenedSession(execution, nativeSessionId, response, signal);
80
+ });
81
+ openSession = (params) => this.#executionConnections.withConnection(this.#executionParams(params), async (execution, signal) => {
82
+ const { connection } = execution;
83
+ const nativeSessionId = nativeSessionIdSchema.parse(params.nativeSessionId);
84
+ this.#executionConnections.bind(execution, nativeSessionId);
85
+ const response = await connection.race(connection.connection.agent.request(methods.agent.session.resume, { ...sessionWorkspace(params.scope), sessionId: nativeSessionId }, { cancellationSignal: signal }), "ACP agent exited while resuming a session", signal);
86
+ return normalizeOpenedSession(execution, nativeSessionId, response, signal);
87
+ });
88
+ openSessionWithReplay = (params) => this.#executionConnections.withConnection(this.#executionParams(params), async (execution, signal) => {
89
+ const { connection } = execution;
90
+ const nativeSessionId = nativeSessionIdSchema.parse(params.nativeSessionId);
91
+ this.#executionConnections.bind(execution, nativeSessionId);
92
+ const response = await connection.race(connection.connection.agent.request(methods.agent.session.load, { ...sessionWorkspace(params.scope), sessionId: nativeSessionId }, { cancellationSignal: signal }), "ACP agent exited while loading a session", signal);
93
+ await connection.race(connection.events.drained(), "ACP agent exited while loading a session", signal);
94
+ return normalizeOpenedSession(execution, nativeSessionId, response, signal);
95
+ });
96
+ cancel = async (params) => {
50
97
  // turn/interrupt leaves unified-exec commands alive, including tools whose
51
98
  // startup notification can arrive after the interrupted turn completes.
52
99
  // The session's owned process tree is the authoritative stop boundary.
53
- await this.#liveSessions.closeSession(target, signal);
100
+ await this.#executionConnections.closeSession(params);
54
101
  return "closed";
55
102
  };
56
- closeSession = (...args) => this.#liveSessions.closeSession(...args);
57
- prompt = (...args) => this.#liveSessions.prompt(...args);
58
- steer = (...args) => this.#liveSessions.steer(...args);
59
- renameSession = (...args) => this.#liveSessions.renameSession(...args);
60
- configureSession = (...args) => this.#liveSessions.configureSession(...args);
61
- listSessions = (cwd, cursor, signal) => this.#queryProcesses.listNativeSessions(cwd, cursor, signal);
62
- findSession = (cwd, nativeSessionId, budget, signal) => findNativeSession(this.listSessions, cwd, nativeSessionId, budget, signal);
103
+ closeSession = (...args) => this.#executionConnections.closeSession(...args);
104
+ releaseSession = (params) => this.#executionConnections.releaseSession(params);
105
+ prompt = (...args) => this.#executionConnections.prompt(...args);
106
+ steer = (...args) => this.#executionConnections.steer(...args);
107
+ renameSession = (...args) => this.#executionConnections.renameSession(...args);
108
+ configureSession = (...args) => this.#executionConnections.configureSession(...args);
109
+ listSessions = async ({ query, cursor }) => await this.#queryProcesses.listNativeSessions(query, cursor);
110
+ findSession = ({ query, nativeSessionId, budget }) => findNativeSession(this.listSessions, query, nativeSessionId, budget);
63
111
  close = async () => {
64
- await runCleanup(() => this.#queryProcesses.close(), () => this.#liveSessions.close(), () => this.#previewCache?.close());
112
+ await runCleanup(() => this.#queryProcesses.close(), () => this.#executionConnections.close(), () => this.#previewCache?.close());
65
113
  };
66
- readSessionHistory = async (cwd, _additionalDirectories, request, cancellation) => {
67
- const agent = this.#agent;
68
- const signal = AbortSignal.any([cancellation, AbortSignal.timeout(60_000)]);
69
- const { sessionId } = request;
114
+ readSessionHistory = async ({ query, request, }) => {
115
+ const { agent, cwd } = query;
116
+ const signal = AbortSignal.any([query.signal, AbortSignal.timeout(60_000)]);
117
+ const sessionId = request.nativeSessionId;
70
118
  signal.throwIfAborted();
71
119
  nativeSessionIdSchema.parse(request.nativeSessionId);
72
120
  if (agent.id !== "codex") {
@@ -99,7 +147,9 @@ export class CodexAdapter {
99
147
  }, async ({ client }) => {
100
148
  await client.initialize(signal);
101
149
  return await replayCodexHistory(client, request.nativeSessionId, async (update) => {
102
- const externalized = await this.#contentExternalizer.update(sessionId, update, signal);
150
+ const externalized = query.externalizeUpdate === undefined
151
+ ? await this.#contentExternalizer.update(sessionId, update, signal)
152
+ : await query.externalizeUpdate(prepareCodexToolUpdate(update), signal);
103
153
  for (const event of externalized.events) {
104
154
  events.push({
105
155
  type: "acp",
@@ -1 +1 @@
1
- {"version":3,"file":"adapter.js","sourceRoot":"","sources":["../../../../../src/engine/acp/adapter/codex/adapter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"adapter.js","sourceRoot":"","sources":["../../../../../src/engine/acp/adapter/codex/adapter.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,25 @@
1
+ import type { SessionConfigOption } from "@moxt-ai/mobius-sdk/protocol";
2
+ type ModeSelection = {
3
+ readonly kind: "unchanged";
4
+ } | {
5
+ readonly kind: "selected";
6
+ readonly modeId: string;
7
+ };
8
+ /** Bounded configuration deltas only; history and content never wait for a response. */
9
+ export type ConfigurationChanges = {
10
+ readonly kind: "unchanged";
11
+ } | {
12
+ readonly kind: "mode";
13
+ readonly modeId: string;
14
+ } | {
15
+ readonly kind: "replacement";
16
+ readonly options: readonly SessionConfigOption[];
17
+ readonly modes: readonly SessionConfigOption[];
18
+ readonly selection: ModeSelection;
19
+ };
20
+ export declare function recordConfigurationOptions(changes: ConfigurationChanges, options: readonly SessionConfigOption[]): ConfigurationChanges;
21
+ export declare function recordConfigurationMode(changes: ConfigurationChanges, modeId: string): ConfigurationChanges;
22
+ export declare function applyConfigurationMode(options: readonly SessionConfigOption[], modeId: string): readonly SessionConfigOption[];
23
+ export declare function applyConfigurationChanges(base: readonly SessionConfigOption[], changes: ConfigurationChanges): readonly SessionConfigOption[];
24
+ export {};
25
+ //# sourceMappingURL=configuration-changes.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"configuration-changes.d.ts","sourceRoot":"","sources":["../../../../src/engine/acp/adapter/configuration-changes.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,8BAA8B,CAAC;AAGxE,KAAK,aAAa,GAAG;IAAE,QAAQ,CAAC,IAAI,EAAE,WAAW,CAAA;CAAE,GAAG;IAAE,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAC;IAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC;AAE7G,wFAAwF;AACxF,MAAM,MAAM,oBAAoB,GAC1B;IAAE,QAAQ,CAAC,IAAI,EAAE,WAAW,CAAA;CAAE,GAC9B;IAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;CAAE,GAClD;IACI,QAAQ,CAAC,IAAI,EAAE,aAAa,CAAC;IAC7B,QAAQ,CAAC,OAAO,EAAE,SAAS,mBAAmB,EAAE,CAAC;IACjD,QAAQ,CAAC,KAAK,EAAE,SAAS,mBAAmB,EAAE,CAAC;IAC/C,QAAQ,CAAC,SAAS,EAAE,aAAa,CAAC;CACrC,CAAC;AAER,wBAAgB,0BAA0B,CACtC,OAAO,EAAE,oBAAoB,EAC7B,OAAO,EAAE,SAAS,mBAAmB,EAAE,GACxC,oBAAoB,CAgBtB;AAED,wBAAgB,uBAAuB,CAAC,OAAO,EAAE,oBAAoB,EAAE,MAAM,EAAE,MAAM,GAAG,oBAAoB,CAI3G;AAED,wBAAgB,sBAAsB,CAClC,OAAO,EAAE,SAAS,mBAAmB,EAAE,EACvC,MAAM,EAAE,MAAM,GACf,SAAS,mBAAmB,EAAE,CAEhC;AAED,wBAAgB,yBAAyB,CACrC,IAAI,EAAE,SAAS,mBAAmB,EAAE,EACpC,OAAO,EAAE,oBAAoB,GAC9B,SAAS,mBAAmB,EAAE,CAoBhC"}
@@ -0,0 +1,47 @@
1
+ import { MAXIMUM_CONFIG_OPTIONS } from "../protocol/session-config-protocol.js";
2
+ export function recordConfigurationOptions(changes, options) {
3
+ const modes = options.filter((option) => option.category === "mode");
4
+ const selection = modes.length > 0
5
+ ? { kind: "unchanged" }
6
+ : changes.kind === "mode"
7
+ ? { kind: "selected", modeId: changes.modeId }
8
+ : changes.kind === "replacement"
9
+ ? changes.selection
10
+ : { kind: "unchanged" };
11
+ return {
12
+ kind: "replacement",
13
+ options,
14
+ modes: modes.length > 0 ? modes : changes.kind === "replacement" ? changes.modes : [],
15
+ selection,
16
+ };
17
+ }
18
+ export function recordConfigurationMode(changes, modeId) {
19
+ return changes.kind === "replacement"
20
+ ? { ...changes, selection: { kind: "selected", modeId } }
21
+ : { kind: "mode", modeId };
22
+ }
23
+ export function applyConfigurationMode(options, modeId) {
24
+ return options.map((option) => (option.category === "mode" ? { ...option, currentValue: modeId } : option));
25
+ }
26
+ export function applyConfigurationChanges(base, changes) {
27
+ switch (changes.kind) {
28
+ case "unchanged":
29
+ return base;
30
+ case "mode":
31
+ return applyConfigurationMode(base, changes.modeId);
32
+ case "replacement": {
33
+ const options = changes.options.some((option) => option.category === "mode")
34
+ ? changes.options
35
+ : [
36
+ ...(changes.modes.length > 0
37
+ ? changes.modes
38
+ : base.filter((option) => option.category === "mode")),
39
+ ...changes.options,
40
+ ].slice(0, MAXIMUM_CONFIG_OPTIONS);
41
+ return changes.selection.kind === "selected"
42
+ ? applyConfigurationMode(options, changes.selection.modeId)
43
+ : options;
44
+ }
45
+ }
46
+ }
47
+ //# sourceMappingURL=configuration-changes.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"configuration-changes.js","sourceRoot":"","sources":["../../../../src/engine/acp/adapter/configuration-changes.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,sBAAsB,EAAE,MAAM,wCAAwC,CAAC;AAehF,MAAM,UAAU,0BAA0B,CACtC,OAA6B,EAC7B,OAAuC;IAEvC,MAAM,KAAK,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,QAAQ,KAAK,MAAM,CAAC,CAAC;IACrE,MAAM,SAAS,GACX,KAAK,CAAC,MAAM,GAAG,CAAC;QACZ,CAAC,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE;QACvB,CAAC,CAAC,OAAO,CAAC,IAAI,KAAK,MAAM;YACvB,CAAC,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE;YAC9C,CAAC,CAAC,OAAO,CAAC,IAAI,KAAK,aAAa;gBAC9B,CAAC,CAAC,OAAO,CAAC,SAAS;gBACnB,CAAC,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC;IACpC,OAAO;QACH,IAAI,EAAE,aAAa;QACnB,OAAO;QACP,KAAK,EAAE,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,KAAK,aAAa,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE;QACrF,SAAS;KACZ,CAAC;AACN,CAAC;AAED,MAAM,UAAU,uBAAuB,CAAC,OAA6B,EAAE,MAAc;IACjF,OAAO,OAAO,CAAC,IAAI,KAAK,aAAa;QACjC,CAAC,CAAC,EAAE,GAAG,OAAO,EAAE,SAAS,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,EAAE,EAAE;QACzD,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC;AACnC,CAAC;AAED,MAAM,UAAU,sBAAsB,CAClC,OAAuC,EACvC,MAAc;IAEd,OAAO,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,MAAM,CAAC,QAAQ,KAAK,MAAM,CAAC,CAAC,CAAC,EAAE,GAAG,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;AAChH,CAAC;AAED,MAAM,UAAU,yBAAyB,CACrC,IAAoC,EACpC,OAA6B;IAE7B,QAAQ,OAAO,CAAC,IAAI,EAAE,CAAC;QACnB,KAAK,WAAW;YACZ,OAAO,IAAI,CAAC;QAChB,KAAK,MAAM;YACP,OAAO,sBAAsB,CAAC,IAAI,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;QACxD,KAAK,aAAa,EAAE,CAAC;YACjB,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,QAAQ,KAAK,MAAM,CAAC;gBACxE,CAAC,CAAC,OAAO,CAAC,OAAO;gBACjB,CAAC,CAAC;oBACI,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC;wBACxB,CAAC,CAAC,OAAO,CAAC,KAAK;wBACf,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,QAAQ,KAAK,MAAM,CAAC,CAAC;oBAC1D,GAAG,OAAO,CAAC,OAAO;iBACrB,CAAC,KAAK,CAAC,CAAC,EAAE,sBAAsB,CAAC,CAAC;YACzC,OAAO,OAAO,CAAC,SAAS,CAAC,IAAI,KAAK,UAAU;gBACxC,CAAC,CAAC,sBAAsB,CAAC,OAAO,EAAE,OAAO,CAAC,SAAS,CAAC,MAAM,CAAC;gBAC3D,CAAC,CAAC,OAAO,CAAC;QAClB,CAAC;IACL,CAAC;AACL,CAAC"}
@@ -0,0 +1,26 @@
1
+ import type { AcpContentExternalizer } from "../content/content-externalizer.ts";
2
+ import type { Adapter, AdapterSessionCreateParams, AdapterSessionScope } from "../native-history/preview-contract.ts";
3
+ import { AdapterSessionConnection } from "./session-events.ts";
4
+ export interface AcpExecutionConnection {
5
+ readonly connection: AdapterSessionConnection;
6
+ readonly scope: AdapterSessionScope;
7
+ readonly subscriber: AdapterSessionCreateParams;
8
+ }
9
+ /** Adapter-private active writers. Query sessions never enter this registry. */
10
+ export declare class AcpExecutionConnections {
11
+ #private;
12
+ constructor(externalizer: Pick<AcpContentExternalizer, "update">, normalizeEvent?: (event: unknown) => unknown);
13
+ readonly acquire: (params: AdapterSessionCreateParams) => AcpExecutionConnection;
14
+ /** Resource scope only: the concrete adapter supplies the protocol operation. */
15
+ readonly withConnection: <T>(params: AdapterSessionCreateParams, operation: (session: AcpExecutionConnection, signal: AbortSignal) => Promise<T>) => Promise<T>;
16
+ readonly bind: (session: AcpExecutionConnection, nativeSessionId: string) => void;
17
+ readonly cancel: Adapter["cancel"];
18
+ readonly closeSession: Adapter["closeSession"];
19
+ readonly releaseSession: Adapter["releaseSession"];
20
+ readonly prompt: Adapter["prompt"];
21
+ readonly steer: Adapter["steer"];
22
+ readonly renameSession: Adapter["renameSession"];
23
+ readonly configureSession: Adapter["configureSession"];
24
+ readonly close: () => Promise<void>;
25
+ }
26
+ //# sourceMappingURL=execution-connections.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"execution-connections.d.ts","sourceRoot":"","sources":["../../../../src/engine/acp/adapter/execution-connections.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,oCAAoC,CAAC;AACjF,OAAO,KAAK,EACR,OAAO,EAEP,0BAA0B,EAC1B,mBAAmB,EAEtB,MAAM,uCAAuC,CAAC;AAG/C,OAAO,EAAE,wBAAwB,EAAE,MAAM,qBAAqB,CAAC;AAE/D,MAAM,WAAW,sBAAsB;IACnC,QAAQ,CAAC,UAAU,EAAE,wBAAwB,CAAC;IAC9C,QAAQ,CAAC,KAAK,EAAE,mBAAmB,CAAC;IACpC,QAAQ,CAAC,UAAU,EAAE,0BAA0B,CAAC;CACnD;AASD,gFAAgF;AAChF,qBAAa,uBAAuB;;IAKhC,YACI,YAAY,EAAE,IAAI,CAAC,sBAAsB,EAAE,QAAQ,CAAC,EACpD,cAAc,GAAE,CAAC,KAAK,EAAE,OAAO,KAAK,OAA0B,EAIjE;IAED,QAAQ,CAAC,OAAO,WAAY,0BAA0B,KAAG,sBAAsB,CAuC7E;IAEF,iFAAiF;IACjF,QAAQ,CAAC,cAAc,GAAU,CAAC,UACtB,0BAA0B,aACvB,CAAC,OAAO,EAAE,sBAAsB,EAAE,MAAM,EAAE,WAAW,KAAK,OAAO,CAAC,CAAC,CAAC,KAChF,OAAO,CAAC,CAAC,CAAC,CAuBX;IAEF,QAAQ,CAAC,IAAI,YAAa,sBAAsB,mBAAmB,MAAM,KAAG,IAAI,CAU9E;IAoCF,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC,QAAQ,CAAC,CAYhC;IAEF,QAAQ,CAAC,YAAY,EAAE,OAAO,CAAC,cAAc,CAAC,CA4B5C;IAEF,QAAQ,CAAC,cAAc,EAAE,OAAO,CAAC,gBAAgB,CAAC,CAMhD;IAEF,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC,QAAQ,CAAC,CAkChC;IAEF,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC,OAAO,CAAC,CA4C9B;IAEF,QAAQ,CAAC,aAAa,EAAE,OAAO,CAAC,eAAe,CAAC,CAgC9C;IAEF,QAAQ,CAAC,gBAAgB,EAAE,OAAO,CAAC,kBAAkB,CAAC,CA2EpD;IAEF,QAAQ,CAAC,KAAK,QAAa,OAAO,CAAC,IAAI,CAAC,CAStC;CACL"}