@with-logic/elwood 0.1.0 → 0.1.1

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 (673) hide show
  1. package/CHANGELOG.md +166 -1
  2. package/LICENSE +1 -1
  3. package/README.md +276 -13
  4. package/dist/claude/command.d.ts +9 -2
  5. package/dist/claude/command.d.ts.map +1 -1
  6. package/dist/claude/command.js +23 -16
  7. package/dist/claude/command.js.map +1 -1
  8. package/dist/claude/session/index.d.ts.map +1 -1
  9. package/dist/claude/session/index.js +5 -2
  10. package/dist/claude/session/index.js.map +1 -1
  11. package/dist/claude/session/resume.d.ts +1 -1
  12. package/dist/claude/session/resume.d.ts.map +1 -1
  13. package/dist/claude/session/resume.js +5 -1
  14. package/dist/claude/session/resume.js.map +1 -1
  15. package/dist/claude/simple.d.ts.map +1 -1
  16. package/dist/claude/simple.js +4 -0
  17. package/dist/claude/simple.js.map +1 -1
  18. package/dist/cli/args/index.d.ts +3 -1
  19. package/dist/cli/args/index.d.ts.map +1 -1
  20. package/dist/cli/args/index.js +10 -2
  21. package/dist/cli/args/index.js.map +1 -1
  22. package/dist/cli/args/options.d.ts.map +1 -1
  23. package/dist/cli/args/options.js +2 -0
  24. package/dist/cli/args/options.js.map +1 -1
  25. package/dist/cli/args-commands.d.ts +10 -0
  26. package/dist/cli/args-commands.d.ts.map +1 -0
  27. package/dist/cli/args-commands.js +113 -0
  28. package/dist/cli/args-commands.js.map +1 -0
  29. package/dist/cli/command-types.d.ts +26 -0
  30. package/dist/cli/command-types.d.ts.map +1 -0
  31. package/dist/cli/command-types.js +9 -0
  32. package/dist/cli/command-types.js.map +1 -0
  33. package/dist/cli/config/codec-primitives.d.ts +20 -0
  34. package/dist/cli/config/codec-primitives.d.ts.map +1 -0
  35. package/dist/cli/config/codec-primitives.js +51 -0
  36. package/dist/cli/config/codec-primitives.js.map +1 -0
  37. package/dist/cli/config/codec.d.ts.map +1 -1
  38. package/dist/cli/config/codec.js +4 -46
  39. package/dist/cli/config/codec.js.map +1 -1
  40. package/dist/cli/config/effective.d.ts.map +1 -1
  41. package/dist/cli/config/effective.js +1 -0
  42. package/dist/cli/config/effective.js.map +1 -1
  43. package/dist/cli/config/keys.d.ts +1 -1
  44. package/dist/cli/config/keys.d.ts.map +1 -1
  45. package/dist/cli/config/keys.js +1 -0
  46. package/dist/cli/config/keys.js.map +1 -1
  47. package/dist/cli/entry.d.ts +4 -2
  48. package/dist/cli/entry.d.ts.map +1 -1
  49. package/dist/cli/entry.js +2 -1
  50. package/dist/cli/entry.js.map +1 -1
  51. package/dist/cli/help.d.ts +2 -2
  52. package/dist/cli/help.d.ts.map +1 -1
  53. package/dist/cli/help.js +40 -1
  54. package/dist/cli/help.js.map +1 -1
  55. package/dist/cli/interactive/index.d.ts +26 -0
  56. package/dist/cli/interactive/index.d.ts.map +1 -0
  57. package/dist/cli/interactive/index.js +33 -0
  58. package/dist/cli/interactive/index.js.map +1 -0
  59. package/dist/cli/interactive/launch.d.ts +14 -0
  60. package/dist/cli/interactive/launch.d.ts.map +1 -0
  61. package/dist/cli/interactive/launch.js +66 -0
  62. package/dist/cli/interactive/launch.js.map +1 -0
  63. package/dist/cli/interactive/spawn.d.ts +18 -0
  64. package/dist/cli/interactive/spawn.d.ts.map +1 -0
  65. package/dist/cli/interactive/spawn.js +32 -0
  66. package/dist/cli/interactive/spawn.js.map +1 -0
  67. package/dist/cli/main-failure.d.ts +28 -0
  68. package/dist/cli/main-failure.d.ts.map +1 -0
  69. package/dist/cli/main-failure.js +78 -0
  70. package/dist/cli/main-failure.js.map +1 -0
  71. package/dist/cli/main.d.ts +12 -4
  72. package/dist/cli/main.d.ts.map +1 -1
  73. package/dist/cli/main.js +27 -73
  74. package/dist/cli/main.js.map +1 -1
  75. package/dist/cli/models/index.d.ts +20 -0
  76. package/dist/cli/models/index.d.ts.map +1 -0
  77. package/dist/cli/models/index.js +60 -0
  78. package/dist/cli/models/index.js.map +1 -0
  79. package/dist/cli/models/render.d.ts +9 -0
  80. package/dist/cli/models/render.d.ts.map +1 -0
  81. package/dist/cli/models/render.js +33 -0
  82. package/dist/cli/models/render.js.map +1 -0
  83. package/dist/cli/request/index.d.ts.map +1 -1
  84. package/dist/cli/request/index.js +8 -2
  85. package/dist/cli/request/index.js.map +1 -1
  86. package/dist/cli/request/posture.d.ts +28 -0
  87. package/dist/cli/request/posture.d.ts.map +1 -0
  88. package/dist/cli/request/posture.js +70 -0
  89. package/dist/cli/request/posture.js.map +1 -0
  90. package/dist/cli/request/resolution-types.d.ts +1 -0
  91. package/dist/cli/request/resolution-types.d.ts.map +1 -1
  92. package/dist/cli/request/settings.d.ts +2 -12
  93. package/dist/cli/request/settings.d.ts.map +1 -1
  94. package/dist/cli/request/settings.js +2 -25
  95. package/dist/cli/request/settings.js.map +1 -1
  96. package/dist/cli/request/validation.d.ts +12 -0
  97. package/dist/cli/request/validation.d.ts.map +1 -1
  98. package/dist/cli/request/validation.js +30 -10
  99. package/dist/cli/request/validation.js.map +1 -1
  100. package/dist/cli/request/values.d.ts +1 -0
  101. package/dist/cli/request/values.d.ts.map +1 -1
  102. package/dist/cli/request/values.js +1 -0
  103. package/dist/cli/request/values.js.map +1 -1
  104. package/dist/cli/run/index.d.ts.map +1 -1
  105. package/dist/cli/run/index.js +5 -41
  106. package/dist/cli/run/index.js.map +1 -1
  107. package/dist/cli/run/subscribe.d.ts +19 -0
  108. package/dist/cli/run/subscribe.d.ts.map +1 -0
  109. package/dist/cli/run/subscribe.js +47 -0
  110. package/dist/cli/run/subscribe.js.map +1 -0
  111. package/dist/cli/session/launch.d.ts +3 -0
  112. package/dist/cli/session/launch.d.ts.map +1 -1
  113. package/dist/cli/session/launch.js +11 -0
  114. package/dist/cli/session/launch.js.map +1 -1
  115. package/dist/cli/sessions/index.d.ts +23 -0
  116. package/dist/cli/sessions/index.d.ts.map +1 -0
  117. package/dist/cli/sessions/index.js +65 -0
  118. package/dist/cli/sessions/index.js.map +1 -0
  119. package/dist/cli/sessions/list.d.ts +28 -0
  120. package/dist/cli/sessions/list.d.ts.map +1 -0
  121. package/dist/cli/sessions/list.js +63 -0
  122. package/dist/cli/sessions/list.js.map +1 -0
  123. package/dist/cli/table.d.ts +7 -0
  124. package/dist/cli/table.d.ts.map +1 -0
  125. package/dist/cli/table.js +14 -0
  126. package/dist/cli/table.js.map +1 -0
  127. package/dist/cli/types.d.ts +5 -1
  128. package/dist/cli/types.d.ts.map +1 -1
  129. package/dist/cli/types.js.map +1 -1
  130. package/dist/codex/command.d.ts +18 -2
  131. package/dist/codex/command.d.ts.map +1 -1
  132. package/dist/codex/command.js +39 -24
  133. package/dist/codex/command.js.map +1 -1
  134. package/dist/codex/session/index.d.ts.map +1 -1
  135. package/dist/codex/session/index.js +5 -2
  136. package/dist/codex/session/index.js.map +1 -1
  137. package/dist/codex/session/resume.d.ts +1 -1
  138. package/dist/codex/session/resume.d.ts.map +1 -1
  139. package/dist/codex/session/resume.js +5 -1
  140. package/dist/codex/session/resume.js.map +1 -1
  141. package/dist/codex/session/types.d.ts +3 -0
  142. package/dist/codex/session/types.d.ts.map +1 -1
  143. package/dist/codex/simple.d.ts.map +1 -1
  144. package/dist/codex/simple.js +4 -0
  145. package/dist/codex/simple.js.map +1 -1
  146. package/dist/core/errors.d.ts +1 -1
  147. package/dist/core/errors.d.ts.map +1 -1
  148. package/dist/core/errors.js.map +1 -1
  149. package/dist/core/high-trust.d.ts +41 -0
  150. package/dist/core/high-trust.d.ts.map +1 -0
  151. package/dist/core/high-trust.js +50 -0
  152. package/dist/core/high-trust.js.map +1 -0
  153. package/dist/core/trust/allowlist.d.ts +56 -0
  154. package/dist/core/trust/allowlist.d.ts.map +1 -0
  155. package/dist/core/{trust-prompts.js → trust/allowlist.js} +21 -38
  156. package/dist/core/trust/allowlist.js.map +1 -0
  157. package/dist/core/trust/prompts.d.ts +4 -46
  158. package/dist/core/trust/prompts.d.ts.map +1 -1
  159. package/dist/core/trust/prompts.js +2 -73
  160. package/dist/core/trust/prompts.js.map +1 -1
  161. package/dist/core/trust/responder.d.ts +2 -0
  162. package/dist/core/trust/responder.d.ts.map +1 -1
  163. package/dist/core/trust/responder.js +4 -0
  164. package/dist/core/trust/responder.js.map +1 -1
  165. package/dist/core/types.d.ts +3 -0
  166. package/dist/core/types.d.ts.map +1 -1
  167. package/dist/runtime/launch-arguments.d.ts +12 -0
  168. package/dist/runtime/launch-arguments.d.ts.map +1 -0
  169. package/dist/runtime/launch-arguments.js +15 -0
  170. package/dist/runtime/launch-arguments.js.map +1 -0
  171. package/docs/cli-behavior.md +88 -0
  172. package/docs/cli-output.md +60 -0
  173. package/docs/cli.md +10 -2
  174. package/package.json +8 -6
  175. package/dist/claude/hook-dispatch.d.ts +0 -9
  176. package/dist/claude/hook-dispatch.d.ts.map +0 -1
  177. package/dist/claude/hook-dispatch.js +0 -12
  178. package/dist/claude/hook-dispatch.js.map +0 -1
  179. package/dist/claude/hook-events-extra.d.ts +0 -81
  180. package/dist/claude/hook-events-extra.d.ts.map +0 -1
  181. package/dist/claude/hook-events-extra.js +0 -6
  182. package/dist/claude/hook-events-extra.js.map +0 -1
  183. package/dist/claude/hook-events.d.ts +0 -101
  184. package/dist/claude/hook-events.d.ts.map +0 -1
  185. package/dist/claude/hook-events.js +0 -6
  186. package/dist/claude/hook-events.js.map +0 -1
  187. package/dist/claude/hook-names.d.ts +0 -24
  188. package/dist/claude/hook-names.d.ts.map +0 -1
  189. package/dist/claude/hook-names.js +0 -45
  190. package/dist/claude/hook-names.js.map +0 -1
  191. package/dist/claude/hooks.d.ts +0 -78
  192. package/dist/claude/hooks.d.ts.map +0 -1
  193. package/dist/claude/hooks.js +0 -6
  194. package/dist/claude/hooks.js.map +0 -1
  195. package/dist/claude/session-bridge.d.ts +0 -11
  196. package/dist/claude/session-bridge.d.ts.map +0 -1
  197. package/dist/claude/session-bridge.js +0 -18
  198. package/dist/claude/session-bridge.js.map +0 -1
  199. package/dist/claude/session-build.d.ts +0 -15
  200. package/dist/claude/session-build.d.ts.map +0 -1
  201. package/dist/claude/session-build.js +0 -147
  202. package/dist/claude/session-build.js.map +0 -1
  203. package/dist/claude/session-hook-handler.d.ts +0 -34
  204. package/dist/claude/session-hook-handler.d.ts.map +0 -1
  205. package/dist/claude/session-hook-handler.js +0 -42
  206. package/dist/claude/session-hook-handler.js.map +0 -1
  207. package/dist/claude/session-instance.d.ts +0 -42
  208. package/dist/claude/session-instance.d.ts.map +0 -1
  209. package/dist/claude/session-instance.js +0 -146
  210. package/dist/claude/session-instance.js.map +0 -1
  211. package/dist/claude/session-interface.d.ts +0 -49
  212. package/dist/claude/session-interface.d.ts.map +0 -1
  213. package/dist/claude/session-interface.js +0 -10
  214. package/dist/claude/session-interface.js.map +0 -1
  215. package/dist/claude/session-resume.d.ts +0 -8
  216. package/dist/claude/session-resume.d.ts.map +0 -1
  217. package/dist/claude/session-resume.js +0 -47
  218. package/dist/claude/session-resume.js.map +0 -1
  219. package/dist/claude/session-runtime.d.ts +0 -43
  220. package/dist/claude/session-runtime.d.ts.map +0 -1
  221. package/dist/claude/session-runtime.js +0 -105
  222. package/dist/claude/session-runtime.js.map +0 -1
  223. package/dist/claude/session-transcript.d.ts +0 -62
  224. package/dist/claude/session-transcript.d.ts.map +0 -1
  225. package/dist/claude/session-transcript.js +0 -88
  226. package/dist/claude/session-transcript.js.map +0 -1
  227. package/dist/claude/session.d.ts +0 -18
  228. package/dist/claude/session.d.ts.map +0 -1
  229. package/dist/claude/session.js +0 -58
  230. package/dist/claude/session.js.map +0 -1
  231. package/dist/claude/start-or-resume.d.ts +0 -12
  232. package/dist/claude/start-or-resume.d.ts.map +0 -1
  233. package/dist/claude/start-or-resume.js +0 -32
  234. package/dist/claude/start-or-resume.js.map +0 -1
  235. package/dist/claude/tool-hook-events.d.ts +0 -10
  236. package/dist/claude/tool-hook-events.d.ts.map +0 -1
  237. package/dist/claude/tool-hook-events.js +0 -18
  238. package/dist/claude/tool-hook-events.js.map +0 -1
  239. package/dist/claude/tool-types.d.ts +0 -158
  240. package/dist/claude/tool-types.d.ts.map +0 -1
  241. package/dist/claude/tool-types.js +0 -6
  242. package/dist/claude/tool-types.js.map +0 -1
  243. package/dist/claude/validate-input.d.ts +0 -8
  244. package/dist/claude/validate-input.d.ts.map +0 -1
  245. package/dist/claude/validate-input.js +0 -137
  246. package/dist/claude/validate-input.js.map +0 -1
  247. package/dist/claude/validate-permission-update.d.ts +0 -10
  248. package/dist/claude/validate-permission-update.d.ts.map +0 -1
  249. package/dist/claude/validate-permission-update.js +0 -72
  250. package/dist/claude/validate-permission-update.js.map +0 -1
  251. package/dist/claude/validate-result.d.ts +0 -7
  252. package/dist/claude/validate-result.d.ts.map +0 -1
  253. package/dist/claude/validate-result.js +0 -118
  254. package/dist/claude/validate-result.js.map +0 -1
  255. package/dist/claude/validate-shapes.d.ts +0 -22
  256. package/dist/claude/validate-shapes.d.ts.map +0 -1
  257. package/dist/claude/validate-shapes.js +0 -15
  258. package/dist/claude/validate-shapes.js.map +0 -1
  259. package/dist/claude/validate-tool-update.d.ts +0 -15
  260. package/dist/claude/validate-tool-update.d.ts.map +0 -1
  261. package/dist/claude/validate-tool-update.js +0 -122
  262. package/dist/claude/validate-tool-update.js.map +0 -1
  263. package/dist/cli/agent-detect.d.ts +0 -44
  264. package/dist/cli/agent-detect.d.ts.map +0 -1
  265. package/dist/cli/agent-detect.js +0 -66
  266. package/dist/cli/agent-detect.js.map +0 -1
  267. package/dist/cli/arg-errors.d.ts +0 -6
  268. package/dist/cli/arg-errors.d.ts.map +0 -1
  269. package/dist/cli/arg-errors.js +0 -44
  270. package/dist/cli/arg-errors.js.map +0 -1
  271. package/dist/cli/arg-options.d.ts +0 -26
  272. package/dist/cli/arg-options.d.ts.map +0 -1
  273. package/dist/cli/arg-options.js +0 -50
  274. package/dist/cli/arg-options.js.map +0 -1
  275. package/dist/cli/args.d.ts +0 -7
  276. package/dist/cli/args.d.ts.map +0 -1
  277. package/dist/cli/args.js +0 -70
  278. package/dist/cli/args.js.map +0 -1
  279. package/dist/cli/lifecycle-outcome.d.ts +0 -13
  280. package/dist/cli/lifecycle-outcome.d.ts.map +0 -1
  281. package/dist/cli/lifecycle-outcome.js +0 -20
  282. package/dist/cli/lifecycle-outcome.js.map +0 -1
  283. package/dist/cli/lifecycle.d.ts +0 -61
  284. package/dist/cli/lifecycle.d.ts.map +0 -1
  285. package/dist/cli/lifecycle.js +0 -152
  286. package/dist/cli/lifecycle.js.map +0 -1
  287. package/dist/cli/request-finalize.d.ts +0 -10
  288. package/dist/cli/request-finalize.d.ts.map +0 -1
  289. package/dist/cli/request-finalize.js +0 -135
  290. package/dist/cli/request-finalize.js.map +0 -1
  291. package/dist/cli/request-layers.d.ts +0 -30
  292. package/dist/cli/request-layers.d.ts.map +0 -1
  293. package/dist/cli/request-layers.js +0 -44
  294. package/dist/cli/request-layers.js.map +0 -1
  295. package/dist/cli/request-settings.d.ts +0 -34
  296. package/dist/cli/request-settings.d.ts.map +0 -1
  297. package/dist/cli/request-settings.js +0 -66
  298. package/dist/cli/request-settings.js.map +0 -1
  299. package/dist/cli/request-sources.d.ts +0 -13
  300. package/dist/cli/request-sources.d.ts.map +0 -1
  301. package/dist/cli/request-sources.js +0 -23
  302. package/dist/cli/request-sources.js.map +0 -1
  303. package/dist/cli/request-validation.d.ts +0 -18
  304. package/dist/cli/request-validation.d.ts.map +0 -1
  305. package/dist/cli/request-validation.js +0 -84
  306. package/dist/cli/request-validation.js.map +0 -1
  307. package/dist/cli/request-values.d.ts +0 -33
  308. package/dist/cli/request-values.d.ts.map +0 -1
  309. package/dist/cli/request-values.js +0 -73
  310. package/dist/cli/request-values.js.map +0 -1
  311. package/dist/cli/request.d.ts +0 -12
  312. package/dist/cli/request.d.ts.map +0 -1
  313. package/dist/cli/request.js +0 -103
  314. package/dist/cli/request.js.map +0 -1
  315. package/dist/cli/resolution-types.d.ts +0 -35
  316. package/dist/cli/resolution-types.d.ts.map +0 -1
  317. package/dist/cli/resolution-types.js +0 -6
  318. package/dist/cli/resolution-types.js.map +0 -1
  319. package/dist/cli/run-output-lines.d.ts +0 -14
  320. package/dist/cli/run-output-lines.d.ts.map +0 -1
  321. package/dist/cli/run-output-lines.js +0 -42
  322. package/dist/cli/run-output-lines.js.map +0 -1
  323. package/dist/cli/run-output.d.ts +0 -48
  324. package/dist/cli/run-output.d.ts.map +0 -1
  325. package/dist/cli/run-output.js +0 -150
  326. package/dist/cli/run-output.js.map +0 -1
  327. package/dist/cli/run.d.ts +0 -20
  328. package/dist/cli/run.d.ts.map +0 -1
  329. package/dist/cli/run.js +0 -126
  330. package/dist/cli/run.js.map +0 -1
  331. package/dist/cli/session-launch.d.ts +0 -23
  332. package/dist/cli/session-launch.d.ts.map +0 -1
  333. package/dist/cli/session-launch.js +0 -57
  334. package/dist/cli/session-launch.js.map +0 -1
  335. package/dist/cli/session.d.ts +0 -68
  336. package/dist/cli/session.d.ts.map +0 -1
  337. package/dist/cli/session.js +0 -124
  338. package/dist/cli/session.js.map +0 -1
  339. package/dist/codex/attach-images.d.ts +0 -20
  340. package/dist/codex/attach-images.d.ts.map +0 -1
  341. package/dist/codex/attach-images.js +0 -66
  342. package/dist/codex/attach-images.js.map +0 -1
  343. package/dist/codex/clipboard-lock.d.ts +0 -15
  344. package/dist/codex/clipboard-lock.d.ts.map +0 -1
  345. package/dist/codex/clipboard-lock.js +0 -16
  346. package/dist/codex/clipboard-lock.js.map +0 -1
  347. package/dist/codex/clipboard.d.ts +0 -32
  348. package/dist/codex/clipboard.d.ts.map +0 -1
  349. package/dist/codex/clipboard.js +0 -92
  350. package/dist/codex/clipboard.js.map +0 -1
  351. package/dist/codex/config-lock.d.ts +0 -21
  352. package/dist/codex/config-lock.d.ts.map +0 -1
  353. package/dist/codex/config-lock.js +0 -22
  354. package/dist/codex/config-lock.js.map +0 -1
  355. package/dist/codex/config-restore.d.ts +0 -33
  356. package/dist/codex/config-restore.d.ts.map +0 -1
  357. package/dist/codex/config-restore.js +0 -90
  358. package/dist/codex/config-restore.js.map +0 -1
  359. package/dist/codex/config-transaction.d.ts +0 -26
  360. package/dist/codex/config-transaction.d.ts.map +0 -1
  361. package/dist/codex/config-transaction.js +0 -47
  362. package/dist/codex/config-transaction.js.map +0 -1
  363. package/dist/codex/hook-dispatch.d.ts +0 -9
  364. package/dist/codex/hook-dispatch.d.ts.map +0 -1
  365. package/dist/codex/hook-dispatch.js +0 -14
  366. package/dist/codex/hook-dispatch.js.map +0 -1
  367. package/dist/codex/hook-names.d.ts +0 -19
  368. package/dist/codex/hook-names.d.ts.map +0 -1
  369. package/dist/codex/hook-names.js +0 -17
  370. package/dist/codex/hook-names.js.map +0 -1
  371. package/dist/codex/hooks.d.ts +0 -99
  372. package/dist/codex/hooks.d.ts.map +0 -1
  373. package/dist/codex/hooks.js +0 -6
  374. package/dist/codex/hooks.js.map +0 -1
  375. package/dist/codex/initial-ready.d.ts +0 -19
  376. package/dist/codex/initial-ready.d.ts.map +0 -1
  377. package/dist/codex/initial-ready.js +0 -19
  378. package/dist/codex/initial-ready.js.map +0 -1
  379. package/dist/codex/serialize.d.ts +0 -8
  380. package/dist/codex/serialize.d.ts.map +0 -1
  381. package/dist/codex/serialize.js +0 -48
  382. package/dist/codex/serialize.js.map +0 -1
  383. package/dist/codex/session-bridge.d.ts +0 -14
  384. package/dist/codex/session-bridge.d.ts.map +0 -1
  385. package/dist/codex/session-bridge.js +0 -20
  386. package/dist/codex/session-bridge.js.map +0 -1
  387. package/dist/codex/session-build.d.ts +0 -15
  388. package/dist/codex/session-build.d.ts.map +0 -1
  389. package/dist/codex/session-build.js +0 -144
  390. package/dist/codex/session-build.js.map +0 -1
  391. package/dist/codex/session-cleanup.d.ts +0 -12
  392. package/dist/codex/session-cleanup.d.ts.map +0 -1
  393. package/dist/codex/session-cleanup.js +0 -15
  394. package/dist/codex/session-cleanup.js.map +0 -1
  395. package/dist/codex/session-hooks.d.ts +0 -13
  396. package/dist/codex/session-hooks.d.ts.map +0 -1
  397. package/dist/codex/session-hooks.js +0 -54
  398. package/dist/codex/session-hooks.js.map +0 -1
  399. package/dist/codex/session-instance.d.ts +0 -50
  400. package/dist/codex/session-instance.d.ts.map +0 -1
  401. package/dist/codex/session-instance.js +0 -117
  402. package/dist/codex/session-instance.js.map +0 -1
  403. package/dist/codex/session-resume.d.ts +0 -7
  404. package/dist/codex/session-resume.d.ts.map +0 -1
  405. package/dist/codex/session-resume.js +0 -44
  406. package/dist/codex/session-resume.js.map +0 -1
  407. package/dist/codex/session-runtime.d.ts +0 -7
  408. package/dist/codex/session-runtime.d.ts.map +0 -1
  409. package/dist/codex/session-runtime.js +0 -10
  410. package/dist/codex/session-runtime.js.map +0 -1
  411. package/dist/codex/session-transcript.d.ts +0 -30
  412. package/dist/codex/session-transcript.d.ts.map +0 -1
  413. package/dist/codex/session-transcript.js +0 -53
  414. package/dist/codex/session-transcript.js.map +0 -1
  415. package/dist/codex/session-types.d.ts +0 -87
  416. package/dist/codex/session-types.d.ts.map +0 -1
  417. package/dist/codex/session-types.js +0 -6
  418. package/dist/codex/session-types.js.map +0 -1
  419. package/dist/codex/session-warnings.d.ts +0 -27
  420. package/dist/codex/session-warnings.d.ts.map +0 -1
  421. package/dist/codex/session-warnings.js +0 -54
  422. package/dist/codex/session-warnings.js.map +0 -1
  423. package/dist/codex/session.d.ts +0 -16
  424. package/dist/codex/session.d.ts.map +0 -1
  425. package/dist/codex/session.js +0 -61
  426. package/dist/codex/session.js.map +0 -1
  427. package/dist/codex/start-or-resume.d.ts +0 -12
  428. package/dist/codex/start-or-resume.d.ts.map +0 -1
  429. package/dist/codex/start-or-resume.js +0 -31
  430. package/dist/codex/start-or-resume.js.map +0 -1
  431. package/dist/codex/transcript/cursor-io.d.ts +0 -7
  432. package/dist/codex/transcript/cursor-io.d.ts.map +0 -1
  433. package/dist/codex/transcript/cursor-io.js +0 -7
  434. package/dist/codex/transcript/cursor-io.js.map +0 -1
  435. package/dist/codex/transcript/cursor.d.ts +0 -8
  436. package/dist/codex/transcript/cursor.d.ts.map +0 -1
  437. package/dist/codex/transcript/cursor.js +0 -8
  438. package/dist/codex/transcript/cursor.js.map +0 -1
  439. package/dist/codex/transcript/drops.d.ts +0 -9
  440. package/dist/codex/transcript/drops.d.ts.map +0 -1
  441. package/dist/codex/transcript/drops.js +0 -9
  442. package/dist/codex/transcript/drops.js.map +0 -1
  443. package/dist/codex/transcript.d.ts +0 -12
  444. package/dist/codex/transcript.d.ts.map +0 -1
  445. package/dist/codex/transcript.js +0 -10
  446. package/dist/codex/transcript.js.map +0 -1
  447. package/dist/codex/validate-result.d.ts +0 -7
  448. package/dist/codex/validate-result.d.ts.map +0 -1
  449. package/dist/codex/validate-result.js +0 -84
  450. package/dist/codex/validate-result.js.map +0 -1
  451. package/dist/codex/validate.d.ts +0 -11
  452. package/dist/codex/validate.d.ts.map +0 -1
  453. package/dist/codex/validate.js +0 -88
  454. package/dist/codex/validate.js.map +0 -1
  455. package/dist/core/activity-lifecycle.d.ts +0 -21
  456. package/dist/core/activity-lifecycle.d.ts.map +0 -1
  457. package/dist/core/activity-lifecycle.js +0 -45
  458. package/dist/core/activity-lifecycle.js.map +0 -1
  459. package/dist/core/activity-meta.d.ts +0 -13
  460. package/dist/core/activity-meta.d.ts.map +0 -1
  461. package/dist/core/activity-meta.js +0 -67
  462. package/dist/core/activity-meta.js.map +0 -1
  463. package/dist/core/activity-transcript.d.ts +0 -19
  464. package/dist/core/activity-transcript.d.ts.map +0 -1
  465. package/dist/core/activity-transcript.js +0 -60
  466. package/dist/core/activity-transcript.js.map +0 -1
  467. package/dist/core/activity.d.ts +0 -51
  468. package/dist/core/activity.d.ts.map +0 -1
  469. package/dist/core/activity.js +0 -81
  470. package/dist/core/activity.js.map +0 -1
  471. package/dist/core/control-queue-state.d.ts +0 -29
  472. package/dist/core/control-queue-state.d.ts.map +0 -1
  473. package/dist/core/control-queue-state.js +0 -95
  474. package/dist/core/control-queue-state.js.map +0 -1
  475. package/dist/core/control-queue-traits.d.ts +0 -54
  476. package/dist/core/control-queue-traits.d.ts.map +0 -1
  477. package/dist/core/control-queue-traits.js +0 -118
  478. package/dist/core/control-queue-traits.js.map +0 -1
  479. package/dist/core/control-queue-types.d.ts +0 -45
  480. package/dist/core/control-queue-types.d.ts.map +0 -1
  481. package/dist/core/control-queue-types.js +0 -7
  482. package/dist/core/control-queue-types.js.map +0 -1
  483. package/dist/core/control-queue.d.ts +0 -21
  484. package/dist/core/control-queue.d.ts.map +0 -1
  485. package/dist/core/control-queue.js +0 -98
  486. package/dist/core/control-queue.js.map +0 -1
  487. package/dist/core/list-models.d.ts +0 -44
  488. package/dist/core/list-models.d.ts.map +0 -1
  489. package/dist/core/list-models.js +0 -73
  490. package/dist/core/list-models.js.map +0 -1
  491. package/dist/core/model-picker.d.ts +0 -22
  492. package/dist/core/model-picker.d.ts.map +0 -1
  493. package/dist/core/model-picker.js +0 -58
  494. package/dist/core/model-picker.js.map +0 -1
  495. package/dist/core/model-rows.d.ts +0 -21
  496. package/dist/core/model-rows.d.ts.map +0 -1
  497. package/dist/core/model-rows.js +0 -57
  498. package/dist/core/model-rows.js.map +0 -1
  499. package/dist/core/probe-state.d.ts +0 -21
  500. package/dist/core/probe-state.d.ts.map +0 -1
  501. package/dist/core/probe-state.js +0 -39
  502. package/dist/core/probe-state.js.map +0 -1
  503. package/dist/core/session-input-abort.d.ts +0 -10
  504. package/dist/core/session-input-abort.d.ts.map +0 -1
  505. package/dist/core/session-input-abort.js +0 -44
  506. package/dist/core/session-input-abort.js.map +0 -1
  507. package/dist/core/session-input.d.ts +0 -37
  508. package/dist/core/session-input.d.ts.map +0 -1
  509. package/dist/core/session-input.js +0 -154
  510. package/dist/core/session-input.js.map +0 -1
  511. package/dist/core/session-warnings.d.ts +0 -20
  512. package/dist/core/session-warnings.d.ts.map +0 -1
  513. package/dist/core/session-warnings.js +0 -32
  514. package/dist/core/session-warnings.js.map +0 -1
  515. package/dist/core/simple/loop-controls.d.ts +0 -7
  516. package/dist/core/simple/loop-controls.d.ts.map +0 -1
  517. package/dist/core/simple/loop-controls.js +0 -7
  518. package/dist/core/simple/loop-controls.js.map +0 -1
  519. package/dist/core/startup-automation.d.ts +0 -54
  520. package/dist/core/startup-automation.d.ts.map +0 -1
  521. package/dist/core/startup-automation.js +0 -40
  522. package/dist/core/startup-automation.js.map +0 -1
  523. package/dist/core/startup-frame.d.ts +0 -39
  524. package/dist/core/startup-frame.d.ts.map +0 -1
  525. package/dist/core/startup-frame.js +0 -60
  526. package/dist/core/startup-frame.js.map +0 -1
  527. package/dist/core/startup-write.d.ts +0 -47
  528. package/dist/core/startup-write.d.ts.map +0 -1
  529. package/dist/core/startup-write.js +0 -73
  530. package/dist/core/startup-write.js.map +0 -1
  531. package/dist/core/trust-blocking.d.ts +0 -22
  532. package/dist/core/trust-blocking.d.ts.map +0 -1
  533. package/dist/core/trust-blocking.js +0 -38
  534. package/dist/core/trust-blocking.js.map +0 -1
  535. package/dist/core/trust-prompts.d.ts +0 -135
  536. package/dist/core/trust-prompts.d.ts.map +0 -1
  537. package/dist/core/trust-prompts.js.map +0 -1
  538. package/dist/core/trust-responder.d.ts +0 -48
  539. package/dist/core/trust-responder.d.ts.map +0 -1
  540. package/dist/core/trust-responder.js +0 -119
  541. package/dist/core/trust-responder.js.map +0 -1
  542. package/dist/core/tui-screen.d.ts +0 -21
  543. package/dist/core/tui-screen.d.ts.map +0 -1
  544. package/dist/core/tui-screen.js +0 -56
  545. package/dist/core/tui-screen.js.map +0 -1
  546. package/dist/core/update-warning.d.ts +0 -25
  547. package/dist/core/update-warning.d.ts.map +0 -1
  548. package/dist/core/update-warning.js +0 -33
  549. package/dist/core/update-warning.js.map +0 -1
  550. package/dist/core/warning-lifecycle.d.ts +0 -23
  551. package/dist/core/warning-lifecycle.d.ts.map +0 -1
  552. package/dist/core/warning-lifecycle.js +0 -6
  553. package/dist/core/warning-lifecycle.js.map +0 -1
  554. package/dist/core/warning-reasons.d.ts +0 -62
  555. package/dist/core/warning-reasons.d.ts.map +0 -1
  556. package/dist/core/warning-reasons.js +0 -121
  557. package/dist/core/warning-reasons.js.map +0 -1
  558. package/dist/core/warnings.d.ts +0 -145
  559. package/dist/core/warnings.d.ts.map +0 -1
  560. package/dist/core/warnings.js +0 -12
  561. package/dist/core/warnings.js.map +0 -1
  562. package/dist/runtime/cleanup-latch.d.ts +0 -27
  563. package/dist/runtime/cleanup-latch.d.ts.map +0 -1
  564. package/dist/runtime/cleanup-latch.js +0 -43
  565. package/dist/runtime/cleanup-latch.js.map +0 -1
  566. package/dist/runtime/initial-ready-advance.d.ts +0 -22
  567. package/dist/runtime/initial-ready-advance.d.ts.map +0 -1
  568. package/dist/runtime/initial-ready-advance.js +0 -39
  569. package/dist/runtime/initial-ready-advance.js.map +0 -1
  570. package/dist/runtime/initial-ready-fallback.d.ts +0 -12
  571. package/dist/runtime/initial-ready-fallback.d.ts.map +0 -1
  572. package/dist/runtime/initial-ready-fallback.js +0 -20
  573. package/dist/runtime/initial-ready-fallback.js.map +0 -1
  574. package/dist/runtime/initial-ready.d.ts +0 -49
  575. package/dist/runtime/initial-ready.d.ts.map +0 -1
  576. package/dist/runtime/initial-ready.js +0 -81
  577. package/dist/runtime/initial-ready.js.map +0 -1
  578. package/dist/runtime/reap-tree.d.ts +0 -62
  579. package/dist/runtime/reap-tree.d.ts.map +0 -1
  580. package/dist/runtime/reap-tree.js +0 -108
  581. package/dist/runtime/reap-tree.js.map +0 -1
  582. package/dist/runtime/session-base-types.d.ts +0 -36
  583. package/dist/runtime/session-base-types.d.ts.map +0 -1
  584. package/dist/runtime/session-base-types.js +0 -14
  585. package/dist/runtime/session-base-types.js.map +0 -1
  586. package/dist/runtime/session-base.d.ts +0 -48
  587. package/dist/runtime/session-base.d.ts.map +0 -1
  588. package/dist/runtime/session-base.js +0 -76
  589. package/dist/runtime/session-base.js.map +0 -1
  590. package/dist/runtime/session-commands.d.ts +0 -43
  591. package/dist/runtime/session-commands.d.ts.map +0 -1
  592. package/dist/runtime/session-commands.js +0 -52
  593. package/dist/runtime/session-commands.js.map +0 -1
  594. package/dist/runtime/session-exit.d.ts +0 -16
  595. package/dist/runtime/session-exit.d.ts.map +0 -1
  596. package/dist/runtime/session-exit.js +0 -32
  597. package/dist/runtime/session-exit.js.map +0 -1
  598. package/dist/runtime/session-image-attach.d.ts +0 -45
  599. package/dist/runtime/session-image-attach.d.ts.map +0 -1
  600. package/dist/runtime/session-image-attach.js +0 -82
  601. package/dist/runtime/session-image-attach.js.map +0 -1
  602. package/dist/runtime/session-lifecycle.d.ts +0 -61
  603. package/dist/runtime/session-lifecycle.d.ts.map +0 -1
  604. package/dist/runtime/session-lifecycle.js +0 -164
  605. package/dist/runtime/session-lifecycle.js.map +0 -1
  606. package/dist/runtime/session-loops.d.ts +0 -32
  607. package/dist/runtime/session-loops.d.ts.map +0 -1
  608. package/dist/runtime/session-loops.js +0 -62
  609. package/dist/runtime/session-loops.js.map +0 -1
  610. package/dist/runtime/session-readiness.d.ts +0 -18
  611. package/dist/runtime/session-readiness.d.ts.map +0 -1
  612. package/dist/runtime/session-readiness.js +0 -22
  613. package/dist/runtime/session-readiness.js.map +0 -1
  614. package/dist/runtime/session-reap.d.ts +0 -28
  615. package/dist/runtime/session-reap.d.ts.map +0 -1
  616. package/dist/runtime/session-reap.js +0 -51
  617. package/dist/runtime/session-reap.js.map +0 -1
  618. package/dist/runtime/session-resize.d.ts +0 -20
  619. package/dist/runtime/session-resize.d.ts.map +0 -1
  620. package/dist/runtime/session-resize.js +0 -26
  621. package/dist/runtime/session-resize.js.map +0 -1
  622. package/dist/runtime/session-shutdown-binding.d.ts +0 -30
  623. package/dist/runtime/session-shutdown-binding.d.ts.map +0 -1
  624. package/dist/runtime/session-shutdown-binding.js +0 -37
  625. package/dist/runtime/session-shutdown-binding.js.map +0 -1
  626. package/dist/runtime/session-shutdown.d.ts +0 -60
  627. package/dist/runtime/session-shutdown.d.ts.map +0 -1
  628. package/dist/runtime/session-shutdown.js +0 -140
  629. package/dist/runtime/session-shutdown.js.map +0 -1
  630. package/dist/runtime/session-status-wiring.d.ts +0 -38
  631. package/dist/runtime/session-status-wiring.d.ts.map +0 -1
  632. package/dist/runtime/session-status-wiring.js +0 -41
  633. package/dist/runtime/session-status-wiring.js.map +0 -1
  634. package/dist/runtime/session-status.d.ts +0 -7
  635. package/dist/runtime/session-status.d.ts.map +0 -1
  636. package/dist/runtime/session-status.js +0 -22
  637. package/dist/runtime/session-status.js.map +0 -1
  638. package/dist/runtime/shutdown-coordinator.d.ts +0 -57
  639. package/dist/runtime/shutdown-coordinator.d.ts.map +0 -1
  640. package/dist/runtime/shutdown-coordinator.js +0 -77
  641. package/dist/runtime/shutdown-coordinator.js.map +0 -1
  642. package/dist/runtime/startup-buffer.d.ts +0 -33
  643. package/dist/runtime/startup-buffer.d.ts.map +0 -1
  644. package/dist/runtime/startup-buffer.js +0 -53
  645. package/dist/runtime/startup-buffer.js.map +0 -1
  646. package/dist/runtime/startup-cleanup.d.ts +0 -43
  647. package/dist/runtime/startup-cleanup.d.ts.map +0 -1
  648. package/dist/runtime/startup-cleanup.js +0 -89
  649. package/dist/runtime/startup-cleanup.js.map +0 -1
  650. package/dist/runtime/startup.d.ts +0 -17
  651. package/dist/runtime/startup.d.ts.map +0 -1
  652. package/dist/runtime/startup.js +0 -47
  653. package/dist/runtime/startup.js.map +0 -1
  654. package/dist/runtime/status-emit.d.ts +0 -14
  655. package/dist/runtime/status-emit.d.ts.map +0 -1
  656. package/dist/runtime/status-emit.js +0 -15
  657. package/dist/runtime/status-emit.js.map +0 -1
  658. package/dist/runtime/teardown.d.ts +0 -15
  659. package/dist/runtime/teardown.d.ts.map +0 -1
  660. package/dist/runtime/teardown.js +0 -40
  661. package/dist/runtime/teardown.js.map +0 -1
  662. package/dist/runtime/terminate.d.ts +0 -22
  663. package/dist/runtime/terminate.d.ts.map +0 -1
  664. package/dist/runtime/terminate.js +0 -129
  665. package/dist/runtime/terminate.js.map +0 -1
  666. package/dist/runtime/update-lock.d.ts +0 -19
  667. package/dist/runtime/update-lock.d.ts.map +0 -1
  668. package/dist/runtime/update-lock.js +0 -183
  669. package/dist/runtime/update-lock.js.map +0 -1
  670. package/dist/runtime/update-once.d.ts +0 -40
  671. package/dist/runtime/update-once.d.ts.map +0 -1
  672. package/dist/runtime/update-once.js +0 -88
  673. package/dist/runtime/update-once.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"effective.js","sourceRoot":"","sources":["../../../src/cli/config/effective.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"effective.js","sourceRoot":"","sources":["../../../src/cli/config/effective.ts"],"names":[],"mappings":"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"}
@@ -2,6 +2,6 @@
2
2
  * Closed dotted-key vocabulary for version-1 global CLI configuration.
3
3
  * Implements PRD §12A.4 and C-CLI-13/C-CLI-14.
4
4
  */
5
- export declare const configKeys: readonly ["schemaVersion", "agent", "output", "timeout", "trust", "stateDir", "verbose", "stream", "persona", "claude.model", "claude.reasoningEffort", "claude.permissionMode", "codex.model", "codex.reasoningEffort", "codex.sandbox", "codex.approvalPolicy"];
5
+ export declare const configKeys: readonly ["schemaVersion", "agent", "output", "timeout", "trust", "highTrust", "stateDir", "verbose", "stream", "persona", "claude.model", "claude.reasoningEffort", "claude.permissionMode", "codex.model", "codex.reasoningEffort", "codex.sandbox", "codex.approvalPolicy"];
6
6
  export type ConfigKey = (typeof configKeys)[number];
7
7
  //# sourceMappingURL=keys.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"keys.d.ts","sourceRoot":"","sources":["../../../src/cli/config/keys.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,eAAO,MAAM,UAAU,mQAiBb,CAAC;AAEX,MAAM,MAAM,SAAS,GAAG,CAAC,OAAO,UAAU,CAAC,CAAC,MAAM,CAAC,CAAC"}
1
+ {"version":3,"file":"keys.d.ts","sourceRoot":"","sources":["../../../src/cli/config/keys.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,eAAO,MAAM,UAAU,gRAkBb,CAAC;AAEX,MAAM,MAAM,SAAS,GAAG,CAAC,OAAO,UAAU,CAAC,CAAC,MAAM,CAAC,CAAC"}
@@ -8,6 +8,7 @@ export const configKeys = [
8
8
  "output",
9
9
  "timeout",
10
10
  "trust",
11
+ "highTrust",
11
12
  "stateDir",
12
13
  "verbose",
13
14
  "stream",
@@ -1 +1 @@
1
- {"version":3,"file":"keys.js","sourceRoot":"","sources":["../../../src/cli/config/keys.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,MAAM,CAAC,MAAM,UAAU,GAAG;IACxB,eAAe;IACf,OAAO;IACP,QAAQ;IACR,SAAS;IACT,OAAO;IACP,UAAU;IACV,SAAS;IACT,QAAQ;IACR,SAAS;IACT,cAAc;IACd,wBAAwB;IACxB,uBAAuB;IACvB,aAAa;IACb,uBAAuB;IACvB,eAAe;IACf,sBAAsB;CACd,CAAC"}
1
+ {"version":3,"file":"keys.js","sourceRoot":"","sources":["../../../src/cli/config/keys.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,MAAM,CAAC,MAAM,UAAU,GAAG;IACxB,eAAe;IACf,OAAO;IACP,QAAQ;IACR,SAAS;IACT,OAAO;IACP,WAAW;IACX,UAAU;IACV,SAAS;IACT,QAAQ;IACR,SAAS;IACT,cAAc;IACd,wBAAwB;IACxB,uBAAuB;IACvB,aAAa;IACb,uBAAuB;IACvB,eAAe;IACf,sBAAsB;CACd,CAAC"}
@@ -1,13 +1,15 @@
1
1
  #!/usr/bin/env node
2
2
  /**
3
3
  * Binds the side-effect-free Elwood command to Node streams, environment, and SIGINT.
4
- * Implements PRD §12A and C-CLI-01/C-CLI-02/C-CLI-07/C-CLI-12.
4
+ * Implements PRD §12A and C-CLI-01/C-CLI-02/C-CLI-07/C-CLI-12/C-CLI-25.
5
5
  */
6
6
  import { type CliMainDependencies } from "./main.ts";
7
7
  import type { CliWritable } from "./stream.ts";
8
8
  export type CliProcess = {
9
9
  readonly argv: readonly string[];
10
- readonly stdout: CliWritable;
10
+ readonly stdout: CliWritable & {
11
+ readonly isTTY?: boolean;
12
+ };
11
13
  readonly stderr: CliWritable;
12
14
  readonly stdin: AsyncIterable<string | Uint8Array> & {
13
15
  readonly isTTY?: boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"entry.d.ts","sourceRoot":"","sources":["../../src/cli/entry.ts"],"names":[],"mappings":";AAEA;;;GAGG;AAMH,OAAO,EAAuB,KAAK,mBAAmB,EAAQ,MAAM,WAAW,CAAC;AAChF,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAE/C,MAAM,MAAM,UAAU,GAAG;IACvB,QAAQ,CAAC,IAAI,EAAE,SAAS,MAAM,EAAE,CAAC;IACjC,QAAQ,CAAC,MAAM,EAAE,WAAW,CAAC;IAC7B,QAAQ,CAAC,MAAM,EAAE,WAAW,CAAC;IAC7B,QAAQ,CAAC,KAAK,EAAE,aAAa,CAAC,MAAM,GAAG,UAAU,CAAC,GAAG;QAAE,QAAQ,CAAC,KAAK,CAAC,EAAE,OAAO,CAAA;KAAE,CAAC;IAClF,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,CAAC,CAAC;IAC3D,QAAQ,CAAC,GAAG,EAAE,MAAM,MAAM,CAAC;IAC3B,QAAQ,CAAC,EAAE,EAAE,CAAC,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,IAAI,KAAK,OAAO,CAAC;IAC/D,QAAQ,CAAC,GAAG,EAAE,CAAC,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,IAAI,KAAK,OAAO,CAAC;IAChE,QAAQ,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;CAC9C,CAAC;AAEF,sFAAsF;AACtF,wBAAsB,MAAM,CAC1B,IAAI,EAAE,UAAU,EAChB,YAAY,CAAC,EAAE,mBAAmB,EAClC,QAAQ,SAAY,GACnB,OAAO,CAAC,MAAM,CAAC,CAIjB;AAED,kEAAkE;AAClE,wBAAgB,kBAAkB,CAChC,IAAI,EAAE;IAAE,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAA;CAAE,EAC9B,IAAI,EAAE,UAAU,EAChB,YAAY,CAAC,EAAE,mBAAmB,EAClC,QAAQ,CAAC,EAAE,MAAM,GAChB,OAAO,CAAC,MAAM,CAAC,GAAG,IAAI,CAGxB"}
1
+ {"version":3,"file":"entry.d.ts","sourceRoot":"","sources":["../../src/cli/entry.ts"],"names":[],"mappings":";AAEA;;;GAGG;AAMH,OAAO,EAAuB,KAAK,mBAAmB,EAAQ,MAAM,WAAW,CAAC;AAChF,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAE/C,MAAM,MAAM,UAAU,GAAG;IACvB,QAAQ,CAAC,IAAI,EAAE,SAAS,MAAM,EAAE,CAAC;IACjC,QAAQ,CAAC,MAAM,EAAE,WAAW,GAAG;QAAE,QAAQ,CAAC,KAAK,CAAC,EAAE,OAAO,CAAA;KAAE,CAAC;IAC5D,QAAQ,CAAC,MAAM,EAAE,WAAW,CAAC;IAC7B,QAAQ,CAAC,KAAK,EAAE,aAAa,CAAC,MAAM,GAAG,UAAU,CAAC,GAAG;QAAE,QAAQ,CAAC,KAAK,CAAC,EAAE,OAAO,CAAA;KAAE,CAAC;IAClF,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,CAAC,CAAC;IAC3D,QAAQ,CAAC,GAAG,EAAE,MAAM,MAAM,CAAC;IAC3B,QAAQ,CAAC,EAAE,EAAE,CAAC,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,IAAI,KAAK,OAAO,CAAC;IAC/D,QAAQ,CAAC,GAAG,EAAE,CAAC,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,IAAI,KAAK,OAAO,CAAC;IAChE,QAAQ,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;CAC9C,CAAC;AAEF,sFAAsF;AACtF,wBAAsB,MAAM,CAC1B,IAAI,EAAE,UAAU,EAChB,YAAY,CAAC,EAAE,mBAAmB,EAClC,QAAQ,SAAY,GACnB,OAAO,CAAC,MAAM,CAAC,CAIjB;AAED,kEAAkE;AAClE,wBAAgB,kBAAkB,CAChC,IAAI,EAAE;IAAE,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAA;CAAE,EAC9B,IAAI,EAAE,UAAU,EAChB,YAAY,CAAC,EAAE,mBAAmB,EAClC,QAAQ,CAAC,EAAE,MAAM,GAChB,OAAO,CAAC,MAAM,CAAC,GAAG,IAAI,CAGxB"}
package/dist/cli/entry.js CHANGED
@@ -1,7 +1,7 @@
1
1
  #!/usr/bin/env node
2
2
  /**
3
3
  * Binds the side-effect-free Elwood command to Node streams, environment, and SIGINT.
4
- * Implements PRD §12A and C-CLI-01/C-CLI-02/C-CLI-07/C-CLI-12.
4
+ * Implements PRD §12A and C-CLI-01/C-CLI-02/C-CLI-07/C-CLI-12/C-CLI-25.
5
5
  */
6
6
  import { realpathSync } from "node:fs";
7
7
  import { homedir } from "node:os";
@@ -39,6 +39,7 @@ function processContext(proc, userHome) {
39
39
  source: proc.stdin,
40
40
  ...(proc.stdin.isTTY === undefined ? {} : { isTTY: proc.stdin.isTTY }),
41
41
  },
42
+ ...(proc.stdout.isTTY === undefined ? {} : { stdoutIsTTY: proc.stdout.isTTY }),
42
43
  env: proc.env,
43
44
  invocationCwd: proc.cwd(),
44
45
  homeDir: userHome,
@@ -1 +1 @@
1
- {"version":3,"file":"entry.js","sourceRoot":"","sources":["../../src/cli/entry.ts"],"names":[],"mappings":";AAEA;;;GAGG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACvC,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EAAE,uBAAuB,EAAE,MAAM,mBAAmB,CAAC;AAC5D,OAAO,EAAiD,IAAI,EAAE,MAAM,WAAW,CAAC;AAehF,sFAAsF;AACtF,MAAM,CAAC,KAAK,UAAU,MAAM,CAC1B,IAAgB,EAChB,YAAkC,EAClC,QAAQ,GAAG,OAAO,EAAE;IAEpB,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,cAAc,CAAC,IAAI,EAAE,QAAQ,CAAC,EAAE,YAAY,CAAC,CAAC;IAC9F,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;IACzB,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED,kEAAkE;AAClE,MAAM,UAAU,kBAAkB,CAChC,IAA8B,EAC9B,IAAgB,EAChB,YAAkC,EAClC,QAAiB;IAEjB,IAAI,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,SAAS,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAAE,OAAO,IAAI,CAAC;IAClG,OAAO,MAAM,CAAC,IAAI,EAAE,YAAY,EAAE,QAAQ,CAAC,CAAC;AAC9C,CAAC;AAED,SAAS,UAAU,CAAC,UAAkB,EAAE,SAAiB;IACvD,IAAI,UAAU,KAAK,SAAS;QAAE,OAAO,IAAI,CAAC;IAC1C,IAAI,CAAC;QACH,OAAO,YAAY,CAAC,UAAU,CAAC,KAAK,YAAY,CAAC,SAAS,CAAC,CAAC;IAC9D,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC;AAED,SAAS,cAAc,CAAC,IAAgB,EAAE,QAAgB;IACxD,MAAM,IAAI,GAAG,uBAAuB,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;IAC9D,OAAO;QACL,MAAM,EAAE,IAAI,CAAC,MAAM;QACnB,MAAM,EAAE,IAAI,CAAC,MAAM;QACnB,KAAK,EAAE;YACL,MAAM,EAAE,IAAI,CAAC,KAAK;YAClB,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;SACvE;QACD,GAAG,EAAE,IAAI,CAAC,GAAG;QACb,aAAa,EAAE,IAAI,CAAC,GAAG,EAAE;QACzB,OAAO,EAAE,QAAQ;QACjB,OAAO,EAAE;YACP,QAAQ,EAAE,CAAC,OAAO,EAAE,EAAE;gBACpB,IAAI,CAAC,EAAE,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;gBAC3B,OAAO,GAAG,EAAE;oBACV,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;gBAC9B,CAAC,CAAC;YACJ,CAAC;SACF;QACD,GAAG,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC;KACxC,CAAC;AACJ,CAAC;AAED,MAAM,kBAAkB,CAAC,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC"}
1
+ {"version":3,"file":"entry.js","sourceRoot":"","sources":["../../src/cli/entry.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * Static production help for the first-party headless Elwood command.
3
- * Implements PRD §12A.1 and C-CLI-02.
3
+ * Implements PRD §12A.1/§12A.7-§12A.10 and C-CLI-02/C-CLI-21 through C-CLI-26.
4
4
  */
5
- export declare const cliHelp = "Usage: elwood [options] [prompt...]\n elwood run [options] [prompt...]\n elwood config <command>\n\nRun one Claude Code or Codex turn and write its combined assistant response.\nPositional text and piped stdin are combined with one blank line.\n\nExamples:\n elwood \"Summarize this repository\"\n git diff | elwood \"Review this diff for correctness\"\n elwood run --output json < prompt.txt\n elwood --keep --output json \"Remember this decision\"\n\nCommands:\n run Run one agent turn (default)\n config Inspect or update global defaults; see config --help\n help Show this help\n\nAgent and turn options:\n --agent <claude|codex> Select the agent (default: first available of claude, codex)\n --model <id> Select or switch the model\n --reasoning-effort <level> Claude: low|medium|high|xhigh|max\n Codex: none|minimal|low|medium|high|xhigh|max\n --persona <prompt> Run a real side-effect-capable setup turn; hide its answer\n -C, --cwd <path> Workspace for a new run (default: current directory)\n --image <path> Attach an image; repeat to preserve order\n --timeout <duration> Bound launch, setup, and turn (default: none; ms|s|m|h)\n --trust / --no-trust Toggle allowlisted trust automation (default: trust)\n --no-defaults Ignore saved config and ELWOOD_* run defaults\n\nContinuation and output:\n --keep Preserve Elwood state for a new session\n --resume <id> Resume the exact stored agent and workspace\n --ephemeral Remove resumed Elwood state afterward\n --output <text|json|jsonl> Stdout protocol (default: text)\n --stream / --no-stream Toggle incremental text output (default: off)\n --verbose / --no-verbose Toggle concise elapsed progress on stderr (default: off)\n --debug Write full sanitized event details to stderr\n --head View the full agent TUI in this terminal\n --state-dir <path> Override CLI-owned state storage\n\nAgent posture defaults and supported values:\n --claude-permission-mode <default|acceptEdits|plan|auto|dontAsk|bypassPermissions>\n Default: dontAsk\n --codex-sandbox <read-only|workspace-write|danger-full-access>\n Default: workspace-write\n --codex-approval-policy <untrusted|on-request|never>\n Default: never\n\nHead mode is view-only and requires terminal stdin and stderr. It cannot be\ncombined with stream, verbose, debug, or JSONL output. Ctrl-C still interrupts.\n\nWarnings and diagnostics use stderr; stdout remains the selected protocol.\nUse \"elwood config effective\" to explain resolved values and their sources.\n\n -h, --help Show this help\n -V, --version Show the Elwood version\n";
5
+ export declare const cliHelp = "Usage: elwood [options] [prompt...]\n elwood run [options] [prompt...]\n elwood resume <id> [options] [prompt...]\n elwood interactive [id] [options]\n elwood sessions [--state-dir <path>] [--output <text|json>]\n elwood models [options] [--output <text|json>]\n elwood config <command>\n\nRun one Claude Code or Codex turn and write its combined assistant response.\nPositional text and piped stdin are combined with one blank line.\n\nExamples:\n elwood \"Summarize this repository\"\n git diff | elwood \"Review this diff for correctness\"\n elwood run --output json < prompt.txt\n elwood --keep --output json \"Remember this decision\"\n\nCommands:\n run Run one agent turn (default)\n resume <id> [prompt...] Resume a kept session; same as run --resume <id>\n interactive [id] Open the agent's own TUI here with Elwood's settings\n sessions List Elwood-owned session records; never starts an agent\n models List the agent's models (starts the agent briefly)\n config Inspect or update global defaults; see config --help\n help Show this help\n\nAgent and turn options:\n --agent <claude|codex> Select the agent (default: first available of claude, codex)\n --model <id> Select or switch the model\n --reasoning-effort <level> Claude: low|medium|high|xhigh|max\n Codex: none|minimal|low|medium|high|xhigh|max\n --persona <prompt> Run a real side-effect-capable setup turn; hide its answer\n -C, --cwd <path> Workspace for a new run (default: current directory)\n --image <path> Attach an image; repeat to preserve order\n --timeout <duration> Bound launch, setup, and turn (default: none; ms|s|m|h)\n --trust / --no-trust Toggle allowlisted trust automation (default: trust)\n --no-defaults Ignore saved config and ELWOOD_* run defaults\n\nContinuation and output:\n --keep Preserve Elwood state for a new session\n --resume <id> Resume the exact stored agent and workspace\n --ephemeral Remove resumed Elwood state afterward\n --output <text|json|jsonl> Stdout protocol (default: text)\n --stream / --no-stream Toggle incremental text output (default: off)\n --verbose / --no-verbose Toggle concise elapsed progress on stderr (default: off)\n --debug Write full sanitized event details to stderr\n --head View the full agent TUI in this terminal\n --state-dir <path> Override CLI-owned state storage\n\nAgent posture defaults and supported values:\n --high-trust / --no-high-trust\n Never ask for permissions on either agent (default: off):\n Claude bypassPermissions; Codex danger-full-access + never\n --claude-permission-mode <default|acceptEdits|plan|auto|dontAsk|bypassPermissions>\n Default: dontAsk\n --codex-sandbox <read-only|workspace-write|danger-full-access>\n Default: workspace-write\n --codex-approval-policy <untrusted|on-request|never>\n Default: never\n\nHead mode is view-only and requires terminal stdin and stderr. It cannot be\ncombined with stream, verbose, debug, or JSONL output. Ctrl-C still interrupts.\n\nWarnings and diagnostics use stderr; stdout remains the selected protocol.\nUse \"elwood config effective\" to explain resolved values and their sources.\n\nResume subcommand:\n elwood resume <id> [prompt...] is exactly elwood run --resume <id>: the stored\n agent and workspace are used, --cwd is rejected, and piped stdin still applies.\n\nInteractive mode:\n elwood interactive [id] runs claude or codex in the foreground of this terminal\n with the resolved agent, model, effort, workspace, and posture passed as the\n agent's own flags. Elwood does not observe or record the conversation and\n writes no session state. With an id, the stored session's own conversation is\n resumed in its stored workspace with its stored posture. Requires a terminal on\n stdin and stdout; cannot be combined with --output json/jsonl, --stream,\n --verbose, --debug, --head, --timeout, --persona, --image, --keep, --ephemeral,\n or --resume. Built-in posture defaults are not applied unless configured.\n\nSession listing:\n elwood sessions lists id, agent, live, resumable, last used, created, and\n workspace for records in the effective state directory. \"live\" means a\n launch's bridge socket is present. Text is an aligned table; --output json\n emits one {\"schemaVersion\":1,\"type\":\"sessions\",...} document. An empty state\n directory is a normal, empty result.\n\nModel listing:\n elwood models starts the selected agent briefly, opens and cancels its own\n model picker, tears the session down, and prints the rows. Text marks the\n current model with * and the default with (default); --output json emits one\n {\"schemaVersion\":1,\"type\":\"models\",...} document. Honors --agent, --cwd,\n --model, --reasoning-effort, --timeout, --state-dir, trust, and posture flags.\n\n -h, --help Show this help\n -V, --version Show the Elwood version\n";
6
6
  export declare const cliConfigHelp = "Usage: elwood config <command> [arguments]\n\nInspect or update Elwood's global user configuration without starting an agent.\n\nCommands:\n path Print the global config path\n show Print the saved configuration document\n effective [run options] Explain resolved launch/output settings and sources\n get <key> Print one configured scalar\n set <key> <value> Set one documented config key\n unset <key> Remove one configured key\n\n -h, --help Show this help\n\nExamples:\n elwood config show\n elwood config effective --agent claude\n elwood config set codex.sandbox workspace-write\n";
7
7
  //# sourceMappingURL=help.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"help.d.ts","sourceRoot":"","sources":["../../src/cli/help.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,eAAO,MAAM,OAAO,s7FAyDnB,CAAC;AAEF,eAAO,MAAM,aAAa,usBAkBzB,CAAC"}
1
+ {"version":3,"file":"help.d.ts","sourceRoot":"","sources":["../../src/cli/help.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,eAAO,MAAM,OAAO,yxKAgGnB,CAAC;AAEF,eAAO,MAAM,aAAa,usBAkBzB,CAAC"}
package/dist/cli/help.js CHANGED
@@ -1,9 +1,13 @@
1
1
  /**
2
2
  * Static production help for the first-party headless Elwood command.
3
- * Implements PRD §12A.1 and C-CLI-02.
3
+ * Implements PRD §12A.1/§12A.7-§12A.10 and C-CLI-02/C-CLI-21 through C-CLI-26.
4
4
  */
5
5
  export const cliHelp = `Usage: elwood [options] [prompt...]
6
6
  elwood run [options] [prompt...]
7
+ elwood resume <id> [options] [prompt...]
8
+ elwood interactive [id] [options]
9
+ elwood sessions [--state-dir <path>] [--output <text|json>]
10
+ elwood models [options] [--output <text|json>]
7
11
  elwood config <command>
8
12
 
9
13
  Run one Claude Code or Codex turn and write its combined assistant response.
@@ -17,6 +21,10 @@ Examples:
17
21
 
18
22
  Commands:
19
23
  run Run one agent turn (default)
24
+ resume <id> [prompt...] Resume a kept session; same as run --resume <id>
25
+ interactive [id] Open the agent's own TUI here with Elwood's settings
26
+ sessions List Elwood-owned session records; never starts an agent
27
+ models List the agent's models (starts the agent briefly)
20
28
  config Inspect or update global defaults; see config --help
21
29
  help Show this help
22
30
 
@@ -44,6 +52,9 @@ Continuation and output:
44
52
  --state-dir <path> Override CLI-owned state storage
45
53
 
46
54
  Agent posture defaults and supported values:
55
+ --high-trust / --no-high-trust
56
+ Never ask for permissions on either agent (default: off):
57
+ Claude bypassPermissions; Codex danger-full-access + never
47
58
  --claude-permission-mode <default|acceptEdits|plan|auto|dontAsk|bypassPermissions>
48
59
  Default: dontAsk
49
60
  --codex-sandbox <read-only|workspace-write|danger-full-access>
@@ -57,6 +68,34 @@ combined with stream, verbose, debug, or JSONL output. Ctrl-C still interrupts.
57
68
  Warnings and diagnostics use stderr; stdout remains the selected protocol.
58
69
  Use "elwood config effective" to explain resolved values and their sources.
59
70
 
71
+ Resume subcommand:
72
+ elwood resume <id> [prompt...] is exactly elwood run --resume <id>: the stored
73
+ agent and workspace are used, --cwd is rejected, and piped stdin still applies.
74
+
75
+ Interactive mode:
76
+ elwood interactive [id] runs claude or codex in the foreground of this terminal
77
+ with the resolved agent, model, effort, workspace, and posture passed as the
78
+ agent's own flags. Elwood does not observe or record the conversation and
79
+ writes no session state. With an id, the stored session's own conversation is
80
+ resumed in its stored workspace with its stored posture. Requires a terminal on
81
+ stdin and stdout; cannot be combined with --output json/jsonl, --stream,
82
+ --verbose, --debug, --head, --timeout, --persona, --image, --keep, --ephemeral,
83
+ or --resume. Built-in posture defaults are not applied unless configured.
84
+
85
+ Session listing:
86
+ elwood sessions lists id, agent, live, resumable, last used, created, and
87
+ workspace for records in the effective state directory. "live" means a
88
+ launch's bridge socket is present. Text is an aligned table; --output json
89
+ emits one {"schemaVersion":1,"type":"sessions",...} document. An empty state
90
+ directory is a normal, empty result.
91
+
92
+ Model listing:
93
+ elwood models starts the selected agent briefly, opens and cancels its own
94
+ model picker, tears the session down, and prints the rows. Text marks the
95
+ current model with * and the default with (default); --output json emits one
96
+ {"schemaVersion":1,"type":"models",...} document. Honors --agent, --cwd,
97
+ --model, --reasoning-effort, --timeout, --state-dir, trust, and posture flags.
98
+
60
99
  -h, --help Show this help
61
100
  -V, --version Show the Elwood version
62
101
  `;
@@ -1 +1 @@
1
- {"version":3,"file":"help.js","sourceRoot":"","sources":["../../src/cli/help.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,MAAM,CAAC,MAAM,OAAO,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAyDtB,CAAC;AAEF,MAAM,CAAC,MAAM,aAAa,GAAG;;;;;;;;;;;;;;;;;;CAkB5B,CAAC"}
1
+ {"version":3,"file":"help.js","sourceRoot":"","sources":["../../src/cli/help.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,MAAM,CAAC,MAAM,OAAO,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAgGtB,CAAC;AAEF,MAAM,CAAC,MAAM,aAAa,GAAG;;;;;;;;;;;;;;;;;;CAkB5B,CAAC"}
@@ -0,0 +1,26 @@
1
+ /**
2
+ * `elwood interactive [id]`: resolve Elwood settings, then run the agent's own CLI in
3
+ * the foreground with no PTY, bridge, automation, observation, or state writes.
4
+ * Implements PRD §12A.9 and C-CLI-25.
5
+ */
6
+ import type { SessionRecord } from "../../state/store.ts";
7
+ import type { ParsedInteractiveCommand } from "../command-types.ts";
8
+ import type { CliSignalSource } from "../lifecycle/index.ts";
9
+ import { finalizeRunRequest } from "../request/index.ts";
10
+ import type { CliEnvironment, PromptStdin } from "../types.ts";
11
+ import { type InteractiveSpawner } from "./spawn.ts";
12
+ export type InteractiveCommandContext = {
13
+ readonly env: CliEnvironment;
14
+ readonly invocationCwd: string;
15
+ readonly homeDir: string;
16
+ readonly stdin: PromptStdin;
17
+ readonly stdoutIsTTY?: boolean;
18
+ readonly signals: CliSignalSource;
19
+ };
20
+ export type InteractiveCommandDependencies = {
21
+ readonly readRecord: (stateDir: string, id: string) => SessionRecord;
22
+ readonly finalize: typeof finalizeRunRequest;
23
+ readonly spawn: InteractiveSpawner;
24
+ };
25
+ export declare function runInteractiveCommand(parsed: ParsedInteractiveCommand, context: InteractiveCommandContext, dependencies?: InteractiveCommandDependencies): Promise<number>;
26
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/cli/interactive/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,qBAAqB,CAAC;AACpE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAC7D,OAAO,EAAE,kBAAkB,EAAsB,MAAM,qBAAqB,CAAC;AAE7E,OAAO,KAAK,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAE/D,OAAO,EAAE,KAAK,kBAAkB,EAAyB,MAAM,YAAY,CAAC;AAE5E,MAAM,MAAM,yBAAyB,GAAG;IACtC,QAAQ,CAAC,GAAG,EAAE,cAAc,CAAC;IAC7B,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,KAAK,EAAE,WAAW,CAAC;IAC5B,QAAQ,CAAC,WAAW,CAAC,EAAE,OAAO,CAAC;IAC/B,QAAQ,CAAC,OAAO,EAAE,eAAe,CAAC;CACnC,CAAC;AAEF,MAAM,MAAM,8BAA8B,GAAG;IAC3C,QAAQ,CAAC,UAAU,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,KAAK,aAAa,CAAC;IACrE,QAAQ,CAAC,QAAQ,EAAE,OAAO,kBAAkB,CAAC;IAC7C,QAAQ,CAAC,KAAK,EAAE,kBAAkB,CAAC;CACpC,CAAC;AAQF,wBAAsB,qBAAqB,CACzC,MAAM,EAAE,wBAAwB,EAChC,OAAO,EAAE,yBAAyB,EAClC,YAAY,GAAE,8BAAyC,GACtD,OAAO,CAAC,MAAM,CAAC,CAmBjB"}
@@ -0,0 +1,33 @@
1
+ /**
2
+ * `elwood interactive [id]`: resolve Elwood settings, then run the agent's own CLI in
3
+ * the foreground with no PTY, bridge, automation, observation, or state writes.
4
+ * Implements PRD §12A.9 and C-CLI-25.
5
+ */
6
+ import { readPrivateSessionRecord } from "../../state/private-session.js";
7
+ import { finalizeRunRequest, resolveRunSettings } from "../request/index.js";
8
+ import { usage } from "../request/values.js";
9
+ import { interactiveLaunch } from "./launch.js";
10
+ import { spawnInteractiveAgent } from "./spawn.js";
11
+ const defaults = {
12
+ readRecord: readPrivateSessionRecord,
13
+ finalize: finalizeRunRequest,
14
+ spawn: spawnInteractiveAgent,
15
+ };
16
+ export async function runInteractiveCommand(parsed, context, dependencies = defaults) {
17
+ if (context.stdin.isTTY !== true || context.stdoutIsTTY !== true)
18
+ throw usage("interactive requires terminal stdin and stdout.");
19
+ const draft = await resolveRunSettings(parsed.run, context);
20
+ const stored = parsed.id === undefined ? undefined : dependencies.readRecord(draft.stateDir, parsed.id);
21
+ const request = await dependencies.finalize(draft, stored === undefined ? undefined : { agent: stored.adapter, cwd: stored.cwd });
22
+ const launch = interactiveLaunch(request, stored);
23
+ // Ctrl-C belongs to the foreground agent exactly as in a direct launch; Elwood must
24
+ // not exit (Node's default) or interrupt anything while the agent owns the terminal.
25
+ const release = context.signals.onSigint(() => undefined);
26
+ try {
27
+ return await dependencies.spawn(launch);
28
+ }
29
+ finally {
30
+ release();
31
+ }
32
+ }
33
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/cli/interactive/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,wBAAwB,EAAE,MAAM,gCAAgC,CAAC;AAI1E,OAAO,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AAC7E,OAAO,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAC;AAE7C,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,EAA2B,qBAAqB,EAAE,MAAM,YAAY,CAAC;AAiB5E,MAAM,QAAQ,GAAmC;IAC/C,UAAU,EAAE,wBAAwB;IACpC,QAAQ,EAAE,kBAAkB;IAC5B,KAAK,EAAE,qBAAqB;CAC7B,CAAC;AAEF,MAAM,CAAC,KAAK,UAAU,qBAAqB,CACzC,MAAgC,EAChC,OAAkC,EAClC,eAA+C,QAAQ;IAEvD,IAAI,OAAO,CAAC,KAAK,CAAC,KAAK,KAAK,IAAI,IAAI,OAAO,CAAC,WAAW,KAAK,IAAI;QAC9D,MAAM,KAAK,CAAC,iDAAiD,CAAC,CAAC;IACjE,MAAM,KAAK,GAAG,MAAM,kBAAkB,CAAC,MAAM,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;IAC5D,MAAM,MAAM,GACV,MAAM,CAAC,EAAE,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,YAAY,CAAC,UAAU,CAAC,KAAK,CAAC,QAAQ,EAAE,MAAM,CAAC,EAAE,CAAC,CAAC;IAC3F,MAAM,OAAO,GAAG,MAAM,YAAY,CAAC,QAAQ,CACzC,KAAK,EACL,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,OAAO,EAAE,GAAG,EAAE,MAAM,CAAC,GAAG,EAAE,CAC9E,CAAC;IACF,MAAM,MAAM,GAAG,iBAAiB,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IAClD,oFAAoF;IACpF,qFAAqF;IACrF,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC;IAC1D,IAAI,CAAC;QACH,OAAO,MAAM,YAAY,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IAC1C,CAAC;YAAS,CAAC;QACT,OAAO,EAAE,CAAC;IACZ,CAAC;AACH,CAAC"}
@@ -0,0 +1,14 @@
1
+ /**
2
+ * Maps an effective CLI request (plus an optional stored record) onto the agent's own
3
+ * command line through the adapters' shared launch-argument builders.
4
+ * Implements PRD §12A.9 and C-CLI-25.
5
+ */
6
+ import type { SessionRecord } from "../../state/store.ts";
7
+ import type { EffectiveRunRequest } from "../types.ts";
8
+ import type { InteractiveLaunch } from "./spawn.ts";
9
+ /**
10
+ * Built-in posture defaults are omitted (`source === "built-in"`): an unconfigured
11
+ * interactive launch is the agent's own default experience, not Elwood's headless one.
12
+ */
13
+ export declare function interactiveLaunch(request: EffectiveRunRequest, stored: SessionRecord | undefined): InteractiveLaunch;
14
+ //# sourceMappingURL=launch.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"launch.d.ts","sourceRoot":"","sources":["../../../src/cli/interactive/launch.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAWH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAG1D,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;AACvD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAEpD;;;GAGG;AACH,wBAAgB,iBAAiB,CAC/B,OAAO,EAAE,mBAAmB,EAC5B,MAAM,EAAE,aAAa,GAAG,SAAS,GAChC,iBAAiB,CA+CnB"}
@@ -0,0 +1,66 @@
1
+ /**
2
+ * Maps an effective CLI request (plus an optional stored record) onto the agent's own
3
+ * command line through the adapters' shared launch-argument builders.
4
+ * Implements PRD §12A.9 and C-CLI-25.
5
+ */
6
+ import { claudeLaunchArguments } from "../../claude/command.js";
7
+ import { codexEffortArguments, codexLaunchArguments } from "../../codex/command.js";
8
+ import { elwoodError } from "../../core/errors.js";
9
+ import { launchArgv } from "../../runtime/launch-arguments.js";
10
+ import { claudeLaunchPosture, codexLaunchPosture, effectivePosture, } from "../../state/launch-posture.js";
11
+ import { optional } from "../request/values.js";
12
+ import { claudeEffort, codexEffort } from "../session/launch.js";
13
+ /**
14
+ * Built-in posture defaults are omitted (`source === "built-in"`): an unconfigured
15
+ * interactive launch is the agent's own default experience, not Elwood's headless one.
16
+ */
17
+ export function interactiveLaunch(request, stored) {
18
+ const sources = request.resolution?.sources;
19
+ if (request.agent === "claude") {
20
+ const posture = effectivePosture(stored?.claude.launch, claudeLaunchPosture({
21
+ ...optional(selected(request.permissionMode, sources?.permissionMode), "permissionMode"),
22
+ }));
23
+ const resumeId = stored === undefined ? undefined : conversationId(stored, "claude");
24
+ return {
25
+ agent: "claude",
26
+ command: "claude",
27
+ args: launchArgv(claudeLaunchArguments({
28
+ ...optional(request.model, "model"),
29
+ ...optional(claudeEffort(request.reasoningEffort), "reasoningEffort"),
30
+ ...posture,
31
+ }, resumeId)),
32
+ cwd: request.cwd,
33
+ };
34
+ }
35
+ const posture = effectivePosture(stored?.codex.launch, codexLaunchPosture({
36
+ ...optional(selected(request.sandbox, sources?.sandbox), "sandbox"),
37
+ ...optional(selected(request.approvalPolicy, sources?.approvalPolicy), "approvalPolicy"),
38
+ }));
39
+ return {
40
+ agent: "codex",
41
+ command: "codex",
42
+ args: launchArgv([
43
+ ...codexLaunchArguments({
44
+ ...optional(request.model, "model"),
45
+ ...posture,
46
+ cwd: request.cwd,
47
+ ...(stored === undefined ? {} : { resumeId: conversationId(stored, "codex") }),
48
+ }),
49
+ ...codexEffortArguments(codexEffort(request.reasoningEffort)),
50
+ ]),
51
+ cwd: request.cwd,
52
+ };
53
+ }
54
+ /** Keep a posture value only when a flag, environment, config, or stored record chose it. */
55
+ function selected(value, source) {
56
+ return source === undefined || source === "built-in" ? undefined : value;
57
+ }
58
+ function conversationId(stored, agent) {
59
+ const id = stored[agent].resumeId;
60
+ if (id === undefined) {
61
+ const name = agent === "claude" ? "Claude" : "Codex";
62
+ throw elwoodError("resume_unavailable", `Cannot resume ${name} without a ${name} session id.`);
63
+ }
64
+ return id;
65
+ }
66
+ //# sourceMappingURL=launch.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"launch.js","sourceRoot":"","sources":["../../../src/cli/interactive/launch.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,18 @@
1
+ /**
2
+ * Foreground agent spawning for `elwood interactive`: inherited stdio, no PTY, no
3
+ * observation, the agent's own exit status.
4
+ * Implements PRD §12A.9 and C-CLI-25.
5
+ */
6
+ import type { CliAgent } from "../types.ts";
7
+ export type InteractiveLaunch = {
8
+ readonly agent: CliAgent;
9
+ readonly command: string;
10
+ readonly args: readonly string[];
11
+ readonly cwd: string;
12
+ };
13
+ /** Runs the agent in the foreground and resolves with its exit status. */
14
+ export type InteractiveSpawner = (launch: InteractiveLaunch) => Promise<number>;
15
+ export declare const spawnInteractiveAgent: InteractiveSpawner;
16
+ /** A signal-terminated agent maps to the shell convention 128 + signal number. */
17
+ export declare function exitStatus(code: number | null, signal: NodeJS.Signals | null): number;
18
+ //# sourceMappingURL=spawn.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"spawn.d.ts","sourceRoot":"","sources":["../../../src/cli/interactive/spawn.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAKH,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAE5C,MAAM,MAAM,iBAAiB,GAAG;IAC9B,QAAQ,CAAC,KAAK,EAAE,QAAQ,CAAC;IACzB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,IAAI,EAAE,SAAS,MAAM,EAAE,CAAC;IACjC,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;CACtB,CAAC;AAEF,0EAA0E;AAC1E,MAAM,MAAM,kBAAkB,GAAG,CAAC,MAAM,EAAE,iBAAiB,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;AAEhF,eAAO,MAAM,qBAAqB,EAAE,kBAShC,CAAC;AAEL,kFAAkF;AAClF,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC,OAAO,GAAG,IAAI,GAAG,MAAM,CAIrF"}
@@ -0,0 +1,32 @@
1
+ /**
2
+ * Foreground agent spawning for `elwood interactive`: inherited stdio, no PTY, no
3
+ * observation, the agent's own exit status.
4
+ * Implements PRD §12A.9 and C-CLI-25.
5
+ */
6
+ import { spawn } from "node:child_process";
7
+ import { constants } from "node:os";
8
+ import { causeDetails, elwoodError, errnoCode } from "../../core/errors.js";
9
+ export const spawnInteractiveAgent = (launch) => new Promise((resolve, reject) => {
10
+ const child = spawn(launch.command, launch.args, {
11
+ cwd: launch.cwd,
12
+ env: process.env,
13
+ stdio: "inherit",
14
+ });
15
+ child.once("error", (error) => reject(spawnFailure(launch, error)));
16
+ child.once("exit", (code, signal) => resolve(exitStatus(code, signal)));
17
+ });
18
+ /** A signal-terminated agent maps to the shell convention 128 + signal number. */
19
+ export function exitStatus(code, signal) {
20
+ if (code !== null)
21
+ return code;
22
+ const number = signal === null ? undefined : constants.signals[signal];
23
+ return number === undefined ? 1 : 128 + number;
24
+ }
25
+ function spawnFailure(launch, error) {
26
+ const missing = errnoCode(error) === "ENOENT";
27
+ const code = `${launch.agent}_${missing ? "not_found" : "start_failed"}`;
28
+ return elwoodError(code, missing
29
+ ? `The ${launch.command} command is not available on PATH.`
30
+ : `Could not start ${launch.command} in the foreground.`, causeDetails(error));
31
+ }
32
+ //# sourceMappingURL=spawn.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"spawn.js","sourceRoot":"","sources":["../../../src/cli/interactive/spawn.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAC3C,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AACpC,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAa5E,MAAM,CAAC,MAAM,qBAAqB,GAAuB,CAAC,MAAM,EAAE,EAAE,CAClE,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;IAC9B,MAAM,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC,OAAO,EAAE,MAAM,CAAC,IAAI,EAAE;QAC/C,GAAG,EAAE,MAAM,CAAC,GAAG;QACf,GAAG,EAAE,OAAO,CAAC,GAAG;QAChB,KAAK,EAAE,SAAS;KACjB,CAAC,CAAC;IACH,KAAK,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,MAAM,CAAC,YAAY,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC;IACpE,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,CAAC,OAAO,CAAC,UAAU,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC;AAC1E,CAAC,CAAC,CAAC;AAEL,kFAAkF;AAClF,MAAM,UAAU,UAAU,CAAC,IAAmB,EAAE,MAA6B;IAC3E,IAAI,IAAI,KAAK,IAAI;QAAE,OAAO,IAAI,CAAC;IAC/B,MAAM,MAAM,GAAG,MAAM,KAAK,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IACvE,OAAO,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG,MAAM,CAAC;AACjD,CAAC;AAED,SAAS,YAAY,CAAC,MAAyB,EAAE,KAAc;IAC7D,MAAM,OAAO,GAAG,SAAS,CAAC,KAAK,CAAC,KAAK,QAAQ,CAAC;IAC9C,MAAM,IAAI,GAAG,GAAG,MAAM,CAAC,KAAK,IAAI,OAAO,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,cAAc,EAAW,CAAC;IAClF,OAAO,WAAW,CAChB,IAAI,EACJ,OAAO;QACL,CAAC,CAAC,OAAO,MAAM,CAAC,OAAO,oCAAoC;QAC3D,CAAC,CAAC,mBAAmB,MAAM,CAAC,OAAO,qBAAqB,EAC1D,YAAY,CAAC,KAAK,CAAC,CACpB,CAAC;AACJ,CAAC"}
@@ -0,0 +1,28 @@
1
+ /**
2
+ * Failure classification and protocol-aware error rendering shared by every command.
3
+ * Implements PRD §12A.3/§12A.5 and C-CLI-11/C-CLI-17.
4
+ */
5
+ import type { CliCleanup, CliError } from "./output/types.ts";
6
+ import type { AsyncOutputSink } from "./stream.ts";
7
+ import { type CliAgent, type CliEnvironment, type CliOutputMode } from "./types.ts";
8
+ export type StaticFailure = {
9
+ readonly code: string;
10
+ readonly message: string;
11
+ readonly exitCode: 1 | 2;
12
+ };
13
+ export declare function cliFailure(error: unknown): StaticFailure;
14
+ /** Build the canonical version-1 error record for a failure that produced no response. */
15
+ export declare function errorRecord(agent: CliAgent | null, failure: {
16
+ readonly code: string;
17
+ readonly message: string;
18
+ }, durationMs: number, cleanup?: CliCleanup): CliError;
19
+ /** Write one error record in the selected protocol: JSON/JSONL to stdout, text to stderr. */
20
+ export declare function renderErrorRecord(output: CliOutputMode, record: CliError, stdout: AsyncOutputSink, stderr: AsyncOutputSink): Promise<void>;
21
+ export declare function explicitStructuredOutput(args: readonly string[]): CliOutputMode | undefined;
22
+ /**
23
+ * Agent an argument/config failure record reports before resolution ran: the
24
+ * `--agent` flag, else `ELWOOD_AGENT` unless `--no-defaults` ignores it, else
25
+ * `null` because nothing selected one (auto-detection had not chosen yet).
26
+ */
27
+ export declare function agentHint(args: readonly string[], env: CliEnvironment): CliAgent | null;
28
+ //# sourceMappingURL=main-failure.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"main-failure.d.ts","sourceRoot":"","sources":["../../src/cli/main-failure.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAOH,OAAO,KAAK,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAC9D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AACnD,OAAO,EACL,KAAK,QAAQ,EACb,KAAK,cAAc,EACnB,KAAK,aAAa,EAGnB,MAAM,YAAY,CAAC;AAEpB,MAAM,MAAM,aAAa,GAAG;IAC1B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,QAAQ,EAAE,CAAC,GAAG,CAAC,CAAC;CAC1B,CAAC;AAEF,wBAAgB,UAAU,CAAC,KAAK,EAAE,OAAO,GAAG,aAAa,CAMxD;AAED,0FAA0F;AAC1F,wBAAgB,WAAW,CACzB,KAAK,EAAE,QAAQ,GAAG,IAAI,EACtB,OAAO,EAAE;IAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;CAAE,EAC5D,UAAU,EAAE,MAAM,EAClB,OAAO,GAAE,UAAoD,GAC5D,QAAQ,CAYV;AAED,6FAA6F;AAC7F,wBAAsB,iBAAiB,CACrC,MAAM,EAAE,aAAa,EACrB,MAAM,EAAE,QAAQ,EAChB,MAAM,EAAE,eAAe,EACvB,MAAM,EAAE,eAAe,GACtB,OAAO,CAAC,IAAI,CAAC,CAQf;AAED,wBAAgB,wBAAwB,CAAC,IAAI,EAAE,SAAS,MAAM,EAAE,GAAG,aAAa,GAAG,SAAS,CAU3F;AAED;;;;GAIG;AACH,wBAAgB,SAAS,CAAC,IAAI,EAAE,SAAS,MAAM,EAAE,EAAE,GAAG,EAAE,cAAc,GAAG,QAAQ,GAAG,IAAI,CAYvF"}
@@ -0,0 +1,78 @@
1
+ /**
2
+ * Failure classification and protocol-aware error rendering shared by every command.
3
+ * Implements PRD §12A.3/§12A.5 and C-CLI-11/C-CLI-17.
4
+ */
5
+ import { ElwoodError } from "../core/errors.js";
6
+ import { isOneOf } from "../core/predicates.js";
7
+ import { writeJson } from "./output/json.js";
8
+ import { JsonlRenderer } from "./output/jsonl.js";
9
+ import { createCliSanitizer, formatDiagnosticValue } from "./output/sanitize.js";
10
+ import { CliValidationError, cliAgents, } from "./types.js";
11
+ export function cliFailure(error) {
12
+ if (error instanceof CliValidationError)
13
+ return { code: error.code, message: error.message, exitCode: 2 };
14
+ if (error instanceof ElwoodError)
15
+ return { code: error.code, message: error.message, exitCode: 1 };
16
+ return { code: "runtime_error", message: "Elwood could not run the agent.", exitCode: 1 };
17
+ }
18
+ /** Build the canonical version-1 error record for a failure that produced no response. */
19
+ export function errorRecord(agent, failure, durationMs, cleanup = { action: "none", status: "succeeded" }) {
20
+ const clean = createCliSanitizer();
21
+ return {
22
+ schemaVersion: 1,
23
+ type: "error",
24
+ agent,
25
+ response: "",
26
+ sessionId: null,
27
+ durationMs,
28
+ cleanup,
29
+ error: { code: clean(failure.code), message: clean(failure.message) },
30
+ };
31
+ }
32
+ /** Write one error record in the selected protocol: JSON/JSONL to stdout, text to stderr. */
33
+ export async function renderErrorRecord(output, record, stdout, stderr) {
34
+ if (output === "json")
35
+ await writeJson(stdout, record);
36
+ else if (output === "jsonl")
37
+ await new JsonlRenderer(stdout, () => record.durationMs).finish(record);
38
+ else
39
+ await stderr.write(`elwood: ${formatDiagnosticValue(record.error.message, createCliSanitizer())}\n`);
40
+ }
41
+ export function explicitStructuredOutput(args) {
42
+ if (args[0] === "config")
43
+ return undefined;
44
+ let candidate;
45
+ for (let index = 0; index < args.length; index += 1) {
46
+ const arg = args[index];
47
+ if (arg === "--")
48
+ break;
49
+ if (arg === "--output")
50
+ candidate = args[index + 1];
51
+ else if (arg?.startsWith("--output="))
52
+ candidate = arg.slice("--output=".length);
53
+ }
54
+ return candidate === "json" || candidate === "jsonl" ? candidate : undefined;
55
+ }
56
+ /**
57
+ * Agent an argument/config failure record reports before resolution ran: the
58
+ * `--agent` flag, else `ELWOOD_AGENT` unless `--no-defaults` ignores it, else
59
+ * `null` because nothing selected one (auto-detection had not chosen yet).
60
+ */
61
+ export function agentHint(args, env) {
62
+ let flag;
63
+ let useDefaults = true;
64
+ for (let index = 0; index < args.length; index += 1) {
65
+ const arg = args[index];
66
+ if (arg === "--")
67
+ break;
68
+ if (arg === "--no-defaults")
69
+ useDefaults = false;
70
+ else if (arg === "--agent")
71
+ flag = args[index + 1];
72
+ else if (arg?.startsWith("--agent="))
73
+ flag = arg.slice("--agent=".length);
74
+ }
75
+ const candidate = flag ?? (useDefaults ? env["ELWOOD_AGENT"] : undefined);
76
+ return isOneOf(candidate, cliAgents) ? candidate : null;
77
+ }
78
+ //# sourceMappingURL=main-failure.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"main-failure.js","sourceRoot":"","sources":["../../src/cli/main-failure.ts"],"names":[],"mappings":"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"}
@@ -1,18 +1,21 @@
1
1
  /**
2
- * Side-effect-free routing for metadata, config, validation, and headless execution.
3
- * Implements PRD §12A and C-CLI-02/C-CLI-11/C-CLI-14/C-CLI-17.
2
+ * Side-effect-free routing for metadata, config, listing, interactive, and headless execution.
3
+ * Implements PRD §12A and C-CLI-02/C-CLI-11/C-CLI-14/C-CLI-17/C-CLI-21 through C-CLI-26.
4
4
  */
5
5
  import type { CliHeadTarget } from "./head/types.ts";
6
+ import type { runInteractiveCommand } from "./interactive/index.ts";
6
7
  import type { CliSignalSource } from "./lifecycle/index.ts";
7
- import { resolveRunRequest } from "./request/index.ts";
8
+ import type { executeModels } from "./models/index.ts";
9
+ import { resolveRunRequest, resolveRunSettings } from "./request/index.ts";
8
10
  import type { executeRun } from "./run/index.ts";
9
11
  import type { prepareCliSession } from "./session/index.ts";
10
12
  import { type CliWritable } from "./stream.ts";
11
- import { type CliEnvironment, type PromptStdin } from "./types.ts";
13
+ import type { CliEnvironment, PromptStdin } from "./types.ts";
12
14
  export type CliMainContext = {
13
15
  readonly stdout: CliWritable;
14
16
  readonly stderr: CliWritable;
15
17
  readonly stdin: PromptStdin;
18
+ readonly stdoutIsTTY?: boolean;
16
19
  readonly env: CliEnvironment;
17
20
  readonly invocationCwd: string;
18
21
  readonly homeDir: string;
@@ -22,12 +25,17 @@ export type CliMainContext = {
22
25
  export type CliMainDependencies = {
23
26
  readonly version: () => string;
24
27
  readonly resolve: typeof resolveRunRequest;
28
+ readonly settings: typeof resolveRunSettings;
25
29
  readonly prepare: typeof prepareCliSession;
26
30
  readonly execute: typeof executeRun;
31
+ readonly listModels: typeof executeModels;
32
+ readonly interactive: typeof runInteractiveCommand;
27
33
  readonly now: () => number;
28
34
  };
29
35
  export declare const prepareDefaultCliSession: typeof prepareCliSession;
30
36
  export declare const executeDefaultCliRun: typeof executeRun;
37
+ export declare const executeDefaultModels: typeof executeModels;
38
+ export declare const runDefaultInteractive: typeof runInteractiveCommand;
31
39
  /** Route one invocation and settle every selected output write before returning its status. */
32
40
  export declare function main(args: readonly string[], context: CliMainContext, dependencies?: CliMainDependencies): Promise<number>;
33
41
  //# sourceMappingURL=main.d.ts.map