@cydm/happy-elves 0.1.0-beta.31 → 0.1.0-beta.310

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 (342) hide show
  1. package/apps/cli/dist/commands/app.js +10 -0
  2. package/apps/cli/dist/commands/daemon.js +92 -4
  3. package/apps/cli/dist/commands/gateway.d.ts +2 -0
  4. package/apps/cli/dist/commands/gateway.js +429 -0
  5. package/apps/cli/dist/commands/lib/args.js +49 -0
  6. package/apps/cli/dist/commands/lib/bootstrap-daemon.d.ts +2 -2
  7. package/apps/cli/dist/commands/lib/bootstrap-daemon.js +2 -2
  8. package/apps/cli/dist/commands/lib/doctor.d.ts +11 -0
  9. package/apps/cli/dist/commands/lib/doctor.js +276 -11
  10. package/apps/cli/dist/commands/lib/gateway-store.d.ts +38 -0
  11. package/apps/cli/dist/commands/lib/gateway-store.js +33 -0
  12. package/apps/cli/dist/commands/lib/index.d.ts +4 -2
  13. package/apps/cli/dist/commands/lib/index.js +2 -0
  14. package/apps/cli/dist/commands/lib/json.d.ts +2 -2
  15. package/apps/cli/dist/commands/lib/json.js +5 -2
  16. package/apps/cli/dist/commands/lib/local-daemon.d.ts +1 -0
  17. package/apps/cli/dist/commands/lib/local-daemon.js +14 -0
  18. package/apps/cli/dist/commands/lib/paths.d.ts +2 -0
  19. package/apps/cli/dist/commands/lib/paths.js +2 -0
  20. package/apps/cli/dist/commands/lib/relay-db-audit.d.ts +37 -0
  21. package/apps/cli/dist/commands/lib/relay-db-audit.js +300 -0
  22. package/apps/cli/dist/commands/lib/relay-http.d.ts +1 -1
  23. package/apps/cli/dist/commands/lib/scope.d.ts +1 -1
  24. package/apps/cli/dist/commands/lib/session-output.d.ts +15 -1
  25. package/apps/cli/dist/commands/lib/session-output.js +214 -6
  26. package/apps/cli/dist/commands/lib/session-view.d.ts +2 -2
  27. package/apps/cli/dist/commands/lib/status.js +5 -1
  28. package/apps/cli/dist/commands/lib/types.d.ts +4 -2
  29. package/apps/cli/dist/commands/lib/usage.js +123 -10
  30. package/apps/cli/dist/commands/lib/workspace.d.ts +2 -2
  31. package/apps/cli/dist/commands/lib/workspace.js +63 -10
  32. package/apps/cli/dist/commands/machine.js +50 -9
  33. package/apps/cli/dist/commands/memory.d.ts +2 -0
  34. package/apps/cli/dist/commands/memory.js +179 -0
  35. package/apps/cli/dist/commands/relay.js +29 -2
  36. package/apps/cli/dist/commands/release.d.ts +2 -0
  37. package/apps/cli/dist/commands/release.js +197 -0
  38. package/apps/cli/dist/commands/remote.js +10 -2
  39. package/apps/cli/dist/commands/schedule.d.ts +2 -0
  40. package/apps/cli/dist/commands/schedule.js +273 -0
  41. package/apps/cli/dist/commands/session.js +517 -5
  42. package/apps/cli/dist/commands/turn.js +225 -9
  43. package/apps/cli/dist/commands/workspace.d.ts +2 -0
  44. package/apps/cli/dist/commands/workspace.js +68 -0
  45. package/apps/cli/package.json +6 -0
  46. package/apps/daemon/dist/gateway/adapters.d.ts +38 -0
  47. package/apps/daemon/dist/gateway/adapters.js +2 -0
  48. package/apps/daemon/dist/gateway/feishu.d.ts +65 -0
  49. package/apps/daemon/dist/gateway/feishu.js +493 -0
  50. package/apps/daemon/dist/gateway/format.d.ts +2 -0
  51. package/apps/daemon/dist/gateway/format.js +19 -0
  52. package/apps/daemon/dist/gateway/handler.d.ts +7 -0
  53. package/apps/daemon/dist/gateway/handler.js +151 -0
  54. package/apps/daemon/dist/gateway/runtime.d.ts +33 -0
  55. package/apps/daemon/dist/gateway/runtime.js +850 -0
  56. package/apps/daemon/dist/gateway/store.d.ts +92 -0
  57. package/apps/daemon/dist/gateway/store.js +268 -0
  58. package/apps/daemon/dist/memory/handler.d.ts +7 -0
  59. package/apps/daemon/dist/memory/handler.js +105 -0
  60. package/apps/daemon/dist/memory/manager.d.ts +44 -0
  61. package/apps/daemon/dist/memory/manager.js +359 -0
  62. package/apps/daemon/dist/paths.d.ts +3 -0
  63. package/apps/daemon/dist/paths.js +3 -0
  64. package/apps/daemon/dist/relay/admission.d.ts +30 -0
  65. package/apps/daemon/dist/relay/admission.js +31 -0
  66. package/apps/daemon/dist/relay/connection.js +37 -1
  67. package/apps/daemon/dist/relay/devtools.d.ts +1 -1
  68. package/apps/daemon/dist/relay/register.js +2 -0
  69. package/apps/daemon/dist/relay/send.d.ts +2 -2
  70. package/apps/daemon/dist/relay/send.js +2 -0
  71. package/apps/daemon/dist/relay-http.d.ts +1 -1
  72. package/apps/daemon/dist/runtime/external-provider.d.ts +1 -1
  73. package/apps/daemon/dist/runtime/external-provider.js +187 -17
  74. package/apps/daemon/dist/runtime.d.ts +1 -2
  75. package/apps/daemon/dist/runtime.js +0 -3
  76. package/apps/daemon/dist/schedule/handler.d.ts +9 -0
  77. package/apps/daemon/dist/schedule/handler.js +148 -0
  78. package/apps/daemon/dist/schedule/runner.d.ts +21 -0
  79. package/apps/daemon/dist/schedule/runner.js +547 -0
  80. package/apps/daemon/dist/schedule/store.d.ts +9 -0
  81. package/apps/daemon/dist/schedule/store.js +143 -0
  82. package/apps/daemon/dist/session/create-session.d.ts +1 -1
  83. package/apps/daemon/dist/session/directory.d.ts +1 -1
  84. package/apps/daemon/dist/session/events.d.ts +15 -2
  85. package/apps/daemon/dist/session/events.js +76 -24
  86. package/apps/daemon/dist/session/file-preview.d.ts +1 -1
  87. package/apps/daemon/dist/session/lifecycle.d.ts +26 -3
  88. package/apps/daemon/dist/session/lifecycle.js +161 -22
  89. package/apps/daemon/dist/session/metadata.d.ts +2 -2
  90. package/apps/daemon/dist/session/metadata.js +42 -1
  91. package/apps/daemon/dist/session/primitives.d.ts +1 -1
  92. package/apps/daemon/dist/session/primitives.js +37 -6
  93. package/apps/daemon/dist/session/prompt.d.ts +28 -1
  94. package/apps/daemon/dist/session/prompt.js +340 -5
  95. package/apps/daemon/dist/session/reconcile.d.ts +3 -0
  96. package/apps/daemon/dist/session/reconcile.js +235 -0
  97. package/apps/daemon/dist/session/runtime-handle.d.ts +1 -1
  98. package/apps/daemon/dist/start.js +5 -1
  99. package/apps/daemon/dist/state.d.ts +2 -2
  100. package/apps/daemon/dist/turn-coordinator.d.ts +1 -0
  101. package/apps/daemon/dist/turn-coordinator.js +4 -0
  102. package/apps/daemon/dist/types.d.ts +16 -1
  103. package/apps/daemon/package.json +3 -25
  104. package/apps/relay/dist/connections.d.ts +2 -0
  105. package/apps/relay/dist/controller-handlers.d.ts +42 -2
  106. package/apps/relay/dist/controller-handlers.js +349 -37
  107. package/apps/relay/dist/db.js +296 -2
  108. package/apps/relay/dist/errors.d.ts +2 -1
  109. package/apps/relay/dist/errors.js +3 -1
  110. package/apps/relay/dist/http-routes.js +659 -33
  111. package/apps/relay/dist/http-schemas.d.ts +156 -0
  112. package/apps/relay/dist/http-schemas.js +85 -0
  113. package/apps/relay/dist/index.js +31 -1
  114. package/apps/relay/dist/machine-handlers.d.ts +15 -7
  115. package/apps/relay/dist/machine-handlers.js +567 -27
  116. package/apps/relay/dist/projections.d.ts +1 -1
  117. package/apps/relay/dist/projections.js +13 -0
  118. package/apps/relay/dist/relay-context.d.ts +41 -3
  119. package/apps/relay/dist/relay-context.js +244 -19
  120. package/apps/relay/dist/repositories.d.ts +2 -2
  121. package/apps/relay/dist/repositories.js +28 -1
  122. package/apps/relay/dist/runtime-bindings.d.ts +25 -0
  123. package/apps/relay/dist/runtime-bindings.js +49 -0
  124. package/apps/relay/dist/scope.d.ts +1 -1
  125. package/apps/relay/dist/types.d.ts +71 -1
  126. package/apps/relay/dist/websocket.js +2 -0
  127. package/package.json +5 -11
  128. package/packages/agent-sdk/dist/index.d.ts +80 -0
  129. package/packages/agent-sdk/dist/index.js +16 -0
  130. package/packages/client/dist/account.d.ts +35 -2
  131. package/packages/client/dist/account.js +98 -1
  132. package/packages/client/dist/client.d.ts +59 -6
  133. package/packages/client/dist/client.js +312 -58
  134. package/packages/client/dist/index.d.ts +1 -1
  135. package/packages/client/dist/parsers.d.ts +28 -2
  136. package/packages/client/dist/parsers.js +167 -0
  137. package/packages/client/dist/transport.d.ts +21 -1
  138. package/packages/client/dist/transport.js +69 -6
  139. package/packages/client/dist/types.d.ts +177 -1
  140. package/packages/client/dist/validation.d.ts +1 -1
  141. package/packages/runtime/dist/index.d.ts +66 -0
  142. package/packages/runtime-acpx/dist/index.d.ts +1 -1
  143. package/packages/runtime-acpx/dist/index.js +8 -0
  144. package/packages/runtime-cli/dist/claude-history.d.ts +1 -2
  145. package/packages/runtime-cli/dist/claude-history.js +0 -3
  146. package/packages/runtime-cli/dist/claude-session-store.d.ts +0 -1
  147. package/packages/runtime-cli/dist/claude-session-store.js +1 -1
  148. package/packages/runtime-cli/dist/claude-turn.d.ts +2 -1
  149. package/packages/runtime-cli/dist/claude-turn.js +29 -9
  150. package/packages/runtime-cli/dist/codex-app-server.d.ts +8 -3
  151. package/packages/runtime-cli/dist/codex-app-server.js +122 -25
  152. package/packages/runtime-cli/dist/codex-history.d.ts +1 -2
  153. package/packages/runtime-cli/dist/codex-history.js +11 -5
  154. package/packages/runtime-cli/dist/codex-protocol.d.ts +2 -2
  155. package/packages/runtime-cli/dist/codex-protocol.js +4 -4
  156. package/packages/runtime-cli/dist/history-merge.d.ts +1 -1
  157. package/packages/runtime-cli/dist/index.d.ts +1 -1
  158. package/packages/runtime-cli/dist/index.js +108 -2
  159. package/packages/runtime-cli/dist/permissions.d.ts +1 -1
  160. package/packages/runtime-cli/dist/session-store.d.ts +2 -1
  161. package/packages/runtime-cli/dist/session-store.js +9 -8
  162. package/packages/shared/dist/index.d.ts +2 -0
  163. package/packages/shared/dist/index.js +2 -0
  164. package/packages/shared/dist/protocol-schemas.d.ts +1077 -0
  165. package/packages/shared/dist/protocol-schemas.js +273 -0
  166. package/packages/shared/dist/protocol-types.d.ts +371 -3
  167. package/packages/shared/dist/protocol.d.ts +181 -2
  168. package/packages/shared/dist/protocol.js +197 -1
  169. package/packages/shared/dist/session-tags.d.ts +12 -0
  170. package/packages/shared/dist/session-tags.js +50 -0
  171. package/apps/cli/dist/commands/account.js.map +0 -1
  172. package/apps/cli/dist/commands/app.js.map +0 -1
  173. package/apps/cli/dist/commands/collect.js.map +0 -1
  174. package/apps/cli/dist/commands/command.js.map +0 -1
  175. package/apps/cli/dist/commands/config.js.map +0 -1
  176. package/apps/cli/dist/commands/daemon.js.map +0 -1
  177. package/apps/cli/dist/commands/lib/args.js.map +0 -1
  178. package/apps/cli/dist/commands/lib/audit.js.map +0 -1
  179. package/apps/cli/dist/commands/lib/bootstrap-config.js.map +0 -1
  180. package/apps/cli/dist/commands/lib/bootstrap-daemon.js.map +0 -1
  181. package/apps/cli/dist/commands/lib/bootstrap-output.js.map +0 -1
  182. package/apps/cli/dist/commands/lib/bootstrap.js.map +0 -1
  183. package/apps/cli/dist/commands/lib/config.js.map +0 -1
  184. package/apps/cli/dist/commands/lib/doctor.js.map +0 -1
  185. package/apps/cli/dist/commands/lib/exit.js.map +0 -1
  186. package/apps/cli/dist/commands/lib/index.js.map +0 -1
  187. package/apps/cli/dist/commands/lib/json.js.map +0 -1
  188. package/apps/cli/dist/commands/lib/local-daemon.js.map +0 -1
  189. package/apps/cli/dist/commands/lib/loop-store.js.map +0 -1
  190. package/apps/cli/dist/commands/lib/paths.js.map +0 -1
  191. package/apps/cli/dist/commands/lib/relay-http.js.map +0 -1
  192. package/apps/cli/dist/commands/lib/scope.js.map +0 -1
  193. package/apps/cli/dist/commands/lib/session-output.js.map +0 -1
  194. package/apps/cli/dist/commands/lib/session-view.js.map +0 -1
  195. package/apps/cli/dist/commands/lib/status.js.map +0 -1
  196. package/apps/cli/dist/commands/lib/types.js.map +0 -1
  197. package/apps/cli/dist/commands/lib/usage.js.map +0 -1
  198. package/apps/cli/dist/commands/lib/workspace.js.map +0 -1
  199. package/apps/cli/dist/commands/loop.js.map +0 -1
  200. package/apps/cli/dist/commands/machine.js.map +0 -1
  201. package/apps/cli/dist/commands/relay.js.map +0 -1
  202. package/apps/cli/dist/commands/remote.js.map +0 -1
  203. package/apps/cli/dist/commands/session.js.map +0 -1
  204. package/apps/cli/dist/commands/token.js.map +0 -1
  205. package/apps/cli/dist/commands/turn.js.map +0 -1
  206. package/apps/cli/dist/errors.js.map +0 -1
  207. package/apps/cli/dist/index.js.map +0 -1
  208. package/apps/daemon/dist/app.js.map +0 -1
  209. package/apps/daemon/dist/args.js.map +0 -1
  210. package/apps/daemon/dist/audit.js.map +0 -1
  211. package/apps/daemon/dist/cli.js.map +0 -1
  212. package/apps/daemon/dist/config.js.map +0 -1
  213. package/apps/daemon/dist/errors.js.map +0 -1
  214. package/apps/daemon/dist/loop/runner.js.map +0 -1
  215. package/apps/daemon/dist/loop/store.js.map +0 -1
  216. package/apps/daemon/dist/pair.js.map +0 -1
  217. package/apps/daemon/dist/paths.js.map +0 -1
  218. package/apps/daemon/dist/process.js.map +0 -1
  219. package/apps/daemon/dist/relay/connection.js.map +0 -1
  220. package/apps/daemon/dist/relay/devtools.js.map +0 -1
  221. package/apps/daemon/dist/relay/register.js.map +0 -1
  222. package/apps/daemon/dist/relay/send.js.map +0 -1
  223. package/apps/daemon/dist/relay-http.js.map +0 -1
  224. package/apps/daemon/dist/runtime/external-provider.js.map +0 -1
  225. package/apps/daemon/dist/runtime.js.map +0 -1
  226. package/apps/daemon/dist/session/create-session.js.map +0 -1
  227. package/apps/daemon/dist/session/directory.js.map +0 -1
  228. package/apps/daemon/dist/session/events.js.map +0 -1
  229. package/apps/daemon/dist/session/file-preview.js.map +0 -1
  230. package/apps/daemon/dist/session/lifecycle.js.map +0 -1
  231. package/apps/daemon/dist/session/metadata.js.map +0 -1
  232. package/apps/daemon/dist/session/primitives.js.map +0 -1
  233. package/apps/daemon/dist/session/prompt.js.map +0 -1
  234. package/apps/daemon/dist/session/runtime-handle.js.map +0 -1
  235. package/apps/daemon/dist/start.js.map +0 -1
  236. package/apps/daemon/dist/state.js.map +0 -1
  237. package/apps/daemon/dist/turn-coordinator.js.map +0 -1
  238. package/apps/daemon/dist/types.js.map +0 -1
  239. package/apps/daemon/dist/utils.js.map +0 -1
  240. package/apps/relay/dist/auth.js.map +0 -1
  241. package/apps/relay/dist/connections.js.map +0 -1
  242. package/apps/relay/dist/controller-handlers.js.map +0 -1
  243. package/apps/relay/dist/db.js.map +0 -1
  244. package/apps/relay/dist/errors.js.map +0 -1
  245. package/apps/relay/dist/http-routes.js.map +0 -1
  246. package/apps/relay/dist/http-schemas.js.map +0 -1
  247. package/apps/relay/dist/index.js.map +0 -1
  248. package/apps/relay/dist/machine-handlers.js.map +0 -1
  249. package/apps/relay/dist/projections.js.map +0 -1
  250. package/apps/relay/dist/relay-context.js.map +0 -1
  251. package/apps/relay/dist/repositories.js.map +0 -1
  252. package/apps/relay/dist/retention.js.map +0 -1
  253. package/apps/relay/dist/scope.js.map +0 -1
  254. package/apps/relay/dist/security.js.map +0 -1
  255. package/apps/relay/dist/types.js.map +0 -1
  256. package/apps/relay/dist/websocket.js.map +0 -1
  257. package/apps/relay/package.json +0 -29
  258. package/packages/agent-sdk/dist/index.d.ts.map +0 -1
  259. package/packages/agent-sdk/dist/index.js.map +0 -1
  260. package/packages/agent-sdk/package.json +0 -20
  261. package/packages/client/dist/account.d.ts.map +0 -1
  262. package/packages/client/dist/account.js.map +0 -1
  263. package/packages/client/dist/client.d.ts.map +0 -1
  264. package/packages/client/dist/client.js.map +0 -1
  265. package/packages/client/dist/errors.d.ts.map +0 -1
  266. package/packages/client/dist/errors.js.map +0 -1
  267. package/packages/client/dist/http.d.ts.map +0 -1
  268. package/packages/client/dist/http.js.map +0 -1
  269. package/packages/client/dist/index.d.ts.map +0 -1
  270. package/packages/client/dist/index.js.map +0 -1
  271. package/packages/client/dist/parsers.d.ts.map +0 -1
  272. package/packages/client/dist/parsers.js.map +0 -1
  273. package/packages/client/dist/transport.d.ts.map +0 -1
  274. package/packages/client/dist/transport.js.map +0 -1
  275. package/packages/client/dist/types.d.ts.map +0 -1
  276. package/packages/client/dist/types.js.map +0 -1
  277. package/packages/client/dist/validation.d.ts.map +0 -1
  278. package/packages/client/dist/validation.js.map +0 -1
  279. package/packages/client/package.json +0 -22
  280. package/packages/pie-provider/dist/index.d.ts.map +0 -1
  281. package/packages/pie-provider/dist/index.js.map +0 -1
  282. package/packages/pie-provider/package.json +0 -26
  283. package/packages/runtime/dist/index.d.ts.map +0 -1
  284. package/packages/runtime/dist/index.js.map +0 -1
  285. package/packages/runtime/package.json +0 -19
  286. package/packages/runtime-acpx/dist/index.d.ts.map +0 -1
  287. package/packages/runtime-acpx/dist/index.js.map +0 -1
  288. package/packages/runtime-acpx/package.json +0 -23
  289. package/packages/runtime-cli/dist/async-queue.d.ts.map +0 -1
  290. package/packages/runtime-cli/dist/async-queue.js.map +0 -1
  291. package/packages/runtime-cli/dist/claude-history.d.ts.map +0 -1
  292. package/packages/runtime-cli/dist/claude-history.js.map +0 -1
  293. package/packages/runtime-cli/dist/claude-json.d.ts.map +0 -1
  294. package/packages/runtime-cli/dist/claude-json.js.map +0 -1
  295. package/packages/runtime-cli/dist/claude-rename.d.ts.map +0 -1
  296. package/packages/runtime-cli/dist/claude-rename.js.map +0 -1
  297. package/packages/runtime-cli/dist/claude-session-store.d.ts.map +0 -1
  298. package/packages/runtime-cli/dist/claude-session-store.js.map +0 -1
  299. package/packages/runtime-cli/dist/claude-turn.d.ts.map +0 -1
  300. package/packages/runtime-cli/dist/claude-turn.js.map +0 -1
  301. package/packages/runtime-cli/dist/codex-app-server.d.ts.map +0 -1
  302. package/packages/runtime-cli/dist/codex-app-server.js.map +0 -1
  303. package/packages/runtime-cli/dist/codex-approvals.d.ts.map +0 -1
  304. package/packages/runtime-cli/dist/codex-approvals.js.map +0 -1
  305. package/packages/runtime-cli/dist/codex-history.d.ts.map +0 -1
  306. package/packages/runtime-cli/dist/codex-history.js.map +0 -1
  307. package/packages/runtime-cli/dist/codex-json-rpc.d.ts.map +0 -1
  308. package/packages/runtime-cli/dist/codex-json-rpc.js.map +0 -1
  309. package/packages/runtime-cli/dist/codex-lifecycle.d.ts.map +0 -1
  310. package/packages/runtime-cli/dist/codex-lifecycle.js.map +0 -1
  311. package/packages/runtime-cli/dist/codex-protocol.d.ts.map +0 -1
  312. package/packages/runtime-cli/dist/codex-protocol.js.map +0 -1
  313. package/packages/runtime-cli/dist/command-resolver.d.ts.map +0 -1
  314. package/packages/runtime-cli/dist/command-resolver.js.map +0 -1
  315. package/packages/runtime-cli/dist/history-merge.d.ts.map +0 -1
  316. package/packages/runtime-cli/dist/history-merge.js.map +0 -1
  317. package/packages/runtime-cli/dist/index.d.ts.map +0 -1
  318. package/packages/runtime-cli/dist/index.js.map +0 -1
  319. package/packages/runtime-cli/dist/permissions.d.ts.map +0 -1
  320. package/packages/runtime-cli/dist/permissions.js.map +0 -1
  321. package/packages/runtime-cli/dist/session-store.d.ts.map +0 -1
  322. package/packages/runtime-cli/dist/session-store.js.map +0 -1
  323. package/packages/runtime-cli/package.json +0 -22
  324. package/packages/shared/dist/args.d.ts.map +0 -1
  325. package/packages/shared/dist/args.js.map +0 -1
  326. package/packages/shared/dist/crypto.d.ts.map +0 -1
  327. package/packages/shared/dist/crypto.js.map +0 -1
  328. package/packages/shared/dist/ids.d.ts.map +0 -1
  329. package/packages/shared/dist/ids.js.map +0 -1
  330. package/packages/shared/dist/index.d.ts.map +0 -1
  331. package/packages/shared/dist/index.js.map +0 -1
  332. package/packages/shared/dist/protocol-schemas.d.ts.map +0 -1
  333. package/packages/shared/dist/protocol-schemas.js.map +0 -1
  334. package/packages/shared/dist/protocol-types.d.ts.map +0 -1
  335. package/packages/shared/dist/protocol-types.js.map +0 -1
  336. package/packages/shared/dist/protocol.d.ts.map +0 -1
  337. package/packages/shared/dist/protocol.js.map +0 -1
  338. package/packages/shared/dist/session-name.d.ts.map +0 -1
  339. package/packages/shared/dist/session-name.js.map +0 -1
  340. package/packages/shared/dist/session-state.d.ts.map +0 -1
  341. package/packages/shared/dist/session-state.js.map +0 -1
  342. package/packages/shared/package.json +0 -24
@@ -2,9 +2,9 @@ import { codexApprovalPolicy, codexSandbox } from "./permissions.js";
2
2
  export function normalizeCodexPermissionMode(mode) {
3
3
  return mode ?? "approve-reads";
4
4
  }
5
- export function codexThreadStartParams(cwd, permissionMode) {
5
+ export function codexThreadStartParams(cwd, permissionMode, model) {
6
6
  return {
7
- model: null,
7
+ model: model || null,
8
8
  modelProvider: null,
9
9
  profile: null,
10
10
  cwd,
@@ -19,11 +19,11 @@ export function codexThreadStartParams(cwd, permissionMode) {
19
19
  persistExtendedHistory: true,
20
20
  };
21
21
  }
22
- export function codexThreadResumeParams(threadId, cwd, permissionMode) {
22
+ export function codexThreadResumeParams(threadId, cwd, permissionMode, model) {
23
23
  return {
24
24
  threadId,
25
25
  cwd,
26
- model: null,
26
+ model: model || null,
27
27
  modelProvider: null,
28
28
  approvalPolicy: codexApprovalPolicy(permissionMode),
29
29
  sandbox: codexSandbox(permissionMode),
@@ -1,4 +1,4 @@
1
- import type { RuntimeHistoricalSessionPage } from "@happy-elves/runtime";
1
+ import type { RuntimeHistoricalSessionPage } from "../../runtime/dist/index.js";
2
2
  export type HistoricalSessionSource = {
3
3
  id: string;
4
4
  load(cursor: string | undefined, limit: number): Promise<RuntimeHistoricalSessionPage>;
@@ -1,4 +1,4 @@
1
- import type { HappyElvesRuntime } from "@happy-elves/runtime";
1
+ import type { HappyElvesRuntime } from "../../runtime/dist/index.js";
2
2
  export { resolveCliCommand } from "./command-resolver.js";
3
3
  export { HistoryCursorStaleError, isHistoryCursorStaleError, mergeHistoricalSessionSources, type HistoricalSessionSource } from "./history-merge.js";
4
4
  export type CliRuntimeProviderOptions = {
@@ -73,8 +73,8 @@ export function createCliRuntimeProvider(options) {
73
73
  },
74
74
  listAgents() {
75
75
  return [
76
- { id: "codex", label: "Codex" },
77
- { id: "claude", label: "Claude Code" },
76
+ { id: "codex", label: "Codex", ...agentModelsFromEnv("HAPPY_ELVES_CODEX") },
77
+ { id: "claude", label: "Claude Code", ...agentModelsFromEnv("HAPPY_ELVES_CLAUDE") },
78
78
  ];
79
79
  },
80
80
  async ensureSession(input) {
@@ -95,8 +95,49 @@ export function createCliRuntimeProvider(options) {
95
95
  return await readCodexHistoricalEvents(codexCommand, cwd, input.runtimeSessionId);
96
96
  return [];
97
97
  },
98
+ async inspectTurn(input) {
99
+ assertNotExternalProviderHandle(input.handle);
100
+ const agent = input.handle.runtimeSessionName;
101
+ if (agent !== "codex" && agent !== "claude") {
102
+ return {
103
+ status: "uninspectable",
104
+ reason: `CLI runtime cannot inspect ${agent || "unknown"} sessions`,
105
+ evidence: "unsupported-agent",
106
+ };
107
+ }
108
+ const runtimeSessionId = input.handle.backendSessionId;
109
+ if (!runtimeSessionId) {
110
+ return {
111
+ status: "uninspectable",
112
+ reason: "Runtime handle is missing backendSessionId",
113
+ evidence: "missing-backend-session-id",
114
+ };
115
+ }
116
+ const cwd = input.handle.cwd || options.cwd;
117
+ try {
118
+ const events = agent === "claude"
119
+ ? await readClaudeHistoricalEvents(cwd, runtimeSessionId)
120
+ : await readCodexHistoricalEvents(codexCommand, cwd, runtimeSessionId);
121
+ return inspectHistoricalEvents(events, {
122
+ turnId: input.turnId,
123
+ providerTurnId: input.providerTurnId,
124
+ fallbackProviderTurnId: runtimeSessionId,
125
+ });
126
+ }
127
+ catch (error) {
128
+ return {
129
+ status: "unknown",
130
+ providerTurnId: input.providerTurnId ?? runtimeSessionId,
131
+ reason: error instanceof Error ? error.message : String(error),
132
+ evidence: "provider-history-error",
133
+ };
134
+ }
135
+ },
98
136
  startTurn(input) {
99
137
  assertNotExternalProviderHandle(input.handle);
138
+ if (input.attachments && input.attachments.length > 0) {
139
+ throw new Error("CLI runtime does not support binary prompt attachments yet. Text attachments are inlined before runtime start; use an external provider with attachment support for images or binary files.");
140
+ }
100
141
  const session = sessions.get(input.handle.sessionKey);
101
142
  if (!session)
102
143
  throw new Error(`Runtime session is not loaded: ${input.handle.sessionKey}`);
@@ -109,6 +150,7 @@ export function createCliRuntimeProvider(options) {
109
150
  timeoutMs: input.timeoutMs,
110
151
  mode: input.mode,
111
152
  permissionMode: input.permissionMode,
153
+ model: input.model ?? input.handle.model,
112
154
  });
113
155
  }
114
156
  const turn = startClaudeTurn({
@@ -118,6 +160,7 @@ export function createCliRuntimeProvider(options) {
118
160
  requestId: input.requestId,
119
161
  timeoutMs: input.timeoutMs,
120
162
  permissionMode: input.permissionMode,
163
+ model: input.model ?? input.handle.model,
121
164
  resume: session.claudeStarted === true,
122
165
  name: session.pendingClaudeName,
123
166
  });
@@ -232,6 +275,45 @@ function assertNotExternalProviderHandle(handle) {
232
275
  const provider = handle.externalProviderId || handle.runtimeSessionName || "external";
233
276
  throw new Error(`External provider ${provider} is unavailable. Start the daemon with that provider enabled before continuing this session.`);
234
277
  }
278
+ function inspectHistoricalEvents(events, input) {
279
+ const candidates = new Set([input.turnId, input.providerTurnId].filter((value) => typeof value === "string" && value.length > 0));
280
+ const providerTurnId = input.providerTurnId ?? input.fallbackProviderTurnId;
281
+ const relevant = candidates.size === 0
282
+ ? events
283
+ : events.filter((event) => {
284
+ if (candidates.has(event.turnId))
285
+ return true;
286
+ if (event.payload.type !== "done")
287
+ return false;
288
+ return Boolean((event.payload.currentHead && candidates.has(event.payload.currentHead)) ||
289
+ (event.payload.lastTurnId && candidates.has(event.payload.lastTurnId)));
290
+ });
291
+ if (relevant.length === 0) {
292
+ return {
293
+ status: "not_found",
294
+ providerTurnId,
295
+ reason: "No provider history event matched the requested turn",
296
+ evidence: "provider-history-empty",
297
+ };
298
+ }
299
+ const done = [...relevant].reverse().find((event) => event.payload.type === "done");
300
+ if (done?.payload.type === "done") {
301
+ return {
302
+ status: "terminal",
303
+ terminalStatus: done.payload.status,
304
+ currentHead: done.payload.currentHead,
305
+ lastTurnId: done.payload.lastTurnId ?? done.turnId,
306
+ providerTurnId: done.payload.lastTurnId ?? done.payload.currentHead ?? providerTurnId,
307
+ error: done.payload.error,
308
+ evidence: "provider-history-terminal",
309
+ };
310
+ }
311
+ return {
312
+ status: "active",
313
+ providerTurnId,
314
+ evidence: "provider-history-nonterminal-events",
315
+ };
316
+ }
235
317
  function withLoadedSessionIds(page, loadedByBackendId) {
236
318
  return {
237
319
  ...page,
@@ -241,4 +323,28 @@ function withLoadedSessionIds(page, loadedByBackendId) {
241
323
  })),
242
324
  };
243
325
  }
326
+ function agentModelsFromEnv(prefix) {
327
+ const defaultModel = process.env[`${prefix}_DEFAULT_MODEL`]?.trim() || undefined;
328
+ const models = modelOptionsFromEnv(process.env[`${prefix}_MODELS`]);
329
+ return {
330
+ ...(defaultModel ? { defaultModel } : {}),
331
+ ...(models.length > 0 ? { models } : {}),
332
+ };
333
+ }
334
+ function modelOptionsFromEnv(value) {
335
+ const seen = new Set();
336
+ return (value ?? "")
337
+ .split(",")
338
+ .map((raw) => raw.trim())
339
+ .filter(Boolean)
340
+ .flatMap((raw) => {
341
+ const [idPart, labelPart] = raw.split("=", 2);
342
+ const id = idPart.trim();
343
+ if (!id || seen.has(id))
344
+ return [];
345
+ seen.add(id);
346
+ const label = labelPart?.trim();
347
+ return [{ id, ...(label ? { label } : {}) }];
348
+ });
349
+ }
244
350
  //# sourceMappingURL=index.js.map
@@ -1,4 +1,4 @@
1
- import type { RuntimePermissionMode } from "@happy-elves/runtime";
1
+ import type { RuntimePermissionMode } from "../../runtime/dist/index.js";
2
2
  export type { RuntimePermissionMode };
3
3
  export declare function codexApprovalPolicy(mode?: RuntimePermissionMode): string;
4
4
  export declare function codexSandbox(mode?: RuntimePermissionMode): string;
@@ -1,4 +1,4 @@
1
- import type { RuntimeHandle, RuntimePermissionMode } from "@happy-elves/runtime";
1
+ import type { RuntimeHandle, RuntimePermissionMode } from "../../runtime/dist/index.js";
2
2
  import { CodexAppServerSession } from "./codex-app-server.js";
3
3
  export type CliSession = {
4
4
  handle: RuntimeHandle;
@@ -17,6 +17,7 @@ export declare class CliSessionStore {
17
17
  sessionKey: string;
18
18
  agent: string;
19
19
  cwd?: string;
20
+ model?: string;
20
21
  resumeSessionId?: string;
21
22
  permissionMode?: RuntimePermissionMode;
22
23
  restartableEmptySession?: boolean;
@@ -7,6 +7,7 @@ function cliHandle(input) {
7
7
  runtimeSessionName: input.agent,
8
8
  cwd: input.cwd,
9
9
  backendSessionId: input.backendSessionId,
10
+ ...(input.model ? { model: input.model } : {}),
10
11
  };
11
12
  }
12
13
  export class CliSessionStore {
@@ -22,9 +23,9 @@ export class CliSessionStore {
22
23
  const cwd = input.cwd ?? this.input.cwd;
23
24
  const agent = cliAgent(input.agent);
24
25
  if (agent === "codex") {
25
- return await this.createCodex(input.sessionKey, cwd, input.resumeSessionId, input.permissionMode, input.restartableEmptySession);
26
+ return await this.createCodex(input.sessionKey, cwd, input.resumeSessionId, input.permissionMode, input.model, input.restartableEmptySession);
26
27
  }
27
- return this.createClaude(input.sessionKey, cwd, input.resumeSessionId);
28
+ return this.createClaude(input.sessionKey, cwd, input.resumeSessionId, input.model);
28
29
  }
29
30
  get(sessionKey) {
30
31
  return this.sessions.get(sessionKey);
@@ -61,23 +62,23 @@ export class CliSessionStore {
61
62
  this.sessions.set(sessionKey, session);
62
63
  return session;
63
64
  }
64
- async createCodex(sessionKey, cwd, resumeSessionId, permissionMode, restartableEmptySession) {
65
+ async createCodex(sessionKey, cwd, resumeSessionId, permissionMode, model, restartableEmptySession) {
65
66
  const session = {
66
- handle: cliHandle({ agent: "codex", backendSessionId: resumeSessionId, cwd, sessionKey }),
67
+ handle: cliHandle({ agent: "codex", backendSessionId: resumeSessionId, cwd, model, sessionKey }),
67
68
  };
68
69
  const codex = new CodexAppServerSession(this.input.codexCommand, cwd, resumeSessionId, (nextThreadId) => {
69
70
  session.handle.backendSessionId = nextThreadId;
70
- }, Boolean(restartableEmptySession));
71
- const threadId = await codex.ensure(permissionMode);
71
+ }, Boolean(restartableEmptySession), model);
72
+ const threadId = await codex.ensure(permissionMode, model);
72
73
  session.handle.backendSessionId = threadId;
73
74
  session.codex = codex;
74
75
  this.sessions.set(sessionKey, session);
75
76
  return session;
76
77
  }
77
- createClaude(sessionKey, cwd, resumeSessionId) {
78
+ createClaude(sessionKey, cwd, resumeSessionId, model) {
78
79
  const sessionId = resumeSessionId ?? randomUUID();
79
80
  const session = {
80
- handle: cliHandle({ agent: "claude", backendSessionId: sessionId, cwd, sessionKey }),
81
+ handle: cliHandle({ agent: "claude", backendSessionId: sessionId, cwd, model, sessionKey }),
81
82
  claudeStarted: Boolean(resumeSessionId),
82
83
  };
83
84
  this.sessions.set(sessionKey, session);
@@ -2,6 +2,8 @@ export * from "./crypto.js";
2
2
  export * from "./args.js";
3
3
  export * from "./ids.js";
4
4
  export * from "./protocol.js";
5
+ export * from "./protocol-types.js";
5
6
  export * from "./session-name.js";
6
7
  export * from "./session-state.js";
8
+ export * from "./session-tags.js";
7
9
  //# sourceMappingURL=index.d.ts.map
@@ -2,6 +2,8 @@ export * from "./crypto.js";
2
2
  export * from "./args.js";
3
3
  export * from "./ids.js";
4
4
  export * from "./protocol.js";
5
+ export * from "./protocol-types.js";
5
6
  export * from "./session-name.js";
6
7
  export * from "./session-state.js";
8
+ export * from "./session-tags.js";
7
9
  //# sourceMappingURL=index.js.map