@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
@@ -5,6 +5,7 @@
5
5
  import { claudeReasoningEfforts, codexReasoningEfforts } from "../../core/reasoning-effort.js";
6
6
  import { parseDuration } from "../duration.js";
7
7
  import { CliValidationError, claudePermissionModes, cliAgents, cliOutputModes, codexApprovalPolicies, codexSandboxModes, } from "../types.js";
8
+ import { exactKeys, invalid, oneOf, optionalBoolean, optionalEnum, optionalString, record, strictBoolean, } from "./codec-primitives.js";
8
9
  import { configKeys } from "./keys.js";
9
10
  const topKeys = [
10
11
  "schemaVersion",
@@ -12,6 +13,7 @@ const topKeys = [
12
13
  "output",
13
14
  "timeout",
14
15
  "trust",
16
+ "highTrust",
15
17
  "stateDir",
16
18
  "verbose",
17
19
  "stream",
@@ -40,6 +42,7 @@ export function decodeConfig(value) {
40
42
  ...optionalEnum(object, "output", cliOutputModes),
41
43
  ...optionalDuration(object),
42
44
  ...optionalBoolean(object, "trust"),
45
+ ...optionalBoolean(object, "highTrust"),
43
46
  ...optionalString(object, "stateDir"),
44
47
  ...optionalBoolean(object, "verbose"),
45
48
  ...optionalBoolean(object, "stream"),
@@ -55,7 +58,7 @@ export function parseConfigValue(key, value) {
55
58
  throw invalid("schemaVersion must be 1.");
56
59
  return 1;
57
60
  }
58
- if (key === "trust" || key === "verbose" || key === "stream")
61
+ if (key === "trust" || key === "highTrust" || key === "verbose" || key === "stream")
59
62
  return strictBoolean(value);
60
63
  if (key === "agent")
61
64
  return oneOf(value, cliAgents, key);
@@ -144,53 +147,8 @@ function optionalDuration(object) {
144
147
  parseDuration(result.timeout, "invalid_config");
145
148
  return result;
146
149
  }
147
- function optionalString(object, key) {
148
- if (!(key in object))
149
- return {};
150
- const value = object[key];
151
- if (typeof value !== "string" || value.trim() === "")
152
- throw invalid(`${key} must be a non-empty string.`);
153
- return { [key]: value };
154
- }
155
- function optionalBoolean(object, key) {
156
- if (!(key in object))
157
- return {};
158
- if (typeof object[key] !== "boolean")
159
- throw invalid(`${key} must be true or false.`);
160
- return { [key]: object[key] };
161
- }
162
- function optionalEnum(object, key, valid) {
163
- if (!(key in object))
164
- return {};
165
- return { [key]: oneOf(object[key], valid, key) };
166
- }
167
- function oneOf(value, valid, key) {
168
- if (typeof value !== "string" || !valid.includes(value))
169
- throw invalid(`${key} must be one of: ${valid.join(", ")}.`);
170
- return value;
171
- }
172
- function strictBoolean(value) {
173
- if (value === "true")
174
- return true;
175
- if (value === "false")
176
- return false;
177
- throw invalid("Boolean values must be true or false.");
178
- }
179
- function record(value, label) {
180
- if (typeof value !== "object" || value === null || Array.isArray(value))
181
- throw invalid(`${label} must be an object.`);
182
- return value;
183
- }
184
- function exactKeys(object, valid, label) {
185
- const unknown = Object.keys(object).find((key) => !valid.includes(key));
186
- if (unknown !== undefined)
187
- throw invalid(`Unknown ${label} key: ${unknown}.`);
188
- }
189
150
  function assertConfigKey(key) {
190
151
  if (!configKeys.includes(key))
191
152
  throw invalid(`Unknown config key: ${key}.`);
192
153
  }
193
- function invalid(message) {
194
- return new CliValidationError("invalid_config", message);
195
- }
196
154
  //# sourceMappingURL=codec.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"codec.js","sourceRoot":"","sources":["../../../src/cli/config/codec.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"codec.js","sourceRoot":"","sources":["../../../src/cli/config/codec.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,sBAAsB,EAAE,qBAAqB,EAAE,MAAM,gCAAgC,CAAC;AAC/F,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAC/C,OAAO,EAEL,kBAAkB,EAClB,qBAAqB,EACrB,SAAS,EACT,cAAc,EACd,qBAAqB,EACrB,iBAAiB,GAClB,MAAM,aAAa,CAAC;AACrB,OAAO,EACL,SAAS,EACT,OAAO,EACP,KAAK,EACL,eAAe,EACf,YAAY,EACZ,cAAc,EACd,MAAM,EACN,aAAa,GACd,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAkB,UAAU,EAAE,MAAM,WAAW,CAAC;AAEvD,MAAM,OAAO,GAAG;IACd,eAAe;IACf,OAAO;IACP,QAAQ;IACR,SAAS;IACT,OAAO;IACP,WAAW;IACX,UAAU;IACV,SAAS;IACT,QAAQ;IACR,SAAS;IACT,QAAQ;IACR,OAAO;CACC,CAAC;AAEX,MAAM,UAAU,eAAe,CAAC,IAAY;IAC1C,IAAI,CAAC;QACH,OAAO,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;IACxC,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAI,KAAK,YAAY,kBAAkB;YAAE,MAAM,KAAK,CAAC;QACrD,MAAM,OAAO,CAAC,2BAA2B,CAAC,CAAC;IAC7C,CAAC;AACH,CAAC;AAED,MAAM,UAAU,YAAY,CAAC,KAAc;IACzC,MAAM,MAAM,GAAG,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;IACvC,SAAS,CAAC,MAAM,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC;IACrC,IAAI,MAAM,CAAC,eAAe,CAAC,KAAK,CAAC;QAAE,MAAM,OAAO,CAAC,iCAAiC,CAAC,CAAC;IACpF,OAAO;QACL,aAAa,EAAE,CAAC;QAChB,GAAG,YAAY,CAAC,MAAM,EAAE,OAAO,EAAE,SAAS,CAAC;QAC3C,GAAG,YAAY,CAAC,MAAM,EAAE,QAAQ,EAAE,cAAc,CAAC;QACjD,GAAG,gBAAgB,CAAC,MAAM,CAAC;QAC3B,GAAG,eAAe,CAAC,MAAM,EAAE,OAAO,CAAC;QACnC,GAAG,eAAe,CAAC,MAAM,EAAE,WAAW,CAAC;QACvC,GAAG,cAAc,CAAC,MAAM,EAAE,UAAU,CAAC;QACrC,GAAG,eAAe,CAAC,MAAM,EAAE,SAAS,CAAC;QACrC,GAAG,eAAe,CAAC,MAAM,EAAE,QAAQ,CAAC;QACpC,GAAG,cAAc,CAAC,MAAM,EAAE,SAAS,CAAC;QACpC,GAAG,cAAc,CAAC,MAAM,CAAC;QACzB,GAAG,aAAa,CAAC,MAAM,CAAC;KACzB,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,GAAW,EAAE,KAAa;IACzD,eAAe,CAAC,GAAG,CAAC,CAAC;IACrB,IAAI,GAAG,KAAK,eAAe,EAAE,CAAC;QAC5B,IAAI,KAAK,KAAK,GAAG;YAAE,MAAM,OAAO,CAAC,0BAA0B,CAAC,CAAC;QAC7D,OAAO,CAAC,CAAC;IACX,CAAC;IACD,IAAI,GAAG,KAAK,OAAO,IAAI,GAAG,KAAK,WAAW,IAAI,GAAG,KAAK,SAAS,IAAI,GAAG,KAAK,QAAQ;QACjF,OAAO,aAAa,CAAC,KAAK,CAAC,CAAC;IAC9B,IAAI,GAAG,KAAK,OAAO;QAAE,OAAO,KAAK,CAAC,KAAK,EAAE,SAAS,EAAE,GAAG,CAAC,CAAC;IACzD,IAAI,GAAG,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC,KAAK,EAAE,cAAc,EAAE,GAAG,CAAC,CAAC;IAC/D,IAAI,GAAG,KAAK,SAAS,EAAE,CAAC;QACtB,aAAa,CAAC,KAAK,EAAE,gBAAgB,CAAC,CAAC;QACvC,OAAO,KAAK,CAAC;IACf,CAAC;IACD,IAAI,GAAG,KAAK,wBAAwB;QAAE,OAAO,KAAK,CAAC,KAAK,EAAE,sBAAsB,EAAE,GAAG,CAAC,CAAC;IACvF,IAAI,GAAG,KAAK,uBAAuB;QAAE,OAAO,KAAK,CAAC,KAAK,EAAE,qBAAqB,EAAE,GAAG,CAAC,CAAC;IACrF,IAAI,GAAG,KAAK,uBAAuB;QAAE,OAAO,KAAK,CAAC,KAAK,EAAE,qBAAqB,EAAE,GAAG,CAAC,CAAC;IACrF,IAAI,GAAG,KAAK,eAAe;QAAE,OAAO,KAAK,CAAC,KAAK,EAAE,iBAAiB,EAAE,GAAG,CAAC,CAAC;IACzE,IAAI,GAAG,KAAK,sBAAsB;QAAE,OAAO,KAAK,CAAC,KAAK,EAAE,qBAAqB,EAAE,GAAG,CAAC,CAAC;IACpF,IAAI,KAAK,CAAC,IAAI,EAAE,KAAK,EAAE;QAAE,MAAM,OAAO,CAAC,GAAG,GAAG,qBAAqB,CAAC,CAAC;IACpE,OAAO,KAAK,CAAC;AACf,CAAC;AAED,MAAM,UAAU,cAAc,CAAC,MAAiB,EAAE,GAAW;IAC3D,eAAe,CAAC,GAAG,CAAC,CAAC;IACrB,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC;QAAE,OAAO,MAAM,CAAC,GAAsB,CAAC,CAAC;IAC9D,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAiC,CAAC;IACtE,OAAO,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,KAAmD,CAAC,CAAC;AAC9E,CAAC;AAED,MAAM,UAAU,cAAc,CAAC,MAAiB,EAAE,GAAW,EAAE,GAAW;IACxE,MAAM,KAAK,GAAG,gBAAgB,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;IACzC,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC;QAAE,OAAO,YAAY,CAAC,EAAE,GAAG,MAAM,EAAE,CAAC,GAAG,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;IACzE,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAiC,CAAC;IACtE,OAAO,YAAY,CAAC,EAAE,GAAG,MAAM,EAAE,CAAC,KAAK,CAAC,EAAE,EAAE,GAAG,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC;AACpF,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,MAAiB,EAAE,GAAW;IAC7D,eAAe,CAAC,GAAG,CAAC,CAAC;IACrB,IAAI,GAAG,KAAK,eAAe;QAAE,OAAO,MAAM,CAAC;IAC3C,MAAM,IAAI,GAA4B,eAAe,CAAC,MAAM,CAAC,CAAC;IAC9D,IAAI,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;QACtB,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAqB,CAAC;QAC1D,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAwC,CAAC;QAClE,IAAI,MAAM,KAAK,SAAS;YAAE,OAAO,CAAC,cAAc,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;QAChE,IAAI,MAAM,KAAK,SAAS,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,MAAM,KAAK,CAAC;YAC1D,OAAO,CAAC,cAAc,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;IACxC,CAAC;SAAM,CAAC;QACN,OAAO,CAAC,cAAc,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;IACpC,CAAC;IACD,OAAO,YAAY,CAAC,IAAI,CAAC,CAAC;AAC5B,CAAC;AAED,SAAS,cAAc,CAAC,MAA+B;IAGrD,IAAI,CAAC,CAAC,QAAQ,IAAI,MAAM,CAAC;QAAE,OAAO,EAAE,CAAC;IACrC,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,QAAQ,CAAC,CAAC;IACjD,SAAS,CAAC,KAAK,EAAE,CAAC,OAAO,EAAE,iBAAiB,EAAE,gBAAgB,CAAC,EAAE,QAAQ,CAAC,CAAC;IAC3E,OAAO;QACL,MAAM,EAAE;YACN,GAAG,cAAc,CAAC,KAAK,EAAE,OAAO,CAAC;YACjC,GAAG,YAAY,CAAC,KAAK,EAAE,iBAAiB,EAAE,sBAAsB,CAAC;YACjE,GAAG,YAAY,CAAC,KAAK,EAAE,gBAAgB,EAAE,qBAAqB,CAAC;SAChE;KACF,CAAC;AACJ,CAAC;AAED,SAAS,aAAa,CAAC,MAA+B;IAGpD,IAAI,CAAC,CAAC,OAAO,IAAI,MAAM,CAAC;QAAE,OAAO,EAAE,CAAC;IACpC,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC,CAAC;IAC/C,SAAS,CAAC,KAAK,EAAE,CAAC,OAAO,EAAE,iBAAiB,EAAE,SAAS,EAAE,gBAAgB,CAAC,EAAE,OAAO,CAAC,CAAC;IACrF,OAAO;QACL,KAAK,EAAE;YACL,GAAG,cAAc,CAAC,KAAK,EAAE,OAAO,CAAC;YACjC,GAAG,YAAY,CAAC,KAAK,EAAE,iBAAiB,EAAE,qBAAqB,CAAC;YAChE,GAAG,YAAY,CAAC,KAAK,EAAE,SAAS,EAAE,iBAAiB,CAAC;YACpD,GAAG,YAAY,CAAC,KAAK,EAAE,gBAAgB,EAAE,qBAAqB,CAAC;SAChE;KACF,CAAC;AACJ,CAAC;AAED,SAAS,gBAAgB,CAAC,MAA+B;IACvD,MAAM,MAAM,GAAG,cAAc,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;IACjD,IAAI,MAAM,CAAC,OAAO,KAAK,SAAS;QAAE,aAAa,CAAC,MAAM,CAAC,OAAO,EAAE,gBAAgB,CAAC,CAAC;IAClF,OAAO,MAAM,CAAC;AAChB,CAAC;AACD,SAAS,eAAe,CAAC,GAAW;IAClC,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,GAAgB,CAAC;QAAE,MAAM,OAAO,CAAC,uBAAuB,GAAG,GAAG,CAAC,CAAC;AAC3F,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"effective.d.ts","sourceRoot":"","sources":["../../../src/cli/config/effective.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAE1D,OAAO,EAAE,KAAK,aAAa,EAAwB,MAAM,4BAA4B,CAAC;AAItF,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AACpD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAElD,MAAM,MAAM,sBAAsB,GAAG;IACnC,QAAQ,CAAC,GAAG,EAAE,cAAc,CAAC;IAC7B,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,MAAM,EAAE,eAAe,CAAC;CAClC,CAAC;AAEF,MAAM,MAAM,2BAA2B,GAAG;IACxC,QAAQ,CAAC,UAAU,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,KAAK,aAAa,CAAC;IACrE,2FAA2F;IAC3F,QAAQ,CAAC,WAAW,EAAE,aAAa,CAAC;CACrC,CAAC;AAOF,wBAAsB,oBAAoB,CACxC,IAAI,EAAE,SAAS,MAAM,EAAE,EACvB,OAAO,EAAE,sBAAsB,EAC/B,SAAS,GAAE,OAAO,CAAC,2BAA2B,CAAM,GACnD,OAAO,CAAC,IAAI,CAAC,CA6Df"}
1
+ {"version":3,"file":"effective.d.ts","sourceRoot":"","sources":["../../../src/cli/config/effective.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAE1D,OAAO,EAAE,KAAK,aAAa,EAAwB,MAAM,4BAA4B,CAAC;AAItF,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AACpD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAElD,MAAM,MAAM,sBAAsB,GAAG;IACnC,QAAQ,CAAC,GAAG,EAAE,cAAc,CAAC;IAC7B,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,MAAM,EAAE,eAAe,CAAC;CAClC,CAAC;AAEF,MAAM,MAAM,2BAA2B,GAAG;IACxC,QAAQ,CAAC,UAAU,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,KAAK,aAAa,CAAC;IACrE,2FAA2F;IAC3F,QAAQ,CAAC,WAAW,EAAE,aAAa,CAAC;CACrC,CAAC;AAOF,wBAAsB,oBAAoB,CACxC,IAAI,EAAE,SAAS,MAAM,EAAE,EACvB,OAAO,EAAE,sBAAsB,EAC/B,SAAS,GAAE,OAAO,CAAC,2BAA2B,CAAM,GACnD,OAAO,CAAC,IAAI,CAAC,CA8Df"}
@@ -49,6 +49,7 @@ export async function writeEffectiveConfig(args, context, overrides = {}) {
49
49
  debug: setting(request.debug === true, resolution.sources.debug),
50
50
  head: setting(draft.head === true, resolution.sources.head),
51
51
  trust: setting(request.trust, resolution.sources.trust),
52
+ highTrust: setting(request.highTrust, resolution.sources.highTrust),
52
53
  stateDir: setting(request.stateDir, resolution.sources.stateDir),
53
54
  permissionMode: setting(claudePosture?.permissionMode, resolution.sources.permissionMode),
54
55
  allowedTools: setting(claudePosture?.allowedTools, claudeToolSource(request.agent, stored, request.resume, "allowedTools")),
@@ -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":"AAAA;;;GAGG;AAEH,OAAO,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AACtF,OAAO,EAAE,wBAAwB,EAAE,MAAM,gCAAgC,CAAC;AAE1E,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAChD,OAAO,EAAsB,oBAAoB,EAAE,MAAM,4BAA4B,CAAC;AACtF,OAAO,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAC5D,OAAO,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AACzD,OAAO,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAC;AAiB7C,MAAM,QAAQ,GAAgC;IAC5C,UAAU,EAAE,wBAAwB;IACpC,WAAW,EAAE,oBAAoB;CAClC,CAAC;AAEF,MAAM,CAAC,KAAK,UAAU,oBAAoB,CACxC,IAAuB,EACvB,OAA+B,EAC/B,YAAkD,EAAE;IAEpD,MAAM,YAAY,GAAG,EAAE,GAAG,QAAQ,EAAE,GAAG,SAAS,EAAE,CAAC;IACnD,MAAM,MAAM,GAAG,YAAY,CAAC,CAAC,KAAK,EAAE,GAAG,IAAI,CAAC,CAAC,CAAC;IAC9C,IAAI,MAAM,CAAC,OAAO,KAAK,KAAK;QAAE,MAAM,KAAK,CAAC,4CAA4C,CAAC,CAAC;IACxF,IAAI,MAAM,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC;QAAE,MAAM,KAAK,CAAC,iDAAiD,CAAC,CAAC;IAClG,IAAI,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC;QAChC,MAAM,KAAK,CAAC,4EAA4E,CAAC,CAAC;IAC5F,MAAM,KAAK,GAAG,MAAM,kBAAkB,CAAC,MAAM,EAAE,OAAO,EAAE,YAAY,CAAC,WAAW,CAAC,CAAC;IAClF,MAAM,MAAM,GACV,KAAK,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,YAAY,CAAC,UAAU,CAAC,KAAK,CAAC,QAAQ,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;IACjG,MAAM,OAAO,GAAG,MAAM,kBAAkB,CACtC,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,UAAU,GAAG,OAAO,CAAC,UAAW,CAAC;IACvC,MAAM,aAAa,GACjB,OAAO,CAAC,KAAK,KAAK,QAAQ;QACxB,CAAC,CAAC,gBAAgB,CACd,MAAM,EAAE,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,EAC/D,mBAAmB,CAAC,EAAE,cAAc,EAAE,OAAO,CAAC,cAAe,EAAE,CAAC,CACjE;QACH,CAAC,CAAC,SAAS,CAAC;IAChB,MAAM,OAAO,GAAG,CAAI,KAAoB,EAAE,MAAc,EAAE,EAAE,CAAC,CAAC;QAC5D,KAAK,EAAE,KAAK,IAAI,IAAI;QACpB,MAAM;KACP,CAAC,CAAC;IACH,MAAM,QAAQ,GAAG;QACf,aAAa,EAAE,CAAC;QAChB,IAAI,EAAE,oBAAoB;QAC1B,MAAM,EAAE,UAAU,CAAC,MAAM;QACzB,QAAQ,EAAE;YACR,KAAK,EAAE,OAAO,CAAC,OAAO,CAAC,KAAK,EAAE,UAAU,CAAC,OAAO,CAAC,KAAK,CAAC;YACvD,SAAS,EAAE,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,UAAU,CAAC,OAAO,CAAC,SAAS,CAAC;YAC7D,KAAK,EAAE,OAAO,CAAC,OAAO,CAAC,KAAK,EAAE,UAAU,CAAC,OAAO,CAAC,KAAK,CAAC;YACvD,eAAe,EAAE,OAAO,CAAC,OAAO,CAAC,eAAe,EAAE,UAAU,CAAC,OAAO,CAAC,eAAe,CAAC;YACrF,SAAS,EAAE,OAAO,CAAC,OAAO,CAAC,SAAS,EAAE,UAAU,CAAC,OAAO,CAAC,SAAS,CAAC;YACnE,MAAM,EAAE,OAAO,CAAC,OAAO,CAAC,MAAM,EAAE,UAAU,CAAC,OAAO,CAAC,MAAM,CAAC;YAC1D,MAAM,EAAE,OAAO,CAAC,OAAO,CAAC,MAAM,EAAE,UAAU,CAAC,OAAO,CAAC,MAAM,CAAC;YAC1D,OAAO,EAAE,OAAO,CAAC,OAAO,CAAC,OAAO,EAAE,UAAU,CAAC,OAAO,CAAC,OAAO,CAAC;YAC7D,KAAK,EAAE,OAAO,CAAC,OAAO,CAAC,KAAK,KAAK,IAAI,EAAE,UAAU,CAAC,OAAO,CAAC,KAAK,CAAC;YAChE,IAAI,EAAE,OAAO,CAAC,KAAK,CAAC,IAAI,KAAK,IAAI,EAAE,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC;YAC3D,KAAK,EAAE,OAAO,CAAC,OAAO,CAAC,KAAK,EAAE,UAAU,CAAC,OAAO,CAAC,KAAK,CAAC;YACvD,SAAS,EAAE,OAAO,CAAC,OAAO,CAAC,SAAS,EAAE,UAAU,CAAC,OAAO,CAAC,SAAS,CAAC;YACnE,QAAQ,EAAE,OAAO,CAAC,OAAO,CAAC,QAAQ,EAAE,UAAU,CAAC,OAAO,CAAC,QAAQ,CAAC;YAChE,cAAc,EAAE,OAAO,CAAC,aAAa,EAAE,cAAc,EAAE,UAAU,CAAC,OAAO,CAAC,cAAc,CAAC;YACzF,YAAY,EAAE,OAAO,CACnB,aAAa,EAAE,YAAY,EAC3B,gBAAgB,CAAC,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,cAAc,CAAC,CACxE;YACD,eAAe,EAAE,OAAO,CACtB,aAAa,EAAE,eAAe,EAC9B,gBAAgB,CAAC,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,iBAAiB,CAAC,CAC3E;YACD,KAAK,EAAE,OAAO,CACZ,aAAa,EAAE,KAAK,EACpB,gBAAgB,CAAC,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,OAAO,CAAC,CACjE;YACD,OAAO,EAAE,OAAO,CAAC,OAAO,CAAC,OAAO,EAAE,UAAU,CAAC,OAAO,CAAC,OAAO,CAAC;YAC7D,cAAc,EAAE,OAAO,CAAC,OAAO,CAAC,cAAc,EAAE,UAAU,CAAC,OAAO,CAAC,cAAc,CAAC;SACnF;KACO,CAAC;IACX,MAAM,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AACvE,CAAC;AAID,SAAS,gBAAgB,CACvB,KAAyB,EACzB,MAAiC,EACjC,MAA0B,EAC1B,GAAsB;IAEtB,IAAI,KAAK,KAAK,QAAQ;QAAE,OAAO,gBAAgB,CAAC;IAChD,IAAI,MAAM,EAAE,OAAO,KAAK,QAAQ,IAAI,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,KAAK,SAAS;QAAE,OAAO,OAAO,CAAC;IAC9F,OAAO,kBAAkB,MAAM,EAAE,CAAC;AACpC,CAAC"}
@@ -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;AAMH,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,kBAanC,CAAC;AAEF,kFAAkF;AAClF,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC,OAAO,GAAG,IAAI,GAAG,MAAM,CAIrF"}
@@ -0,0 +1,53 @@
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 { execFile, spawn } from "node:child_process";
7
+ import { constants } from "node:os";
8
+ import { causeDetails, elwoodError, errnoCode } from "../../core/errors.js";
9
+ import { probeShellCommand, userShell } from "../../runtime/shell.js";
10
+ export const spawnInteractiveAgent = async (launch) => {
11
+ const path = await loginShellPath().catch((error) => {
12
+ throw spawnFailure(launch, error);
13
+ });
14
+ return new Promise((resolve, reject) => {
15
+ const child = spawn(launch.command, launch.args, {
16
+ cwd: launch.cwd,
17
+ env: { ...process.env, PATH: path },
18
+ stdio: "inherit",
19
+ });
20
+ child.once("error", (error) => reject(spawnFailure(launch, error)));
21
+ child.once("exit", (code, signal) => resolve(exitStatus(code, signal)));
22
+ });
23
+ };
24
+ /** A signal-terminated agent maps to the shell convention 128 + signal number. */
25
+ export function exitStatus(code, signal) {
26
+ if (code !== null)
27
+ return code;
28
+ const number = signal === null ? undefined : constants.signals[signal];
29
+ return number === undefined ? 1 : 128 + number;
30
+ }
31
+ function spawnFailure(launch, error) {
32
+ const missing = errnoCode(error) === "ENOENT";
33
+ const code = `${launch.agent}_${missing ? "not_found" : "start_failed"}`;
34
+ return elwoodError(code, missing
35
+ ? `The ${launch.command} command is not available on PATH.`
36
+ : `Could not start ${launch.command} in the foreground.`, causeDetails(error));
37
+ }
38
+ /** Match detection PATH without inserting a shell between terminal signals and the agent. */
39
+ function loginShellPath() {
40
+ return new Promise((resolve, reject) => {
41
+ // NUL framing separates the exported PATH from incidental shell-startup stdout.
42
+ execFile(userShell(), probeShellCommand("printf '\\0%s\\0' \"$PATH\""), { timeout: 10_000 }, (error, stdout) => {
43
+ if (error)
44
+ reject(error);
45
+ else {
46
+ const parts = stdout.split("\u0000");
47
+ // Early-exiting shell startup can succeed without running the probe.
48
+ resolve(parts.length >= 3 ? parts.at(-2) : process.env["PATH"]);
49
+ }
50
+ });
51
+ });
52
+ }
53
+ //# sourceMappingURL=spawn.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"spawn.js","sourceRoot":"","sources":["../../../src/cli/interactive/spawn.ts"],"names":[],"mappings":"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"}