@with-logic/elwood 0.1.0 → 0.1.2

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 (777) hide show
  1. package/CHANGELOG.md +182 -3
  2. package/CONTRIBUTING.md +104 -0
  3. package/LICENSE +1 -1
  4. package/README.md +295 -26
  5. package/SECURITY.md +42 -0
  6. package/dist/claude/command.d.ts +9 -2
  7. package/dist/claude/command.d.ts.map +1 -1
  8. package/dist/claude/command.js +23 -16
  9. package/dist/claude/command.js.map +1 -1
  10. package/dist/claude/model-picker.d.ts.map +1 -1
  11. package/dist/claude/model-picker.js +4 -3
  12. package/dist/claude/model-picker.js.map +1 -1
  13. package/dist/claude/model-switch-confirmation.js +9 -1
  14. package/dist/claude/model-switch-confirmation.js.map +1 -1
  15. package/dist/claude/screen-table.js +1 -1
  16. package/dist/claude/screen-table.js.map +1 -1
  17. package/dist/claude/session/build.d.ts.map +1 -1
  18. package/dist/claude/session/build.js +3 -0
  19. package/dist/claude/session/build.js.map +1 -1
  20. package/dist/claude/session/index.d.ts.map +1 -1
  21. package/dist/claude/session/index.js +5 -2
  22. package/dist/claude/session/index.js.map +1 -1
  23. package/dist/claude/session/resume.d.ts +1 -1
  24. package/dist/claude/session/resume.d.ts.map +1 -1
  25. package/dist/claude/session/resume.js +5 -1
  26. package/dist/claude/session/resume.js.map +1 -1
  27. package/dist/claude/session/start-or-resume.js +1 -0
  28. package/dist/claude/session/start-or-resume.js.map +1 -1
  29. package/dist/claude/simple.d.ts.map +1 -1
  30. package/dist/claude/simple.js +4 -0
  31. package/dist/claude/simple.js.map +1 -1
  32. package/dist/cli/args/index.d.ts +3 -1
  33. package/dist/cli/args/index.d.ts.map +1 -1
  34. package/dist/cli/args/index.js +10 -2
  35. package/dist/cli/args/index.js.map +1 -1
  36. package/dist/cli/args/options.d.ts.map +1 -1
  37. package/dist/cli/args/options.js +2 -0
  38. package/dist/cli/args/options.js.map +1 -1
  39. package/dist/cli/args-commands.d.ts +10 -0
  40. package/dist/cli/args-commands.d.ts.map +1 -0
  41. package/dist/cli/args-commands.js +113 -0
  42. package/dist/cli/args-commands.js.map +1 -0
  43. package/dist/cli/command-types.d.ts +26 -0
  44. package/dist/cli/command-types.d.ts.map +1 -0
  45. package/dist/cli/command-types.js +9 -0
  46. package/dist/cli/command-types.js.map +1 -0
  47. package/dist/cli/config/codec-primitives.d.ts +20 -0
  48. package/dist/cli/config/codec-primitives.d.ts.map +1 -0
  49. package/dist/cli/config/codec-primitives.js +51 -0
  50. package/dist/cli/config/codec-primitives.js.map +1 -0
  51. package/dist/cli/config/codec.d.ts.map +1 -1
  52. package/dist/cli/config/codec.js +4 -46
  53. package/dist/cli/config/codec.js.map +1 -1
  54. package/dist/cli/config/effective.d.ts.map +1 -1
  55. package/dist/cli/config/effective.js +1 -0
  56. package/dist/cli/config/effective.js.map +1 -1
  57. package/dist/cli/config/keys.d.ts +1 -1
  58. package/dist/cli/config/keys.d.ts.map +1 -1
  59. package/dist/cli/config/keys.js +1 -0
  60. package/dist/cli/config/keys.js.map +1 -1
  61. package/dist/cli/entry.d.ts +4 -2
  62. package/dist/cli/entry.d.ts.map +1 -1
  63. package/dist/cli/entry.js +2 -1
  64. package/dist/cli/entry.js.map +1 -1
  65. package/dist/cli/help.d.ts +2 -2
  66. package/dist/cli/help.d.ts.map +1 -1
  67. package/dist/cli/help.js +40 -1
  68. package/dist/cli/help.js.map +1 -1
  69. package/dist/cli/interactive/index.d.ts +26 -0
  70. package/dist/cli/interactive/index.d.ts.map +1 -0
  71. package/dist/cli/interactive/index.js +33 -0
  72. package/dist/cli/interactive/index.js.map +1 -0
  73. package/dist/cli/interactive/launch.d.ts +14 -0
  74. package/dist/cli/interactive/launch.d.ts.map +1 -0
  75. package/dist/cli/interactive/launch.js +66 -0
  76. package/dist/cli/interactive/launch.js.map +1 -0
  77. package/dist/cli/interactive/spawn.d.ts +18 -0
  78. package/dist/cli/interactive/spawn.d.ts.map +1 -0
  79. package/dist/cli/interactive/spawn.js +53 -0
  80. package/dist/cli/interactive/spawn.js.map +1 -0
  81. package/dist/cli/main-failure.d.ts +28 -0
  82. package/dist/cli/main-failure.d.ts.map +1 -0
  83. package/dist/cli/main-failure.js +78 -0
  84. package/dist/cli/main-failure.js.map +1 -0
  85. package/dist/cli/main.d.ts +12 -4
  86. package/dist/cli/main.d.ts.map +1 -1
  87. package/dist/cli/main.js +27 -73
  88. package/dist/cli/main.js.map +1 -1
  89. package/dist/cli/models/index.d.ts +20 -0
  90. package/dist/cli/models/index.d.ts.map +1 -0
  91. package/dist/cli/models/index.js +63 -0
  92. package/dist/cli/models/index.js.map +1 -0
  93. package/dist/cli/models/render.d.ts +9 -0
  94. package/dist/cli/models/render.d.ts.map +1 -0
  95. package/dist/cli/models/render.js +33 -0
  96. package/dist/cli/models/render.js.map +1 -0
  97. package/dist/cli/request/index.d.ts.map +1 -1
  98. package/dist/cli/request/index.js +8 -2
  99. package/dist/cli/request/index.js.map +1 -1
  100. package/dist/cli/request/layers.d.ts +2 -0
  101. package/dist/cli/request/layers.d.ts.map +1 -1
  102. package/dist/cli/request/layers.js +9 -5
  103. package/dist/cli/request/layers.js.map +1 -1
  104. package/dist/cli/request/posture.d.ts +28 -0
  105. package/dist/cli/request/posture.d.ts.map +1 -0
  106. package/dist/cli/request/posture.js +70 -0
  107. package/dist/cli/request/posture.js.map +1 -0
  108. package/dist/cli/request/resolution-types.d.ts +1 -0
  109. package/dist/cli/request/resolution-types.d.ts.map +1 -1
  110. package/dist/cli/request/settings.d.ts +2 -12
  111. package/dist/cli/request/settings.d.ts.map +1 -1
  112. package/dist/cli/request/settings.js +2 -25
  113. package/dist/cli/request/settings.js.map +1 -1
  114. package/dist/cli/request/validation.d.ts +12 -0
  115. package/dist/cli/request/validation.d.ts.map +1 -1
  116. package/dist/cli/request/validation.js +30 -10
  117. package/dist/cli/request/validation.js.map +1 -1
  118. package/dist/cli/request/values.d.ts +1 -0
  119. package/dist/cli/request/values.d.ts.map +1 -1
  120. package/dist/cli/request/values.js +1 -0
  121. package/dist/cli/request/values.js.map +1 -1
  122. package/dist/cli/run/index.d.ts.map +1 -1
  123. package/dist/cli/run/index.js +5 -41
  124. package/dist/cli/run/index.js.map +1 -1
  125. package/dist/cli/run/subscribe.d.ts +19 -0
  126. package/dist/cli/run/subscribe.d.ts.map +1 -0
  127. package/dist/cli/run/subscribe.js +47 -0
  128. package/dist/cli/run/subscribe.js.map +1 -0
  129. package/dist/cli/session/launch.d.ts +3 -0
  130. package/dist/cli/session/launch.d.ts.map +1 -1
  131. package/dist/cli/session/launch.js +11 -0
  132. package/dist/cli/session/launch.js.map +1 -1
  133. package/dist/cli/sessions/index.d.ts +30 -0
  134. package/dist/cli/sessions/index.d.ts.map +1 -0
  135. package/dist/cli/sessions/index.js +61 -0
  136. package/dist/cli/sessions/index.js.map +1 -0
  137. package/dist/cli/sessions/list.d.ts +28 -0
  138. package/dist/cli/sessions/list.d.ts.map +1 -0
  139. package/dist/cli/sessions/list.js +63 -0
  140. package/dist/cli/sessions/list.js.map +1 -0
  141. package/dist/cli/sessions/settings.d.ts +11 -0
  142. package/dist/cli/sessions/settings.d.ts.map +1 -0
  143. package/dist/cli/sessions/settings.js +26 -0
  144. package/dist/cli/sessions/settings.js.map +1 -0
  145. package/dist/cli/table.d.ts +7 -0
  146. package/dist/cli/table.d.ts.map +1 -0
  147. package/dist/cli/table.js +14 -0
  148. package/dist/cli/table.js.map +1 -0
  149. package/dist/cli/types.d.ts +5 -1
  150. package/dist/cli/types.d.ts.map +1 -1
  151. package/dist/cli/types.js.map +1 -1
  152. package/dist/codex/command.d.ts +18 -2
  153. package/dist/codex/command.d.ts.map +1 -1
  154. package/dist/codex/command.js +39 -24
  155. package/dist/codex/command.js.map +1 -1
  156. package/dist/codex/model-picker.d.ts.map +1 -1
  157. package/dist/codex/model-picker.js +3 -2
  158. package/dist/codex/model-picker.js.map +1 -1
  159. package/dist/codex/session/build.d.ts.map +1 -1
  160. package/dist/codex/session/build.js +5 -7
  161. package/dist/codex/session/build.js.map +1 -1
  162. package/dist/codex/session/index.d.ts.map +1 -1
  163. package/dist/codex/session/index.js +5 -2
  164. package/dist/codex/session/index.js.map +1 -1
  165. package/dist/codex/session/resume.d.ts +1 -1
  166. package/dist/codex/session/resume.d.ts.map +1 -1
  167. package/dist/codex/session/resume.js +5 -1
  168. package/dist/codex/session/resume.js.map +1 -1
  169. package/dist/codex/session/start-or-resume.js +1 -0
  170. package/dist/codex/session/start-or-resume.js.map +1 -1
  171. package/dist/codex/session/types.d.ts +3 -0
  172. package/dist/codex/session/types.d.ts.map +1 -1
  173. package/dist/codex/simple.d.ts.map +1 -1
  174. package/dist/codex/simple.js +4 -0
  175. package/dist/codex/simple.js.map +1 -1
  176. package/dist/core/errors.d.ts +1 -1
  177. package/dist/core/errors.d.ts.map +1 -1
  178. package/dist/core/errors.js.map +1 -1
  179. package/dist/core/high-trust.d.ts +41 -0
  180. package/dist/core/high-trust.d.ts.map +1 -0
  181. package/dist/core/high-trust.js +50 -0
  182. package/dist/core/high-trust.js.map +1 -0
  183. package/dist/core/input/index.d.ts.map +1 -1
  184. package/dist/core/input/index.js +15 -3
  185. package/dist/core/input/index.js.map +1 -1
  186. package/dist/core/models/input.d.ts +3 -0
  187. package/dist/core/models/input.d.ts.map +1 -0
  188. package/dist/core/models/input.js +9 -0
  189. package/dist/core/models/input.js.map +1 -0
  190. package/dist/core/models/picker.d.ts +2 -1
  191. package/dist/core/models/picker.d.ts.map +1 -1
  192. package/dist/core/models/picker.js +6 -5
  193. package/dist/core/models/picker.js.map +1 -1
  194. package/dist/core/models/tui-screen.d.ts +1 -1
  195. package/dist/core/models/tui-screen.d.ts.map +1 -1
  196. package/dist/core/models/tui-screen.js +26 -3
  197. package/dist/core/models/tui-screen.js.map +1 -1
  198. package/dist/core/trust/allowlist.d.ts +56 -0
  199. package/dist/core/trust/allowlist.d.ts.map +1 -0
  200. package/dist/core/{trust-prompts.js → trust/allowlist.js} +21 -38
  201. package/dist/core/trust/allowlist.js.map +1 -0
  202. package/dist/core/trust/prompts.d.ts +4 -46
  203. package/dist/core/trust/prompts.d.ts.map +1 -1
  204. package/dist/core/trust/prompts.js +2 -73
  205. package/dist/core/trust/prompts.js.map +1 -1
  206. package/dist/core/trust/responder.d.ts +2 -0
  207. package/dist/core/trust/responder.d.ts.map +1 -1
  208. package/dist/core/trust/responder.js +4 -0
  209. package/dist/core/trust/responder.js.map +1 -1
  210. package/dist/core/types.d.ts +3 -0
  211. package/dist/core/types.d.ts.map +1 -1
  212. package/dist/runtime/launch-arguments.d.ts +12 -0
  213. package/dist/runtime/launch-arguments.d.ts.map +1 -0
  214. package/dist/runtime/launch-arguments.js +15 -0
  215. package/dist/runtime/launch-arguments.js.map +1 -0
  216. package/dist/runtime/session/base.d.ts.map +1 -1
  217. package/dist/runtime/session/base.js +4 -1
  218. package/dist/runtime/session/base.js.map +1 -1
  219. package/dist/runtime/session/commands.d.ts +2 -1
  220. package/dist/runtime/session/commands.d.ts.map +1 -1
  221. package/dist/runtime/session/commands.js +10 -4
  222. package/dist/runtime/session/commands.js.map +1 -1
  223. package/dist/runtime/session/lifecycle.d.ts +3 -4
  224. package/dist/runtime/session/lifecycle.d.ts.map +1 -1
  225. package/dist/runtime/session/lifecycle.js +6 -5
  226. package/dist/runtime/session/lifecycle.js.map +1 -1
  227. package/dist/state/directories.d.ts +4 -0
  228. package/dist/state/directories.d.ts.map +1 -0
  229. package/dist/state/directories.js +41 -0
  230. package/dist/state/directories.js.map +1 -0
  231. package/dist/state/files.d.ts.map +1 -1
  232. package/dist/state/files.js +25 -11
  233. package/dist/state/files.js.map +1 -1
  234. package/dist/state/private-session.d.ts.map +1 -1
  235. package/dist/state/private-session.js +2 -0
  236. package/dist/state/private-session.js.map +1 -1
  237. package/dist/state/store.d.ts.map +1 -1
  238. package/dist/state/store.js +7 -1
  239. package/dist/state/store.js.map +1 -1
  240. package/docs/cli-behavior.md +89 -1
  241. package/docs/cli-output.md +60 -0
  242. package/docs/cli.md +10 -2
  243. package/docs/codex/cli.md +57 -0
  244. package/docs/codex/config.md +47 -0
  245. package/docs/codex/hooks.md +70 -0
  246. package/examples/README.md +56 -0
  247. package/examples/full.ts +113 -0
  248. package/examples/minimal.ts +15 -0
  249. package/examples/stream.ts +39 -0
  250. package/examples/support.ts +71 -0
  251. package/package.json +17 -10
  252. package/prd/01-overview.md +21 -0
  253. package/prd/02-goals.md +47 -0
  254. package/prd/03-terminology.md +32 -0
  255. package/prd/04-architecture.md +121 -0
  256. package/prd/05-api/5.1-starting-claude.md +108 -0
  257. package/prd/05-api/5.2-resuming-claude.md +86 -0
  258. package/prd/05-api/5.3-claude-session-api.md +658 -0
  259. package/prd/05-api/5.4-events.md +145 -0
  260. package/prd/05-api/5.5-starting-codex.md +106 -0
  261. package/prd/05-api/5.6-resuming-codex.md +48 -0
  262. package/prd/05-api/5.7-codex-session-api.md +425 -0
  263. package/prd/05-api/5.8-session-api.md +122 -0
  264. package/prd/05-api/5.9-loops.md +170 -0
  265. package/prd/05-api/README.md +19 -0
  266. package/prd/06-claude-hook-bridge.md +164 -0
  267. package/prd/07-claude-policy.md +15 -0
  268. package/prd/07a-codex-hook-bridge.md +76 -0
  269. package/prd/08-state.md +127 -0
  270. package/prd/09-lifecycle.md +222 -0
  271. package/prd/10-errors.md +55 -0
  272. package/prd/11-test-app.md +53 -0
  273. package/prd/12-e2e.md +23 -0
  274. package/prd/12a-cli.md +375 -0
  275. package/prd/13-latitude.md +12 -0
  276. package/prd/14-conformance.md +333 -0
  277. package/prd/15-open-notes.md +8 -0
  278. package/prd/README.md +45 -0
  279. package/dist/claude/hook-dispatch.d.ts +0 -9
  280. package/dist/claude/hook-dispatch.d.ts.map +0 -1
  281. package/dist/claude/hook-dispatch.js +0 -12
  282. package/dist/claude/hook-dispatch.js.map +0 -1
  283. package/dist/claude/hook-events-extra.d.ts +0 -81
  284. package/dist/claude/hook-events-extra.d.ts.map +0 -1
  285. package/dist/claude/hook-events-extra.js +0 -6
  286. package/dist/claude/hook-events-extra.js.map +0 -1
  287. package/dist/claude/hook-events.d.ts +0 -101
  288. package/dist/claude/hook-events.d.ts.map +0 -1
  289. package/dist/claude/hook-events.js +0 -6
  290. package/dist/claude/hook-events.js.map +0 -1
  291. package/dist/claude/hook-names.d.ts +0 -24
  292. package/dist/claude/hook-names.d.ts.map +0 -1
  293. package/dist/claude/hook-names.js +0 -45
  294. package/dist/claude/hook-names.js.map +0 -1
  295. package/dist/claude/hooks.d.ts +0 -78
  296. package/dist/claude/hooks.d.ts.map +0 -1
  297. package/dist/claude/hooks.js +0 -6
  298. package/dist/claude/hooks.js.map +0 -1
  299. package/dist/claude/session-bridge.d.ts +0 -11
  300. package/dist/claude/session-bridge.d.ts.map +0 -1
  301. package/dist/claude/session-bridge.js +0 -18
  302. package/dist/claude/session-bridge.js.map +0 -1
  303. package/dist/claude/session-build.d.ts +0 -15
  304. package/dist/claude/session-build.d.ts.map +0 -1
  305. package/dist/claude/session-build.js +0 -147
  306. package/dist/claude/session-build.js.map +0 -1
  307. package/dist/claude/session-hook-handler.d.ts +0 -34
  308. package/dist/claude/session-hook-handler.d.ts.map +0 -1
  309. package/dist/claude/session-hook-handler.js +0 -42
  310. package/dist/claude/session-hook-handler.js.map +0 -1
  311. package/dist/claude/session-instance.d.ts +0 -42
  312. package/dist/claude/session-instance.d.ts.map +0 -1
  313. package/dist/claude/session-instance.js +0 -146
  314. package/dist/claude/session-instance.js.map +0 -1
  315. package/dist/claude/session-interface.d.ts +0 -49
  316. package/dist/claude/session-interface.d.ts.map +0 -1
  317. package/dist/claude/session-interface.js +0 -10
  318. package/dist/claude/session-interface.js.map +0 -1
  319. package/dist/claude/session-resume.d.ts +0 -8
  320. package/dist/claude/session-resume.d.ts.map +0 -1
  321. package/dist/claude/session-resume.js +0 -47
  322. package/dist/claude/session-resume.js.map +0 -1
  323. package/dist/claude/session-runtime.d.ts +0 -43
  324. package/dist/claude/session-runtime.d.ts.map +0 -1
  325. package/dist/claude/session-runtime.js +0 -105
  326. package/dist/claude/session-runtime.js.map +0 -1
  327. package/dist/claude/session-transcript.d.ts +0 -62
  328. package/dist/claude/session-transcript.d.ts.map +0 -1
  329. package/dist/claude/session-transcript.js +0 -88
  330. package/dist/claude/session-transcript.js.map +0 -1
  331. package/dist/claude/session.d.ts +0 -18
  332. package/dist/claude/session.d.ts.map +0 -1
  333. package/dist/claude/session.js +0 -58
  334. package/dist/claude/session.js.map +0 -1
  335. package/dist/claude/start-or-resume.d.ts +0 -12
  336. package/dist/claude/start-or-resume.d.ts.map +0 -1
  337. package/dist/claude/start-or-resume.js +0 -32
  338. package/dist/claude/start-or-resume.js.map +0 -1
  339. package/dist/claude/tool-hook-events.d.ts +0 -10
  340. package/dist/claude/tool-hook-events.d.ts.map +0 -1
  341. package/dist/claude/tool-hook-events.js +0 -18
  342. package/dist/claude/tool-hook-events.js.map +0 -1
  343. package/dist/claude/tool-types.d.ts +0 -158
  344. package/dist/claude/tool-types.d.ts.map +0 -1
  345. package/dist/claude/tool-types.js +0 -6
  346. package/dist/claude/tool-types.js.map +0 -1
  347. package/dist/claude/validate-input.d.ts +0 -8
  348. package/dist/claude/validate-input.d.ts.map +0 -1
  349. package/dist/claude/validate-input.js +0 -137
  350. package/dist/claude/validate-input.js.map +0 -1
  351. package/dist/claude/validate-permission-update.d.ts +0 -10
  352. package/dist/claude/validate-permission-update.d.ts.map +0 -1
  353. package/dist/claude/validate-permission-update.js +0 -72
  354. package/dist/claude/validate-permission-update.js.map +0 -1
  355. package/dist/claude/validate-result.d.ts +0 -7
  356. package/dist/claude/validate-result.d.ts.map +0 -1
  357. package/dist/claude/validate-result.js +0 -118
  358. package/dist/claude/validate-result.js.map +0 -1
  359. package/dist/claude/validate-shapes.d.ts +0 -22
  360. package/dist/claude/validate-shapes.d.ts.map +0 -1
  361. package/dist/claude/validate-shapes.js +0 -15
  362. package/dist/claude/validate-shapes.js.map +0 -1
  363. package/dist/claude/validate-tool-update.d.ts +0 -15
  364. package/dist/claude/validate-tool-update.d.ts.map +0 -1
  365. package/dist/claude/validate-tool-update.js +0 -122
  366. package/dist/claude/validate-tool-update.js.map +0 -1
  367. package/dist/cli/agent-detect.d.ts +0 -44
  368. package/dist/cli/agent-detect.d.ts.map +0 -1
  369. package/dist/cli/agent-detect.js +0 -66
  370. package/dist/cli/agent-detect.js.map +0 -1
  371. package/dist/cli/arg-errors.d.ts +0 -6
  372. package/dist/cli/arg-errors.d.ts.map +0 -1
  373. package/dist/cli/arg-errors.js +0 -44
  374. package/dist/cli/arg-errors.js.map +0 -1
  375. package/dist/cli/arg-options.d.ts +0 -26
  376. package/dist/cli/arg-options.d.ts.map +0 -1
  377. package/dist/cli/arg-options.js +0 -50
  378. package/dist/cli/arg-options.js.map +0 -1
  379. package/dist/cli/args.d.ts +0 -7
  380. package/dist/cli/args.d.ts.map +0 -1
  381. package/dist/cli/args.js +0 -70
  382. package/dist/cli/args.js.map +0 -1
  383. package/dist/cli/lifecycle-outcome.d.ts +0 -13
  384. package/dist/cli/lifecycle-outcome.d.ts.map +0 -1
  385. package/dist/cli/lifecycle-outcome.js +0 -20
  386. package/dist/cli/lifecycle-outcome.js.map +0 -1
  387. package/dist/cli/lifecycle.d.ts +0 -61
  388. package/dist/cli/lifecycle.d.ts.map +0 -1
  389. package/dist/cli/lifecycle.js +0 -152
  390. package/dist/cli/lifecycle.js.map +0 -1
  391. package/dist/cli/request-finalize.d.ts +0 -10
  392. package/dist/cli/request-finalize.d.ts.map +0 -1
  393. package/dist/cli/request-finalize.js +0 -135
  394. package/dist/cli/request-finalize.js.map +0 -1
  395. package/dist/cli/request-layers.d.ts +0 -30
  396. package/dist/cli/request-layers.d.ts.map +0 -1
  397. package/dist/cli/request-layers.js +0 -44
  398. package/dist/cli/request-layers.js.map +0 -1
  399. package/dist/cli/request-settings.d.ts +0 -34
  400. package/dist/cli/request-settings.d.ts.map +0 -1
  401. package/dist/cli/request-settings.js +0 -66
  402. package/dist/cli/request-settings.js.map +0 -1
  403. package/dist/cli/request-sources.d.ts +0 -13
  404. package/dist/cli/request-sources.d.ts.map +0 -1
  405. package/dist/cli/request-sources.js +0 -23
  406. package/dist/cli/request-sources.js.map +0 -1
  407. package/dist/cli/request-validation.d.ts +0 -18
  408. package/dist/cli/request-validation.d.ts.map +0 -1
  409. package/dist/cli/request-validation.js +0 -84
  410. package/dist/cli/request-validation.js.map +0 -1
  411. package/dist/cli/request-values.d.ts +0 -33
  412. package/dist/cli/request-values.d.ts.map +0 -1
  413. package/dist/cli/request-values.js +0 -73
  414. package/dist/cli/request-values.js.map +0 -1
  415. package/dist/cli/request.d.ts +0 -12
  416. package/dist/cli/request.d.ts.map +0 -1
  417. package/dist/cli/request.js +0 -103
  418. package/dist/cli/request.js.map +0 -1
  419. package/dist/cli/resolution-types.d.ts +0 -35
  420. package/dist/cli/resolution-types.d.ts.map +0 -1
  421. package/dist/cli/resolution-types.js +0 -6
  422. package/dist/cli/resolution-types.js.map +0 -1
  423. package/dist/cli/run-output-lines.d.ts +0 -14
  424. package/dist/cli/run-output-lines.d.ts.map +0 -1
  425. package/dist/cli/run-output-lines.js +0 -42
  426. package/dist/cli/run-output-lines.js.map +0 -1
  427. package/dist/cli/run-output.d.ts +0 -48
  428. package/dist/cli/run-output.d.ts.map +0 -1
  429. package/dist/cli/run-output.js +0 -150
  430. package/dist/cli/run-output.js.map +0 -1
  431. package/dist/cli/run.d.ts +0 -20
  432. package/dist/cli/run.d.ts.map +0 -1
  433. package/dist/cli/run.js +0 -126
  434. package/dist/cli/run.js.map +0 -1
  435. package/dist/cli/session-launch.d.ts +0 -23
  436. package/dist/cli/session-launch.d.ts.map +0 -1
  437. package/dist/cli/session-launch.js +0 -57
  438. package/dist/cli/session-launch.js.map +0 -1
  439. package/dist/cli/session.d.ts +0 -68
  440. package/dist/cli/session.d.ts.map +0 -1
  441. package/dist/cli/session.js +0 -124
  442. package/dist/cli/session.js.map +0 -1
  443. package/dist/codex/attach-images.d.ts +0 -20
  444. package/dist/codex/attach-images.d.ts.map +0 -1
  445. package/dist/codex/attach-images.js +0 -66
  446. package/dist/codex/attach-images.js.map +0 -1
  447. package/dist/codex/clipboard-lock.d.ts +0 -15
  448. package/dist/codex/clipboard-lock.d.ts.map +0 -1
  449. package/dist/codex/clipboard-lock.js +0 -16
  450. package/dist/codex/clipboard-lock.js.map +0 -1
  451. package/dist/codex/clipboard.d.ts +0 -32
  452. package/dist/codex/clipboard.d.ts.map +0 -1
  453. package/dist/codex/clipboard.js +0 -92
  454. package/dist/codex/clipboard.js.map +0 -1
  455. package/dist/codex/config-lock.d.ts +0 -21
  456. package/dist/codex/config-lock.d.ts.map +0 -1
  457. package/dist/codex/config-lock.js +0 -22
  458. package/dist/codex/config-lock.js.map +0 -1
  459. package/dist/codex/config-restore.d.ts +0 -33
  460. package/dist/codex/config-restore.d.ts.map +0 -1
  461. package/dist/codex/config-restore.js +0 -90
  462. package/dist/codex/config-restore.js.map +0 -1
  463. package/dist/codex/config-transaction.d.ts +0 -26
  464. package/dist/codex/config-transaction.d.ts.map +0 -1
  465. package/dist/codex/config-transaction.js +0 -47
  466. package/dist/codex/config-transaction.js.map +0 -1
  467. package/dist/codex/hook-dispatch.d.ts +0 -9
  468. package/dist/codex/hook-dispatch.d.ts.map +0 -1
  469. package/dist/codex/hook-dispatch.js +0 -14
  470. package/dist/codex/hook-dispatch.js.map +0 -1
  471. package/dist/codex/hook-names.d.ts +0 -19
  472. package/dist/codex/hook-names.d.ts.map +0 -1
  473. package/dist/codex/hook-names.js +0 -17
  474. package/dist/codex/hook-names.js.map +0 -1
  475. package/dist/codex/hooks.d.ts +0 -99
  476. package/dist/codex/hooks.d.ts.map +0 -1
  477. package/dist/codex/hooks.js +0 -6
  478. package/dist/codex/hooks.js.map +0 -1
  479. package/dist/codex/initial-ready.d.ts +0 -19
  480. package/dist/codex/initial-ready.d.ts.map +0 -1
  481. package/dist/codex/initial-ready.js +0 -19
  482. package/dist/codex/initial-ready.js.map +0 -1
  483. package/dist/codex/serialize.d.ts +0 -8
  484. package/dist/codex/serialize.d.ts.map +0 -1
  485. package/dist/codex/serialize.js +0 -48
  486. package/dist/codex/serialize.js.map +0 -1
  487. package/dist/codex/session-bridge.d.ts +0 -14
  488. package/dist/codex/session-bridge.d.ts.map +0 -1
  489. package/dist/codex/session-bridge.js +0 -20
  490. package/dist/codex/session-bridge.js.map +0 -1
  491. package/dist/codex/session-build.d.ts +0 -15
  492. package/dist/codex/session-build.d.ts.map +0 -1
  493. package/dist/codex/session-build.js +0 -144
  494. package/dist/codex/session-build.js.map +0 -1
  495. package/dist/codex/session-cleanup.d.ts +0 -12
  496. package/dist/codex/session-cleanup.d.ts.map +0 -1
  497. package/dist/codex/session-cleanup.js +0 -15
  498. package/dist/codex/session-cleanup.js.map +0 -1
  499. package/dist/codex/session-hooks.d.ts +0 -13
  500. package/dist/codex/session-hooks.d.ts.map +0 -1
  501. package/dist/codex/session-hooks.js +0 -54
  502. package/dist/codex/session-hooks.js.map +0 -1
  503. package/dist/codex/session-instance.d.ts +0 -50
  504. package/dist/codex/session-instance.d.ts.map +0 -1
  505. package/dist/codex/session-instance.js +0 -117
  506. package/dist/codex/session-instance.js.map +0 -1
  507. package/dist/codex/session-resume.d.ts +0 -7
  508. package/dist/codex/session-resume.d.ts.map +0 -1
  509. package/dist/codex/session-resume.js +0 -44
  510. package/dist/codex/session-resume.js.map +0 -1
  511. package/dist/codex/session-runtime.d.ts +0 -7
  512. package/dist/codex/session-runtime.d.ts.map +0 -1
  513. package/dist/codex/session-runtime.js +0 -10
  514. package/dist/codex/session-runtime.js.map +0 -1
  515. package/dist/codex/session-transcript.d.ts +0 -30
  516. package/dist/codex/session-transcript.d.ts.map +0 -1
  517. package/dist/codex/session-transcript.js +0 -53
  518. package/dist/codex/session-transcript.js.map +0 -1
  519. package/dist/codex/session-types.d.ts +0 -87
  520. package/dist/codex/session-types.d.ts.map +0 -1
  521. package/dist/codex/session-types.js +0 -6
  522. package/dist/codex/session-types.js.map +0 -1
  523. package/dist/codex/session-warnings.d.ts +0 -27
  524. package/dist/codex/session-warnings.d.ts.map +0 -1
  525. package/dist/codex/session-warnings.js +0 -54
  526. package/dist/codex/session-warnings.js.map +0 -1
  527. package/dist/codex/session.d.ts +0 -16
  528. package/dist/codex/session.d.ts.map +0 -1
  529. package/dist/codex/session.js +0 -61
  530. package/dist/codex/session.js.map +0 -1
  531. package/dist/codex/start-or-resume.d.ts +0 -12
  532. package/dist/codex/start-or-resume.d.ts.map +0 -1
  533. package/dist/codex/start-or-resume.js +0 -31
  534. package/dist/codex/start-or-resume.js.map +0 -1
  535. package/dist/codex/transcript/cursor-io.d.ts +0 -7
  536. package/dist/codex/transcript/cursor-io.d.ts.map +0 -1
  537. package/dist/codex/transcript/cursor-io.js +0 -7
  538. package/dist/codex/transcript/cursor-io.js.map +0 -1
  539. package/dist/codex/transcript/cursor.d.ts +0 -8
  540. package/dist/codex/transcript/cursor.d.ts.map +0 -1
  541. package/dist/codex/transcript/cursor.js +0 -8
  542. package/dist/codex/transcript/cursor.js.map +0 -1
  543. package/dist/codex/transcript/drops.d.ts +0 -9
  544. package/dist/codex/transcript/drops.d.ts.map +0 -1
  545. package/dist/codex/transcript/drops.js +0 -9
  546. package/dist/codex/transcript/drops.js.map +0 -1
  547. package/dist/codex/transcript.d.ts +0 -12
  548. package/dist/codex/transcript.d.ts.map +0 -1
  549. package/dist/codex/transcript.js +0 -10
  550. package/dist/codex/transcript.js.map +0 -1
  551. package/dist/codex/validate-result.d.ts +0 -7
  552. package/dist/codex/validate-result.d.ts.map +0 -1
  553. package/dist/codex/validate-result.js +0 -84
  554. package/dist/codex/validate-result.js.map +0 -1
  555. package/dist/codex/validate.d.ts +0 -11
  556. package/dist/codex/validate.d.ts.map +0 -1
  557. package/dist/codex/validate.js +0 -88
  558. package/dist/codex/validate.js.map +0 -1
  559. package/dist/core/activity-lifecycle.d.ts +0 -21
  560. package/dist/core/activity-lifecycle.d.ts.map +0 -1
  561. package/dist/core/activity-lifecycle.js +0 -45
  562. package/dist/core/activity-lifecycle.js.map +0 -1
  563. package/dist/core/activity-meta.d.ts +0 -13
  564. package/dist/core/activity-meta.d.ts.map +0 -1
  565. package/dist/core/activity-meta.js +0 -67
  566. package/dist/core/activity-meta.js.map +0 -1
  567. package/dist/core/activity-transcript.d.ts +0 -19
  568. package/dist/core/activity-transcript.d.ts.map +0 -1
  569. package/dist/core/activity-transcript.js +0 -60
  570. package/dist/core/activity-transcript.js.map +0 -1
  571. package/dist/core/activity.d.ts +0 -51
  572. package/dist/core/activity.d.ts.map +0 -1
  573. package/dist/core/activity.js +0 -81
  574. package/dist/core/activity.js.map +0 -1
  575. package/dist/core/control-queue-state.d.ts +0 -29
  576. package/dist/core/control-queue-state.d.ts.map +0 -1
  577. package/dist/core/control-queue-state.js +0 -95
  578. package/dist/core/control-queue-state.js.map +0 -1
  579. package/dist/core/control-queue-traits.d.ts +0 -54
  580. package/dist/core/control-queue-traits.d.ts.map +0 -1
  581. package/dist/core/control-queue-traits.js +0 -118
  582. package/dist/core/control-queue-traits.js.map +0 -1
  583. package/dist/core/control-queue-types.d.ts +0 -45
  584. package/dist/core/control-queue-types.d.ts.map +0 -1
  585. package/dist/core/control-queue-types.js +0 -7
  586. package/dist/core/control-queue-types.js.map +0 -1
  587. package/dist/core/control-queue.d.ts +0 -21
  588. package/dist/core/control-queue.d.ts.map +0 -1
  589. package/dist/core/control-queue.js +0 -98
  590. package/dist/core/control-queue.js.map +0 -1
  591. package/dist/core/list-models.d.ts +0 -44
  592. package/dist/core/list-models.d.ts.map +0 -1
  593. package/dist/core/list-models.js +0 -73
  594. package/dist/core/list-models.js.map +0 -1
  595. package/dist/core/model-picker.d.ts +0 -22
  596. package/dist/core/model-picker.d.ts.map +0 -1
  597. package/dist/core/model-picker.js +0 -58
  598. package/dist/core/model-picker.js.map +0 -1
  599. package/dist/core/model-rows.d.ts +0 -21
  600. package/dist/core/model-rows.d.ts.map +0 -1
  601. package/dist/core/model-rows.js +0 -57
  602. package/dist/core/model-rows.js.map +0 -1
  603. package/dist/core/probe-state.d.ts +0 -21
  604. package/dist/core/probe-state.d.ts.map +0 -1
  605. package/dist/core/probe-state.js +0 -39
  606. package/dist/core/probe-state.js.map +0 -1
  607. package/dist/core/session-input-abort.d.ts +0 -10
  608. package/dist/core/session-input-abort.d.ts.map +0 -1
  609. package/dist/core/session-input-abort.js +0 -44
  610. package/dist/core/session-input-abort.js.map +0 -1
  611. package/dist/core/session-input.d.ts +0 -37
  612. package/dist/core/session-input.d.ts.map +0 -1
  613. package/dist/core/session-input.js +0 -154
  614. package/dist/core/session-input.js.map +0 -1
  615. package/dist/core/session-warnings.d.ts +0 -20
  616. package/dist/core/session-warnings.d.ts.map +0 -1
  617. package/dist/core/session-warnings.js +0 -32
  618. package/dist/core/session-warnings.js.map +0 -1
  619. package/dist/core/simple/loop-controls.d.ts +0 -7
  620. package/dist/core/simple/loop-controls.d.ts.map +0 -1
  621. package/dist/core/simple/loop-controls.js +0 -7
  622. package/dist/core/simple/loop-controls.js.map +0 -1
  623. package/dist/core/startup-automation.d.ts +0 -54
  624. package/dist/core/startup-automation.d.ts.map +0 -1
  625. package/dist/core/startup-automation.js +0 -40
  626. package/dist/core/startup-automation.js.map +0 -1
  627. package/dist/core/startup-frame.d.ts +0 -39
  628. package/dist/core/startup-frame.d.ts.map +0 -1
  629. package/dist/core/startup-frame.js +0 -60
  630. package/dist/core/startup-frame.js.map +0 -1
  631. package/dist/core/startup-write.d.ts +0 -47
  632. package/dist/core/startup-write.d.ts.map +0 -1
  633. package/dist/core/startup-write.js +0 -73
  634. package/dist/core/startup-write.js.map +0 -1
  635. package/dist/core/trust-blocking.d.ts +0 -22
  636. package/dist/core/trust-blocking.d.ts.map +0 -1
  637. package/dist/core/trust-blocking.js +0 -38
  638. package/dist/core/trust-blocking.js.map +0 -1
  639. package/dist/core/trust-prompts.d.ts +0 -135
  640. package/dist/core/trust-prompts.d.ts.map +0 -1
  641. package/dist/core/trust-prompts.js.map +0 -1
  642. package/dist/core/trust-responder.d.ts +0 -48
  643. package/dist/core/trust-responder.d.ts.map +0 -1
  644. package/dist/core/trust-responder.js +0 -119
  645. package/dist/core/trust-responder.js.map +0 -1
  646. package/dist/core/tui-screen.d.ts +0 -21
  647. package/dist/core/tui-screen.d.ts.map +0 -1
  648. package/dist/core/tui-screen.js +0 -56
  649. package/dist/core/tui-screen.js.map +0 -1
  650. package/dist/core/update-warning.d.ts +0 -25
  651. package/dist/core/update-warning.d.ts.map +0 -1
  652. package/dist/core/update-warning.js +0 -33
  653. package/dist/core/update-warning.js.map +0 -1
  654. package/dist/core/warning-lifecycle.d.ts +0 -23
  655. package/dist/core/warning-lifecycle.d.ts.map +0 -1
  656. package/dist/core/warning-lifecycle.js +0 -6
  657. package/dist/core/warning-lifecycle.js.map +0 -1
  658. package/dist/core/warning-reasons.d.ts +0 -62
  659. package/dist/core/warning-reasons.d.ts.map +0 -1
  660. package/dist/core/warning-reasons.js +0 -121
  661. package/dist/core/warning-reasons.js.map +0 -1
  662. package/dist/core/warnings.d.ts +0 -145
  663. package/dist/core/warnings.d.ts.map +0 -1
  664. package/dist/core/warnings.js +0 -12
  665. package/dist/core/warnings.js.map +0 -1
  666. package/dist/runtime/cleanup-latch.d.ts +0 -27
  667. package/dist/runtime/cleanup-latch.d.ts.map +0 -1
  668. package/dist/runtime/cleanup-latch.js +0 -43
  669. package/dist/runtime/cleanup-latch.js.map +0 -1
  670. package/dist/runtime/initial-ready-advance.d.ts +0 -22
  671. package/dist/runtime/initial-ready-advance.d.ts.map +0 -1
  672. package/dist/runtime/initial-ready-advance.js +0 -39
  673. package/dist/runtime/initial-ready-advance.js.map +0 -1
  674. package/dist/runtime/initial-ready-fallback.d.ts +0 -12
  675. package/dist/runtime/initial-ready-fallback.d.ts.map +0 -1
  676. package/dist/runtime/initial-ready-fallback.js +0 -20
  677. package/dist/runtime/initial-ready-fallback.js.map +0 -1
  678. package/dist/runtime/initial-ready.d.ts +0 -49
  679. package/dist/runtime/initial-ready.d.ts.map +0 -1
  680. package/dist/runtime/initial-ready.js +0 -81
  681. package/dist/runtime/initial-ready.js.map +0 -1
  682. package/dist/runtime/reap-tree.d.ts +0 -62
  683. package/dist/runtime/reap-tree.d.ts.map +0 -1
  684. package/dist/runtime/reap-tree.js +0 -108
  685. package/dist/runtime/reap-tree.js.map +0 -1
  686. package/dist/runtime/session-base-types.d.ts +0 -36
  687. package/dist/runtime/session-base-types.d.ts.map +0 -1
  688. package/dist/runtime/session-base-types.js +0 -14
  689. package/dist/runtime/session-base-types.js.map +0 -1
  690. package/dist/runtime/session-base.d.ts +0 -48
  691. package/dist/runtime/session-base.d.ts.map +0 -1
  692. package/dist/runtime/session-base.js +0 -76
  693. package/dist/runtime/session-base.js.map +0 -1
  694. package/dist/runtime/session-commands.d.ts +0 -43
  695. package/dist/runtime/session-commands.d.ts.map +0 -1
  696. package/dist/runtime/session-commands.js +0 -52
  697. package/dist/runtime/session-commands.js.map +0 -1
  698. package/dist/runtime/session-exit.d.ts +0 -16
  699. package/dist/runtime/session-exit.d.ts.map +0 -1
  700. package/dist/runtime/session-exit.js +0 -32
  701. package/dist/runtime/session-exit.js.map +0 -1
  702. package/dist/runtime/session-image-attach.d.ts +0 -45
  703. package/dist/runtime/session-image-attach.d.ts.map +0 -1
  704. package/dist/runtime/session-image-attach.js +0 -82
  705. package/dist/runtime/session-image-attach.js.map +0 -1
  706. package/dist/runtime/session-lifecycle.d.ts +0 -61
  707. package/dist/runtime/session-lifecycle.d.ts.map +0 -1
  708. package/dist/runtime/session-lifecycle.js +0 -164
  709. package/dist/runtime/session-lifecycle.js.map +0 -1
  710. package/dist/runtime/session-loops.d.ts +0 -32
  711. package/dist/runtime/session-loops.d.ts.map +0 -1
  712. package/dist/runtime/session-loops.js +0 -62
  713. package/dist/runtime/session-loops.js.map +0 -1
  714. package/dist/runtime/session-readiness.d.ts +0 -18
  715. package/dist/runtime/session-readiness.d.ts.map +0 -1
  716. package/dist/runtime/session-readiness.js +0 -22
  717. package/dist/runtime/session-readiness.js.map +0 -1
  718. package/dist/runtime/session-reap.d.ts +0 -28
  719. package/dist/runtime/session-reap.d.ts.map +0 -1
  720. package/dist/runtime/session-reap.js +0 -51
  721. package/dist/runtime/session-reap.js.map +0 -1
  722. package/dist/runtime/session-resize.d.ts +0 -20
  723. package/dist/runtime/session-resize.d.ts.map +0 -1
  724. package/dist/runtime/session-resize.js +0 -26
  725. package/dist/runtime/session-resize.js.map +0 -1
  726. package/dist/runtime/session-shutdown-binding.d.ts +0 -30
  727. package/dist/runtime/session-shutdown-binding.d.ts.map +0 -1
  728. package/dist/runtime/session-shutdown-binding.js +0 -37
  729. package/dist/runtime/session-shutdown-binding.js.map +0 -1
  730. package/dist/runtime/session-shutdown.d.ts +0 -60
  731. package/dist/runtime/session-shutdown.d.ts.map +0 -1
  732. package/dist/runtime/session-shutdown.js +0 -140
  733. package/dist/runtime/session-shutdown.js.map +0 -1
  734. package/dist/runtime/session-status-wiring.d.ts +0 -38
  735. package/dist/runtime/session-status-wiring.d.ts.map +0 -1
  736. package/dist/runtime/session-status-wiring.js +0 -41
  737. package/dist/runtime/session-status-wiring.js.map +0 -1
  738. package/dist/runtime/session-status.d.ts +0 -7
  739. package/dist/runtime/session-status.d.ts.map +0 -1
  740. package/dist/runtime/session-status.js +0 -22
  741. package/dist/runtime/session-status.js.map +0 -1
  742. package/dist/runtime/shutdown-coordinator.d.ts +0 -57
  743. package/dist/runtime/shutdown-coordinator.d.ts.map +0 -1
  744. package/dist/runtime/shutdown-coordinator.js +0 -77
  745. package/dist/runtime/shutdown-coordinator.js.map +0 -1
  746. package/dist/runtime/startup-buffer.d.ts +0 -33
  747. package/dist/runtime/startup-buffer.d.ts.map +0 -1
  748. package/dist/runtime/startup-buffer.js +0 -53
  749. package/dist/runtime/startup-buffer.js.map +0 -1
  750. package/dist/runtime/startup-cleanup.d.ts +0 -43
  751. package/dist/runtime/startup-cleanup.d.ts.map +0 -1
  752. package/dist/runtime/startup-cleanup.js +0 -89
  753. package/dist/runtime/startup-cleanup.js.map +0 -1
  754. package/dist/runtime/startup.d.ts +0 -17
  755. package/dist/runtime/startup.d.ts.map +0 -1
  756. package/dist/runtime/startup.js +0 -47
  757. package/dist/runtime/startup.js.map +0 -1
  758. package/dist/runtime/status-emit.d.ts +0 -14
  759. package/dist/runtime/status-emit.d.ts.map +0 -1
  760. package/dist/runtime/status-emit.js +0 -15
  761. package/dist/runtime/status-emit.js.map +0 -1
  762. package/dist/runtime/teardown.d.ts +0 -15
  763. package/dist/runtime/teardown.d.ts.map +0 -1
  764. package/dist/runtime/teardown.js +0 -40
  765. package/dist/runtime/teardown.js.map +0 -1
  766. package/dist/runtime/terminate.d.ts +0 -22
  767. package/dist/runtime/terminate.d.ts.map +0 -1
  768. package/dist/runtime/terminate.js +0 -129
  769. package/dist/runtime/terminate.js.map +0 -1
  770. package/dist/runtime/update-lock.d.ts +0 -19
  771. package/dist/runtime/update-lock.d.ts.map +0 -1
  772. package/dist/runtime/update-lock.js +0 -183
  773. package/dist/runtime/update-lock.js.map +0 -1
  774. package/dist/runtime/update-once.d.ts +0 -40
  775. package/dist/runtime/update-once.d.ts.map +0 -1
  776. package/dist/runtime/update-once.js +0 -88
  777. package/dist/runtime/update-once.js.map +0 -1
@@ -1,26 +0,0 @@
1
- /**
2
- * One static table for the run command's long options. It drives argument
3
- * parsing, explicit-flag tracking, flag decoding, and "Did you mean" suggestions,
4
- * so a new option cannot be registered in one place and forgotten in another.
5
- * Implements PRD §12A.1/§12A.5 and C-CLI-02/C-CLI-06/C-CLI-20.
6
- */
7
- import type { ParseArgsOptionsConfig } from "node:util";
8
- import type { RunOptionKey } from "./types.ts";
9
- export type RunOptionSpec = {
10
- readonly type: "string";
11
- /** `RunFlags` field the option sets. */
12
- readonly key: RunOptionKey;
13
- readonly short?: string;
14
- readonly multiple?: true;
15
- } | {
16
- readonly type: "boolean";
17
- readonly key: RunOptionKey;
18
- /** Value assigned when the option is present; negative flags assign `false`. */
19
- readonly value: boolean;
20
- };
21
- export declare const runOptionTable: Readonly<Record<string, RunOptionSpec>>;
22
- /** `node:util` parseArgs configuration: every run option plus the two metadata switches. */
23
- export declare const parseOptions: ParseArgsOptionsConfig;
24
- /** Every long option the parser accepts, for near-miss suggestions (C-CLI-20). */
25
- export declare const longOptions: readonly string[];
26
- //# sourceMappingURL=arg-options.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"arg-options.d.ts","sourceRoot":"","sources":["../../src/cli/arg-options.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,WAAW,CAAC;AACxD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAE/C,MAAM,MAAM,aAAa,GACrB;IACE,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC;IACxB,wCAAwC;IACxC,QAAQ,CAAC,GAAG,EAAE,YAAY,CAAC;IAC3B,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,QAAQ,CAAC,EAAE,IAAI,CAAC;CAC1B,GACD;IACE,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC;IACzB,QAAQ,CAAC,GAAG,EAAE,YAAY,CAAC;IAC3B,gFAAgF;IAChF,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC;CACzB,CAAC;AAEN,eAAO,MAAM,cAAc,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,CAyBlE,CAAC;AAEF,4FAA4F;AAC5F,eAAO,MAAM,YAAY,EAAE,sBAM1B,CAAC;AAEF,kFAAkF;AAClF,eAAO,MAAM,WAAW,EAAE,SAAS,MAAM,EAAyD,CAAC"}
@@ -1,50 +0,0 @@
1
- /**
2
- * One static table for the run command's long options. It drives argument
3
- * parsing, explicit-flag tracking, flag decoding, and "Did you mean" suggestions,
4
- * so a new option cannot be registered in one place and forgotten in another.
5
- * Implements PRD §12A.1/§12A.5 and C-CLI-02/C-CLI-06/C-CLI-20.
6
- */
7
- export const runOptionTable = {
8
- agent: { type: "string", key: "agent" },
9
- output: { type: "string", key: "output" },
10
- timeout: { type: "string", key: "timeout" },
11
- trust: { type: "boolean", key: "trust", value: true },
12
- "no-trust": { type: "boolean", key: "trust", value: false },
13
- "state-dir": { type: "string", key: "stateDir" },
14
- verbose: { type: "boolean", key: "verbose", value: true },
15
- "no-verbose": { type: "boolean", key: "verbose", value: false },
16
- stream: { type: "boolean", key: "stream", value: true },
17
- "no-stream": { type: "boolean", key: "stream", value: false },
18
- debug: { type: "boolean", key: "debug", value: true },
19
- "no-defaults": { type: "boolean", key: "ignoreDefaults", value: true },
20
- head: { type: "boolean", key: "head", value: true },
21
- persona: { type: "string", key: "persona" },
22
- model: { type: "string", key: "model" },
23
- "reasoning-effort": { type: "string", key: "reasoningEffort" },
24
- "claude-permission-mode": { type: "string", key: "claudePermissionMode" },
25
- "codex-sandbox": { type: "string", key: "codexSandbox" },
26
- "codex-approval-policy": { type: "string", key: "codexApprovalPolicy" },
27
- cwd: { type: "string", key: "cwd", short: "C" },
28
- image: { type: "string", key: "images", multiple: true },
29
- keep: { type: "boolean", key: "keep", value: true },
30
- resume: { type: "string", key: "resume" },
31
- ephemeral: { type: "boolean", key: "ephemeral", value: true },
32
- };
33
- /** `node:util` parseArgs configuration: every run option plus the two metadata switches. */
34
- export const parseOptions = {
35
- ...Object.fromEntries(Object.entries(runOptionTable).map(([name, spec]) => [name, parseOption(spec)])),
36
- help: { type: "boolean", short: "h" },
37
- version: { type: "boolean", short: "V" },
38
- };
39
- /** Every long option the parser accepts, for near-miss suggestions (C-CLI-20). */
40
- export const longOptions = Object.keys(parseOptions).map((name) => `--${name}`);
41
- function parseOption(spec) {
42
- if (spec.type === "boolean")
43
- return { type: "boolean" };
44
- return {
45
- type: "string",
46
- ...(spec.short === undefined ? {} : { short: spec.short }),
47
- ...(spec.multiple === undefined ? {} : { multiple: spec.multiple }),
48
- };
49
- }
50
- //# sourceMappingURL=arg-options.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"arg-options.js","sourceRoot":"","sources":["../../src/cli/arg-options.ts"],"names":[],"mappings":"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"}
@@ -1,7 +0,0 @@
1
- /**
2
- * Parses Elwood's hybrid direct/explicit command grammar without side effects.
3
- * Implements PRD §12A.1 and C-CLI-02/C-CLI-04/C-CLI-06.
4
- */
5
- import { type ParsedCliCommand } from "./types.ts";
6
- export declare function parseCliArgs(argv: readonly string[]): ParsedCliCommand;
7
- //# sourceMappingURL=args.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"args.d.ts","sourceRoot":"","sources":["../../src/cli/args.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAKH,OAAO,EAEL,KAAK,gBAAgB,EAGtB,MAAM,YAAY,CAAC;AAEpB,wBAAgB,YAAY,CAAC,IAAI,EAAE,SAAS,MAAM,EAAE,GAAG,gBAAgB,CA4BtE"}
package/dist/cli/args.js DELETED
@@ -1,70 +0,0 @@
1
- /**
2
- * Parses Elwood's hybrid direct/explicit command grammar without side effects.
3
- * Implements PRD §12A.1 and C-CLI-02/C-CLI-04/C-CLI-06.
4
- */
5
- import { parseArgs } from "node:util";
6
- import { argumentErrorMessage } from "./arg-errors.js";
7
- import { parseOptions, runOptionTable } from "./arg-options.js";
8
- import { CliValidationError, } from "./types.js";
9
- export function parseCliArgs(argv) {
10
- if (argv.length === 0)
11
- return { command: "help" };
12
- if (argv[0] === "help")
13
- return { command: "help" };
14
- if (argv[0] === "config")
15
- return { command: "config", args: argv.slice(1) };
16
- const runArgs = argv[0] === "run" ? argv.slice(1) : argv;
17
- try {
18
- const parsed = parseArgs({
19
- args: runArgs,
20
- options: parseOptions,
21
- allowPositionals: true,
22
- strict: true,
23
- tokens: true,
24
- });
25
- if (parsed.values["help"] === true)
26
- return { command: "help" };
27
- if (parsed.values["version"] === true)
28
- return { command: "version" };
29
- rejectBooleanPair(parsed.values, "trust", "no-trust");
30
- rejectBooleanPair(parsed.values, "stream", "no-stream");
31
- rejectBooleanPair(parsed.values, "verbose", "no-verbose");
32
- return {
33
- command: "run",
34
- flags: flagsFrom(parsed.values),
35
- explicit: explicitOptions(parsed.tokens),
36
- promptWords: parsed.positionals,
37
- };
38
- }
39
- catch (error) {
40
- if (error instanceof CliValidationError)
41
- throw error;
42
- throw new CliValidationError("invalid_arguments", argumentErrorMessage(error));
43
- }
44
- }
45
- /** Decode parsed values through the option table; boolean options set their configured value. */
46
- function flagsFrom(values) {
47
- const flags = { images: [] };
48
- for (const [name, spec] of Object.entries(runOptionTable)) {
49
- const value = values[name];
50
- if (value === undefined)
51
- continue;
52
- flags[spec.key] = spec.type === "boolean" ? spec.value : value;
53
- }
54
- return flags;
55
- }
56
- function rejectBooleanPair(values, positive, negative) {
57
- if (values[positive] === true && values[negative] === true) {
58
- throw new CliValidationError("invalid_arguments", `--${positive} and --${negative} cannot be combined.`);
59
- }
60
- }
61
- function explicitOptions(tokens) {
62
- const explicit = new Set();
63
- for (const token of tokens) {
64
- if (token.kind !== "option" || token.name === undefined)
65
- continue;
66
- explicit.add(runOptionTable[token.name].key);
67
- }
68
- return explicit;
69
- }
70
- //# sourceMappingURL=args.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"args.js","sourceRoot":"","sources":["../../src/cli/args.ts"],"names":[],"mappings":"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"}
@@ -1,13 +0,0 @@
1
- /**
2
- * Pure cleanup-policy and execution-error classification for the CLI lifecycle owner.
3
- * Implements PRD §12A.2/§12A.5 and C-CLI-08/C-CLI-17.
4
- */
5
- import type { EffectiveRunRequest } from "./types.ts";
6
- export type CliFailure = {
7
- readonly code: string;
8
- readonly message: string;
9
- readonly exitCode: 1 | 124 | 130;
10
- };
11
- export declare function cleanupAction(request: EffectiveRunRequest): "preserve" | "teardown";
12
- export declare function executionFailure(error: unknown): CliFailure;
13
- //# sourceMappingURL=lifecycle-outcome.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"lifecycle-outcome.d.ts","sourceRoot":"","sources":["../../src/cli/lifecycle-outcome.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AAEtD,MAAM,MAAM,UAAU,GAAG;IACvB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,QAAQ,EAAE,CAAC,GAAG,GAAG,GAAG,GAAG,CAAC;CAClC,CAAC;AAEF,wBAAgB,aAAa,CAAC,OAAO,EAAE,mBAAmB,GAAG,UAAU,GAAG,UAAU,CAQnF;AAED,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,OAAO,GAAG,UAAU,CAI3D"}
@@ -1,20 +0,0 @@
1
- /**
2
- * Pure cleanup-policy and execution-error classification for the CLI lifecycle owner.
3
- * Implements PRD §12A.2/§12A.5 and C-CLI-08/C-CLI-17.
4
- */
5
- import { ElwoodError } from "../core/errors.js";
6
- export function cleanupAction(request) {
7
- return request.resume === undefined
8
- ? request.keep
9
- ? "preserve"
10
- : "teardown"
11
- : request.ephemeral
12
- ? "teardown"
13
- : "preserve";
14
- }
15
- export function executionFailure(error) {
16
- if (error instanceof ElwoodError)
17
- return { code: error.code, message: error.message, exitCode: 1 };
18
- return { code: "runtime_error", message: "Agent execution failed.", exitCode: 1 };
19
- }
20
- //# sourceMappingURL=lifecycle-outcome.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"lifecycle-outcome.js","sourceRoot":"","sources":["../../src/cli/lifecycle-outcome.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAShD,MAAM,UAAU,aAAa,CAAC,OAA4B;IACxD,OAAO,OAAO,CAAC,MAAM,KAAK,SAAS;QACjC,CAAC,CAAC,OAAO,CAAC,IAAI;YACZ,CAAC,CAAC,UAAU;YACZ,CAAC,CAAC,UAAU;QACd,CAAC,CAAC,OAAO,CAAC,SAAS;YACjB,CAAC,CAAC,UAAU;YACZ,CAAC,CAAC,UAAU,CAAC;AACnB,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,KAAc;IAC7C,IAAI,KAAK,YAAY,WAAW;QAC9B,OAAO,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,QAAQ,EAAE,CAAC,EAAE,CAAC;IACnE,OAAO,EAAE,IAAI,EAAE,eAAe,EAAE,OAAO,EAAE,yBAAyB,EAAE,QAAQ,EAAE,CAAC,EAAE,CAAC;AACpF,CAAC"}
@@ -1,61 +0,0 @@
1
- /**
2
- * Single owner for CLI deadlines, SIGINT escalation, primary outcomes, and cleanup.
3
- * Implements PRD §12A.2/§12A.5 and C-CLI-07 through C-CLI-09/C-CLI-17.
4
- */
5
- import type { Unsubscribe } from "../core/types.ts";
6
- import { type CliFailure } from "./lifecycle-outcome.ts";
7
- import type { CliCleanup } from "./output/types.ts";
8
- import type { CliSessionFacade } from "./session.ts";
9
- import type { EffectiveRunRequest } from "./types.ts";
10
- export type CliSignalSource = {
11
- readonly onSigint: (handler: () => void) => Unsubscribe;
12
- };
13
- export type CliLifecycleClock = {
14
- readonly now: () => number;
15
- readonly setTimer: (handler: () => void, delayMs: number) => unknown;
16
- readonly clearTimer: (timer: unknown) => void;
17
- };
18
- export type LifecycleRace<T> = {
19
- readonly completed: true;
20
- readonly value: T;
21
- } | {
22
- readonly completed: false;
23
- };
24
- export declare class CliLifecycle {
25
- private readonly request;
26
- private readonly session;
27
- private readonly signals;
28
- private readonly clock;
29
- private readonly startedAt;
30
- private readonly stopped;
31
- private stop;
32
- private failureValue;
33
- private consumerClosedValue;
34
- private launchStarted;
35
- private cleaning;
36
- private sigints;
37
- private timer;
38
- private unbind;
39
- private cleanupPromise;
40
- constructor(request: EffectiveRunRequest, session: CliSessionFacade, signals: CliSignalSource, clock?: CliLifecycleClock);
41
- start(): void;
42
- beginLaunch(): void;
43
- get failure(): CliFailure | undefined;
44
- get consumerClosed(): boolean;
45
- durationMs(): number;
46
- race<T>(operation: Promise<T>): Promise<LifecycleRace<T>>;
47
- block(label: string): void;
48
- agentExited(): void;
49
- fail(error: unknown): void;
50
- closeConsumer(): void;
51
- cleanup(): Promise<CliCleanup>;
52
- dispose(): void;
53
- interrupt(): void;
54
- private record;
55
- private onSigint;
56
- private requestControl;
57
- private armDeadline;
58
- private clearDeadline;
59
- private performCleanup;
60
- }
61
- //# sourceMappingURL=lifecycle.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"lifecycle.d.ts","sourceRoot":"","sources":["../../src/cli/lifecycle.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AACpD,OAAO,EAAE,KAAK,UAAU,EAAmC,MAAM,wBAAwB,CAAC;AAC1F,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AACrD,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AAItD,MAAM,MAAM,eAAe,GAAG;IAAE,QAAQ,CAAC,QAAQ,EAAE,CAAC,OAAO,EAAE,MAAM,IAAI,KAAK,WAAW,CAAA;CAAE,CAAC;AAC1F,MAAM,MAAM,iBAAiB,GAAG;IAC9B,QAAQ,CAAC,GAAG,EAAE,MAAM,MAAM,CAAC;IAC3B,QAAQ,CAAC,QAAQ,EAAE,CAAC,OAAO,EAAE,MAAM,IAAI,EAAE,OAAO,EAAE,MAAM,KAAK,OAAO,CAAC;IACrE,QAAQ,CAAC,UAAU,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,CAAC;CAC/C,CAAC;AACF,MAAM,MAAM,aAAa,CAAC,CAAC,IACvB;IAAE,QAAQ,CAAC,SAAS,EAAE,IAAI,CAAC;IAAC,QAAQ,CAAC,KAAK,EAAE,CAAC,CAAA;CAAE,GAC/C;IAAE,QAAQ,CAAC,SAAS,EAAE,KAAK,CAAA;CAAE,CAAC;AAQlC,qBAAa,YAAY;IACvB,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAsB;IAC9C,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAmB;IAC3C,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAkB;IAC1C,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAoB;IAC1C,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAS;IACnC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAgB;IACxC,OAAO,CAAC,IAAI,CAAc;IAC1B,OAAO,CAAC,YAAY,CAAyB;IAC7C,OAAO,CAAC,mBAAmB,CAAS;IACpC,OAAO,CAAC,aAAa,CAAS;IAC9B,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,OAAO,CAAK;IACpB,OAAO,CAAC,KAAK,CAAU;IACvB,OAAO,CAAC,MAAM,CAA0B;IACxC,OAAO,CAAC,cAAc,CAAkC;gBAGtD,OAAO,EAAE,mBAAmB,EAC5B,OAAO,EAAE,gBAAgB,EACzB,OAAO,EAAE,eAAe,EACxB,KAAK,GAAE,iBAA6B;IAYtC,KAAK,IAAI,IAAI;IAKb,WAAW,IAAI,IAAI;IAInB,IAAI,OAAO,IAAI,UAAU,GAAG,SAAS,CAEpC;IAED,IAAI,cAAc,IAAI,OAAO,CAE5B;IAED,UAAU,IAAI,MAAM;IAIpB,IAAI,CAAC,CAAC,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;IAOzD,KAAK,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAK1B,WAAW,IAAI,IAAI;IASnB,IAAI,CAAC,KAAK,EAAE,OAAO,GAAG,IAAI;IAI1B,aAAa,IAAI,IAAI;IAOrB,OAAO,IAAI,OAAO,CAAC,UAAU,CAAC;IAK9B,OAAO,IAAI,IAAI;IAMf,SAAS,IAAI,IAAI;IAIjB,OAAO,CAAC,MAAM;IAOd,OAAO,CAAC,QAAQ;IAQhB,OAAO,CAAC,cAAc;IAQtB,OAAO,CAAC,WAAW;IAcnB,OAAO,CAAC,aAAa;YAKP,cAAc;CAY7B"}
@@ -1,152 +0,0 @@
1
- /**
2
- * Single owner for CLI deadlines, SIGINT escalation, primary outcomes, and cleanup.
3
- * Implements PRD §12A.2/§12A.5 and C-CLI-07 through C-CLI-09/C-CLI-17.
4
- */
5
- import { cleanupAction, executionFailure } from "./lifecycle-outcome.js";
6
- const MAX_TIMER_MS = 2_147_483_647;
7
- const realClock = {
8
- now: Date.now,
9
- setTimer: (handler, delayMs) => setTimeout(handler, delayMs),
10
- clearTimer: (timer) => clearTimeout(timer),
11
- };
12
- export class CliLifecycle {
13
- request;
14
- session;
15
- signals;
16
- clock;
17
- startedAt;
18
- stopped;
19
- stop;
20
- failureValue;
21
- consumerClosedValue = false;
22
- launchStarted = false;
23
- cleaning = false;
24
- sigints = 0;
25
- timer;
26
- unbind;
27
- cleanupPromise;
28
- constructor(request, session, signals, clock = realClock) {
29
- this.request = request;
30
- this.session = session;
31
- this.signals = signals;
32
- this.clock = clock;
33
- this.startedAt = clock.now();
34
- this.stopped = new Promise((resolve) => {
35
- this.stop = resolve;
36
- });
37
- }
38
- start() {
39
- this.unbind = this.signals.onSigint(() => this.onSigint());
40
- if (this.request.timeoutMs !== undefined)
41
- this.armDeadline(this.request.timeoutMs);
42
- }
43
- beginLaunch() {
44
- this.launchStarted = true;
45
- }
46
- get failure() {
47
- return this.failureValue;
48
- }
49
- get consumerClosed() {
50
- return this.consumerClosedValue;
51
- }
52
- durationMs() {
53
- return Math.max(0, Math.trunc(this.clock.now() - this.startedAt));
54
- }
55
- race(operation) {
56
- return Promise.race([
57
- operation.then((value) => ({ completed: true, value })),
58
- this.stopped.then(() => ({ completed: false })),
59
- ]);
60
- }
61
- block(label) {
62
- if (this.record({ code: "blocked_prompt", message: `Blocked prompt: ${label}.`, exitCode: 1 }))
63
- this.requestControl("kill");
64
- }
65
- agentExited() {
66
- if (this.cleaning)
67
- return;
68
- this.record({
69
- code: "agent_exited",
70
- message: "Agent exited before completing the turn.",
71
- exitCode: 1,
72
- });
73
- }
74
- fail(error) {
75
- this.record(executionFailure(error));
76
- }
77
- closeConsumer() {
78
- if (this.failureValue !== undefined || this.consumerClosedValue)
79
- return;
80
- this.consumerClosedValue = true;
81
- this.stop();
82
- this.requestControl("interrupt");
83
- }
84
- cleanup() {
85
- this.cleanupPromise ??= this.performCleanup();
86
- return this.cleanupPromise;
87
- }
88
- dispose() {
89
- this.unbind?.();
90
- this.unbind = undefined;
91
- this.clearDeadline();
92
- }
93
- interrupt() {
94
- this.onSigint();
95
- }
96
- record(failure) {
97
- if (this.failureValue !== undefined || this.consumerClosedValue)
98
- return false;
99
- this.failureValue = failure;
100
- this.stop();
101
- return true;
102
- }
103
- onSigint() {
104
- this.sigints += 1;
105
- if (this.sigints === 1) {
106
- this.record({ code: "interrupted", message: "Interrupted.", exitCode: 130 });
107
- this.requestControl("interrupt");
108
- }
109
- else
110
- this.requestControl("kill");
111
- }
112
- requestControl(action) {
113
- if (!this.launchStarted)
114
- return;
115
- void this.session
116
- .start()
117
- .then(() => (action === "interrupt" ? this.session.interrupt() : this.session.kill()))
118
- .catch(() => undefined);
119
- }
120
- armDeadline(timeoutMs) {
121
- const deadline = Math.min(Number.MAX_SAFE_INTEGER, this.startedAt + timeoutMs);
122
- const tick = () => {
123
- const remaining = deadline - this.clock.now();
124
- if (remaining > 0) {
125
- this.timer = this.clock.setTimer(tick, Math.min(remaining, MAX_TIMER_MS));
126
- return;
127
- }
128
- if (this.record({ code: "timeout", message: "Timed out.", exitCode: 124 }))
129
- this.requestControl("interrupt");
130
- };
131
- this.timer = this.clock.setTimer(tick, Math.min(timeoutMs, MAX_TIMER_MS));
132
- }
133
- clearDeadline() {
134
- if (this.timer !== undefined)
135
- this.clock.clearTimer(this.timer);
136
- this.timer = undefined;
137
- }
138
- async performCleanup() {
139
- this.cleaning = true;
140
- this.clearDeadline();
141
- const action = cleanupAction(this.request);
142
- try {
143
- await (action === "teardown" ? this.session.teardown() : this.session.close());
144
- return { action, status: "succeeded" };
145
- }
146
- catch {
147
- this.record({ code: "cleanup_failed", message: "Cleanup failed.", exitCode: 1 });
148
- return { action, status: "failed", error: "Cleanup failed." };
149
- }
150
- }
151
- }
152
- //# sourceMappingURL=lifecycle.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"lifecycle.js","sourceRoot":"","sources":["../../src/cli/lifecycle.ts"],"names":[],"mappings":"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"}
@@ -1,10 +0,0 @@
1
- /**
2
- * Finalizes adapter-dependent resume options, workspace, and images.
3
- * Implements PRD §12A.1/§12A.2 and C-CLI-03/C-CLI-04/C-CLI-06/C-CLI-08.
4
- */
5
- import { type CliAgent, type EffectiveRunRequest, type ResolvedRunRequest } from "./types.ts";
6
- export declare function finalizeRunRequest(draft: ResolvedRunRequest, stored?: {
7
- readonly agent: CliAgent;
8
- readonly cwd: string;
9
- }): Promise<EffectiveRunRequest>;
10
- //# sourceMappingURL=request-finalize.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"request-finalize.d.ts","sourceRoot":"","sources":["../../src/cli/request-finalize.ts"],"names":[],"mappings":"AAAA;;;GAGG;AASH,OAAO,EAEL,KAAK,QAAQ,EAEb,KAAK,mBAAmB,EACxB,KAAK,kBAAkB,EACxB,MAAM,YAAY,CAAC;AAEpB,wBAAsB,kBAAkB,CACtC,KAAK,EAAE,kBAAkB,EACzB,MAAM,CAAC,EAAE;IAAE,QAAQ,CAAC,KAAK,EAAE,QAAQ,CAAC;IAAC,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAA;CAAE,GAC1D,OAAO,CAAC,mBAAmB,CAAC,CAgB9B"}
@@ -1,135 +0,0 @@
1
- /**
2
- * Finalizes adapter-dependent resume options, workspace, and images.
3
- * Implements PRD §12A.1/§12A.2 and C-CLI-03/C-CLI-04/C-CLI-06/C-CLI-08.
4
- */
5
- import { stat } from "node:fs/promises";
6
- import { isAbsolute, resolve } from "node:path";
7
- import { errnoCode } from "../core/errors.js";
8
- import { validateImages } from "../core/images/resolve.js";
9
- import { claudeReasoningEfforts, codexReasoningEfforts } from "../core/reasoning-effort.js";
10
- import { settingConflict } from "./request-validation.js";
11
- import { choice, nonBlank, optional, usage } from "./request-values.js";
12
- import { agentDisplayName, } from "./types.js";
13
- export async function finalizeRunRequest(draft, stored) {
14
- validateStored(draft, stored);
15
- const agent = stored?.agent ?? draft.agent;
16
- validateEffectiveAgent(draft, agent);
17
- const cwd = stored?.cwd ?? draft.cwd;
18
- if (cwd === undefined)
19
- throw usage("The effective workspace could not be resolved.");
20
- if (!isAbsolute(cwd))
21
- throw usage(`Workspace '${cwd}' must be an absolute path.`);
22
- const info = await workspaceStat(cwd);
23
- if (!info.isDirectory())
24
- throw usage(`Workspace '${cwd}' is not a directory.`);
25
- const uid = process.getuid?.();
26
- if (uid !== undefined && info.uid !== uid)
27
- throw usage(`Workspace '${cwd}' must be owned by the current user.`);
28
- const images = await validateImages(draft.imagePaths.map((path) => ({ path: resolve(cwd, nonBlank(path, "image")) })));
29
- return effectiveRequest(draft, agent, cwd, images, stored !== undefined);
30
- }
31
- async function workspaceStat(cwd) {
32
- try {
33
- return await stat(cwd);
34
- }
35
- catch (error) {
36
- if (errnoCode(error) === "ENOENT")
37
- throw usage(`Workspace '${cwd}' does not exist.`);
38
- throw usage(`Workspace '${cwd}' could not be inspected.`);
39
- }
40
- }
41
- function validateStored(draft, stored) {
42
- if (draft.resume !== undefined && stored === undefined)
43
- throw usage("Stored session data is required to resolve a resume.");
44
- if (stored !== undefined && draft.cwdExplicit === true)
45
- throw usage("--cwd cannot be used with --resume; resume uses the stored workspace.");
46
- if (stored !== undefined &&
47
- draft.explicitAgent !== undefined &&
48
- draft.explicitAgent !== stored.agent) {
49
- const sources = invocationSources(draft.resolution?.sources.agent);
50
- throw usage(sources.length === 0
51
- ? "The explicit agent conflicts with the stored session adapter."
52
- : settingConflict(sources, `the stored ${agentDisplayName(stored.agent)} session`));
53
- }
54
- }
55
- function validateEffectiveAgent(draft, agent) {
56
- if (agent === "codex" && draft.claudeOptionsExplicit === true) {
57
- const sources = invocationSources(draft.resolution?.sources.permissionMode);
58
- throw usage(sources.length === 0
59
- ? "Claude permission mode is incompatible with Codex."
60
- : settingConflict(sources, "Codex"));
61
- }
62
- if (agent === "claude" && draft.codexOptionsExplicit === true) {
63
- const sources = invocationSources(draft.resolution?.sources.sandbox, draft.resolution?.sources.approvalPolicy);
64
- throw usage(sources.length === 0
65
- ? "Codex launch options are incompatible with Claude."
66
- : settingConflict(sources, "Claude"));
67
- }
68
- }
69
- function invocationSources(...sources) {
70
- return sources.filter((source) => source?.startsWith("--") === true || source?.startsWith("ELWOOD_") === true);
71
- }
72
- function effectiveRequest(draft, agent, cwd, images, resumed) {
73
- const selected = draft.agentOptions?.[agent] ?? {
74
- ...(draft.model === undefined ? {} : { model: draft.model }),
75
- ...(draft.reasoningEffort === undefined ? {} : { reasoningEffort: draft.reasoningEffort }),
76
- };
77
- const { agent: _agent, imagePaths: _imagePaths, cwd: _cwd, model: _model, reasoningEffort: _effort, permissionMode: _permission, sandbox: _sandbox, approvalPolicy: _approval, agentOptions: _agentOptions, claudeOptionsExplicit: _claudeExplicit, codexOptionsExplicit: _codexExplicit, head: _head, ...rest } = draft;
78
- const resolution = effectiveResolution(draft, agent, resumed);
79
- return {
80
- ...rest,
81
- cwd,
82
- images,
83
- ...optional(selected.model, "model"),
84
- ...agentEffort(agent, selected.reasoningEffort),
85
- ...(agent === "claude" && { permissionMode: draft.permissionMode ?? "dontAsk" }),
86
- ...(agent === "codex" && {
87
- sandbox: draft.sandbox ?? "workspace-write",
88
- approvalPolicy: draft.approvalPolicy ?? "never",
89
- }),
90
- ...optional(resolution, "resolution"),
91
- };
92
- }
93
- /** Narrow the effort to the effective adapter's vocabulary before launch (C-CLI-06). */
94
- function agentEffort(agent, value) {
95
- return agent === "claude"
96
- ? {
97
- agent,
98
- ...optional(choice(value, claudeReasoningEfforts, "reasoningEffort"), "reasoningEffort"),
99
- }
100
- : {
101
- agent,
102
- ...optional(choice(value, codexReasoningEfforts, "reasoningEffort"), "reasoningEffort"),
103
- };
104
- }
105
- function effectiveResolution(draft, agent, resumed) {
106
- const resolution = draft.resolution;
107
- if (resolution === undefined)
108
- return undefined;
109
- return {
110
- ...resolution,
111
- sources: {
112
- ...resolution.sources,
113
- agent: resumed ? `stored session ${draft.resume}` : resolution.sources.agent,
114
- workspace: resumed ? `stored session ${draft.resume}` : resolution.sources.workspace,
115
- model: resolution.agentOptionSources[agent].model,
116
- reasoningEffort: resolution.agentOptionSources[agent].reasoningEffort,
117
- permissionMode: agent === "claude"
118
- ? draft.permissionMode === undefined
119
- ? "built-in"
120
- : resolution.sources.permissionMode
121
- : "not applicable",
122
- sandbox: agent === "codex"
123
- ? draft.sandbox === undefined
124
- ? "built-in"
125
- : resolution.sources.sandbox
126
- : "not applicable",
127
- approvalPolicy: agent === "codex"
128
- ? draft.approvalPolicy === undefined
129
- ? "built-in"
130
- : resolution.sources.approvalPolicy
131
- : "not applicable",
132
- },
133
- };
134
- }
135
- //# sourceMappingURL=request-finalize.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"request-finalize.js","sourceRoot":"","sources":["../../src/cli/request-finalize.ts"],"names":[],"mappings":"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"}