@antelopejs/dms-ai 0.0.6 → 0.1.1-next.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 (237) hide show
  1. package/README.md +83 -2
  2. package/dist/config.d.ts +7 -0
  3. package/dist/config.js +33 -0
  4. package/dist/config.js.map +1 -0
  5. package/dist/constants/sidecar.d.ts +2 -0
  6. package/dist/constants/sidecar.js +3 -1
  7. package/dist/constants/sidecar.js.map +1 -1
  8. package/dist/index.d.ts +1 -0
  9. package/dist/index.js +6 -0
  10. package/dist/index.js.map +1 -1
  11. package/dist/lifecycle/spawn-sidecar.d.ts +1 -0
  12. package/dist/lifecycle/spawn-sidecar.js +9 -0
  13. package/dist/lifecycle/spawn-sidecar.js.map +1 -1
  14. package/dist/routes/settings.d.ts +7 -0
  15. package/dist/routes/settings.js +2 -0
  16. package/dist/routes/settings.js.map +1 -1
  17. package/frontend-vue/app/components/SettingsView.vue +85 -3
  18. package/frontend-vue/app/runtime/constants.ts +0 -1
  19. package/package.json +11 -1
  20. package/sidecar/chatbox/dist/assets/index-CEZ1NLp9.js +52 -0
  21. package/sidecar/chatbox/dist/assets/{index-pP_KOHIn.css → index-D_51Vqqk.css} +1 -1
  22. package/sidecar/chatbox/dist/index.html +2 -2
  23. package/sidecar/dist/agent/attachment-files.d.ts +5 -0
  24. package/sidecar/dist/agent/attachment-files.js +29 -0
  25. package/sidecar/dist/agent/attachment-files.js.map +1 -0
  26. package/sidecar/dist/agent/provider.d.ts +40 -0
  27. package/sidecar/dist/agent/provider.js +2 -0
  28. package/sidecar/dist/agent/provider.js.map +1 -0
  29. package/sidecar/dist/agent/{claude-runner.d.ts → runner.d.ts} +8 -11
  30. package/sidecar/dist/agent/runner.js +71 -0
  31. package/sidecar/dist/agent/runner.js.map +1 -0
  32. package/sidecar/dist/agent/session.d.ts +22 -0
  33. package/sidecar/dist/agent/{claude-session.js → session.js} +39 -47
  34. package/sidecar/dist/agent/session.js.map +1 -0
  35. package/sidecar/dist/agent/switching-runner.d.ts +6 -0
  36. package/sidecar/dist/agent/switching-runner.js +58 -0
  37. package/sidecar/dist/agent/switching-runner.js.map +1 -0
  38. package/sidecar/dist/constants/agent.d.ts +2 -12
  39. package/sidecar/dist/constants/agent.js +2 -11
  40. package/sidecar/dist/constants/agent.js.map +1 -1
  41. package/sidecar/dist/constants/claude.d.ts +10 -0
  42. package/sidecar/dist/constants/claude.js +10 -0
  43. package/sidecar/dist/constants/claude.js.map +1 -0
  44. package/sidecar/dist/constants/cli.d.ts +2 -0
  45. package/sidecar/dist/constants/cli.js +3 -0
  46. package/sidecar/dist/constants/cli.js.map +1 -0
  47. package/sidecar/dist/constants/codex.d.ts +85 -0
  48. package/sidecar/dist/constants/codex.js +110 -0
  49. package/sidecar/dist/constants/codex.js.map +1 -0
  50. package/sidecar/dist/constants/http.d.ts +1 -0
  51. package/sidecar/dist/constants/http.js +1 -0
  52. package/sidecar/dist/constants/http.js.map +1 -1
  53. package/sidecar/dist/constants/mcp.d.ts +6 -0
  54. package/sidecar/dist/constants/mcp.js +11 -0
  55. package/sidecar/dist/constants/mcp.js.map +1 -1
  56. package/sidecar/dist/constants/pages.d.ts +0 -1
  57. package/sidecar/dist/constants/pages.js +0 -1
  58. package/sidecar/dist/constants/pages.js.map +1 -1
  59. package/sidecar/dist/constants/paths.d.ts +5 -0
  60. package/sidecar/dist/constants/paths.js +5 -0
  61. package/sidecar/dist/constants/paths.js.map +1 -1
  62. package/sidecar/dist/constants/ports.d.ts +0 -1
  63. package/sidecar/dist/constants/ports.js +0 -1
  64. package/sidecar/dist/constants/ports.js.map +1 -1
  65. package/sidecar/dist/constants/providers.d.ts +16 -0
  66. package/sidecar/dist/constants/providers.js +17 -0
  67. package/sidecar/dist/constants/providers.js.map +1 -0
  68. package/sidecar/dist/constants/settings.d.ts +1 -4
  69. package/sidecar/dist/constants/settings.js +2 -12
  70. package/sidecar/dist/constants/settings.js.map +1 -1
  71. package/sidecar/dist/constants/skills.d.ts +1 -0
  72. package/sidecar/dist/constants/skills.js +2 -0
  73. package/sidecar/dist/constants/skills.js.map +1 -0
  74. package/sidecar/dist/constants/timing.d.ts +1 -0
  75. package/sidecar/dist/constants/timing.js +1 -0
  76. package/sidecar/dist/constants/timing.js.map +1 -1
  77. package/sidecar/dist/constants/tool-lexicon.d.ts +7 -0
  78. package/sidecar/dist/constants/tool-lexicon.js +8 -0
  79. package/sidecar/dist/constants/tool-lexicon.js.map +1 -0
  80. package/sidecar/dist/index.d.ts +11 -0
  81. package/sidecar/dist/index.js +33 -8
  82. package/sidecar/dist/index.js.map +1 -1
  83. package/sidecar/dist/mcp/define-tool.d.ts +23 -0
  84. package/sidecar/dist/mcp/define-tool.js +4 -0
  85. package/sidecar/dist/mcp/define-tool.js.map +1 -0
  86. package/sidecar/dist/mcp/http-binding.d.ts +9 -0
  87. package/sidecar/dist/mcp/http-binding.js +123 -0
  88. package/sidecar/dist/mcp/http-binding.js.map +1 -0
  89. package/sidecar/dist/mcp/sdk-binding.js +14 -0
  90. package/sidecar/dist/mcp/sdk-binding.js.map +1 -0
  91. package/sidecar/dist/mcp/tool-definitions.d.ts +3 -0
  92. package/sidecar/dist/mcp/{server.js → tool-definitions.js} +2 -11
  93. package/sidecar/dist/mcp/tool-definitions.js.map +1 -0
  94. package/sidecar/dist/mcp/tools/ask-user.d.ts +1 -1
  95. package/sidecar/dist/mcp/tools/ask-user.js +2 -2
  96. package/sidecar/dist/mcp/tools/ask-user.js.map +1 -1
  97. package/sidecar/dist/mcp/tools/builder.d.ts +19 -19
  98. package/sidecar/dist/mcp/tools/builder.js +26 -26
  99. package/sidecar/dist/mcp/tools/builder.js.map +1 -1
  100. package/sidecar/dist/mcp/tools/find-pages-using.d.ts +1 -1
  101. package/sidecar/dist/mcp/tools/find-pages-using.js +2 -2
  102. package/sidecar/dist/mcp/tools/find-pages-using.js.map +1 -1
  103. package/sidecar/dist/mcp/tools/get-current-page.d.ts +1 -1
  104. package/sidecar/dist/mcp/tools/get-current-page.js +2 -2
  105. package/sidecar/dist/mcp/tools/get-current-page.js.map +1 -1
  106. package/sidecar/dist/mcp/tools/list-pages.d.ts +1 -1
  107. package/sidecar/dist/mcp/tools/list-pages.js +2 -2
  108. package/sidecar/dist/mcp/tools/list-pages.js.map +1 -1
  109. package/sidecar/dist/mcp/tools/navigate-to-page.d.ts +1 -1
  110. package/sidecar/dist/mcp/tools/navigate-to-page.js +2 -2
  111. package/sidecar/dist/mcp/tools/navigate-to-page.js.map +1 -1
  112. package/sidecar/dist/mcp/tools/query-logs.d.ts +1 -1
  113. package/sidecar/dist/mcp/tools/query-logs.js +2 -2
  114. package/sidecar/dist/mcp/tools/query-logs.js.map +1 -1
  115. package/sidecar/dist/mcp/tools/typecheck.d.ts +1 -1
  116. package/sidecar/dist/mcp/tools/typecheck.js +2 -2
  117. package/sidecar/dist/mcp/tools/typecheck.js.map +1 -1
  118. package/sidecar/dist/mcp/types.d.ts +6 -2
  119. package/sidecar/dist/protocol/events.d.ts +37 -0
  120. package/sidecar/dist/protocol/events.js +8 -0
  121. package/sidecar/dist/protocol/events.js.map +1 -1
  122. package/sidecar/dist/protocol/messages.d.ts +8 -0
  123. package/sidecar/dist/protocol/messages.js +2 -0
  124. package/sidecar/dist/protocol/messages.js.map +1 -1
  125. package/sidecar/dist/providers/claude/adapter.d.ts +5 -0
  126. package/sidecar/dist/{agent/sdk-adapter.js → providers/claude/adapter.js} +20 -1
  127. package/sidecar/dist/providers/claude/adapter.js.map +1 -0
  128. package/sidecar/dist/{agent → providers/claude}/attachments.d.ts +1 -1
  129. package/sidecar/dist/{agent → providers/claude}/attachments.js +3 -27
  130. package/sidecar/dist/providers/claude/attachments.js.map +1 -0
  131. package/sidecar/dist/providers/claude/config.d.ts +4 -0
  132. package/sidecar/dist/providers/claude/config.js +13 -0
  133. package/sidecar/dist/providers/claude/config.js.map +1 -0
  134. package/sidecar/dist/providers/claude/input-queue.js.map +1 -0
  135. package/sidecar/dist/providers/claude/module.d.ts +2 -0
  136. package/sidecar/dist/providers/claude/module.js +25 -0
  137. package/sidecar/dist/providers/claude/module.js.map +1 -0
  138. package/sidecar/dist/providers/claude/provider.d.ts +11 -0
  139. package/sidecar/dist/{agent/claude-runner.js → providers/claude/provider.js} +118 -96
  140. package/sidecar/dist/providers/claude/provider.js.map +1 -0
  141. package/sidecar/dist/{agent/resolve-claude-binary.js → providers/claude/resolve-binary.js} +3 -3
  142. package/sidecar/dist/{agent/resolve-claude-binary.js.map → providers/claude/resolve-binary.js.map} +1 -1
  143. package/sidecar/dist/providers/claude/sdk-loader.js +16 -0
  144. package/sidecar/dist/providers/claude/sdk-loader.js.map +1 -0
  145. package/sidecar/dist/providers/codex/adapter.d.ts +7 -0
  146. package/sidecar/dist/providers/codex/adapter.js +147 -0
  147. package/sidecar/dist/providers/codex/adapter.js.map +1 -0
  148. package/sidecar/dist/providers/codex/attachments.d.ts +7 -0
  149. package/sidecar/dist/providers/codex/attachments.js +73 -0
  150. package/sidecar/dist/providers/codex/attachments.js.map +1 -0
  151. package/sidecar/dist/providers/codex/client.d.ts +34 -0
  152. package/sidecar/dist/providers/codex/client.js +128 -0
  153. package/sidecar/dist/providers/codex/client.js.map +1 -0
  154. package/sidecar/dist/providers/codex/config.d.ts +34 -0
  155. package/sidecar/dist/providers/codex/config.js +111 -0
  156. package/sidecar/dist/providers/codex/config.js.map +1 -0
  157. package/sidecar/dist/providers/codex/event-stream.d.ts +8 -0
  158. package/sidecar/dist/providers/codex/event-stream.js +53 -0
  159. package/sidecar/dist/providers/codex/event-stream.js.map +1 -0
  160. package/sidecar/dist/providers/codex/module.d.ts +2 -0
  161. package/sidecar/dist/providers/codex/module.js +54 -0
  162. package/sidecar/dist/providers/codex/module.js.map +1 -0
  163. package/sidecar/dist/providers/codex/permissions.d.ts +21 -0
  164. package/sidecar/dist/providers/codex/permissions.js +77 -0
  165. package/sidecar/dist/providers/codex/permissions.js.map +1 -0
  166. package/sidecar/dist/providers/codex/process.d.ts +23 -0
  167. package/sidecar/dist/providers/codex/process.js +208 -0
  168. package/sidecar/dist/providers/codex/process.js.map +1 -0
  169. package/sidecar/dist/providers/codex/protocol/common.d.ts +59 -0
  170. package/sidecar/dist/providers/codex/protocol/common.js +2 -0
  171. package/sidecar/dist/providers/codex/protocol/common.js.map +1 -0
  172. package/sidecar/dist/providers/codex/protocol/index.d.ts +3 -0
  173. package/sidecar/dist/providers/codex/protocol/index.js +3 -0
  174. package/sidecar/dist/providers/codex/protocol/index.js.map +1 -0
  175. package/sidecar/dist/providers/codex/protocol/serde_json.d.ts +3 -0
  176. package/sidecar/dist/providers/codex/protocol/serde_json.js +2 -0
  177. package/sidecar/dist/providers/codex/protocol/serde_json.js.map +1 -0
  178. package/sidecar/dist/providers/codex/protocol/v2.d.ts +481 -0
  179. package/sidecar/dist/providers/codex/protocol/v2.js +2 -0
  180. package/sidecar/dist/providers/codex/protocol/v2.js.map +1 -0
  181. package/sidecar/dist/providers/codex/provider.d.ts +14 -0
  182. package/sidecar/dist/providers/codex/provider.js +225 -0
  183. package/sidecar/dist/providers/codex/provider.js.map +1 -0
  184. package/sidecar/dist/providers/codex/resolve-binary.d.ts +10 -0
  185. package/sidecar/dist/providers/codex/resolve-binary.js +80 -0
  186. package/sidecar/dist/providers/codex/resolve-binary.js.map +1 -0
  187. package/sidecar/dist/providers/codex/skills.d.ts +10 -0
  188. package/sidecar/dist/providers/codex/skills.js +42 -0
  189. package/sidecar/dist/providers/codex/skills.js.map +1 -0
  190. package/sidecar/dist/providers/registry.d.ts +7 -0
  191. package/sidecar/dist/providers/registry.js +31 -0
  192. package/sidecar/dist/providers/registry.js.map +1 -0
  193. package/sidecar/dist/providers/types.d.ts +25 -0
  194. package/sidecar/dist/providers/types.js +5 -0
  195. package/sidecar/dist/providers/types.js.map +1 -0
  196. package/sidecar/dist/server/http.d.ts +2 -0
  197. package/sidecar/dist/server/http.js +26 -12
  198. package/sidecar/dist/server/http.js.map +1 -1
  199. package/sidecar/dist/server/routing.d.ts +4 -4
  200. package/sidecar/dist/server/routing.js +7 -1
  201. package/sidecar/dist/server/routing.js.map +1 -1
  202. package/sidecar/dist/server/ws.d.ts +2 -0
  203. package/sidecar/dist/server/ws.js +40 -17
  204. package/sidecar/dist/server/ws.js.map +1 -1
  205. package/sidecar/dist/skills/build-catalog.d.ts +2 -0
  206. package/sidecar/dist/skills/build-catalog.js +12 -1
  207. package/sidecar/dist/skills/build-catalog.js.map +1 -1
  208. package/sidecar/dist/state/conversations.d.ts +3 -1
  209. package/sidecar/dist/state/conversations.js +20 -0
  210. package/sidecar/dist/state/conversations.js.map +1 -1
  211. package/sidecar/dist/state/safe-segment.d.ts +1 -0
  212. package/sidecar/dist/state/safe-segment.js +17 -0
  213. package/sidecar/dist/state/safe-segment.js.map +1 -0
  214. package/sidecar/dist/state/settings-store.js +7 -0
  215. package/sidecar/dist/state/settings-store.js.map +1 -1
  216. package/sidecar/dist/state/settings-types.d.ts +2 -0
  217. package/sidecar/dist/state/settings-types.js.map +1 -1
  218. package/sidecar/dist/state/types.d.ts +11 -0
  219. package/sidecar/dist/state/types.js +7 -0
  220. package/sidecar/dist/state/types.js.map +1 -1
  221. package/sidecar/package.json +3 -0
  222. package/sidecar/chatbox/dist/assets/index-Cy2BwTG0.js +0 -50
  223. package/sidecar/dist/agent/attachments.js.map +0 -1
  224. package/sidecar/dist/agent/claude-runner.js.map +0 -1
  225. package/sidecar/dist/agent/claude-session.d.ts +0 -18
  226. package/sidecar/dist/agent/claude-session.js.map +0 -1
  227. package/sidecar/dist/agent/input-queue.js.map +0 -1
  228. package/sidecar/dist/agent/sdk-adapter.d.ts +0 -3
  229. package/sidecar/dist/agent/sdk-adapter.js.map +0 -1
  230. package/sidecar/dist/agent/sdk-loader.js +0 -14
  231. package/sidecar/dist/agent/sdk-loader.js.map +0 -1
  232. package/sidecar/dist/mcp/server.js.map +0 -1
  233. /package/sidecar/dist/mcp/{server.d.ts → sdk-binding.d.ts} +0 -0
  234. /package/sidecar/dist/{agent → providers/claude}/input-queue.d.ts +0 -0
  235. /package/sidecar/dist/{agent → providers/claude}/input-queue.js +0 -0
  236. /package/sidecar/dist/{agent/resolve-claude-binary.d.ts → providers/claude/resolve-binary.d.ts} +0 -0
  237. /package/sidecar/dist/{agent → providers/claude}/sdk-loader.d.ts +0 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"attachments.js","sourceRoot":"","sources":["../../../src/providers/claude/attachments.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ import type { PermissionMode } from "@anthropic-ai/claude-agent-sdk";
2
+ import type { ChatboxMode, ThinkingLevel } from "../../state/settings-types.js";
3
+ export declare const PERMISSION_MODE_BY_MODE: Record<ChatboxMode, PermissionMode>;
4
+ export declare const THINKING_TOKENS: Record<ThinkingLevel, number>;
@@ -0,0 +1,13 @@
1
+ export const PERMISSION_MODE_BY_MODE = {
2
+ normal: "default",
3
+ acceptEdits: "acceptEdits",
4
+ plan: "plan",
5
+ auto: "bypassPermissions",
6
+ };
7
+ export const THINKING_TOKENS = {
8
+ off: 0,
9
+ low: 4096,
10
+ medium: 12288,
11
+ high: 24576,
12
+ };
13
+ //# sourceMappingURL=config.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../../../src/providers/claude/config.ts"],"names":[],"mappings":"AAMA,MAAM,CAAC,MAAM,uBAAuB,GAAwC;IAC1E,MAAM,EAAE,SAAS;IACjB,WAAW,EAAE,aAAa;IAC1B,IAAI,EAAE,MAAM;IACZ,IAAI,EAAE,mBAAmB;CAC1B,CAAC;AAKF,MAAM,CAAC,MAAM,eAAe,GAAkC;IAC5D,GAAG,EAAE,CAAC;IACN,GAAG,EAAE,IAAI;IACT,MAAM,EAAE,KAAK;IACb,IAAI,EAAE,KAAK;CACZ,CAAC"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"input-queue.js","sourceRoot":"","sources":["../../../src/providers/claude/input-queue.ts"],"names":[],"mappings":"AAgBA,SAAS,QAAQ,CAAC,KAAiB;IACjC,MAAM,IAAI,GAAG,KAAK,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;IAClC,IAAI,IAAI,KAAK,SAAS;QAAE,OAAO,OAAO,CAAC,OAAO,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;IAC7E,IAAI,KAAK,CAAC,MAAM;QAAE,OAAO,OAAO,CAAC,OAAO,CAAC,EAAE,KAAK,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;IAC3E,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;QAC7B,KAAK,CAAC,OAAO,GAAG,OAAO,CAAC;IAC1B,CAAC,CAAC,CAAC;AACL,CAAC;AAED,SAAS,WAAW,CAAC,KAAiB,EAAE,OAAuB;IAC7D,MAAM,QAAQ,GAAG,KAAK,CAAC,OAAO,CAAC;IAC/B,IAAI,QAAQ,KAAK,IAAI,EAAE,CAAC;QACtB,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC3B,OAAO;IACT,CAAC;IACD,KAAK,CAAC,OAAO,GAAG,IAAI,CAAC;IACrB,QAAQ,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;AAC5C,CAAC;AAED,SAAS,UAAU,CAAC,KAAiB;IACnC,KAAK,CAAC,MAAM,GAAG,IAAI,CAAC;IACpB,MAAM,QAAQ,GAAG,KAAK,CAAC,OAAO,CAAC;IAC/B,IAAI,QAAQ,KAAK,IAAI;QAAE,OAAO;IAC9B,KAAK,CAAC,OAAO,GAAG,IAAI,CAAC;IACrB,QAAQ,CAAC,EAAE,KAAK,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;AAC7C,CAAC;AAED,MAAM,UAAU,gBAAgB;IAC9B,MAAM,KAAK,GAAe,EAAE,MAAM,EAAE,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC;IACvE,MAAM,MAAM,GAAkC;QAC5C,CAAC,MAAM,CAAC,aAAa,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;KAChE,CAAC;IACF,OAAO;QACL,MAAM;QACN,IAAI,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC,WAAW,CAAC,KAAK,EAAE,OAAO,CAAC;QAC9C,KAAK,EAAE,GAAG,EAAE,CAAC,UAAU,CAAC,KAAK,CAAC;KAC/B,CAAC;AACJ,CAAC"}
@@ -0,0 +1,2 @@
1
+ import { type ProviderModule } from "../types.js";
2
+ export declare const claudeModule: ProviderModule;
@@ -0,0 +1,25 @@
1
+ import { createRequire } from "node:module";
2
+ import { REAL_SDK_PACKAGE } from "../../constants/claude.js";
3
+ import { PROVIDER_UNAVAILABLE_REASONS } from "../../constants/providers.js";
4
+ import { AVAILABLE, unavailable, } from "../types.js";
5
+ import { createClaudeProvider } from "./provider.js";
6
+ function isSdkInstalled() {
7
+ try {
8
+ createRequire(import.meta.url).resolve(REAL_SDK_PACKAGE);
9
+ return true;
10
+ }
11
+ catch {
12
+ return false;
13
+ }
14
+ }
15
+ function checkAvailability() {
16
+ if (isSdkInstalled())
17
+ return AVAILABLE;
18
+ return unavailable(PROVIDER_UNAVAILABLE_REASONS.CLAUDE_SDK_MISSING);
19
+ }
20
+ export const claudeModule = {
21
+ name: "claude",
22
+ create: (options) => createClaudeProvider(options),
23
+ checkAvailability,
24
+ };
25
+ //# sourceMappingURL=module.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"module.js","sourceRoot":"","sources":["../../../src/providers/claude/module.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAC7D,OAAO,EAAE,4BAA4B,EAAE,MAAM,8BAA8B,CAAC;AAC5E,OAAO,EACL,SAAS,EAGT,WAAW,GACZ,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,oBAAoB,EAAE,MAAM,eAAe,CAAC;AAIrD,SAAS,cAAc;IACrB,IAAI,CAAC;QACH,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC;QACzD,OAAO,IAAI,CAAC;IACd,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC;AAED,SAAS,iBAAiB;IACxB,IAAI,cAAc,EAAE;QAAE,OAAO,SAAS,CAAC;IACvC,OAAO,WAAW,CAAC,4BAA4B,CAAC,kBAAkB,CAAC,CAAC;AACtE,CAAC;AAID,MAAM,CAAC,MAAM,YAAY,GAAmB;IAC1C,IAAI,EAAE,QAAQ;IACd,MAAM,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC,oBAAoB,CAAC,OAAO,CAAC;IAClD,iBAAiB;CAClB,CAAC"}
@@ -0,0 +1,11 @@
1
+ import type { PermissionResult } from "@anthropic-ai/claude-agent-sdk";
2
+ import type { PermissionBus } from "../../agent/permission-bus.js";
3
+ import type { AgentProvider, AgentProviderOptions } from "../../agent/provider.js";
4
+ import { type AgentRunner, type AgentRunnerOptions, type RunnerContext } from "../../agent/runner.js";
5
+ import { type PermissionDecision } from "../../constants/permissions.js";
6
+ export type ClaudeRunner = AgentRunner;
7
+ export type ClaudeRunnerOptions = AgentProviderOptions & AgentRunnerOptions;
8
+ export type { RunnerContext };
9
+ export declare function bridgeCanUseTool(bus: PermissionBus, conversationId: string, toolName: string, input: Record<string, unknown>, onDecision?: (toolName: string, decision: PermissionDecision) => void): Promise<PermissionResult>;
10
+ export declare function createClaudeProvider(options?: AgentProviderOptions): AgentProvider;
11
+ export declare function createClaudeRunner(options?: ClaudeRunnerOptions): ClaudeRunner;
@@ -1,23 +1,26 @@
1
1
  import os from "node:os";
2
2
  import path from "node:path";
3
- import { effectiveGenerationMode } from "../builder/capability.js";
4
- import { SDK_INCLUDE_PARTIAL_MESSAGES, SDK_SETTING_SOURCES_ISOLATED, SDK_TIMEOUT_MS, SKILL_PLUGIN_WRAPPER_DIR, SYSTEM_PROMPT_PRESET_NAME, SYSTEM_PROMPT_PRESET_TYPE, } from "../constants/agent.js";
5
- import { ASK_USER_QUESTION_BUILTIN_TOOL_NAME, ASK_USER_QUESTION_REDIRECT_MESSAGE, FIRST_PARTY_AUTO_ALLOW_TOOL_NAMES, MCP_SERVER_KEY, } from "../constants/mcp.js";
6
- import { STATE_DIR_SEGMENTS } from "../constants/paths.js";
7
- import { PERMISSION_DECISIONS, PERMISSION_DENIED_MESSAGE, SDK_PERMISSION_BEHAVIOR, } from "../constants/permissions.js";
8
- import { DEFAULT_SETTINGS, PERMISSION_MODE_BY_MODE, SAFE_MODE_DENIED_MESSAGE, SAFE_MODE_DISALLOWED_TOOLS, THINKING_TOKENS, } from "../constants/settings.js";
9
- import { readProjectInfo } from "../host/project-info.js";
10
- import { buildSkillCatalog } from "../skills/build-catalog.js";
11
- import { ensurePluginWrapper } from "../skills/plugin-wrapper.js";
12
- import { resolveSkillSources } from "../skills/resolve-sources.js";
3
+ import { isAutoAllowedRead, resolveReadRoots, } from "../../agent/read-access.js";
4
+ import { createAgentRunner, } from "../../agent/runner.js";
5
+ import { createAgentSession, } from "../../agent/session.js";
6
+ import { buildSystemPrompt } from "../../agent/system-prompt.js";
7
+ import { effectiveGenerationMode } from "../../builder/capability.js";
8
+ import { TURN_IDLE_TIMEOUT_MS } from "../../constants/agent.js";
9
+ import { SDK_INCLUDE_PARTIAL_MESSAGES, SDK_SETTING_SOURCES_ISOLATED, SKILL_PLUGIN_WRAPPER_DIR, SYSTEM_PROMPT_PRESET_NAME, SYSTEM_PROMPT_PRESET_TYPE, } from "../../constants/claude.js";
10
+ import { ASK_USER_QUESTION_BUILTIN_TOOL_NAME, ASK_USER_QUESTION_REDIRECT_MESSAGE, FIRST_PARTY_AUTO_ALLOW_TOOL_NAMES, MCP_SERVER_KEY, } from "../../constants/mcp.js";
11
+ import { STATE_DIR_SEGMENTS } from "../../constants/paths.js";
12
+ import { PERMISSION_DECISIONS, PERMISSION_DENIED_MESSAGE, SDK_PERMISSION_BEHAVIOR, } from "../../constants/permissions.js";
13
+ import { SAFE_MODE_DENIED_MESSAGE, SAFE_MODE_DISALLOWED_TOOLS, } from "../../constants/settings.js";
14
+ import { readProjectInfo } from "../../host/project-info.js";
15
+ import { buildSkillCatalog } from "../../skills/build-catalog.js";
16
+ import { ensurePluginWrapper } from "../../skills/plugin-wrapper.js";
17
+ import { resolveSkillSources } from "../../skills/resolve-sources.js";
18
+ import { extractTokenUsage, messageToEvents } from "./adapter.js";
13
19
  import { buildTurnContent } from "./attachments.js";
14
- import { createClaudeSession } from "./claude-session.js";
15
- import { prependHostContext } from "./host-context.js";
20
+ import { PERMISSION_MODE_BY_MODE, THINKING_TOKENS } from "./config.js";
16
21
  import { createInputQueue } from "./input-queue.js";
17
- import { isAutoAllowedRead, resolveReadRoots } from "./read-access.js";
18
- import { resolveClaudeBinary } from "./resolve-claude-binary.js";
22
+ import { resolveClaudeBinary } from "./resolve-binary.js";
19
23
  import { loadSdk } from "./sdk-loader.js";
20
- import { buildSystemPrompt } from "./system-prompt.js";
21
24
  function buildThinkingConfig(settings) {
22
25
  if (settings.thinking === "off")
23
26
  return { type: "disabled" };
@@ -153,14 +156,14 @@ function resolveCanUseTool(ctx, moduleRoots, skillRoots, getGenerationMode) {
153
156
  onDecision: ctx.onPermissionDecision,
154
157
  });
155
158
  }
156
- function activeGenerationMode(manager) {
157
- return effectiveGenerationMode(manager.settings.generationMode);
159
+ function activeGenerationMode(live) {
160
+ return effectiveGenerationMode(live.settings.generationMode);
158
161
  }
159
- async function loadSharedSdk(manager) {
160
- if (manager.sdk !== undefined)
161
- return manager.sdk;
162
- manager.sdk = await loadSdk();
163
- return manager.sdk;
162
+ async function loadSharedSdk(config) {
163
+ if (config.sdk !== undefined)
164
+ return config.sdk;
165
+ config.sdk = await loadSdk();
166
+ return config.sdk;
164
167
  }
165
168
  async function buildSessionPrompt(ctx) {
166
169
  const projectInfo = await readProjectInfo(ctx.hostProjectRoot);
@@ -170,95 +173,114 @@ async function buildSessionPrompt(ctx) {
170
173
  antelopeModules: projectInfo.antelopeModules,
171
174
  });
172
175
  }
173
- async function createSession(manager, ctx) {
174
- const sdk = await loadSharedSdk(manager);
175
- const systemPrompt = await buildSessionPrompt(ctx);
176
- const input = createInputQueue();
177
- const abortController = new AbortController();
178
- const skillSources = resolveSkillSources(manager.skillDirs, manager.settings.allowLocalSkills, os.homedir());
179
- const skillLoadout = await buildSkillLoadout(skillSources, ctx.hostProjectRoot);
180
- const options = buildPromptOptions({
181
- systemPrompt,
182
- canUseTool: resolveCanUseTool(ctx, manager.moduleRoots, skillSources.map((s) => s.dir), () => activeGenerationMode(manager)),
183
- mcpServer: ctx.mcpServer,
184
- settings: manager.settings,
185
- abortController,
186
- skillLoadout,
187
- });
188
- const output = sdk.query({ prompt: input.stream, options });
189
- return createClaudeSession({
190
- output,
191
- input,
192
- abortController,
193
- onDisposed: () => manager.sessions.delete(ctx.conversationId),
194
- });
176
+ function buildUserMessage(content) {
177
+ return {
178
+ type: "user",
179
+ message: { role: "user", content },
180
+ parent_tool_use_id: null,
181
+ session_id: "",
182
+ };
195
183
  }
196
- async function getOrCreateSession(manager, ctx) {
197
- const existing = manager.sessions.get(ctx.conversationId);
198
- if (existing !== undefined)
199
- return existing;
200
- const session = await createSession(manager, ctx);
201
- manager.sessions.set(ctx.conversationId, session);
202
- return session;
184
+ async function* toRunnerEvents(output, onTokenUsage) {
185
+ while (true) {
186
+ const result = await output.next();
187
+ if (result.done)
188
+ return;
189
+ const usage = extractTokenUsage(result.value);
190
+ if (usage !== null)
191
+ onTokenUsage?.(usage);
192
+ yield* messageToEvents(result.value);
193
+ }
203
194
  }
204
- async function* startTurn(manager, message, ctx) {
205
- const session = await getOrCreateSession(manager, ctx);
206
- const grounded = prependHostContext(message, ctx.getCurrentPage(), activeGenerationMode(manager));
207
- const content = await buildTurnContent(grounded, ctx.attachments ?? [], {
208
- hostProjectRoot: ctx.hostProjectRoot,
209
- conversationId: ctx.conversationId,
195
+ async function submitTurn(backend, input) {
196
+ const content = await buildTurnContent(input.text, input.attachments, {
197
+ hostProjectRoot: backend.hostProjectRoot,
198
+ conversationId: backend.conversationId,
210
199
  });
211
- yield* session.sendTurn(content, manager.timeoutMs);
200
+ backend.queue.push(buildUserMessage(content));
212
201
  }
213
- function interruptSession(manager, conversationId) {
214
- const session = manager.sessions.get(conversationId);
215
- if (session === undefined)
216
- return;
217
- session.interrupt();
202
+ function applyBackendSettings(backend, settings) {
203
+ backend.live.settings = settings;
204
+ void backend.output
205
+ .setPermissionMode(PERMISSION_MODE_BY_MODE[settings.mode])
206
+ .catch(() => undefined);
207
+ void backend.output
208
+ .setMaxThinkingTokens(THINKING_TOKENS[settings.thinking])
209
+ .catch(() => undefined);
218
210
  }
219
- function disposeSession(manager, conversationId) {
220
- const session = manager.sessions.get(conversationId);
221
- if (session === undefined)
222
- return;
223
- manager.sessions.delete(conversationId);
224
- session.dispose();
211
+ function buildSessionControls(backend) {
212
+ return {
213
+ submitTurn: (input) => submitTurn(backend, input),
214
+ interrupt: () => {
215
+ void backend.output.interrupt().catch(() => undefined);
216
+ },
217
+ close: () => backend.queue.close(),
218
+ applySettings: (settings) => applyBackendSettings(backend, settings),
219
+ };
225
220
  }
226
- function disposeAll(manager) {
227
- const sessions = [...manager.sessions.values()];
228
- manager.sessions.clear();
229
- for (const session of sessions)
230
- session.dispose();
221
+ async function* runTurn(state, input, settings) {
222
+ state.backend.live.settings = settings;
223
+ yield* state.session.sendTurn(input, state.timeoutMs);
231
224
  }
232
- function applySettings(manager, settings) {
233
- manager.settings = settings;
234
- const permissionMode = PERMISSION_MODE_BY_MODE[settings.mode];
235
- const thinkingTokens = THINKING_TOKENS[settings.thinking];
236
- for (const session of manager.sessions.values()) {
237
- session.setPermissionMode(permissionMode);
238
- session.setMaxThinkingTokens(thinkingTokens);
239
- }
225
+ async function buildSessionOptions(config, ctx, live, abortController) {
226
+ const skillSources = resolveSkillSources(config.skillDirs, ctx.settings.allowLocalSkills, os.homedir());
227
+ return buildPromptOptions({
228
+ systemPrompt: await buildSessionPrompt(ctx),
229
+ canUseTool: resolveCanUseTool(ctx, config.moduleRoots, skillSources.map((s) => s.dir), () => activeGenerationMode(live)),
230
+ mcpServer: ctx.mcpServer,
231
+ settings: ctx.settings,
232
+ abortController,
233
+ skillLoadout: await buildSkillLoadout(skillSources, ctx.hostProjectRoot),
234
+ });
235
+ }
236
+ async function createProviderSession(config, ctx) {
237
+ const sdk = await loadSharedSdk(config);
238
+ const queue = createInputQueue();
239
+ const abortController = new AbortController();
240
+ const live = { settings: ctx.settings };
241
+ const options = await buildSessionOptions(config, ctx, live, abortController);
242
+ const backend = {
243
+ output: sdk.query({ prompt: queue.stream, options }),
244
+ queue,
245
+ live,
246
+ hostProjectRoot: ctx.hostProjectRoot,
247
+ conversationId: ctx.conversationId,
248
+ };
249
+ const state = {
250
+ session: createAgentSession({
251
+ events: toRunnerEvents(backend.output, ctx.onTokenUsage),
252
+ controls: buildSessionControls(backend),
253
+ abortController,
254
+ onDisposed: ctx.onDisposed,
255
+ }),
256
+ backend,
257
+ timeoutMs: config.timeoutMs,
258
+ };
259
+ return {
260
+ runTurn: (input, settings) => runTurn(state, input, settings),
261
+ interrupt: () => state.session.interrupt(),
262
+ dispose: () => state.session.dispose(),
263
+ applySettings: (settings) => state.session.applySettings(settings),
264
+ };
240
265
  }
241
266
  function resolveTimeoutMs(options) {
242
267
  if (options === undefined)
243
- return SDK_TIMEOUT_MS;
268
+ return TURN_IDLE_TIMEOUT_MS;
244
269
  if (options.timeoutMs === undefined)
245
- return SDK_TIMEOUT_MS;
270
+ return TURN_IDLE_TIMEOUT_MS;
246
271
  return options.timeoutMs;
247
272
  }
248
- export function createClaudeRunner(options) {
249
- const manager = {
250
- sessions: new Map(),
273
+ export function createClaudeProvider(options) {
274
+ const config = {
251
275
  timeoutMs: resolveTimeoutMs(options),
252
- settings: options?.settings ?? DEFAULT_SETTINGS,
253
276
  moduleRoots: options?.moduleRoots ?? [],
254
277
  skillDirs: options?.skillDirs ?? [],
255
278
  };
256
- return {
257
- start: (message, ctx) => startTurn(manager, message, ctx),
258
- interruptSession: (conversationId) => interruptSession(manager, conversationId),
259
- disposeSession: (conversationId) => disposeSession(manager, conversationId),
260
- applySettings: (settings) => applySettings(manager, settings),
261
- dispose: () => disposeAll(manager),
262
- };
279
+ return { createSession: (ctx) => createProviderSession(config, ctx) };
280
+ }
281
+ export function createClaudeRunner(options) {
282
+ return createAgentRunner(createClaudeProvider(options), {
283
+ settings: options?.settings,
284
+ });
263
285
  }
264
- //# sourceMappingURL=claude-runner.js.map
286
+ //# sourceMappingURL=provider.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"provider.js","sourceRoot":"","sources":["../../../src/providers/claude/provider.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import { createRequire } from "node:module";
2
- import { REAL_SDK_PACKAGE } from "../constants/agent.js";
3
- import { CLAUDE_BINARY_SUBPATH, PLATFORM_LINUX, SDK_NATIVE_LINUX_PREFIX, SDK_NATIVE_MUSL_SUFFIX, } from "../constants/native-binary.js";
2
+ import { REAL_SDK_PACKAGE } from "../../constants/claude.js";
3
+ import { CLAUDE_BINARY_SUBPATH, PLATFORM_LINUX, SDK_NATIVE_LINUX_PREFIX, SDK_NATIVE_MUSL_SUFFIX, } from "../../constants/native-binary.js";
4
4
  function isGnuLibc() {
5
5
  const report = process.report?.getReport();
6
6
  if (typeof report !== "object" || report === null)
@@ -40,4 +40,4 @@ export function resolveClaudeBinary() {
40
40
  cached = { value: computeClaudeBinary() };
41
41
  return cached.value;
42
42
  }
43
- //# sourceMappingURL=resolve-claude-binary.js.map
43
+ //# sourceMappingURL=resolve-binary.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"resolve-claude-binary.js","sourceRoot":"","sources":["../../src/agent/resolve-claude-binary.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EACL,qBAAqB,EACrB,cAAc,EACd,uBAAuB,EACvB,sBAAsB,GACvB,MAAM,+BAA+B,CAAC;AAMvC,SAAS,SAAS;IAChB,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,SAAS,EAA4B,CAAC;IACrE,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,KAAK,IAAI;QAAE,OAAO,KAAK,CAAC;IAChE,OAAO,MAAM,CAAC,MAAM,EAAE,mBAAmB,KAAK,SAAS,CAAC;AAC1D,CAAC;AAED,SAAS,kBAAkB,CAAC,IAAY;IACtC,MAAM,IAAI,GAAG,GAAG,uBAAuB,GAAG,IAAI,EAAE,CAAC;IACjD,MAAM,IAAI,GAAG,GAAG,IAAI,GAAG,sBAAsB,EAAE,CAAC;IAChD,OAAO,SAAS,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;AACnD,CAAC;AAED,SAAS,cAAc,CAAC,WAAmB;IACzC,IAAI,CAAC;QACH,MAAM,eAAe,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACvD,MAAM,QAAQ,GAAG,eAAe,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC;QAC3D,MAAM,cAAc,GAAG,aAAa,CAAC,QAAQ,CAAC,CAAC;QAC/C,OAAO,cAAc,CAAC,OAAO,CAAC,GAAG,WAAW,GAAG,qBAAqB,EAAE,CAAC,CAAC;IAC1E,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,SAAS,CAAC;IACnB,CAAC;AACH,CAAC;AAED,SAAS,mBAAmB;IAC1B,IAAI,OAAO,CAAC,QAAQ,KAAK,cAAc;QAAE,OAAO,SAAS,CAAC;IAC1D,KAAK,MAAM,WAAW,IAAI,kBAAkB,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;QAC3D,MAAM,QAAQ,GAAG,cAAc,CAAC,WAAW,CAAC,CAAC;QAC7C,IAAI,QAAQ,KAAK,SAAS;YAAE,OAAO,QAAQ,CAAC;IAC9C,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,IAAI,MAAM,GAAyC,IAAI,CAAC;AAExD,MAAM,UAAU,mBAAmB;IACjC,IAAI,MAAM,KAAK,IAAI;QAAE,OAAO,MAAM,CAAC,KAAK,CAAC;IACzC,MAAM,GAAG,EAAE,KAAK,EAAE,mBAAmB,EAAE,EAAE,CAAC;IAC1C,OAAO,MAAM,CAAC,KAAK,CAAC;AACtB,CAAC"}
1
+ {"version":3,"file":"resolve-binary.js","sourceRoot":"","sources":["../../../src/providers/claude/resolve-binary.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAC7D,OAAO,EACL,qBAAqB,EACrB,cAAc,EACd,uBAAuB,EACvB,sBAAsB,GACvB,MAAM,kCAAkC,CAAC;AAM1C,SAAS,SAAS;IAChB,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,SAAS,EAA4B,CAAC;IACrE,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,KAAK,IAAI;QAAE,OAAO,KAAK,CAAC;IAChE,OAAO,MAAM,CAAC,MAAM,EAAE,mBAAmB,KAAK,SAAS,CAAC;AAC1D,CAAC;AAED,SAAS,kBAAkB,CAAC,IAAY;IACtC,MAAM,IAAI,GAAG,GAAG,uBAAuB,GAAG,IAAI,EAAE,CAAC;IACjD,MAAM,IAAI,GAAG,GAAG,IAAI,GAAG,sBAAsB,EAAE,CAAC;IAChD,OAAO,SAAS,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;AACnD,CAAC;AAED,SAAS,cAAc,CAAC,WAAmB;IACzC,IAAI,CAAC;QACH,MAAM,eAAe,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACvD,MAAM,QAAQ,GAAG,eAAe,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC;QAC3D,MAAM,cAAc,GAAG,aAAa,CAAC,QAAQ,CAAC,CAAC;QAC/C,OAAO,cAAc,CAAC,OAAO,CAAC,GAAG,WAAW,GAAG,qBAAqB,EAAE,CAAC,CAAC;IAC1E,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,SAAS,CAAC;IACnB,CAAC;AACH,CAAC;AAED,SAAS,mBAAmB;IAC1B,IAAI,OAAO,CAAC,QAAQ,KAAK,cAAc;QAAE,OAAO,SAAS,CAAC;IAC1D,KAAK,MAAM,WAAW,IAAI,kBAAkB,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;QAC3D,MAAM,QAAQ,GAAG,cAAc,CAAC,WAAW,CAAC,CAAC;QAC7C,IAAI,QAAQ,KAAK,SAAS;YAAE,OAAO,QAAQ,CAAC;IAC9C,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,IAAI,MAAM,GAAyC,IAAI,CAAC;AAExD,MAAM,UAAU,mBAAmB;IACjC,IAAI,MAAM,KAAK,IAAI;QAAE,OAAO,MAAM,CAAC,KAAK,CAAC;IACzC,MAAM,GAAG,EAAE,KAAK,EAAE,mBAAmB,EAAE,EAAE,CAAC;IAC1C,OAAO,MAAM,CAAC,KAAK,CAAC;AACtB,CAAC"}
@@ -0,0 +1,16 @@
1
+ import { MOCK_CLAUDE_FLAG_ENABLED, MOCK_CLAUDE_FLAG_ENV, MOCK_CLAUDE_SDK_RELATIVE, REAL_SDK_PACKAGE, } from "../../constants/claude.js";
2
+ function isMockEnabled() {
3
+ return process.env[MOCK_CLAUDE_FLAG_ENV] === MOCK_CLAUDE_FLAG_ENABLED;
4
+ }
5
+ async function importDynamic(specifier) {
6
+ const opaque = specifier;
7
+ return import(opaque);
8
+ }
9
+ export async function loadSdk() {
10
+ const specifier = isMockEnabled()
11
+ ? MOCK_CLAUDE_SDK_RELATIVE
12
+ : REAL_SDK_PACKAGE;
13
+ const mod = (await importDynamic(specifier));
14
+ return { query: mod.query };
15
+ }
16
+ //# sourceMappingURL=sdk-loader.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sdk-loader.js","sourceRoot":"","sources":["../../../src/providers/claude/sdk-loader.ts"],"names":[],"mappings":"AACA,OAAO,EACL,wBAAwB,EACxB,oBAAoB,EACpB,wBAAwB,EACxB,gBAAgB,GACjB,MAAM,2BAA2B,CAAC;AAMnC,SAAS,aAAa;IACpB,OAAO,OAAO,CAAC,GAAG,CAAC,oBAAoB,CAAC,KAAK,wBAAwB,CAAC;AACxE,CAAC;AAED,KAAK,UAAU,aAAa,CAAC,SAAiB;IAC5C,MAAM,MAAM,GAAW,SAAS,CAAC;IACjC,OAAO,MAAM,CAAC,MAAM,CAAC,CAAC;AACxB,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,OAAO;IAC3B,MAAM,SAAS,GAAG,aAAa,EAAE;QAC/B,CAAC,CAAC,wBAAwB;QAC1B,CAAC,CAAC,gBAAgB,CAAC;IACrB,MAAM,GAAG,GAAG,CAAC,MAAM,aAAa,CAAC,SAAS,CAAC,CAAc,CAAC;IAC1D,OAAO,EAAE,KAAK,EAAE,GAAG,CAAC,KAAK,EAAE,CAAC;AAC9B,CAAC"}
@@ -0,0 +1,7 @@
1
+ import type { RunnerEvent } from "../../agent/runner-events.js";
2
+ import type { CodexNotification } from "./client.js";
3
+ export interface CodexAdapter {
4
+ handle(notification: CodexNotification): RunnerEvent[];
5
+ getChangedPaths(itemId: string): string[];
6
+ }
7
+ export declare function createCodexAdapter(): CodexAdapter;
@@ -0,0 +1,147 @@
1
+ import { CODEX_TURN_FAILED_MESSAGE } from "../../constants/codex.js";
2
+ import { MCP_TOOL_NAME_PREFIX } from "../../constants/mcp.js";
3
+ import { BASH_COMMAND_ARG, EDIT_FILE_PATH_ARG, TOOL_LEXICON, } from "../../constants/tool-lexicon.js";
4
+ const CALL_ID_INDEX_SEPARATOR = ":";
5
+ const FAILED_ITEM_STATUSES = ["failed", "declined"];
6
+ const INTERRUPTED_RESULT = "interrupted";
7
+ const TODO_STATUS_BY_PLAN_STATUS = {
8
+ pending: "pending",
9
+ inProgress: "in_progress",
10
+ completed: "completed",
11
+ };
12
+ function toolUse(callId, toolName, args) {
13
+ return { type: "tool_use", callId, toolName, args };
14
+ }
15
+ function toolResult(callId, result, isError) {
16
+ return { type: "tool_result", callId, result, isError };
17
+ }
18
+ function isFailure(status) {
19
+ return FAILED_ITEM_STATUSES.includes(status);
20
+ }
21
+ function changeCallId(itemId, index) {
22
+ return `${itemId}${CALL_ID_INDEX_SEPARATOR}${index}`;
23
+ }
24
+ function planUpdatedEvents(params, seq) {
25
+ const plan = params.plan ?? [];
26
+ const todos = plan.map((step) => ({
27
+ content: step.step,
28
+ activeForm: step.step,
29
+ status: TODO_STATUS_BY_PLAN_STATUS[step.status] ?? step.status,
30
+ }));
31
+ const callId = `${TOOL_LEXICON.TODO_WRITE}${CALL_ID_INDEX_SEPARATOR}${seq}`;
32
+ return [
33
+ toolUse(callId, TOOL_LEXICON.TODO_WRITE, { todos }),
34
+ toolResult(callId, null, false),
35
+ ];
36
+ }
37
+ function agentMessageDeltaEvents(params) {
38
+ const delta = params.delta ?? "";
39
+ if (delta === "")
40
+ return [];
41
+ return [{ type: "assistant_text_delta", text: delta }];
42
+ }
43
+ function createCallTracker() {
44
+ const openCallIds = new Set();
45
+ function open(callId, toolName, args) {
46
+ openCallIds.add(callId);
47
+ return toolUse(callId, toolName, args);
48
+ }
49
+ function close(callId, result, isError) {
50
+ if (!openCallIds.delete(callId))
51
+ return [];
52
+ return [toolResult(callId, result, isError)];
53
+ }
54
+ function closeMatching(itemId, result, isError) {
55
+ const prefix = `${itemId}${CALL_ID_INDEX_SEPARATOR}`;
56
+ return [...openCallIds]
57
+ .filter((callId) => callId === itemId || callId.startsWith(prefix))
58
+ .flatMap((callId) => close(callId, result, isError));
59
+ }
60
+ return { openCallIds, open, close, closeMatching };
61
+ }
62
+ export function createCodexAdapter() {
63
+ const { openCallIds, open, close, closeMatching } = createCallTracker();
64
+ const changedPathsByItemId = new Map();
65
+ function startCommand(item) {
66
+ return [
67
+ open(item.id, TOOL_LEXICON.BASH, {
68
+ [BASH_COMMAND_ARG]: item.command,
69
+ }),
70
+ ];
71
+ }
72
+ function startFileChange(item) {
73
+ changedPathsByItemId.set(item.id, item.changes.map((change) => change.path));
74
+ return item.changes.map((change, index) => open(changeCallId(item.id, index), TOOL_LEXICON.EDIT, {
75
+ [EDIT_FILE_PATH_ARG]: change.path,
76
+ }));
77
+ }
78
+ function startMcpToolCall(item) {
79
+ return [
80
+ open(item.id, `${MCP_TOOL_NAME_PREFIX}${item.tool}`, item.arguments ?? null),
81
+ ];
82
+ }
83
+ function completeCommand(item) {
84
+ return close(item.id, { output: item.aggregatedOutput, exitCode: item.exitCode }, isFailure(item.status));
85
+ }
86
+ function completeFileChange(item) {
87
+ const failed = isFailure(item.status);
88
+ const paired = item.changes.flatMap((change, index) => close(changeCallId(item.id, index), { diff: change.diff }, failed));
89
+ return [...paired, ...closeMatching(item.id, null, failed)];
90
+ }
91
+ function completeMcpToolCall(item) {
92
+ const failed = item.error !== null || isFailure(item.status);
93
+ return close(item.id, item.error ?? item.result, failed);
94
+ }
95
+ function completeAgentMessage(item) {
96
+ if (item.text === "")
97
+ return [];
98
+ return [{ type: "assistant_text", text: item.text }];
99
+ }
100
+ const START_HANDLERS = {
101
+ commandExecution: startCommand,
102
+ fileChange: startFileChange,
103
+ mcpToolCall: startMcpToolCall,
104
+ };
105
+ const COMPLETE_HANDLERS = {
106
+ commandExecution: completeCommand,
107
+ fileChange: completeFileChange,
108
+ mcpToolCall: completeMcpToolCall,
109
+ agentMessage: completeAgentMessage,
110
+ };
111
+ function applyItemHandler(handlers, params) {
112
+ const item = params.item;
113
+ if (item?.type === undefined)
114
+ return [];
115
+ const handler = handlers[item.type];
116
+ if (handler === undefined)
117
+ return [];
118
+ return handler(item);
119
+ }
120
+ function handleTurnCompleted(params) {
121
+ const turn = params.turn;
122
+ const status = turn?.status ?? "completed";
123
+ const orphans = [...openCallIds].flatMap((callId) => close(callId, INTERRUPTED_RESULT, true));
124
+ if (status === "failed") {
125
+ const message = turn?.error?.message ?? CODEX_TURN_FAILED_MESSAGE;
126
+ return [...orphans, { type: "error", message }, { type: "done" }];
127
+ }
128
+ return [...orphans, { type: "done" }];
129
+ }
130
+ const HANDLERS = {
131
+ "item/started": (params) => applyItemHandler(START_HANDLERS, params),
132
+ "item/completed": (params) => applyItemHandler(COMPLETE_HANDLERS, params),
133
+ "item/agentMessage/delta": agentMessageDeltaEvents,
134
+ "turn/plan/updated": (params) => planUpdatedEvents(params, openCallIds.size),
135
+ "turn/completed": handleTurnCompleted,
136
+ };
137
+ return {
138
+ getChangedPaths: (itemId) => changedPathsByItemId.get(itemId) ?? [],
139
+ handle(notification) {
140
+ const handler = HANDLERS[notification.method];
141
+ if (handler === undefined)
142
+ return [];
143
+ return handler(notification.params);
144
+ },
145
+ };
146
+ }
147
+ //# sourceMappingURL=adapter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"adapter.js","sourceRoot":"","sources":["../../../src/providers/codex/adapter.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,7 @@
1
+ import type { AttachmentType } from "../../protocol/messages.js";
2
+ import type { v2 } from "./protocol/index.js";
3
+ export interface CodexAttachmentContext {
4
+ hostProjectRoot: string;
5
+ conversationId: string;
6
+ }
7
+ export declare function buildCodexTurnInput(text: string, attachments: readonly AttachmentType[], ctx: CodexAttachmentContext): Promise<v2.UserInput[]>;