@with-logic/elwood 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1658) hide show
  1. package/CHANGELOG.md +172 -0
  2. package/LICENSE +21 -0
  3. package/README.md +304 -0
  4. package/dist/bridge/limits.d.ts +13 -0
  5. package/dist/bridge/limits.d.ts.map +1 -0
  6. package/dist/bridge/limits.js +13 -0
  7. package/dist/bridge/limits.js.map +1 -0
  8. package/dist/bridge/parse.d.ts +21 -0
  9. package/dist/bridge/parse.d.ts.map +1 -0
  10. package/dist/bridge/parse.js +45 -0
  11. package/dist/bridge/parse.js.map +1 -0
  12. package/dist/bridge/script.d.ts +6 -0
  13. package/dist/bridge/script.d.ts.map +1 -0
  14. package/dist/bridge/script.js +76 -0
  15. package/dist/bridge/script.js.map +1 -0
  16. package/dist/bridge/server.d.ts +26 -0
  17. package/dist/bridge/server.d.ts.map +1 -0
  18. package/dist/bridge/server.js +149 -0
  19. package/dist/bridge/server.js.map +1 -0
  20. package/dist/bridge/types.d.ts +10 -0
  21. package/dist/bridge/types.d.ts.map +1 -0
  22. package/dist/bridge/types.js +6 -0
  23. package/dist/bridge/types.js.map +1 -0
  24. package/dist/claude/attach-images.d.ts +17 -0
  25. package/dist/claude/attach-images.d.ts.map +1 -0
  26. package/dist/claude/attach-images.js +42 -0
  27. package/dist/claude/attach-images.js.map +1 -0
  28. package/dist/claude/command.d.ts +11 -0
  29. package/dist/claude/command.d.ts.map +1 -0
  30. package/dist/claude/command.js +34 -0
  31. package/dist/claude/command.js.map +1 -0
  32. package/dist/claude/handler-types.d.ts +23 -0
  33. package/dist/claude/handler-types.d.ts.map +1 -0
  34. package/dist/claude/handler-types.js +6 -0
  35. package/dist/claude/handler-types.js.map +1 -0
  36. package/dist/claude/hook-dispatch.d.ts +9 -0
  37. package/dist/claude/hook-dispatch.d.ts.map +1 -0
  38. package/dist/claude/hook-dispatch.js +12 -0
  39. package/dist/claude/hook-dispatch.js.map +1 -0
  40. package/dist/claude/hook-events-extra.d.ts +81 -0
  41. package/dist/claude/hook-events-extra.d.ts.map +1 -0
  42. package/dist/claude/hook-events-extra.js +6 -0
  43. package/dist/claude/hook-events-extra.js.map +1 -0
  44. package/dist/claude/hook-events.d.ts +101 -0
  45. package/dist/claude/hook-events.d.ts.map +1 -0
  46. package/dist/claude/hook-events.js +6 -0
  47. package/dist/claude/hook-events.js.map +1 -0
  48. package/dist/claude/hook-names.d.ts +24 -0
  49. package/dist/claude/hook-names.d.ts.map +1 -0
  50. package/dist/claude/hook-names.js +45 -0
  51. package/dist/claude/hook-names.js.map +1 -0
  52. package/dist/claude/hooks/dispatch.d.ts +9 -0
  53. package/dist/claude/hooks/dispatch.d.ts.map +1 -0
  54. package/dist/claude/hooks/dispatch.js +12 -0
  55. package/dist/claude/hooks/dispatch.js.map +1 -0
  56. package/dist/claude/hooks/events-extra.d.ts +81 -0
  57. package/dist/claude/hooks/events-extra.d.ts.map +1 -0
  58. package/dist/claude/hooks/events-extra.js +6 -0
  59. package/dist/claude/hooks/events-extra.js.map +1 -0
  60. package/dist/claude/hooks/events.d.ts +101 -0
  61. package/dist/claude/hooks/events.d.ts.map +1 -0
  62. package/dist/claude/hooks/events.js +6 -0
  63. package/dist/claude/hooks/events.js.map +1 -0
  64. package/dist/claude/hooks/index.d.ts +78 -0
  65. package/dist/claude/hooks/index.d.ts.map +1 -0
  66. package/dist/claude/hooks/index.js +6 -0
  67. package/dist/claude/hooks/index.js.map +1 -0
  68. package/dist/claude/hooks/names.d.ts +24 -0
  69. package/dist/claude/hooks/names.d.ts.map +1 -0
  70. package/dist/claude/hooks/names.js +45 -0
  71. package/dist/claude/hooks/names.js.map +1 -0
  72. package/dist/claude/hooks/tool-events.d.ts +10 -0
  73. package/dist/claude/hooks/tool-events.d.ts.map +1 -0
  74. package/dist/claude/hooks/tool-events.js +18 -0
  75. package/dist/claude/hooks/tool-events.js.map +1 -0
  76. package/dist/claude/hooks/tool-types.d.ts +158 -0
  77. package/dist/claude/hooks/tool-types.d.ts.map +1 -0
  78. package/dist/claude/hooks/tool-types.js +6 -0
  79. package/dist/claude/hooks/tool-types.js.map +1 -0
  80. package/dist/claude/hooks.d.ts +78 -0
  81. package/dist/claude/hooks.d.ts.map +1 -0
  82. package/dist/claude/hooks.js +6 -0
  83. package/dist/claude/hooks.js.map +1 -0
  84. package/dist/claude/list-models.d.ts +14 -0
  85. package/dist/claude/list-models.d.ts.map +1 -0
  86. package/dist/claude/list-models.js +31 -0
  87. package/dist/claude/list-models.js.map +1 -0
  88. package/dist/claude/login/abort.d.ts +39 -0
  89. package/dist/claude/login/abort.d.ts.map +1 -0
  90. package/dist/claude/login/abort.js +81 -0
  91. package/dist/claude/login/abort.js.map +1 -0
  92. package/dist/claude/login/driver.d.ts +27 -0
  93. package/dist/claude/login/driver.d.ts.map +1 -0
  94. package/dist/claude/login/driver.js +30 -0
  95. package/dist/claude/login/driver.js.map +1 -0
  96. package/dist/claude/login/expiry-screen.d.ts +24 -0
  97. package/dist/claude/login/expiry-screen.d.ts.map +1 -0
  98. package/dist/claude/login/expiry-screen.js +31 -0
  99. package/dist/claude/login/expiry-screen.js.map +1 -0
  100. package/dist/claude/login/screens.d.ts +26 -0
  101. package/dist/claude/login/screens.d.ts.map +1 -0
  102. package/dist/claude/login/screens.js +33 -0
  103. package/dist/claude/login/screens.js.map +1 -0
  104. package/dist/claude/login/session-login.d.ts +24 -0
  105. package/dist/claude/login/session-login.d.ts.map +1 -0
  106. package/dist/claude/login/session-login.js +97 -0
  107. package/dist/claude/login/session-login.js.map +1 -0
  108. package/dist/claude/login/stages.d.ts +22 -0
  109. package/dist/claude/login/stages.d.ts.map +1 -0
  110. package/dist/claude/login/stages.js +144 -0
  111. package/dist/claude/login/stages.js.map +1 -0
  112. package/dist/claude/login/types.d.ts +38 -0
  113. package/dist/claude/login/types.d.ts.map +1 -0
  114. package/dist/claude/login/types.js +5 -0
  115. package/dist/claude/login/types.js.map +1 -0
  116. package/dist/claude/login/validate.d.ts +15 -0
  117. package/dist/claude/login/validate.d.ts.map +1 -0
  118. package/dist/claude/login/validate.js +43 -0
  119. package/dist/claude/login/validate.js.map +1 -0
  120. package/dist/claude/login-expired.d.ts +31 -0
  121. package/dist/claude/login-expired.d.ts.map +1 -0
  122. package/dist/claude/login-expired.js +61 -0
  123. package/dist/claude/login-expired.js.map +1 -0
  124. package/dist/claude/model-picker.d.ts +7 -0
  125. package/dist/claude/model-picker.d.ts.map +1 -0
  126. package/dist/claude/model-picker.js +43 -0
  127. package/dist/claude/model-picker.js.map +1 -0
  128. package/dist/claude/model-switch-confirmation.d.ts +16 -0
  129. package/dist/claude/model-switch-confirmation.d.ts.map +1 -0
  130. package/dist/claude/model-switch-confirmation.js +63 -0
  131. package/dist/claude/model-switch-confirmation.js.map +1 -0
  132. package/dist/claude/normalize.d.ts +7 -0
  133. package/dist/claude/normalize.d.ts.map +1 -0
  134. package/dist/claude/normalize.js +63 -0
  135. package/dist/claude/normalize.js.map +1 -0
  136. package/dist/claude/permissions.d.ts +26 -0
  137. package/dist/claude/permissions.d.ts.map +1 -0
  138. package/dist/claude/permissions.js +6 -0
  139. package/dist/claude/permissions.js.map +1 -0
  140. package/dist/claude/preflight.d.ts +17 -0
  141. package/dist/claude/preflight.d.ts.map +1 -0
  142. package/dist/claude/preflight.js +82 -0
  143. package/dist/claude/preflight.js.map +1 -0
  144. package/dist/claude/resize-restore.d.ts +13 -0
  145. package/dist/claude/resize-restore.d.ts.map +1 -0
  146. package/dist/claude/resize-restore.js +29 -0
  147. package/dist/claude/resize-restore.js.map +1 -0
  148. package/dist/claude/screen-table.d.ts +28 -0
  149. package/dist/claude/screen-table.d.ts.map +1 -0
  150. package/dist/claude/screen-table.js +55 -0
  151. package/dist/claude/screen-table.js.map +1 -0
  152. package/dist/claude/serialize.d.ts +8 -0
  153. package/dist/claude/serialize.d.ts.map +1 -0
  154. package/dist/claude/serialize.js +45 -0
  155. package/dist/claude/serialize.js.map +1 -0
  156. package/dist/claude/session/bridge.d.ts +11 -0
  157. package/dist/claude/session/bridge.d.ts.map +1 -0
  158. package/dist/claude/session/bridge.js +18 -0
  159. package/dist/claude/session/bridge.js.map +1 -0
  160. package/dist/claude/session/build.d.ts +15 -0
  161. package/dist/claude/session/build.d.ts.map +1 -0
  162. package/dist/claude/session/build.js +147 -0
  163. package/dist/claude/session/build.js.map +1 -0
  164. package/dist/claude/session/hook-handler.d.ts +34 -0
  165. package/dist/claude/session/hook-handler.d.ts.map +1 -0
  166. package/dist/claude/session/hook-handler.js +42 -0
  167. package/dist/claude/session/hook-handler.js.map +1 -0
  168. package/dist/claude/session/index.d.ts +18 -0
  169. package/dist/claude/session/index.d.ts.map +1 -0
  170. package/dist/claude/session/index.js +58 -0
  171. package/dist/claude/session/index.js.map +1 -0
  172. package/dist/claude/session/instance.d.ts +42 -0
  173. package/dist/claude/session/instance.d.ts.map +1 -0
  174. package/dist/claude/session/instance.js +146 -0
  175. package/dist/claude/session/instance.js.map +1 -0
  176. package/dist/claude/session/interface.d.ts +49 -0
  177. package/dist/claude/session/interface.d.ts.map +1 -0
  178. package/dist/claude/session/interface.js +10 -0
  179. package/dist/claude/session/interface.js.map +1 -0
  180. package/dist/claude/session/resume.d.ts +8 -0
  181. package/dist/claude/session/resume.d.ts.map +1 -0
  182. package/dist/claude/session/resume.js +47 -0
  183. package/dist/claude/session/resume.js.map +1 -0
  184. package/dist/claude/session/runtime.d.ts +43 -0
  185. package/dist/claude/session/runtime.d.ts.map +1 -0
  186. package/dist/claude/session/runtime.js +105 -0
  187. package/dist/claude/session/runtime.js.map +1 -0
  188. package/dist/claude/session/start-or-resume.d.ts +12 -0
  189. package/dist/claude/session/start-or-resume.d.ts.map +1 -0
  190. package/dist/claude/session/start-or-resume.js +32 -0
  191. package/dist/claude/session/start-or-resume.js.map +1 -0
  192. package/dist/claude/session/transcript.d.ts +62 -0
  193. package/dist/claude/session/transcript.d.ts.map +1 -0
  194. package/dist/claude/session/transcript.js +88 -0
  195. package/dist/claude/session/transcript.js.map +1 -0
  196. package/dist/claude/session-bridge.d.ts +11 -0
  197. package/dist/claude/session-bridge.d.ts.map +1 -0
  198. package/dist/claude/session-bridge.js +18 -0
  199. package/dist/claude/session-bridge.js.map +1 -0
  200. package/dist/claude/session-build.d.ts +15 -0
  201. package/dist/claude/session-build.d.ts.map +1 -0
  202. package/dist/claude/session-build.js +147 -0
  203. package/dist/claude/session-build.js.map +1 -0
  204. package/dist/claude/session-hook-handler.d.ts +34 -0
  205. package/dist/claude/session-hook-handler.d.ts.map +1 -0
  206. package/dist/claude/session-hook-handler.js +42 -0
  207. package/dist/claude/session-hook-handler.js.map +1 -0
  208. package/dist/claude/session-instance.d.ts +42 -0
  209. package/dist/claude/session-instance.d.ts.map +1 -0
  210. package/dist/claude/session-instance.js +146 -0
  211. package/dist/claude/session-instance.js.map +1 -0
  212. package/dist/claude/session-interface.d.ts +49 -0
  213. package/dist/claude/session-interface.d.ts.map +1 -0
  214. package/dist/claude/session-interface.js +10 -0
  215. package/dist/claude/session-interface.js.map +1 -0
  216. package/dist/claude/session-resume.d.ts +8 -0
  217. package/dist/claude/session-resume.d.ts.map +1 -0
  218. package/dist/claude/session-resume.js +47 -0
  219. package/dist/claude/session-resume.js.map +1 -0
  220. package/dist/claude/session-runtime.d.ts +43 -0
  221. package/dist/claude/session-runtime.d.ts.map +1 -0
  222. package/dist/claude/session-runtime.js +105 -0
  223. package/dist/claude/session-runtime.js.map +1 -0
  224. package/dist/claude/session-transcript.d.ts +62 -0
  225. package/dist/claude/session-transcript.d.ts.map +1 -0
  226. package/dist/claude/session-transcript.js +88 -0
  227. package/dist/claude/session-transcript.js.map +1 -0
  228. package/dist/claude/session.d.ts +18 -0
  229. package/dist/claude/session.d.ts.map +1 -0
  230. package/dist/claude/session.js +58 -0
  231. package/dist/claude/session.js.map +1 -0
  232. package/dist/claude/settings.d.ts +14 -0
  233. package/dist/claude/settings.d.ts.map +1 -0
  234. package/dist/claude/settings.js +34 -0
  235. package/dist/claude/settings.js.map +1 -0
  236. package/dist/claude/simple.d.ts +28 -0
  237. package/dist/claude/simple.d.ts.map +1 -0
  238. package/dist/claude/simple.js +45 -0
  239. package/dist/claude/simple.js.map +1 -0
  240. package/dist/claude/start-or-resume.d.ts +12 -0
  241. package/dist/claude/start-or-resume.d.ts.map +1 -0
  242. package/dist/claude/start-or-resume.js +32 -0
  243. package/dist/claude/start-or-resume.js.map +1 -0
  244. package/dist/claude/startup-prompts.d.ts +16 -0
  245. package/dist/claude/startup-prompts.d.ts.map +1 -0
  246. package/dist/claude/startup-prompts.js +46 -0
  247. package/dist/claude/startup-prompts.js.map +1 -0
  248. package/dist/claude/startup-size.d.ts +8 -0
  249. package/dist/claude/startup-size.d.ts.map +1 -0
  250. package/dist/claude/startup-size.js +8 -0
  251. package/dist/claude/startup-size.js.map +1 -0
  252. package/dist/claude/tool-hook-events.d.ts +10 -0
  253. package/dist/claude/tool-hook-events.d.ts.map +1 -0
  254. package/dist/claude/tool-hook-events.js +18 -0
  255. package/dist/claude/tool-hook-events.js.map +1 -0
  256. package/dist/claude/tool-types.d.ts +158 -0
  257. package/dist/claude/tool-types.d.ts.map +1 -0
  258. package/dist/claude/tool-types.js +6 -0
  259. package/dist/claude/tool-types.js.map +1 -0
  260. package/dist/claude/transcript/baseline.d.ts +33 -0
  261. package/dist/claude/transcript/baseline.d.ts.map +1 -0
  262. package/dist/claude/transcript/baseline.js +108 -0
  263. package/dist/claude/transcript/baseline.js.map +1 -0
  264. package/dist/claude/transcript/cursor-io.d.ts +15 -0
  265. package/dist/claude/transcript/cursor-io.d.ts.map +1 -0
  266. package/dist/claude/transcript/cursor-io.js +44 -0
  267. package/dist/claude/transcript/cursor-io.js.map +1 -0
  268. package/dist/claude/transcript/cursor.d.ts +24 -0
  269. package/dist/claude/transcript/cursor.d.ts.map +1 -0
  270. package/dist/claude/transcript/cursor.js +43 -0
  271. package/dist/claude/transcript/cursor.js.map +1 -0
  272. package/dist/claude/transcript/drain-context.d.ts +22 -0
  273. package/dist/claude/transcript/drain-context.d.ts.map +1 -0
  274. package/dist/claude/transcript/drain-context.js +18 -0
  275. package/dist/claude/transcript/drain-context.js.map +1 -0
  276. package/dist/claude/transcript/drain.d.ts +33 -0
  277. package/dist/claude/transcript/drain.d.ts.map +1 -0
  278. package/dist/claude/transcript/drain.js +56 -0
  279. package/dist/claude/transcript/drain.js.map +1 -0
  280. package/dist/claude/transcript/drops.d.ts +9 -0
  281. package/dist/claude/transcript/drops.d.ts.map +1 -0
  282. package/dist/claude/transcript/drops.js +9 -0
  283. package/dist/claude/transcript/drops.js.map +1 -0
  284. package/dist/claude/transcript/emit.d.ts +26 -0
  285. package/dist/claude/transcript/emit.d.ts.map +1 -0
  286. package/dist/claude/transcript/emit.js +57 -0
  287. package/dist/claude/transcript/emit.js.map +1 -0
  288. package/dist/claude/transcript/fs-guard.d.ts +24 -0
  289. package/dist/claude/transcript/fs-guard.d.ts.map +1 -0
  290. package/dist/claude/transcript/fs-guard.js +48 -0
  291. package/dist/claude/transcript/fs-guard.js.map +1 -0
  292. package/dist/claude/transcript/index.d.ts +38 -0
  293. package/dist/claude/transcript/index.d.ts.map +1 -0
  294. package/dist/claude/transcript/index.js +191 -0
  295. package/dist/claude/transcript/index.js.map +1 -0
  296. package/dist/claude/transcript/summary.d.ts +40 -0
  297. package/dist/claude/transcript/summary.d.ts.map +1 -0
  298. package/dist/claude/transcript/summary.js +90 -0
  299. package/dist/claude/transcript/summary.js.map +1 -0
  300. package/dist/claude/transcript/warnings.d.ts +31 -0
  301. package/dist/claude/transcript/warnings.d.ts.map +1 -0
  302. package/dist/claude/transcript/warnings.js +53 -0
  303. package/dist/claude/transcript/warnings.js.map +1 -0
  304. package/dist/claude/transcript/watcher-config.d.ts +22 -0
  305. package/dist/claude/transcript/watcher-config.d.ts.map +1 -0
  306. package/dist/claude/transcript/watcher-config.js +7 -0
  307. package/dist/claude/transcript/watcher-config.js.map +1 -0
  308. package/dist/claude/validate/input.d.ts +8 -0
  309. package/dist/claude/validate/input.d.ts.map +1 -0
  310. package/dist/claude/validate/input.js +137 -0
  311. package/dist/claude/validate/input.js.map +1 -0
  312. package/dist/claude/validate/permission-update.d.ts +10 -0
  313. package/dist/claude/validate/permission-update.d.ts.map +1 -0
  314. package/dist/claude/validate/permission-update.js +72 -0
  315. package/dist/claude/validate/permission-update.js.map +1 -0
  316. package/dist/claude/validate/result.d.ts +7 -0
  317. package/dist/claude/validate/result.d.ts.map +1 -0
  318. package/dist/claude/validate/result.js +118 -0
  319. package/dist/claude/validate/result.js.map +1 -0
  320. package/dist/claude/validate/shapes.d.ts +22 -0
  321. package/dist/claude/validate/shapes.d.ts.map +1 -0
  322. package/dist/claude/validate/shapes.js +15 -0
  323. package/dist/claude/validate/shapes.js.map +1 -0
  324. package/dist/claude/validate/tool-update.d.ts +15 -0
  325. package/dist/claude/validate/tool-update.d.ts.map +1 -0
  326. package/dist/claude/validate/tool-update.js +122 -0
  327. package/dist/claude/validate/tool-update.js.map +1 -0
  328. package/dist/claude/validate-input.d.ts +8 -0
  329. package/dist/claude/validate-input.d.ts.map +1 -0
  330. package/dist/claude/validate-input.js +137 -0
  331. package/dist/claude/validate-input.js.map +1 -0
  332. package/dist/claude/validate-permission-update.d.ts +10 -0
  333. package/dist/claude/validate-permission-update.d.ts.map +1 -0
  334. package/dist/claude/validate-permission-update.js +72 -0
  335. package/dist/claude/validate-permission-update.js.map +1 -0
  336. package/dist/claude/validate-result.d.ts +7 -0
  337. package/dist/claude/validate-result.d.ts.map +1 -0
  338. package/dist/claude/validate-result.js +118 -0
  339. package/dist/claude/validate-result.js.map +1 -0
  340. package/dist/claude/validate-shapes.d.ts +22 -0
  341. package/dist/claude/validate-shapes.d.ts.map +1 -0
  342. package/dist/claude/validate-shapes.js +15 -0
  343. package/dist/claude/validate-shapes.js.map +1 -0
  344. package/dist/claude/validate-tool-update.d.ts +15 -0
  345. package/dist/claude/validate-tool-update.d.ts.map +1 -0
  346. package/dist/claude/validate-tool-update.js +122 -0
  347. package/dist/claude/validate-tool-update.js.map +1 -0
  348. package/dist/cli/agent-detect.d.ts +44 -0
  349. package/dist/cli/agent-detect.d.ts.map +1 -0
  350. package/dist/cli/agent-detect.js +66 -0
  351. package/dist/cli/agent-detect.js.map +1 -0
  352. package/dist/cli/arg-errors.d.ts +6 -0
  353. package/dist/cli/arg-errors.d.ts.map +1 -0
  354. package/dist/cli/arg-errors.js +44 -0
  355. package/dist/cli/arg-errors.js.map +1 -0
  356. package/dist/cli/arg-options.d.ts +26 -0
  357. package/dist/cli/arg-options.d.ts.map +1 -0
  358. package/dist/cli/arg-options.js +50 -0
  359. package/dist/cli/arg-options.js.map +1 -0
  360. package/dist/cli/args/errors.d.ts +6 -0
  361. package/dist/cli/args/errors.d.ts.map +1 -0
  362. package/dist/cli/args/errors.js +44 -0
  363. package/dist/cli/args/errors.js.map +1 -0
  364. package/dist/cli/args/index.d.ts +7 -0
  365. package/dist/cli/args/index.d.ts.map +1 -0
  366. package/dist/cli/args/index.js +70 -0
  367. package/dist/cli/args/index.js.map +1 -0
  368. package/dist/cli/args/options.d.ts +26 -0
  369. package/dist/cli/args/options.d.ts.map +1 -0
  370. package/dist/cli/args/options.js +50 -0
  371. package/dist/cli/args/options.js.map +1 -0
  372. package/dist/cli/args.d.ts +7 -0
  373. package/dist/cli/args.d.ts.map +1 -0
  374. package/dist/cli/args.js +70 -0
  375. package/dist/cli/args.js.map +1 -0
  376. package/dist/cli/config/codec.d.ts +12 -0
  377. package/dist/cli/config/codec.d.ts.map +1 -0
  378. package/dist/cli/config/codec.js +196 -0
  379. package/dist/cli/config/codec.js.map +1 -0
  380. package/dist/cli/config/commands.d.ts +15 -0
  381. package/dist/cli/config/commands.d.ts.map +1 -0
  382. package/dist/cli/config/commands.js +56 -0
  383. package/dist/cli/config/commands.js.map +1 -0
  384. package/dist/cli/config/effective.d.ts +21 -0
  385. package/dist/cli/config/effective.d.ts.map +1 -0
  386. package/dist/cli/config/effective.js +70 -0
  387. package/dist/cli/config/effective.js.map +1 -0
  388. package/dist/cli/config/keys.d.ts +7 -0
  389. package/dist/cli/config/keys.d.ts.map +1 -0
  390. package/dist/cli/config/keys.js +23 -0
  391. package/dist/cli/config/keys.js.map +1 -0
  392. package/dist/cli/config/paths.d.ts +13 -0
  393. package/dist/cli/config/paths.d.ts.map +1 -0
  394. package/dist/cli/config/paths.js +33 -0
  395. package/dist/cli/config/paths.js.map +1 -0
  396. package/dist/cli/config/store.d.ts +16 -0
  397. package/dist/cli/config/store.d.ts.map +1 -0
  398. package/dist/cli/config/store.js +97 -0
  399. package/dist/cli/config/store.js.map +1 -0
  400. package/dist/cli/duration.d.ts +6 -0
  401. package/dist/cli/duration.d.ts.map +1 -0
  402. package/dist/cli/duration.js +20 -0
  403. package/dist/cli/duration.js.map +1 -0
  404. package/dist/cli/entry.d.ts +27 -0
  405. package/dist/cli/entry.d.ts.map +1 -0
  406. package/dist/cli/entry.js +57 -0
  407. package/dist/cli/entry.js.map +1 -0
  408. package/dist/cli/head/display.d.ts +30 -0
  409. package/dist/cli/head/display.d.ts.map +1 -0
  410. package/dist/cli/head/display.js +108 -0
  411. package/dist/cli/head/display.js.map +1 -0
  412. package/dist/cli/head/process.d.ts +4 -0
  413. package/dist/cli/head/process.d.ts.map +1 -0
  414. package/dist/cli/head/process.js +94 -0
  415. package/dist/cli/head/process.js.map +1 -0
  416. package/dist/cli/head/types.d.ts +19 -0
  417. package/dist/cli/head/types.d.ts.map +1 -0
  418. package/dist/cli/head/types.js +3 -0
  419. package/dist/cli/head/types.js.map +1 -0
  420. package/dist/cli/help.d.ts +7 -0
  421. package/dist/cli/help.d.ts.map +1 -0
  422. package/dist/cli/help.js +82 -0
  423. package/dist/cli/help.js.map +1 -0
  424. package/dist/cli/input.d.ts +8 -0
  425. package/dist/cli/input.d.ts.map +1 -0
  426. package/dist/cli/input.js +37 -0
  427. package/dist/cli/input.js.map +1 -0
  428. package/dist/cli/lifecycle/index.d.ts +61 -0
  429. package/dist/cli/lifecycle/index.d.ts.map +1 -0
  430. package/dist/cli/lifecycle/index.js +152 -0
  431. package/dist/cli/lifecycle/index.js.map +1 -0
  432. package/dist/cli/lifecycle/outcome.d.ts +13 -0
  433. package/dist/cli/lifecycle/outcome.d.ts.map +1 -0
  434. package/dist/cli/lifecycle/outcome.js +20 -0
  435. package/dist/cli/lifecycle/outcome.js.map +1 -0
  436. package/dist/cli/lifecycle-outcome.d.ts +13 -0
  437. package/dist/cli/lifecycle-outcome.d.ts.map +1 -0
  438. package/dist/cli/lifecycle-outcome.js +20 -0
  439. package/dist/cli/lifecycle-outcome.js.map +1 -0
  440. package/dist/cli/lifecycle.d.ts +61 -0
  441. package/dist/cli/lifecycle.d.ts.map +1 -0
  442. package/dist/cli/lifecycle.js +152 -0
  443. package/dist/cli/lifecycle.js.map +1 -0
  444. package/dist/cli/main.d.ts +33 -0
  445. package/dist/cli/main.d.ts.map +1 -0
  446. package/dist/cli/main.js +139 -0
  447. package/dist/cli/main.js.map +1 -0
  448. package/dist/cli/output/json.d.ts +8 -0
  449. package/dist/cli/output/json.d.ts.map +1 -0
  450. package/dist/cli/output/json.js +8 -0
  451. package/dist/cli/output/json.js.map +1 -0
  452. package/dist/cli/output/jsonl.d.ts +18 -0
  453. package/dist/cli/output/jsonl.d.ts.map +1 -0
  454. package/dist/cli/output/jsonl.js +32 -0
  455. package/dist/cli/output/jsonl.js.map +1 -0
  456. package/dist/cli/output/records.d.ts +13 -0
  457. package/dist/cli/output/records.d.ts.map +1 -0
  458. package/dist/cli/output/records.js +40 -0
  459. package/dist/cli/output/records.js.map +1 -0
  460. package/dist/cli/output/sanitize.d.ts +9 -0
  461. package/dist/cli/output/sanitize.d.ts.map +1 -0
  462. package/dist/cli/output/sanitize.js +28 -0
  463. package/dist/cli/output/sanitize.js.map +1 -0
  464. package/dist/cli/output/text.d.ts +15 -0
  465. package/dist/cli/output/text.d.ts.map +1 -0
  466. package/dist/cli/output/text.js +29 -0
  467. package/dist/cli/output/text.js.map +1 -0
  468. package/dist/cli/output/types.d.ts +74 -0
  469. package/dist/cli/output/types.d.ts.map +1 -0
  470. package/dist/cli/output/types.js +6 -0
  471. package/dist/cli/output/types.js.map +1 -0
  472. package/dist/cli/request/agent-detect.d.ts +44 -0
  473. package/dist/cli/request/agent-detect.d.ts.map +1 -0
  474. package/dist/cli/request/agent-detect.js +66 -0
  475. package/dist/cli/request/agent-detect.js.map +1 -0
  476. package/dist/cli/request/finalize.d.ts +10 -0
  477. package/dist/cli/request/finalize.d.ts.map +1 -0
  478. package/dist/cli/request/finalize.js +135 -0
  479. package/dist/cli/request/finalize.js.map +1 -0
  480. package/dist/cli/request/index.d.ts +12 -0
  481. package/dist/cli/request/index.d.ts.map +1 -0
  482. package/dist/cli/request/index.js +103 -0
  483. package/dist/cli/request/index.js.map +1 -0
  484. package/dist/cli/request/layers.d.ts +30 -0
  485. package/dist/cli/request/layers.d.ts.map +1 -0
  486. package/dist/cli/request/layers.js +44 -0
  487. package/dist/cli/request/layers.js.map +1 -0
  488. package/dist/cli/request/resolution-types.d.ts +35 -0
  489. package/dist/cli/request/resolution-types.d.ts.map +1 -0
  490. package/dist/cli/request/resolution-types.js +6 -0
  491. package/dist/cli/request/resolution-types.js.map +1 -0
  492. package/dist/cli/request/settings.d.ts +34 -0
  493. package/dist/cli/request/settings.d.ts.map +1 -0
  494. package/dist/cli/request/settings.js +66 -0
  495. package/dist/cli/request/settings.js.map +1 -0
  496. package/dist/cli/request/sources.d.ts +13 -0
  497. package/dist/cli/request/sources.d.ts.map +1 -0
  498. package/dist/cli/request/sources.js +23 -0
  499. package/dist/cli/request/sources.js.map +1 -0
  500. package/dist/cli/request/validation.d.ts +18 -0
  501. package/dist/cli/request/validation.d.ts.map +1 -0
  502. package/dist/cli/request/validation.js +84 -0
  503. package/dist/cli/request/validation.js.map +1 -0
  504. package/dist/cli/request/values.d.ts +33 -0
  505. package/dist/cli/request/values.d.ts.map +1 -0
  506. package/dist/cli/request/values.js +73 -0
  507. package/dist/cli/request/values.js.map +1 -0
  508. package/dist/cli/request-finalize.d.ts +10 -0
  509. package/dist/cli/request-finalize.d.ts.map +1 -0
  510. package/dist/cli/request-finalize.js +135 -0
  511. package/dist/cli/request-finalize.js.map +1 -0
  512. package/dist/cli/request-layers.d.ts +30 -0
  513. package/dist/cli/request-layers.d.ts.map +1 -0
  514. package/dist/cli/request-layers.js +44 -0
  515. package/dist/cli/request-layers.js.map +1 -0
  516. package/dist/cli/request-settings.d.ts +34 -0
  517. package/dist/cli/request-settings.d.ts.map +1 -0
  518. package/dist/cli/request-settings.js +66 -0
  519. package/dist/cli/request-settings.js.map +1 -0
  520. package/dist/cli/request-sources.d.ts +13 -0
  521. package/dist/cli/request-sources.d.ts.map +1 -0
  522. package/dist/cli/request-sources.js +23 -0
  523. package/dist/cli/request-sources.js.map +1 -0
  524. package/dist/cli/request-validation.d.ts +18 -0
  525. package/dist/cli/request-validation.d.ts.map +1 -0
  526. package/dist/cli/request-validation.js +84 -0
  527. package/dist/cli/request-validation.js.map +1 -0
  528. package/dist/cli/request-values.d.ts +33 -0
  529. package/dist/cli/request-values.d.ts.map +1 -0
  530. package/dist/cli/request-values.js +73 -0
  531. package/dist/cli/request-values.js.map +1 -0
  532. package/dist/cli/request.d.ts +12 -0
  533. package/dist/cli/request.d.ts.map +1 -0
  534. package/dist/cli/request.js +103 -0
  535. package/dist/cli/request.js.map +1 -0
  536. package/dist/cli/resolution-types.d.ts +35 -0
  537. package/dist/cli/resolution-types.d.ts.map +1 -0
  538. package/dist/cli/resolution-types.js +6 -0
  539. package/dist/cli/resolution-types.js.map +1 -0
  540. package/dist/cli/run/index.d.ts +20 -0
  541. package/dist/cli/run/index.d.ts.map +1 -0
  542. package/dist/cli/run/index.js +126 -0
  543. package/dist/cli/run/index.js.map +1 -0
  544. package/dist/cli/run/output-lines.d.ts +14 -0
  545. package/dist/cli/run/output-lines.d.ts.map +1 -0
  546. package/dist/cli/run/output-lines.js +42 -0
  547. package/dist/cli/run/output-lines.js.map +1 -0
  548. package/dist/cli/run/output.d.ts +48 -0
  549. package/dist/cli/run/output.d.ts.map +1 -0
  550. package/dist/cli/run/output.js +150 -0
  551. package/dist/cli/run/output.js.map +1 -0
  552. package/dist/cli/run-output-lines.d.ts +14 -0
  553. package/dist/cli/run-output-lines.d.ts.map +1 -0
  554. package/dist/cli/run-output-lines.js +42 -0
  555. package/dist/cli/run-output-lines.js.map +1 -0
  556. package/dist/cli/run-output.d.ts +48 -0
  557. package/dist/cli/run-output.d.ts.map +1 -0
  558. package/dist/cli/run-output.js +150 -0
  559. package/dist/cli/run-output.js.map +1 -0
  560. package/dist/cli/run.d.ts +20 -0
  561. package/dist/cli/run.d.ts.map +1 -0
  562. package/dist/cli/run.js +126 -0
  563. package/dist/cli/run.js.map +1 -0
  564. package/dist/cli/session/index.d.ts +68 -0
  565. package/dist/cli/session/index.d.ts.map +1 -0
  566. package/dist/cli/session/index.js +124 -0
  567. package/dist/cli/session/index.js.map +1 -0
  568. package/dist/cli/session/launch.d.ts +23 -0
  569. package/dist/cli/session/launch.d.ts.map +1 -0
  570. package/dist/cli/session/launch.js +57 -0
  571. package/dist/cli/session/launch.js.map +1 -0
  572. package/dist/cli/session-launch.d.ts +23 -0
  573. package/dist/cli/session-launch.d.ts.map +1 -0
  574. package/dist/cli/session-launch.js +57 -0
  575. package/dist/cli/session-launch.js.map +1 -0
  576. package/dist/cli/session.d.ts +68 -0
  577. package/dist/cli/session.d.ts.map +1 -0
  578. package/dist/cli/session.js +124 -0
  579. package/dist/cli/session.js.map +1 -0
  580. package/dist/cli/stream.d.ts +25 -0
  581. package/dist/cli/stream.d.ts.map +1 -0
  582. package/dist/cli/stream.js +92 -0
  583. package/dist/cli/stream.js.map +1 -0
  584. package/dist/cli/types.d.ts +148 -0
  585. package/dist/cli/types.d.ts.map +1 -0
  586. package/dist/cli/types.js +30 -0
  587. package/dist/cli/types.js.map +1 -0
  588. package/dist/cli/update-attention.d.ts +32 -0
  589. package/dist/cli/update-attention.d.ts.map +1 -0
  590. package/dist/cli/update-attention.js +60 -0
  591. package/dist/cli/update-attention.js.map +1 -0
  592. package/dist/cli/validation-error.d.ts +11 -0
  593. package/dist/cli/validation-error.d.ts.map +1 -0
  594. package/dist/cli/validation-error.js +13 -0
  595. package/dist/cli/validation-error.js.map +1 -0
  596. package/dist/cli/version.d.ts +7 -0
  597. package/dist/cli/version.d.ts.map +1 -0
  598. package/dist/cli/version.js +11 -0
  599. package/dist/cli/version.js.map +1 -0
  600. package/dist/codex/attach-images.d.ts +20 -0
  601. package/dist/codex/attach-images.d.ts.map +1 -0
  602. package/dist/codex/attach-images.js +66 -0
  603. package/dist/codex/attach-images.js.map +1 -0
  604. package/dist/codex/clipboard-lock.d.ts +15 -0
  605. package/dist/codex/clipboard-lock.d.ts.map +1 -0
  606. package/dist/codex/clipboard-lock.js +16 -0
  607. package/dist/codex/clipboard-lock.js.map +1 -0
  608. package/dist/codex/clipboard.d.ts +32 -0
  609. package/dist/codex/clipboard.d.ts.map +1 -0
  610. package/dist/codex/clipboard.js +92 -0
  611. package/dist/codex/clipboard.js.map +1 -0
  612. package/dist/codex/command.d.ts +9 -0
  613. package/dist/codex/command.d.ts.map +1 -0
  614. package/dist/codex/command.js +72 -0
  615. package/dist/codex/command.js.map +1 -0
  616. package/dist/codex/config/lock.d.ts +21 -0
  617. package/dist/codex/config/lock.d.ts.map +1 -0
  618. package/dist/codex/config/lock.js +22 -0
  619. package/dist/codex/config/lock.js.map +1 -0
  620. package/dist/codex/config/restore.d.ts +33 -0
  621. package/dist/codex/config/restore.d.ts.map +1 -0
  622. package/dist/codex/config/restore.js +90 -0
  623. package/dist/codex/config/restore.js.map +1 -0
  624. package/dist/codex/config/transaction.d.ts +26 -0
  625. package/dist/codex/config/transaction.d.ts.map +1 -0
  626. package/dist/codex/config/transaction.js +47 -0
  627. package/dist/codex/config/transaction.js.map +1 -0
  628. package/dist/codex/config-lock.d.ts +21 -0
  629. package/dist/codex/config-lock.d.ts.map +1 -0
  630. package/dist/codex/config-lock.js +22 -0
  631. package/dist/codex/config-lock.js.map +1 -0
  632. package/dist/codex/config-restore.d.ts +33 -0
  633. package/dist/codex/config-restore.d.ts.map +1 -0
  634. package/dist/codex/config-restore.js +90 -0
  635. package/dist/codex/config-restore.js.map +1 -0
  636. package/dist/codex/config-transaction.d.ts +26 -0
  637. package/dist/codex/config-transaction.d.ts.map +1 -0
  638. package/dist/codex/config-transaction.js +47 -0
  639. package/dist/codex/config-transaction.js.map +1 -0
  640. package/dist/codex/hook-dispatch.d.ts +9 -0
  641. package/dist/codex/hook-dispatch.d.ts.map +1 -0
  642. package/dist/codex/hook-dispatch.js +14 -0
  643. package/dist/codex/hook-dispatch.js.map +1 -0
  644. package/dist/codex/hook-names.d.ts +19 -0
  645. package/dist/codex/hook-names.d.ts.map +1 -0
  646. package/dist/codex/hook-names.js +17 -0
  647. package/dist/codex/hook-names.js.map +1 -0
  648. package/dist/codex/hooks/dispatch.d.ts +9 -0
  649. package/dist/codex/hooks/dispatch.d.ts.map +1 -0
  650. package/dist/codex/hooks/dispatch.js +14 -0
  651. package/dist/codex/hooks/dispatch.js.map +1 -0
  652. package/dist/codex/hooks/index.d.ts +99 -0
  653. package/dist/codex/hooks/index.d.ts.map +1 -0
  654. package/dist/codex/hooks/index.js +6 -0
  655. package/dist/codex/hooks/index.js.map +1 -0
  656. package/dist/codex/hooks/names.d.ts +19 -0
  657. package/dist/codex/hooks/names.d.ts.map +1 -0
  658. package/dist/codex/hooks/names.js +17 -0
  659. package/dist/codex/hooks/names.js.map +1 -0
  660. package/dist/codex/hooks/serialize.d.ts +8 -0
  661. package/dist/codex/hooks/serialize.d.ts.map +1 -0
  662. package/dist/codex/hooks/serialize.js +48 -0
  663. package/dist/codex/hooks/serialize.js.map +1 -0
  664. package/dist/codex/hooks/validate-result.d.ts +7 -0
  665. package/dist/codex/hooks/validate-result.d.ts.map +1 -0
  666. package/dist/codex/hooks/validate-result.js +84 -0
  667. package/dist/codex/hooks/validate-result.js.map +1 -0
  668. package/dist/codex/hooks/validate.d.ts +11 -0
  669. package/dist/codex/hooks/validate.d.ts.map +1 -0
  670. package/dist/codex/hooks/validate.js +88 -0
  671. package/dist/codex/hooks/validate.js.map +1 -0
  672. package/dist/codex/hooks.d.ts +99 -0
  673. package/dist/codex/hooks.d.ts.map +1 -0
  674. package/dist/codex/hooks.js +6 -0
  675. package/dist/codex/hooks.js.map +1 -0
  676. package/dist/codex/images/attach.d.ts +20 -0
  677. package/dist/codex/images/attach.d.ts.map +1 -0
  678. package/dist/codex/images/attach.js +66 -0
  679. package/dist/codex/images/attach.js.map +1 -0
  680. package/dist/codex/images/clipboard-lock.d.ts +15 -0
  681. package/dist/codex/images/clipboard-lock.d.ts.map +1 -0
  682. package/dist/codex/images/clipboard-lock.js +16 -0
  683. package/dist/codex/images/clipboard-lock.js.map +1 -0
  684. package/dist/codex/images/clipboard.d.ts +32 -0
  685. package/dist/codex/images/clipboard.d.ts.map +1 -0
  686. package/dist/codex/images/clipboard.js +92 -0
  687. package/dist/codex/images/clipboard.js.map +1 -0
  688. package/dist/codex/initial-ready.d.ts +19 -0
  689. package/dist/codex/initial-ready.d.ts.map +1 -0
  690. package/dist/codex/initial-ready.js +19 -0
  691. package/dist/codex/initial-ready.js.map +1 -0
  692. package/dist/codex/list-models.d.ts +16 -0
  693. package/dist/codex/list-models.d.ts.map +1 -0
  694. package/dist/codex/list-models.js +35 -0
  695. package/dist/codex/list-models.js.map +1 -0
  696. package/dist/codex/model-picker.d.ts +7 -0
  697. package/dist/codex/model-picker.d.ts.map +1 -0
  698. package/dist/codex/model-picker.js +22 -0
  699. package/dist/codex/model-picker.js.map +1 -0
  700. package/dist/codex/preflight.d.ts +17 -0
  701. package/dist/codex/preflight.d.ts.map +1 -0
  702. package/dist/codex/preflight.js +94 -0
  703. package/dist/codex/preflight.js.map +1 -0
  704. package/dist/codex/pty.d.ts +9 -0
  705. package/dist/codex/pty.d.ts.map +1 -0
  706. package/dist/codex/pty.js +26 -0
  707. package/dist/codex/pty.js.map +1 -0
  708. package/dist/codex/screen-table.d.ts +16 -0
  709. package/dist/codex/screen-table.d.ts.map +1 -0
  710. package/dist/codex/screen-table.js +68 -0
  711. package/dist/codex/screen-table.js.map +1 -0
  712. package/dist/codex/serialize.d.ts +8 -0
  713. package/dist/codex/serialize.d.ts.map +1 -0
  714. package/dist/codex/serialize.js +48 -0
  715. package/dist/codex/serialize.js.map +1 -0
  716. package/dist/codex/session/bridge.d.ts +14 -0
  717. package/dist/codex/session/bridge.d.ts.map +1 -0
  718. package/dist/codex/session/bridge.js +20 -0
  719. package/dist/codex/session/bridge.js.map +1 -0
  720. package/dist/codex/session/build.d.ts +15 -0
  721. package/dist/codex/session/build.d.ts.map +1 -0
  722. package/dist/codex/session/build.js +144 -0
  723. package/dist/codex/session/build.js.map +1 -0
  724. package/dist/codex/session/cleanup.d.ts +12 -0
  725. package/dist/codex/session/cleanup.d.ts.map +1 -0
  726. package/dist/codex/session/cleanup.js +15 -0
  727. package/dist/codex/session/cleanup.js.map +1 -0
  728. package/dist/codex/session/hooks.d.ts +13 -0
  729. package/dist/codex/session/hooks.d.ts.map +1 -0
  730. package/dist/codex/session/hooks.js +54 -0
  731. package/dist/codex/session/hooks.js.map +1 -0
  732. package/dist/codex/session/index.d.ts +16 -0
  733. package/dist/codex/session/index.d.ts.map +1 -0
  734. package/dist/codex/session/index.js +61 -0
  735. package/dist/codex/session/index.js.map +1 -0
  736. package/dist/codex/session/instance.d.ts +50 -0
  737. package/dist/codex/session/instance.d.ts.map +1 -0
  738. package/dist/codex/session/instance.js +117 -0
  739. package/dist/codex/session/instance.js.map +1 -0
  740. package/dist/codex/session/resume.d.ts +7 -0
  741. package/dist/codex/session/resume.d.ts.map +1 -0
  742. package/dist/codex/session/resume.js +44 -0
  743. package/dist/codex/session/resume.js.map +1 -0
  744. package/dist/codex/session/runtime.d.ts +7 -0
  745. package/dist/codex/session/runtime.d.ts.map +1 -0
  746. package/dist/codex/session/runtime.js +10 -0
  747. package/dist/codex/session/runtime.js.map +1 -0
  748. package/dist/codex/session/start-or-resume.d.ts +12 -0
  749. package/dist/codex/session/start-or-resume.d.ts.map +1 -0
  750. package/dist/codex/session/start-or-resume.js +31 -0
  751. package/dist/codex/session/start-or-resume.js.map +1 -0
  752. package/dist/codex/session/transcript.d.ts +30 -0
  753. package/dist/codex/session/transcript.d.ts.map +1 -0
  754. package/dist/codex/session/transcript.js +53 -0
  755. package/dist/codex/session/transcript.js.map +1 -0
  756. package/dist/codex/session/types.d.ts +87 -0
  757. package/dist/codex/session/types.d.ts.map +1 -0
  758. package/dist/codex/session/types.js +6 -0
  759. package/dist/codex/session/types.js.map +1 -0
  760. package/dist/codex/session/warnings.d.ts +27 -0
  761. package/dist/codex/session/warnings.d.ts.map +1 -0
  762. package/dist/codex/session/warnings.js +54 -0
  763. package/dist/codex/session/warnings.js.map +1 -0
  764. package/dist/codex/session-bridge.d.ts +14 -0
  765. package/dist/codex/session-bridge.d.ts.map +1 -0
  766. package/dist/codex/session-bridge.js +20 -0
  767. package/dist/codex/session-bridge.js.map +1 -0
  768. package/dist/codex/session-build.d.ts +15 -0
  769. package/dist/codex/session-build.d.ts.map +1 -0
  770. package/dist/codex/session-build.js +144 -0
  771. package/dist/codex/session-build.js.map +1 -0
  772. package/dist/codex/session-cleanup.d.ts +12 -0
  773. package/dist/codex/session-cleanup.d.ts.map +1 -0
  774. package/dist/codex/session-cleanup.js +15 -0
  775. package/dist/codex/session-cleanup.js.map +1 -0
  776. package/dist/codex/session-hooks.d.ts +13 -0
  777. package/dist/codex/session-hooks.d.ts.map +1 -0
  778. package/dist/codex/session-hooks.js +54 -0
  779. package/dist/codex/session-hooks.js.map +1 -0
  780. package/dist/codex/session-instance.d.ts +50 -0
  781. package/dist/codex/session-instance.d.ts.map +1 -0
  782. package/dist/codex/session-instance.js +117 -0
  783. package/dist/codex/session-instance.js.map +1 -0
  784. package/dist/codex/session-resume.d.ts +7 -0
  785. package/dist/codex/session-resume.d.ts.map +1 -0
  786. package/dist/codex/session-resume.js +44 -0
  787. package/dist/codex/session-resume.js.map +1 -0
  788. package/dist/codex/session-runtime.d.ts +7 -0
  789. package/dist/codex/session-runtime.d.ts.map +1 -0
  790. package/dist/codex/session-runtime.js +10 -0
  791. package/dist/codex/session-runtime.js.map +1 -0
  792. package/dist/codex/session-transcript.d.ts +30 -0
  793. package/dist/codex/session-transcript.d.ts.map +1 -0
  794. package/dist/codex/session-transcript.js +53 -0
  795. package/dist/codex/session-transcript.js.map +1 -0
  796. package/dist/codex/session-types.d.ts +87 -0
  797. package/dist/codex/session-types.d.ts.map +1 -0
  798. package/dist/codex/session-types.js +6 -0
  799. package/dist/codex/session-types.js.map +1 -0
  800. package/dist/codex/session-warnings.d.ts +27 -0
  801. package/dist/codex/session-warnings.d.ts.map +1 -0
  802. package/dist/codex/session-warnings.js +54 -0
  803. package/dist/codex/session-warnings.js.map +1 -0
  804. package/dist/codex/session.d.ts +16 -0
  805. package/dist/codex/session.d.ts.map +1 -0
  806. package/dist/codex/session.js +61 -0
  807. package/dist/codex/session.js.map +1 -0
  808. package/dist/codex/simple.d.ts +25 -0
  809. package/dist/codex/simple.d.ts.map +1 -0
  810. package/dist/codex/simple.js +37 -0
  811. package/dist/codex/simple.js.map +1 -0
  812. package/dist/codex/start-or-resume.d.ts +12 -0
  813. package/dist/codex/start-or-resume.d.ts.map +1 -0
  814. package/dist/codex/start-or-resume.js +31 -0
  815. package/dist/codex/start-or-resume.js.map +1 -0
  816. package/dist/codex/startup-prompts.d.ts +32 -0
  817. package/dist/codex/startup-prompts.d.ts.map +1 -0
  818. package/dist/codex/startup-prompts.js +136 -0
  819. package/dist/codex/startup-prompts.js.map +1 -0
  820. package/dist/codex/tool-types.d.ts +21 -0
  821. package/dist/codex/tool-types.d.ts.map +1 -0
  822. package/dist/codex/tool-types.js +6 -0
  823. package/dist/codex/tool-types.js.map +1 -0
  824. package/dist/codex/transcript/cursor-io.d.ts +7 -0
  825. package/dist/codex/transcript/cursor-io.d.ts.map +1 -0
  826. package/dist/codex/transcript/cursor-io.js +7 -0
  827. package/dist/codex/transcript/cursor-io.js.map +1 -0
  828. package/dist/codex/transcript/cursor.d.ts +8 -0
  829. package/dist/codex/transcript/cursor.d.ts.map +1 -0
  830. package/dist/codex/transcript/cursor.js +8 -0
  831. package/dist/codex/transcript/cursor.js.map +1 -0
  832. package/dist/codex/transcript/drain.d.ts +30 -0
  833. package/dist/codex/transcript/drain.d.ts.map +1 -0
  834. package/dist/codex/transcript/drain.js +48 -0
  835. package/dist/codex/transcript/drain.js.map +1 -0
  836. package/dist/codex/transcript/drops.d.ts +9 -0
  837. package/dist/codex/transcript/drops.d.ts.map +1 -0
  838. package/dist/codex/transcript/drops.js +9 -0
  839. package/dist/codex/transcript/drops.js.map +1 -0
  840. package/dist/codex/transcript/emit.d.ts +22 -0
  841. package/dist/codex/transcript/emit.d.ts.map +1 -0
  842. package/dist/codex/transcript/emit.js +57 -0
  843. package/dist/codex/transcript/emit.js.map +1 -0
  844. package/dist/codex/transcript/fs-guard.d.ts +16 -0
  845. package/dist/codex/transcript/fs-guard.d.ts.map +1 -0
  846. package/dist/codex/transcript/fs-guard.js +27 -0
  847. package/dist/codex/transcript/fs-guard.js.map +1 -0
  848. package/dist/codex/transcript/index.d.ts +12 -0
  849. package/dist/codex/transcript/index.d.ts.map +1 -0
  850. package/dist/codex/transcript/index.js +10 -0
  851. package/dist/codex/transcript/index.js.map +1 -0
  852. package/dist/codex/transcript/summary.d.ts +10 -0
  853. package/dist/codex/transcript/summary.d.ts.map +1 -0
  854. package/dist/codex/transcript/summary.js +176 -0
  855. package/dist/codex/transcript/summary.js.map +1 -0
  856. package/dist/codex/transcript/types.d.ts +65 -0
  857. package/dist/codex/transcript/types.d.ts.map +1 -0
  858. package/dist/codex/transcript/types.js +7 -0
  859. package/dist/codex/transcript/types.js.map +1 -0
  860. package/dist/codex/transcript/warnings.d.ts +25 -0
  861. package/dist/codex/transcript/warnings.d.ts.map +1 -0
  862. package/dist/codex/transcript/warnings.js +43 -0
  863. package/dist/codex/transcript/warnings.js.map +1 -0
  864. package/dist/codex/transcript/watcher-config.d.ts +22 -0
  865. package/dist/codex/transcript/watcher-config.d.ts.map +1 -0
  866. package/dist/codex/transcript/watcher-config.js +7 -0
  867. package/dist/codex/transcript/watcher-config.js.map +1 -0
  868. package/dist/codex/transcript/watcher.d.ts +34 -0
  869. package/dist/codex/transcript/watcher.d.ts.map +1 -0
  870. package/dist/codex/transcript/watcher.js +134 -0
  871. package/dist/codex/transcript/watcher.js.map +1 -0
  872. package/dist/codex/transcript.d.ts +12 -0
  873. package/dist/codex/transcript.d.ts.map +1 -0
  874. package/dist/codex/transcript.js +10 -0
  875. package/dist/codex/transcript.js.map +1 -0
  876. package/dist/codex/update-prompt.d.ts +23 -0
  877. package/dist/codex/update-prompt.d.ts.map +1 -0
  878. package/dist/codex/update-prompt.js +78 -0
  879. package/dist/codex/update-prompt.js.map +1 -0
  880. package/dist/codex/validate-result.d.ts +7 -0
  881. package/dist/codex/validate-result.d.ts.map +1 -0
  882. package/dist/codex/validate-result.js +84 -0
  883. package/dist/codex/validate-result.js.map +1 -0
  884. package/dist/codex/validate.d.ts +11 -0
  885. package/dist/codex/validate.d.ts.map +1 -0
  886. package/dist/codex/validate.js +88 -0
  887. package/dist/codex/validate.js.map +1 -0
  888. package/dist/core/activity/index.d.ts +51 -0
  889. package/dist/core/activity/index.d.ts.map +1 -0
  890. package/dist/core/activity/index.js +81 -0
  891. package/dist/core/activity/index.js.map +1 -0
  892. package/dist/core/activity/lifecycle.d.ts +21 -0
  893. package/dist/core/activity/lifecycle.d.ts.map +1 -0
  894. package/dist/core/activity/lifecycle.js +45 -0
  895. package/dist/core/activity/lifecycle.js.map +1 -0
  896. package/dist/core/activity/meta.d.ts +13 -0
  897. package/dist/core/activity/meta.d.ts.map +1 -0
  898. package/dist/core/activity/meta.js +67 -0
  899. package/dist/core/activity/meta.js.map +1 -0
  900. package/dist/core/activity/transcript.d.ts +19 -0
  901. package/dist/core/activity/transcript.d.ts.map +1 -0
  902. package/dist/core/activity/transcript.js +60 -0
  903. package/dist/core/activity/transcript.js.map +1 -0
  904. package/dist/core/activity-lifecycle.d.ts +21 -0
  905. package/dist/core/activity-lifecycle.d.ts.map +1 -0
  906. package/dist/core/activity-lifecycle.js +45 -0
  907. package/dist/core/activity-lifecycle.js.map +1 -0
  908. package/dist/core/activity-meta.d.ts +13 -0
  909. package/dist/core/activity-meta.d.ts.map +1 -0
  910. package/dist/core/activity-meta.js +67 -0
  911. package/dist/core/activity-meta.js.map +1 -0
  912. package/dist/core/activity-transcript.d.ts +19 -0
  913. package/dist/core/activity-transcript.d.ts.map +1 -0
  914. package/dist/core/activity-transcript.js +60 -0
  915. package/dist/core/activity-transcript.js.map +1 -0
  916. package/dist/core/activity.d.ts +51 -0
  917. package/dist/core/activity.d.ts.map +1 -0
  918. package/dist/core/activity.js +81 -0
  919. package/dist/core/activity.js.map +1 -0
  920. package/dist/core/agent-session.d.ts +50 -0
  921. package/dist/core/agent-session.d.ts.map +1 -0
  922. package/dist/core/agent-session.js +6 -0
  923. package/dist/core/agent-session.js.map +1 -0
  924. package/dist/core/async-mutex.d.ts +13 -0
  925. package/dist/core/async-mutex.d.ts.map +1 -0
  926. package/dist/core/async-mutex.js +18 -0
  927. package/dist/core/async-mutex.js.map +1 -0
  928. package/dist/core/attention.d.ts +19 -0
  929. package/dist/core/attention.d.ts.map +1 -0
  930. package/dist/core/attention.js +31 -0
  931. package/dist/core/attention.js.map +1 -0
  932. package/dist/core/compact.d.ts +17 -0
  933. package/dist/core/compact.d.ts.map +1 -0
  934. package/dist/core/compact.js +69 -0
  935. package/dist/core/compact.js.map +1 -0
  936. package/dist/core/contained.d.ts +7 -0
  937. package/dist/core/contained.d.ts.map +1 -0
  938. package/dist/core/contained.js +14 -0
  939. package/dist/core/contained.js.map +1 -0
  940. package/dist/core/control-queue/index.d.ts +21 -0
  941. package/dist/core/control-queue/index.d.ts.map +1 -0
  942. package/dist/core/control-queue/index.js +98 -0
  943. package/dist/core/control-queue/index.js.map +1 -0
  944. package/dist/core/control-queue/state.d.ts +29 -0
  945. package/dist/core/control-queue/state.d.ts.map +1 -0
  946. package/dist/core/control-queue/state.js +95 -0
  947. package/dist/core/control-queue/state.js.map +1 -0
  948. package/dist/core/control-queue/traits.d.ts +54 -0
  949. package/dist/core/control-queue/traits.d.ts.map +1 -0
  950. package/dist/core/control-queue/traits.js +118 -0
  951. package/dist/core/control-queue/traits.js.map +1 -0
  952. package/dist/core/control-queue/types.d.ts +45 -0
  953. package/dist/core/control-queue/types.d.ts.map +1 -0
  954. package/dist/core/control-queue/types.js +7 -0
  955. package/dist/core/control-queue/types.js.map +1 -0
  956. package/dist/core/control-queue-state.d.ts +29 -0
  957. package/dist/core/control-queue-state.d.ts.map +1 -0
  958. package/dist/core/control-queue-state.js +95 -0
  959. package/dist/core/control-queue-state.js.map +1 -0
  960. package/dist/core/control-queue-traits.d.ts +54 -0
  961. package/dist/core/control-queue-traits.d.ts.map +1 -0
  962. package/dist/core/control-queue-traits.js +118 -0
  963. package/dist/core/control-queue-traits.js.map +1 -0
  964. package/dist/core/control-queue-types.d.ts +45 -0
  965. package/dist/core/control-queue-types.d.ts.map +1 -0
  966. package/dist/core/control-queue-types.js +7 -0
  967. package/dist/core/control-queue-types.js.map +1 -0
  968. package/dist/core/control-queue.d.ts +21 -0
  969. package/dist/core/control-queue.d.ts.map +1 -0
  970. package/dist/core/control-queue.js +98 -0
  971. package/dist/core/control-queue.js.map +1 -0
  972. package/dist/core/defaults.d.ts +7 -0
  973. package/dist/core/defaults.d.ts.map +1 -0
  974. package/dist/core/defaults.js +6 -0
  975. package/dist/core/defaults.js.map +1 -0
  976. package/dist/core/delay.d.ts +7 -0
  977. package/dist/core/delay.d.ts.map +1 -0
  978. package/dist/core/delay.js +9 -0
  979. package/dist/core/delay.js.map +1 -0
  980. package/dist/core/errors.d.ts +39 -0
  981. package/dist/core/errors.d.ts.map +1 -0
  982. package/dist/core/errors.js +65 -0
  983. package/dist/core/errors.js.map +1 -0
  984. package/dist/core/hook-dispatch.d.ts +36 -0
  985. package/dist/core/hook-dispatch.d.ts.map +1 -0
  986. package/dist/core/hook-dispatch.js +51 -0
  987. package/dist/core/hook-dispatch.js.map +1 -0
  988. package/dist/core/hook-result.d.ts +8 -0
  989. package/dist/core/hook-result.d.ts.map +1 -0
  990. package/dist/core/hook-result.js +40 -0
  991. package/dist/core/hook-result.js.map +1 -0
  992. package/dist/core/hook-timeout.d.ts +25 -0
  993. package/dist/core/hook-timeout.d.ts.map +1 -0
  994. package/dist/core/hook-timeout.js +26 -0
  995. package/dist/core/hook-timeout.js.map +1 -0
  996. package/dist/core/images/chip-wait.d.ts +43 -0
  997. package/dist/core/images/chip-wait.d.ts.map +1 -0
  998. package/dist/core/images/chip-wait.js +80 -0
  999. package/dist/core/images/chip-wait.js.map +1 -0
  1000. package/dist/core/images/index.d.ts +9 -0
  1001. package/dist/core/images/index.d.ts.map +1 -0
  1002. package/dist/core/images/index.js +8 -0
  1003. package/dist/core/images/index.js.map +1 -0
  1004. package/dist/core/images/materialize.d.ts +22 -0
  1005. package/dist/core/images/materialize.d.ts.map +1 -0
  1006. package/dist/core/images/materialize.js +49 -0
  1007. package/dist/core/images/materialize.js.map +1 -0
  1008. package/dist/core/images/resolve.d.ts +45 -0
  1009. package/dist/core/images/resolve.d.ts.map +1 -0
  1010. package/dist/core/images/resolve.js +137 -0
  1011. package/dist/core/images/resolve.js.map +1 -0
  1012. package/dist/core/images/types.d.ts +39 -0
  1013. package/dist/core/images/types.d.ts.map +1 -0
  1014. package/dist/core/images/types.js +26 -0
  1015. package/dist/core/images/types.js.map +1 -0
  1016. package/dist/core/input/abort.d.ts +10 -0
  1017. package/dist/core/input/abort.d.ts.map +1 -0
  1018. package/dist/core/input/abort.js +44 -0
  1019. package/dist/core/input/abort.js.map +1 -0
  1020. package/dist/core/input/index.d.ts +37 -0
  1021. package/dist/core/input/index.d.ts.map +1 -0
  1022. package/dist/core/input/index.js +154 -0
  1023. package/dist/core/input/index.js.map +1 -0
  1024. package/dist/core/interrupt.d.ts +29 -0
  1025. package/dist/core/interrupt.d.ts.map +1 -0
  1026. package/dist/core/interrupt.js +57 -0
  1027. package/dist/core/interrupt.js.map +1 -0
  1028. package/dist/core/list-models.d.ts +44 -0
  1029. package/dist/core/list-models.d.ts.map +1 -0
  1030. package/dist/core/list-models.js +73 -0
  1031. package/dist/core/list-models.js.map +1 -0
  1032. package/dist/core/loops/constants.d.ts +13 -0
  1033. package/dist/core/loops/constants.d.ts.map +1 -0
  1034. package/dist/core/loops/constants.js +13 -0
  1035. package/dist/core/loops/constants.js.map +1 -0
  1036. package/dist/core/loops/jitter.d.ts +6 -0
  1037. package/dist/core/loops/jitter.d.ts.map +1 -0
  1038. package/dist/core/loops/jitter.js +20 -0
  1039. package/dist/core/loops/jitter.js.map +1 -0
  1040. package/dist/core/loops/loop-controls.d.ts +8 -0
  1041. package/dist/core/loops/loop-controls.d.ts.map +1 -0
  1042. package/dist/core/loops/loop-controls.js +3 -0
  1043. package/dist/core/loops/loop-controls.js.map +1 -0
  1044. package/dist/core/loops/parser.d.ts +7 -0
  1045. package/dist/core/loops/parser.d.ts.map +1 -0
  1046. package/dist/core/loops/parser.js +37 -0
  1047. package/dist/core/loops/parser.js.map +1 -0
  1048. package/dist/core/loops/scheduler-delivery.d.ts +42 -0
  1049. package/dist/core/loops/scheduler-delivery.d.ts.map +1 -0
  1050. package/dist/core/loops/scheduler-delivery.js +112 -0
  1051. package/dist/core/loops/scheduler-delivery.js.map +1 -0
  1052. package/dist/core/loops/scheduler-state.d.ts +63 -0
  1053. package/dist/core/loops/scheduler-state.d.ts.map +1 -0
  1054. package/dist/core/loops/scheduler-state.js +102 -0
  1055. package/dist/core/loops/scheduler-state.js.map +1 -0
  1056. package/dist/core/loops/scheduler.d.ts +27 -0
  1057. package/dist/core/loops/scheduler.d.ts.map +1 -0
  1058. package/dist/core/loops/scheduler.js +189 -0
  1059. package/dist/core/loops/scheduler.js.map +1 -0
  1060. package/dist/core/loops/timers.d.ts +25 -0
  1061. package/dist/core/loops/timers.d.ts.map +1 -0
  1062. package/dist/core/loops/timers.js +47 -0
  1063. package/dist/core/loops/timers.js.map +1 -0
  1064. package/dist/core/loops/timing.d.ts +27 -0
  1065. package/dist/core/loops/timing.d.ts.map +1 -0
  1066. package/dist/core/loops/timing.js +68 -0
  1067. package/dist/core/loops/timing.js.map +1 -0
  1068. package/dist/core/loops/types.d.ts +57 -0
  1069. package/dist/core/loops/types.d.ts.map +1 -0
  1070. package/dist/core/loops/types.js +6 -0
  1071. package/dist/core/loops/types.js.map +1 -0
  1072. package/dist/core/loops/validate.d.ts +9 -0
  1073. package/dist/core/loops/validate.d.ts.map +1 -0
  1074. package/dist/core/loops/validate.js +46 -0
  1075. package/dist/core/loops/validate.js.map +1 -0
  1076. package/dist/core/model-picker.d.ts +22 -0
  1077. package/dist/core/model-picker.d.ts.map +1 -0
  1078. package/dist/core/model-picker.js +58 -0
  1079. package/dist/core/model-picker.js.map +1 -0
  1080. package/dist/core/model-rows.d.ts +21 -0
  1081. package/dist/core/model-rows.d.ts.map +1 -0
  1082. package/dist/core/model-rows.js +57 -0
  1083. package/dist/core/model-rows.js.map +1 -0
  1084. package/dist/core/models/list.d.ts +44 -0
  1085. package/dist/core/models/list.d.ts.map +1 -0
  1086. package/dist/core/models/list.js +73 -0
  1087. package/dist/core/models/list.js.map +1 -0
  1088. package/dist/core/models/picker.d.ts +22 -0
  1089. package/dist/core/models/picker.d.ts.map +1 -0
  1090. package/dist/core/models/picker.js +58 -0
  1091. package/dist/core/models/picker.js.map +1 -0
  1092. package/dist/core/models/probe-state.d.ts +21 -0
  1093. package/dist/core/models/probe-state.d.ts.map +1 -0
  1094. package/dist/core/models/probe-state.js +39 -0
  1095. package/dist/core/models/probe-state.js.map +1 -0
  1096. package/dist/core/models/rows.d.ts +21 -0
  1097. package/dist/core/models/rows.d.ts.map +1 -0
  1098. package/dist/core/models/rows.js +57 -0
  1099. package/dist/core/models/rows.js.map +1 -0
  1100. package/dist/core/models/tui-screen.d.ts +21 -0
  1101. package/dist/core/models/tui-screen.d.ts.map +1 -0
  1102. package/dist/core/models/tui-screen.js +56 -0
  1103. package/dist/core/models/tui-screen.js.map +1 -0
  1104. package/dist/core/module-require.d.ts +8 -0
  1105. package/dist/core/module-require.d.ts.map +1 -0
  1106. package/dist/core/module-require.js +14 -0
  1107. package/dist/core/module-require.js.map +1 -0
  1108. package/dist/core/persona.d.ts +10 -0
  1109. package/dist/core/persona.d.ts.map +1 -0
  1110. package/dist/core/persona.js +18 -0
  1111. package/dist/core/persona.js.map +1 -0
  1112. package/dist/core/predicates.d.ts +16 -0
  1113. package/dist/core/predicates.d.ts.map +1 -0
  1114. package/dist/core/predicates.js +32 -0
  1115. package/dist/core/predicates.js.map +1 -0
  1116. package/dist/core/private-output-secrets.d.ts +9 -0
  1117. package/dist/core/private-output-secrets.d.ts.map +1 -0
  1118. package/dist/core/private-output-secrets.js +14 -0
  1119. package/dist/core/private-output-secrets.js.map +1 -0
  1120. package/dist/core/probe-state.d.ts +21 -0
  1121. package/dist/core/probe-state.d.ts.map +1 -0
  1122. package/dist/core/probe-state.js +39 -0
  1123. package/dist/core/probe-state.js.map +1 -0
  1124. package/dist/core/reasoning-effort.d.ts +40 -0
  1125. package/dist/core/reasoning-effort.d.ts.map +1 -0
  1126. package/dist/core/reasoning-effort.js +44 -0
  1127. package/dist/core/reasoning-effort.js.map +1 -0
  1128. package/dist/core/rendered-observers.d.ts +29 -0
  1129. package/dist/core/rendered-observers.d.ts.map +1 -0
  1130. package/dist/core/rendered-observers.js +29 -0
  1131. package/dist/core/rendered-observers.js.map +1 -0
  1132. package/dist/core/screen-facts.d.ts +61 -0
  1133. package/dist/core/screen-facts.d.ts.map +1 -0
  1134. package/dist/core/screen-facts.js +36 -0
  1135. package/dist/core/screen-facts.js.map +1 -0
  1136. package/dist/core/serialize.d.ts +9 -0
  1137. package/dist/core/serialize.d.ts.map +1 -0
  1138. package/dist/core/serialize.js +20 -0
  1139. package/dist/core/serialize.js.map +1 -0
  1140. package/dist/core/session-input-abort.d.ts +10 -0
  1141. package/dist/core/session-input-abort.d.ts.map +1 -0
  1142. package/dist/core/session-input-abort.js +44 -0
  1143. package/dist/core/session-input-abort.js.map +1 -0
  1144. package/dist/core/session-input.d.ts +37 -0
  1145. package/dist/core/session-input.d.ts.map +1 -0
  1146. package/dist/core/session-input.js +154 -0
  1147. package/dist/core/session-input.js.map +1 -0
  1148. package/dist/core/session-wait.d.ts +30 -0
  1149. package/dist/core/session-wait.d.ts.map +1 -0
  1150. package/dist/core/session-wait.js +110 -0
  1151. package/dist/core/session-wait.js.map +1 -0
  1152. package/dist/core/session-warnings.d.ts +20 -0
  1153. package/dist/core/session-warnings.d.ts.map +1 -0
  1154. package/dist/core/session-warnings.js +32 -0
  1155. package/dist/core/session-warnings.js.map +1 -0
  1156. package/dist/core/simple/completeness-oracle.d.ts +31 -0
  1157. package/dist/core/simple/completeness-oracle.d.ts.map +1 -0
  1158. package/dist/core/simple/completeness-oracle.js +51 -0
  1159. package/dist/core/simple/completeness-oracle.js.map +1 -0
  1160. package/dist/core/simple/events.d.ts +34 -0
  1161. package/dist/core/simple/events.d.ts.map +1 -0
  1162. package/dist/core/simple/events.js +56 -0
  1163. package/dist/core/simple/events.js.map +1 -0
  1164. package/dist/core/simple/loop-controls.d.ts +7 -0
  1165. package/dist/core/simple/loop-controls.d.ts.map +1 -0
  1166. package/dist/core/simple/loop-controls.js +7 -0
  1167. package/dist/core/simple/loop-controls.js.map +1 -0
  1168. package/dist/core/simple/resolve-paths.d.ts +23 -0
  1169. package/dist/core/simple/resolve-paths.d.ts.map +1 -0
  1170. package/dist/core/simple/resolve-paths.js +22 -0
  1171. package/dist/core/simple/resolve-paths.js.map +1 -0
  1172. package/dist/core/simple/session.d.ts +78 -0
  1173. package/dist/core/simple/session.d.ts.map +1 -0
  1174. package/dist/core/simple/session.js +155 -0
  1175. package/dist/core/simple/session.js.map +1 -0
  1176. package/dist/core/simple/subscriptions.d.ts +32 -0
  1177. package/dist/core/simple/subscriptions.d.ts.map +1 -0
  1178. package/dist/core/simple/subscriptions.js +63 -0
  1179. package/dist/core/simple/subscriptions.js.map +1 -0
  1180. package/dist/core/simple/turn-acceptance.d.ts +27 -0
  1181. package/dist/core/simple/turn-acceptance.d.ts.map +1 -0
  1182. package/dist/core/simple/turn-acceptance.js +71 -0
  1183. package/dist/core/simple/turn-acceptance.js.map +1 -0
  1184. package/dist/core/simple/turn-boundary.d.ts +42 -0
  1185. package/dist/core/simple/turn-boundary.d.ts.map +1 -0
  1186. package/dist/core/simple/turn-boundary.js +72 -0
  1187. package/dist/core/simple/turn-boundary.js.map +1 -0
  1188. package/dist/core/simple/turn-gate.d.ts +59 -0
  1189. package/dist/core/simple/turn-gate.d.ts.map +1 -0
  1190. package/dist/core/simple/turn-gate.js +194 -0
  1191. package/dist/core/simple/turn-gate.js.map +1 -0
  1192. package/dist/core/simple/turn-queue.d.ts +23 -0
  1193. package/dist/core/simple/turn-queue.d.ts.map +1 -0
  1194. package/dist/core/simple/turn-queue.js +43 -0
  1195. package/dist/core/simple/turn-queue.js.map +1 -0
  1196. package/dist/core/simple/turn-types.d.ts +128 -0
  1197. package/dist/core/simple/turn-types.d.ts.map +1 -0
  1198. package/dist/core/simple/turn-types.js +15 -0
  1199. package/dist/core/simple/turn-types.js.map +1 -0
  1200. package/dist/core/simple/turn.d.ts +37 -0
  1201. package/dist/core/simple/turn.d.ts.map +1 -0
  1202. package/dist/core/simple/turn.js +173 -0
  1203. package/dist/core/simple/turn.js.map +1 -0
  1204. package/dist/core/start-or-resume.d.ts +10 -0
  1205. package/dist/core/start-or-resume.d.ts.map +1 -0
  1206. package/dist/core/start-or-resume.js +24 -0
  1207. package/dist/core/start-or-resume.js.map +1 -0
  1208. package/dist/core/startup/automation.d.ts +54 -0
  1209. package/dist/core/startup/automation.d.ts.map +1 -0
  1210. package/dist/core/startup/automation.js +40 -0
  1211. package/dist/core/startup/automation.js.map +1 -0
  1212. package/dist/core/startup/frame.d.ts +39 -0
  1213. package/dist/core/startup/frame.d.ts.map +1 -0
  1214. package/dist/core/startup/frame.js +60 -0
  1215. package/dist/core/startup/frame.js.map +1 -0
  1216. package/dist/core/startup/write.d.ts +47 -0
  1217. package/dist/core/startup/write.d.ts.map +1 -0
  1218. package/dist/core/startup/write.js +73 -0
  1219. package/dist/core/startup/write.js.map +1 -0
  1220. package/dist/core/startup-automation.d.ts +54 -0
  1221. package/dist/core/startup-automation.d.ts.map +1 -0
  1222. package/dist/core/startup-automation.js +40 -0
  1223. package/dist/core/startup-automation.js.map +1 -0
  1224. package/dist/core/startup-frame.d.ts +39 -0
  1225. package/dist/core/startup-frame.d.ts.map +1 -0
  1226. package/dist/core/startup-frame.js +60 -0
  1227. package/dist/core/startup-frame.js.map +1 -0
  1228. package/dist/core/startup-write.d.ts +47 -0
  1229. package/dist/core/startup-write.d.ts.map +1 -0
  1230. package/dist/core/startup-write.js +73 -0
  1231. package/dist/core/startup-write.js.map +1 -0
  1232. package/dist/core/status-categories.d.ts +21 -0
  1233. package/dist/core/status-categories.d.ts.map +1 -0
  1234. package/dist/core/status-categories.js +20 -0
  1235. package/dist/core/status-categories.js.map +1 -0
  1236. package/dist/core/terminal-options.d.ts +39 -0
  1237. package/dist/core/terminal-options.d.ts.map +1 -0
  1238. package/dist/core/terminal-options.js +114 -0
  1239. package/dist/core/terminal-options.js.map +1 -0
  1240. package/dist/core/terminal-replay.d.ts +32 -0
  1241. package/dist/core/terminal-replay.d.ts.map +1 -0
  1242. package/dist/core/terminal-replay.js +69 -0
  1243. package/dist/core/terminal-replay.js.map +1 -0
  1244. package/dist/core/transcript/cursor-io.d.ts +21 -0
  1245. package/dist/core/transcript/cursor-io.d.ts.map +1 -0
  1246. package/dist/core/transcript/cursor-io.js +60 -0
  1247. package/dist/core/transcript/cursor-io.js.map +1 -0
  1248. package/dist/core/transcript/cursor.d.ts +49 -0
  1249. package/dist/core/transcript/cursor.d.ts.map +1 -0
  1250. package/dist/core/transcript/cursor.js +100 -0
  1251. package/dist/core/transcript/cursor.js.map +1 -0
  1252. package/dist/core/transcript/drops.d.ts +63 -0
  1253. package/dist/core/transcript/drops.d.ts.map +1 -0
  1254. package/dist/core/transcript/drops.js +86 -0
  1255. package/dist/core/transcript/drops.js.map +1 -0
  1256. package/dist/core/transcript/warning-router.d.ts +28 -0
  1257. package/dist/core/transcript/warning-router.d.ts.map +1 -0
  1258. package/dist/core/transcript/warning-router.js +37 -0
  1259. package/dist/core/transcript/warning-router.js.map +1 -0
  1260. package/dist/core/transcript/warnings.d.ts +14 -0
  1261. package/dist/core/transcript/warnings.d.ts.map +1 -0
  1262. package/dist/core/transcript/warnings.js +41 -0
  1263. package/dist/core/transcript/warnings.js.map +1 -0
  1264. package/dist/core/trust/blocking.d.ts +22 -0
  1265. package/dist/core/trust/blocking.d.ts.map +1 -0
  1266. package/dist/core/trust/blocking.js +38 -0
  1267. package/dist/core/trust/blocking.js.map +1 -0
  1268. package/dist/core/trust/prompts.d.ts +135 -0
  1269. package/dist/core/trust/prompts.d.ts.map +1 -0
  1270. package/dist/core/trust/prompts.js +108 -0
  1271. package/dist/core/trust/prompts.js.map +1 -0
  1272. package/dist/core/trust/responder.d.ts +48 -0
  1273. package/dist/core/trust/responder.d.ts.map +1 -0
  1274. package/dist/core/trust/responder.js +119 -0
  1275. package/dist/core/trust/responder.js.map +1 -0
  1276. package/dist/core/trust-blocking.d.ts +22 -0
  1277. package/dist/core/trust-blocking.d.ts.map +1 -0
  1278. package/dist/core/trust-blocking.js +38 -0
  1279. package/dist/core/trust-blocking.js.map +1 -0
  1280. package/dist/core/trust-prompts.d.ts +135 -0
  1281. package/dist/core/trust-prompts.d.ts.map +1 -0
  1282. package/dist/core/trust-prompts.js +108 -0
  1283. package/dist/core/trust-prompts.js.map +1 -0
  1284. package/dist/core/trust-responder.d.ts +48 -0
  1285. package/dist/core/trust-responder.d.ts.map +1 -0
  1286. package/dist/core/trust-responder.js +119 -0
  1287. package/dist/core/trust-responder.js.map +1 -0
  1288. package/dist/core/tui-screen.d.ts +21 -0
  1289. package/dist/core/tui-screen.d.ts.map +1 -0
  1290. package/dist/core/tui-screen.js +56 -0
  1291. package/dist/core/tui-screen.js.map +1 -0
  1292. package/dist/core/turn-state.d.ts +41 -0
  1293. package/dist/core/turn-state.d.ts.map +1 -0
  1294. package/dist/core/turn-state.js +109 -0
  1295. package/dist/core/turn-state.js.map +1 -0
  1296. package/dist/core/types.d.ts +109 -0
  1297. package/dist/core/types.d.ts.map +1 -0
  1298. package/dist/core/types.js +6 -0
  1299. package/dist/core/types.js.map +1 -0
  1300. package/dist/core/update-warning.d.ts +25 -0
  1301. package/dist/core/update-warning.d.ts.map +1 -0
  1302. package/dist/core/update-warning.js +33 -0
  1303. package/dist/core/update-warning.js.map +1 -0
  1304. package/dist/core/utf8.d.ts +11 -0
  1305. package/dist/core/utf8.d.ts.map +1 -0
  1306. package/dist/core/utf8.js +27 -0
  1307. package/dist/core/utf8.js.map +1 -0
  1308. package/dist/core/versions.d.ts +11 -0
  1309. package/dist/core/versions.d.ts.map +1 -0
  1310. package/dist/core/versions.js +26 -0
  1311. package/dist/core/versions.js.map +1 -0
  1312. package/dist/core/warning-lifecycle.d.ts +23 -0
  1313. package/dist/core/warning-lifecycle.d.ts.map +1 -0
  1314. package/dist/core/warning-lifecycle.js +6 -0
  1315. package/dist/core/warning-lifecycle.js.map +1 -0
  1316. package/dist/core/warning-reasons.d.ts +62 -0
  1317. package/dist/core/warning-reasons.d.ts.map +1 -0
  1318. package/dist/core/warning-reasons.js +121 -0
  1319. package/dist/core/warning-reasons.js.map +1 -0
  1320. package/dist/core/warnings/index.d.ts +145 -0
  1321. package/dist/core/warnings/index.d.ts.map +1 -0
  1322. package/dist/core/warnings/index.js +12 -0
  1323. package/dist/core/warnings/index.js.map +1 -0
  1324. package/dist/core/warnings/lifecycle.d.ts +23 -0
  1325. package/dist/core/warnings/lifecycle.d.ts.map +1 -0
  1326. package/dist/core/warnings/lifecycle.js +6 -0
  1327. package/dist/core/warnings/lifecycle.js.map +1 -0
  1328. package/dist/core/warnings/reasons.d.ts +62 -0
  1329. package/dist/core/warnings/reasons.d.ts.map +1 -0
  1330. package/dist/core/warnings/reasons.js +121 -0
  1331. package/dist/core/warnings/reasons.js.map +1 -0
  1332. package/dist/core/warnings/session.d.ts +20 -0
  1333. package/dist/core/warnings/session.d.ts.map +1 -0
  1334. package/dist/core/warnings/session.js +32 -0
  1335. package/dist/core/warnings/session.js.map +1 -0
  1336. package/dist/core/warnings/update.d.ts +25 -0
  1337. package/dist/core/warnings/update.d.ts.map +1 -0
  1338. package/dist/core/warnings/update.js +33 -0
  1339. package/dist/core/warnings/update.js.map +1 -0
  1340. package/dist/core/warnings.d.ts +145 -0
  1341. package/dist/core/warnings.d.ts.map +1 -0
  1342. package/dist/core/warnings.js +12 -0
  1343. package/dist/core/warnings.js.map +1 -0
  1344. package/dist/events/emitter.d.ts +19 -0
  1345. package/dist/events/emitter.d.ts.map +1 -0
  1346. package/dist/events/emitter.js +85 -0
  1347. package/dist/events/emitter.js.map +1 -0
  1348. package/dist/index.d.ts +38 -0
  1349. package/dist/index.d.ts.map +1 -0
  1350. package/dist/index.js +19 -0
  1351. package/dist/index.js.map +1 -0
  1352. package/dist/pty/node.d.ts +17 -0
  1353. package/dist/pty/node.d.ts.map +1 -0
  1354. package/dist/pty/node.js +79 -0
  1355. package/dist/pty/node.js.map +1 -0
  1356. package/dist/pty/types.d.ts +26 -0
  1357. package/dist/pty/types.d.ts.map +1 -0
  1358. package/dist/pty/types.js +6 -0
  1359. package/dist/pty/types.js.map +1 -0
  1360. package/dist/runtime/cleanup-latch.d.ts +27 -0
  1361. package/dist/runtime/cleanup-latch.d.ts.map +1 -0
  1362. package/dist/runtime/cleanup-latch.js +43 -0
  1363. package/dist/runtime/cleanup-latch.js.map +1 -0
  1364. package/dist/runtime/hook-command.d.ts +11 -0
  1365. package/dist/runtime/hook-command.d.ts.map +1 -0
  1366. package/dist/runtime/hook-command.js +14 -0
  1367. package/dist/runtime/hook-command.js.map +1 -0
  1368. package/dist/runtime/initial-ready-advance.d.ts +22 -0
  1369. package/dist/runtime/initial-ready-advance.d.ts.map +1 -0
  1370. package/dist/runtime/initial-ready-advance.js +39 -0
  1371. package/dist/runtime/initial-ready-advance.js.map +1 -0
  1372. package/dist/runtime/initial-ready-fallback.d.ts +12 -0
  1373. package/dist/runtime/initial-ready-fallback.d.ts.map +1 -0
  1374. package/dist/runtime/initial-ready-fallback.js +20 -0
  1375. package/dist/runtime/initial-ready-fallback.js.map +1 -0
  1376. package/dist/runtime/initial-ready.d.ts +49 -0
  1377. package/dist/runtime/initial-ready.d.ts.map +1 -0
  1378. package/dist/runtime/initial-ready.js +81 -0
  1379. package/dist/runtime/initial-ready.js.map +1 -0
  1380. package/dist/runtime/loop-restore.d.ts +10 -0
  1381. package/dist/runtime/loop-restore.d.ts.map +1 -0
  1382. package/dist/runtime/loop-restore.js +26 -0
  1383. package/dist/runtime/loop-restore.js.map +1 -0
  1384. package/dist/runtime/probe.d.ts +11 -0
  1385. package/dist/runtime/probe.d.ts.map +1 -0
  1386. package/dist/runtime/probe.js +120 -0
  1387. package/dist/runtime/probe.js.map +1 -0
  1388. package/dist/runtime/readiness/advance.d.ts +22 -0
  1389. package/dist/runtime/readiness/advance.d.ts.map +1 -0
  1390. package/dist/runtime/readiness/advance.js +39 -0
  1391. package/dist/runtime/readiness/advance.js.map +1 -0
  1392. package/dist/runtime/readiness/initial-ready.d.ts +49 -0
  1393. package/dist/runtime/readiness/initial-ready.d.ts.map +1 -0
  1394. package/dist/runtime/readiness/initial-ready.js +81 -0
  1395. package/dist/runtime/readiness/initial-ready.js.map +1 -0
  1396. package/dist/runtime/reap-tree.d.ts +62 -0
  1397. package/dist/runtime/reap-tree.d.ts.map +1 -0
  1398. package/dist/runtime/reap-tree.js +108 -0
  1399. package/dist/runtime/reap-tree.js.map +1 -0
  1400. package/dist/runtime/seams.d.ts +28 -0
  1401. package/dist/runtime/seams.d.ts.map +1 -0
  1402. package/dist/runtime/seams.js +34 -0
  1403. package/dist/runtime/seams.js.map +1 -0
  1404. package/dist/runtime/session/base.d.ts +48 -0
  1405. package/dist/runtime/session/base.d.ts.map +1 -0
  1406. package/dist/runtime/session/base.js +76 -0
  1407. package/dist/runtime/session/base.js.map +1 -0
  1408. package/dist/runtime/session/commands.d.ts +43 -0
  1409. package/dist/runtime/session/commands.d.ts.map +1 -0
  1410. package/dist/runtime/session/commands.js +52 -0
  1411. package/dist/runtime/session/commands.js.map +1 -0
  1412. package/dist/runtime/session/exit.d.ts +16 -0
  1413. package/dist/runtime/session/exit.d.ts.map +1 -0
  1414. package/dist/runtime/session/exit.js +32 -0
  1415. package/dist/runtime/session/exit.js.map +1 -0
  1416. package/dist/runtime/session/image-attach.d.ts +45 -0
  1417. package/dist/runtime/session/image-attach.d.ts.map +1 -0
  1418. package/dist/runtime/session/image-attach.js +82 -0
  1419. package/dist/runtime/session/image-attach.js.map +1 -0
  1420. package/dist/runtime/session/lifecycle.d.ts +58 -0
  1421. package/dist/runtime/session/lifecycle.d.ts.map +1 -0
  1422. package/dist/runtime/session/lifecycle.js +161 -0
  1423. package/dist/runtime/session/lifecycle.js.map +1 -0
  1424. package/dist/runtime/session/loops.d.ts +32 -0
  1425. package/dist/runtime/session/loops.d.ts.map +1 -0
  1426. package/dist/runtime/session/loops.js +62 -0
  1427. package/dist/runtime/session/loops.js.map +1 -0
  1428. package/dist/runtime/session/readiness.d.ts +18 -0
  1429. package/dist/runtime/session/readiness.d.ts.map +1 -0
  1430. package/dist/runtime/session/readiness.js +22 -0
  1431. package/dist/runtime/session/readiness.js.map +1 -0
  1432. package/dist/runtime/session/reap.d.ts +28 -0
  1433. package/dist/runtime/session/reap.d.ts.map +1 -0
  1434. package/dist/runtime/session/reap.js +51 -0
  1435. package/dist/runtime/session/reap.js.map +1 -0
  1436. package/dist/runtime/session/resize.d.ts +20 -0
  1437. package/dist/runtime/session/resize.d.ts.map +1 -0
  1438. package/dist/runtime/session/resize.js +26 -0
  1439. package/dist/runtime/session/resize.js.map +1 -0
  1440. package/dist/runtime/session/shutdown-binding.d.ts +30 -0
  1441. package/dist/runtime/session/shutdown-binding.d.ts.map +1 -0
  1442. package/dist/runtime/session/shutdown-binding.js +37 -0
  1443. package/dist/runtime/session/shutdown-binding.js.map +1 -0
  1444. package/dist/runtime/session/shutdown.d.ts +60 -0
  1445. package/dist/runtime/session/shutdown.d.ts.map +1 -0
  1446. package/dist/runtime/session/shutdown.js +140 -0
  1447. package/dist/runtime/session/shutdown.js.map +1 -0
  1448. package/dist/runtime/session/status-wiring.d.ts +38 -0
  1449. package/dist/runtime/session/status-wiring.d.ts.map +1 -0
  1450. package/dist/runtime/session/status-wiring.js +41 -0
  1451. package/dist/runtime/session/status-wiring.js.map +1 -0
  1452. package/dist/runtime/session/status.d.ts +7 -0
  1453. package/dist/runtime/session/status.d.ts.map +1 -0
  1454. package/dist/runtime/session/status.js +22 -0
  1455. package/dist/runtime/session/status.js.map +1 -0
  1456. package/dist/runtime/session-base-types.d.ts +36 -0
  1457. package/dist/runtime/session-base-types.d.ts.map +1 -0
  1458. package/dist/runtime/session-base-types.js +14 -0
  1459. package/dist/runtime/session-base-types.js.map +1 -0
  1460. package/dist/runtime/session-base.d.ts +48 -0
  1461. package/dist/runtime/session-base.d.ts.map +1 -0
  1462. package/dist/runtime/session-base.js +76 -0
  1463. package/dist/runtime/session-base.js.map +1 -0
  1464. package/dist/runtime/session-commands.d.ts +43 -0
  1465. package/dist/runtime/session-commands.d.ts.map +1 -0
  1466. package/dist/runtime/session-commands.js +52 -0
  1467. package/dist/runtime/session-commands.js.map +1 -0
  1468. package/dist/runtime/session-exit.d.ts +16 -0
  1469. package/dist/runtime/session-exit.d.ts.map +1 -0
  1470. package/dist/runtime/session-exit.js +32 -0
  1471. package/dist/runtime/session-exit.js.map +1 -0
  1472. package/dist/runtime/session-image-attach.d.ts +45 -0
  1473. package/dist/runtime/session-image-attach.d.ts.map +1 -0
  1474. package/dist/runtime/session-image-attach.js +82 -0
  1475. package/dist/runtime/session-image-attach.js.map +1 -0
  1476. package/dist/runtime/session-lifecycle.d.ts +61 -0
  1477. package/dist/runtime/session-lifecycle.d.ts.map +1 -0
  1478. package/dist/runtime/session-lifecycle.js +164 -0
  1479. package/dist/runtime/session-lifecycle.js.map +1 -0
  1480. package/dist/runtime/session-loops.d.ts +32 -0
  1481. package/dist/runtime/session-loops.d.ts.map +1 -0
  1482. package/dist/runtime/session-loops.js +62 -0
  1483. package/dist/runtime/session-loops.js.map +1 -0
  1484. package/dist/runtime/session-readiness.d.ts +18 -0
  1485. package/dist/runtime/session-readiness.d.ts.map +1 -0
  1486. package/dist/runtime/session-readiness.js +22 -0
  1487. package/dist/runtime/session-readiness.js.map +1 -0
  1488. package/dist/runtime/session-reap.d.ts +28 -0
  1489. package/dist/runtime/session-reap.d.ts.map +1 -0
  1490. package/dist/runtime/session-reap.js +51 -0
  1491. package/dist/runtime/session-reap.js.map +1 -0
  1492. package/dist/runtime/session-resize.d.ts +20 -0
  1493. package/dist/runtime/session-resize.d.ts.map +1 -0
  1494. package/dist/runtime/session-resize.js +26 -0
  1495. package/dist/runtime/session-resize.js.map +1 -0
  1496. package/dist/runtime/session-shutdown-binding.d.ts +30 -0
  1497. package/dist/runtime/session-shutdown-binding.d.ts.map +1 -0
  1498. package/dist/runtime/session-shutdown-binding.js +37 -0
  1499. package/dist/runtime/session-shutdown-binding.js.map +1 -0
  1500. package/dist/runtime/session-shutdown.d.ts +60 -0
  1501. package/dist/runtime/session-shutdown.d.ts.map +1 -0
  1502. package/dist/runtime/session-shutdown.js +140 -0
  1503. package/dist/runtime/session-shutdown.js.map +1 -0
  1504. package/dist/runtime/session-status-wiring.d.ts +38 -0
  1505. package/dist/runtime/session-status-wiring.d.ts.map +1 -0
  1506. package/dist/runtime/session-status-wiring.js +41 -0
  1507. package/dist/runtime/session-status-wiring.js.map +1 -0
  1508. package/dist/runtime/session-status.d.ts +7 -0
  1509. package/dist/runtime/session-status.d.ts.map +1 -0
  1510. package/dist/runtime/session-status.js +22 -0
  1511. package/dist/runtime/session-status.js.map +1 -0
  1512. package/dist/runtime/shell.d.ts +21 -0
  1513. package/dist/runtime/shell.d.ts.map +1 -0
  1514. package/dist/runtime/shell.js +30 -0
  1515. package/dist/runtime/shell.js.map +1 -0
  1516. package/dist/runtime/shutdown/cleanup-latch.d.ts +27 -0
  1517. package/dist/runtime/shutdown/cleanup-latch.d.ts.map +1 -0
  1518. package/dist/runtime/shutdown/cleanup-latch.js +43 -0
  1519. package/dist/runtime/shutdown/cleanup-latch.js.map +1 -0
  1520. package/dist/runtime/shutdown/coordinator.d.ts +57 -0
  1521. package/dist/runtime/shutdown/coordinator.d.ts.map +1 -0
  1522. package/dist/runtime/shutdown/coordinator.js +77 -0
  1523. package/dist/runtime/shutdown/coordinator.js.map +1 -0
  1524. package/dist/runtime/shutdown/reap-tree.d.ts +62 -0
  1525. package/dist/runtime/shutdown/reap-tree.d.ts.map +1 -0
  1526. package/dist/runtime/shutdown/reap-tree.js +108 -0
  1527. package/dist/runtime/shutdown/reap-tree.js.map +1 -0
  1528. package/dist/runtime/shutdown/teardown.d.ts +15 -0
  1529. package/dist/runtime/shutdown/teardown.d.ts.map +1 -0
  1530. package/dist/runtime/shutdown/teardown.js +40 -0
  1531. package/dist/runtime/shutdown/teardown.js.map +1 -0
  1532. package/dist/runtime/shutdown/terminate.d.ts +22 -0
  1533. package/dist/runtime/shutdown/terminate.d.ts.map +1 -0
  1534. package/dist/runtime/shutdown/terminate.js +129 -0
  1535. package/dist/runtime/shutdown/terminate.js.map +1 -0
  1536. package/dist/runtime/shutdown-coordinator.d.ts +57 -0
  1537. package/dist/runtime/shutdown-coordinator.d.ts.map +1 -0
  1538. package/dist/runtime/shutdown-coordinator.js +77 -0
  1539. package/dist/runtime/shutdown-coordinator.js.map +1 -0
  1540. package/dist/runtime/startup/buffer.d.ts +33 -0
  1541. package/dist/runtime/startup/buffer.d.ts.map +1 -0
  1542. package/dist/runtime/startup/buffer.js +53 -0
  1543. package/dist/runtime/startup/buffer.js.map +1 -0
  1544. package/dist/runtime/startup/cleanup.d.ts +43 -0
  1545. package/dist/runtime/startup/cleanup.d.ts.map +1 -0
  1546. package/dist/runtime/startup/cleanup.js +89 -0
  1547. package/dist/runtime/startup/cleanup.js.map +1 -0
  1548. package/dist/runtime/startup/index.d.ts +17 -0
  1549. package/dist/runtime/startup/index.d.ts.map +1 -0
  1550. package/dist/runtime/startup/index.js +47 -0
  1551. package/dist/runtime/startup/index.js.map +1 -0
  1552. package/dist/runtime/startup-buffer.d.ts +33 -0
  1553. package/dist/runtime/startup-buffer.d.ts.map +1 -0
  1554. package/dist/runtime/startup-buffer.js +53 -0
  1555. package/dist/runtime/startup-buffer.js.map +1 -0
  1556. package/dist/runtime/startup-cleanup.d.ts +43 -0
  1557. package/dist/runtime/startup-cleanup.d.ts.map +1 -0
  1558. package/dist/runtime/startup-cleanup.js +89 -0
  1559. package/dist/runtime/startup-cleanup.js.map +1 -0
  1560. package/dist/runtime/startup.d.ts +17 -0
  1561. package/dist/runtime/startup.d.ts.map +1 -0
  1562. package/dist/runtime/startup.js +47 -0
  1563. package/dist/runtime/startup.js.map +1 -0
  1564. package/dist/runtime/status-emit.d.ts +14 -0
  1565. package/dist/runtime/status-emit.d.ts.map +1 -0
  1566. package/dist/runtime/status-emit.js +15 -0
  1567. package/dist/runtime/status-emit.js.map +1 -0
  1568. package/dist/runtime/status-evidence.d.ts +35 -0
  1569. package/dist/runtime/status-evidence.d.ts.map +1 -0
  1570. package/dist/runtime/status-evidence.js +143 -0
  1571. package/dist/runtime/status-evidence.js.map +1 -0
  1572. package/dist/runtime/teardown.d.ts +15 -0
  1573. package/dist/runtime/teardown.d.ts.map +1 -0
  1574. package/dist/runtime/teardown.js +40 -0
  1575. package/dist/runtime/teardown.js.map +1 -0
  1576. package/dist/runtime/terminate.d.ts +22 -0
  1577. package/dist/runtime/terminate.d.ts.map +1 -0
  1578. package/dist/runtime/terminate.js +129 -0
  1579. package/dist/runtime/terminate.js.map +1 -0
  1580. package/dist/runtime/update/lock.d.ts +19 -0
  1581. package/dist/runtime/update/lock.d.ts.map +1 -0
  1582. package/dist/runtime/update/lock.js +184 -0
  1583. package/dist/runtime/update/lock.js.map +1 -0
  1584. package/dist/runtime/update/once.d.ts +40 -0
  1585. package/dist/runtime/update/once.d.ts.map +1 -0
  1586. package/dist/runtime/update/once.js +88 -0
  1587. package/dist/runtime/update/once.js.map +1 -0
  1588. package/dist/runtime/update-lock.d.ts +19 -0
  1589. package/dist/runtime/update-lock.d.ts.map +1 -0
  1590. package/dist/runtime/update-lock.js +183 -0
  1591. package/dist/runtime/update-lock.js.map +1 -0
  1592. package/dist/runtime/update-once.d.ts +40 -0
  1593. package/dist/runtime/update-once.d.ts.map +1 -0
  1594. package/dist/runtime/update-once.js +88 -0
  1595. package/dist/runtime/update-once.js.map +1 -0
  1596. package/dist/state/files.d.ts +20 -0
  1597. package/dist/state/files.d.ts.map +1 -0
  1598. package/dist/state/files.js +78 -0
  1599. package/dist/state/files.js.map +1 -0
  1600. package/dist/state/launch-posture.d.ts +31 -0
  1601. package/dist/state/launch-posture.d.ts.map +1 -0
  1602. package/dist/state/launch-posture.js +41 -0
  1603. package/dist/state/launch-posture.js.map +1 -0
  1604. package/dist/state/loop-store.d.ts +13 -0
  1605. package/dist/state/loop-store.d.ts.map +1 -0
  1606. package/dist/state/loop-store.js +54 -0
  1607. package/dist/state/loop-store.js.map +1 -0
  1608. package/dist/state/private-read.d.ts +20 -0
  1609. package/dist/state/private-read.d.ts.map +1 -0
  1610. package/dist/state/private-read.js +57 -0
  1611. package/dist/state/private-read.js.map +1 -0
  1612. package/dist/state/private-session.d.ts +18 -0
  1613. package/dist/state/private-session.d.ts.map +1 -0
  1614. package/dist/state/private-session.js +98 -0
  1615. package/dist/state/private-session.js.map +1 -0
  1616. package/dist/state/runtime-paths.d.ts +40 -0
  1617. package/dist/state/runtime-paths.d.ts.map +1 -0
  1618. package/dist/state/runtime-paths.js +39 -0
  1619. package/dist/state/runtime-paths.js.map +1 -0
  1620. package/dist/state/socket-home.d.ts +68 -0
  1621. package/dist/state/socket-home.d.ts.map +1 -0
  1622. package/dist/state/socket-home.js +99 -0
  1623. package/dist/state/socket-home.js.map +1 -0
  1624. package/dist/state/store.d.ts +47 -0
  1625. package/dist/state/store.d.ts.map +1 -0
  1626. package/dist/state/store.js +103 -0
  1627. package/dist/state/store.js.map +1 -0
  1628. package/dist/state/validate-loops.d.ts +9 -0
  1629. package/dist/state/validate-loops.d.ts.map +1 -0
  1630. package/dist/state/validate-loops.js +81 -0
  1631. package/dist/state/validate-loops.js.map +1 -0
  1632. package/dist/state/validate-posture.d.ts +15 -0
  1633. package/dist/state/validate-posture.d.ts.map +1 -0
  1634. package/dist/state/validate-posture.js +69 -0
  1635. package/dist/state/validate-posture.js.map +1 -0
  1636. package/dist/state/validate-predicates.d.ts +8 -0
  1637. package/dist/state/validate-predicates.d.ts.map +1 -0
  1638. package/dist/state/validate-predicates.js +8 -0
  1639. package/dist/state/validate-predicates.js.map +1 -0
  1640. package/dist/state/validate.d.ts +16 -0
  1641. package/dist/state/validate.d.ts.map +1 -0
  1642. package/dist/state/validate.js +55 -0
  1643. package/dist/state/validate.js.map +1 -0
  1644. package/dist/terminal/headless.d.ts +30 -0
  1645. package/dist/terminal/headless.d.ts.map +1 -0
  1646. package/dist/terminal/headless.js +132 -0
  1647. package/dist/terminal/headless.js.map +1 -0
  1648. package/docs/api.md +184 -0
  1649. package/docs/cli-behavior.md +416 -0
  1650. package/docs/cli-output.md +124 -0
  1651. package/docs/cli.md +171 -0
  1652. package/docs/design-notes.md +74 -0
  1653. package/docs/embedding.md +82 -0
  1654. package/docs/images.md +67 -0
  1655. package/docs/lifecycle.md +45 -0
  1656. package/docs/login-recovery.md +86 -0
  1657. package/docs/loops.md +58 -0
  1658. package/package.json +83 -0
package/docs/cli.md ADDED
@@ -0,0 +1,171 @@
1
+ # The `elwood` command
2
+
3
+ Purpose: the complete guide to the headless `elwood` executable, from a first
4
+ prompt to scripted JSON and JSONL pipelines.
5
+
6
+ ## Basics
7
+
8
+ ```sh
9
+ elwood "What's the weather today in Seattle?"
10
+ elwood --agent claude "Summarize this repository"
11
+ git diff | elwood "Review this diff and list only correctness risks"
12
+ elwood --image screenshot.png "Explain this failure"
13
+ elwood -C ../service --timeout 10m "Run the tests and diagnose failures"
14
+ elwood run --output json < prompt.txt
15
+ ```
16
+
17
+ `elwood "prompt"` runs in the current directory, waits for one complete turn,
18
+ prints the combined assistant text to stdout, then tears its Elwood session
19
+ state down. It does not undo files the agent changed or remove history owned by
20
+ the agent CLI. `elwood run "prompt"` is the same command in explicit form.
21
+
22
+ Positional words are joined with spaces. Non-empty piped stdin is appended after
23
+ one blank line, so a short instruction can accompany a large document or diff.
24
+ Terminal stdin is not read. Repeat `--image` to attach multiple images in order.
25
+ Input is capped at 8 MiB. Durations accept positive integer `ms`, `s`, `m`, or
26
+ `h` values. Running `elwood` with no arguments prints the same text as
27
+ `elwood --help`; explicit `elwood run` still requires prompt input.
28
+
29
+ ## Agent selection
30
+
31
+ Pick an agent with `--agent`, `ELWOOD_AGENT`, or the config `agent` key. When
32
+ nothing selects one, a new run auto-detects: Elwood tries `claude` first, then
33
+ `codex`, and uses the first whose command resolves in your login shell. It only
34
+ asks the shell `command -v`, so neither agent starts during detection.
35
+ `config effective` reports that choice with source `auto-detected`. If neither
36
+ resolves, the run fails before launch with `no_agent_found` (status 2) and a
37
+ message naming both agents and how to install or select one. Once an agent is
38
+ selected, Elwood never silently falls back to the other. Resume never probes;
39
+ it uses the stored agent.
40
+
41
+ ## Defaults and configuration
42
+
43
+ `elwood config` manages one strict global JSON file. Project-local
44
+ configuration is deliberately unsupported, and global config is never loaded
45
+ from the repository being opened. The path is `$ELWOOD_CONFIG`, then an
46
+ absolute `$XDG_CONFIG_HOME/elwood/config.json`, then
47
+ `~/.config/elwood/config.json`:
48
+
49
+ ```sh
50
+ elwood config path
51
+ elwood config show
52
+ elwood config effective
53
+ elwood config effective --agent claude --output json
54
+ elwood config set agent claude
55
+ elwood config set timeout 10m
56
+ elwood config get agent
57
+ elwood config unset timeout
58
+ ```
59
+
60
+ Supported keys are `agent`, `output`, `timeout`, `trust`, `stateDir`,
61
+ `verbose`, `stream`, `persona`, `claude.model`, `claude.reasoningEffort`,
62
+ `claude.permissionMode`, `codex.model`, `codex.reasoningEffort`,
63
+ `codex.sandbox`, and `codex.approvalPolicy` (`schemaVersion` is always `1`).
64
+ Values are typed and unknown keys are rejected.
65
+
66
+ `config show` prints only the saved file. `config effective` validates and
67
+ prints the resolved launch and output values, the source of each, the config
68
+ path, and whether that file was loaded, without reading a prompt or starting an
69
+ agent. Its JSON includes `head` and, for Claude, the effective
70
+ `permissionMode`, `allowedTools`, `disallowedTools`, and `tools`; resume
71
+ inspection reports persisted tool rules with stored-session provenance.
72
+
73
+ Precedence is flags, environment, global config, then built-ins. `--no-stream`
74
+ and `--no-verbose` reverse inherited true values. `--no-defaults` ignores the
75
+ saved config and all `ELWOOD_*` run-setting variables for a reproducible
76
+ invocation; it does not strip the environment passed to the agent. Environment
77
+ names are `ELWOOD_AGENT`, `ELWOOD_OUTPUT`, `ELWOOD_TIMEOUT`, `ELWOOD_TRUST`,
78
+ `ELWOOD_STATE_DIR`, `ELWOOD_VERBOSE`, `ELWOOD_STREAM`, `ELWOOD_PERSONA`,
79
+ `ELWOOD_MODEL`, `ELWOOD_REASONING_EFFORT`, `ELWOOD_CLAUDE_PERMISSION_MODE`,
80
+ `ELWOOD_CODEX_SANDBOX`, and `ELWOOD_CODEX_APPROVAL_POLICY`. Boolean environment
81
+ values are exactly `true` or `false`.
82
+
83
+ Run `elwood --help` for the full flag list. Launch controls include `--model`,
84
+ `--reasoning-effort`, `--persona`, `--claude-permission-mode`,
85
+ `--codex-sandbox`, `--codex-approval-policy`, `--state-dir`, `--verbose`,
86
+ `--debug`, and `--trust` / `--no-trust`. The built-in non-interactive posture
87
+ is Claude `dontAsk`, or Codex `workspace-write` with approval policy `never`.
88
+
89
+ A reproducible run ignores saved defaults and states the important settings:
90
+
91
+ ```sh
92
+ elwood --no-defaults \
93
+ --agent codex \
94
+ --output json \
95
+ --timeout 10m \
96
+ --codex-sandbox workspace-write \
97
+ --codex-approval-policy never \
98
+ "Run the tests and summarize failures"
99
+ ```
100
+
101
+ ## Output and pipelines
102
+
103
+ Text is the default output protocol. `--output json` emits one terminal
104
+ document, `--output jsonl` emits sequenced progress records, and `--stream`
105
+ prints assistant text as it arrives. Warnings and diagnostics go to stderr.
106
+ Field references, exit codes, and safe shell recipes are in
107
+ [cli-output.md](cli-output.md).
108
+
109
+ ## Live terminal view
110
+
111
+ Add `--head` to watch the real agent interface while keeping a
112
+ pipeline-friendly final result:
113
+
114
+ ```sh
115
+ elwood --head "Run the test suite and fix the failure"
116
+ elwood --head --output json "Review this repository" >result.json
117
+ ```
118
+
119
+ The display receives the raw PTY byte stream on stderr. It is a real VT/ANSI
120
+ mirror, so full-screen layouts, cursor-addressed updates, alternate-screen
121
+ buffers, colors, spinners, and title changes render as they do in the
122
+ underlying client. Stdout remains only the final text or JSON protocol. Pending
123
+ display work is capped at 4 MiB or 1,024 writes; a terminal that stays
124
+ backpressured fails the run cleanly instead of growing memory without bound.
125
+
126
+ Head mode is view-only: keyboard, mouse, paste, and terminal-response bytes are
127
+ discarded while attached. Ctrl-C still interrupts. Terminal resizes propagate to
128
+ the agent. Elwood restores raw/cooked input state, mouse and paste modes,
129
+ attributes, cursor visibility, and the main screen before printing the final
130
+ result. Both stdin and stderr must be terminals, and `--head` cannot be
131
+ combined with `--stream`, `--verbose`, `--debug`, or `--output jsonl`.
132
+
133
+ ## Continuation and cleanup
134
+
135
+ New runs are ephemeral unless `--keep` is supplied. A kept text run reports its
136
+ session ID on stderr; JSON and JSONL include it in the terminal record:
137
+
138
+ ```sh
139
+ first=$(elwood --keep --output json "Remember that the release color is teal")
140
+ id=$(printf '%s' "$first" | jq -r .sessionId)
141
+ elwood --resume "$id" "What is the release color?"
142
+ elwood --resume "$id" --ephemeral "Finish this conversation"
143
+ ```
144
+
145
+ Resume uses the exact stored agent and workspace; a conflicting `--agent` and
146
+ any `--cwd` are rejected. Resumed sessions stay preserved after success or
147
+ failure unless `--ephemeral` requests teardown. Teardown removes Elwood's
148
+ session record and loop definitions; it does not undo workspace changes or
149
+ delete conversation history owned by Claude or Codex. CLI state defaults to an
150
+ absolute `$XDG_STATE_HOME/elwood` or `~/.local/state/elwood`; its private
151
+ records hold resume metadata, not prompts or output.
152
+
153
+ `--persona` runs a real extra agent turn before the requested turn. Elwood
154
+ discards that setup turn's answer, but any tools it invokes or files it changes
155
+ remain. It is supported only for new sessions, never with `--resume`.
156
+
157
+ ## Trust and security
158
+
159
+ Headless mode is non-interactive. With the default `--trust`, Elwood answers
160
+ only its allowlisted workspace-directory and extension trust dialogs, plus the
161
+ Elwood-owned Codex hook trust needed for operation. `--no-trust` disables the
162
+ workspace and extension approvals. Any other recognized dialog fails safely as
163
+ `blocked_prompt` instead of hanging or guessing.
164
+
165
+ Piped text and image paths are prompt input with the same authority as text
166
+ typed by the caller. Do not combine untrusted input with broad filesystem
167
+ permissions.
168
+
169
+ Head mode renders agent-controlled terminal escape sequences verbatim, exactly
170
+ as running the interactive CLI directly would. Use it only with agents and
171
+ workspaces you trust to control the current terminal display.
@@ -0,0 +1,74 @@
1
+ # Design notes
2
+
3
+ Purpose: the reasoning behind decisions that reviewers and integrators ask
4
+ about, plus what Elwood does and does not persist.
5
+
6
+ ## Decisions
7
+
8
+ - **The agent must not know it is wrapped.** Agents run in a real PTY, not
9
+ print mode, SDK mode, or a pipe-only subprocess, launched through the user's
10
+ interactive login shell so PATH and environment match a human's terminal.
11
+ Hooks and transcripts are the control and observability layer.
12
+ - **Headless terminal model.** PTY output is rendered through headless
13
+ xterm.js before Elwood inspects TUI state, so prompt detection works on the
14
+ rendered screen rather than on raw escape sequences.
15
+ - **Claude tool flags.** Elwood passes the camelCase `--allowedTools` /
16
+ `--disallowedTools` flags with one comma-separated value; current
17
+ `claude --help` documents comma or space-separated lists.
18
+ - **Claude settings.** Session-scoped settings are passed with `--settings`.
19
+ Elwood does not mutate `.claude/settings.local.json`.
20
+ - **Codex hook enablement.** Elwood reserves `features.hooks=true` and
21
+ `hookTrust="trust-all"` because the library is not useful unless hooks run.
22
+ - **Workspace trust.** `autotrust` is an explicit opt-in because answering
23
+ Claude or Codex workspace trust prompts changes the security posture of the
24
+ launched agent. The gate is independent of Claude's permission mode.
25
+ - **Codex `PermissionRequest`.** The wire response nests `{ behavior, message? }`
26
+ under `hookSpecificOutput.decision`; `PreToolUse` uses direct event-specific
27
+ fields. Elwood mirrors Codex's protocol rather than normalizing the shape.
28
+ - **Hooks fail open.** A handler timeout, thrown handler, invalid input, or
29
+ invalid response is reported as `hookError` and the agent proceeds, so a
30
+ parent-app bug cannot deadlock the wrapped agent.
31
+ - **Raw bytes.** `sendKeys(Uint8Array)` writes bytes to the PTY instead of
32
+ decoding them as UTF-8, so forwarded user keystrokes arrive verbatim.
33
+ - **Readiness comes from signals, not files.** Observe `session.status`, the
34
+ `status` event, or `waitForStatus`. The persisted record exists only to
35
+ enable resume and is not part of the readiness contract.
36
+ - **Turn boundaries are deterministic.** An ergonomic turn ends when the
37
+ transcript catches up to the `Stop` hook's expected final text, with a
38
+ bounded quiet-window fallback for pure-tool turns. There is no whole-turn
39
+ timeout by default; `timeoutMs` is opt-in and armed only after submission.
40
+ - **Lifecycle.** `stop()` waits for a bounded graceful exit and escalates to
41
+ force termination; `kill()` starts with force termination. Failed cleanup
42
+ never latches: a later call retries.
43
+ - **Version checks.** An unparseable CLI version becomes a `version_unparseable`
44
+ warning and startup continues; `strictVersionCheck: true` fails closed. A
45
+ failed `autoupdate` is non-fatal when the installed CLI meets the minimum
46
+ (`agent_update_failed` warning).
47
+
48
+ ## State, privacy, and safety
49
+
50
+ Elwood is deliberately live-first.
51
+
52
+ - The persisted session record is minimal: schema version, `elwoodSessionId`,
53
+ adapter kind, `cwd`, and per-adapter resume state (the CLI's conversation id
54
+ plus launch posture). Nothing else is written. Sessions live under
55
+ `<cwd>/.elwood` by default; pass `stateDir` for a caller-managed location.
56
+ - Explicit loop definitions live in a separate versioned, owner-only `0600`
57
+ sidecar with the loop message and cadence metadata, but no live timer, due
58
+ state, or submission state. That message is the sole persisted prompt.
59
+ - Session status, timestamps, warnings, terminal size, the hook bridge token,
60
+ the socket path, and runtime file paths are not persisted. Status and
61
+ warnings are live-only events. Runtime paths are derived on demand; the
62
+ socket home is a deterministic fingerprint of the session identity in a
63
+ short Elwood-owned temp home (so a deep `stateDir` never hits the macOS
64
+ socket path cap), while the bridge token and socket file are minted fresh on
65
+ every start and never trusted from disk.
66
+ - Ordinary prompts, PTY output, hook payloads, hook responses, Codex
67
+ transcript items, and derived prompt or tool content are never persisted.
68
+ - Hook bridge messages travel over local IPC with per-session tokens; requests
69
+ are capped at 8 MiB on both sides.
70
+ - Malformed state records fail with typed `state_corrupt` errors. State
71
+ directories are created `0700` and files `0600`.
72
+ - `teardown()` removes only Elwood-owned files: the session record, loop
73
+ sidecar, generated settings, bridge script, and socket home. It never
74
+ touches agent-owned auth, transcripts, or user settings.
@@ -0,0 +1,82 @@
1
+ # Embedding Elwood in a parent application
2
+
3
+ The canonical embedding is an Electron app: Elwood runs in the main process,
4
+ terminal output streams to a renderer xterm over IPC, and renderer keystrokes
5
+ flow back. The same shape applies to any host (web server, TUI multiplexer,
6
+ daemon).
7
+
8
+ ## The loop
9
+
10
+ ```ts
11
+ import { startOrResumeClaude, type ElwoodAgentSession } from "@with-logic/elwood";
12
+
13
+ const { session, resumed } = await startOrResumeClaude({
14
+ cwd: workspacePath,
15
+ stateDir: join(appStateDir, "sessions", mySessionId, "elwood"),
16
+ elwoodSessionId: persisted?.elwoodSessionId,
17
+ autotrust: true,
18
+ hooks: { /* policy hooks */ },
19
+ });
20
+ if (!resumed) persist({ elwoodSessionId: session.elwoodSessionId });
21
+
22
+ // Main -> renderer: raw PTY bytes into a visual xterm.
23
+ session.on("terminal:data", (event) => window.webContents.send("pty", event.data));
24
+ // Renderer -> main: forward user keystrokes verbatim as bytes.
25
+ ipcMain.on("keys", (_event, bytes: Uint8Array) => void session.sendKeys(bytes));
26
+ // Keep the visual and headless terminals the same size.
27
+ ipcMain.on("resize", (_event, size) => void session.resize(size));
28
+ ```
29
+
30
+ A late `terminal:data` subscriber first receives up to 128 KB of replayed
31
+ output as one chunk, so a freshly-opened renderer view paints recent history
32
+ immediately; write it into the xterm like any other chunk.
33
+
34
+ ## Lifecycle
35
+
36
+ - **Relaunch:** persist `elwoodSessionId`, keep `stateDir` intact, and call
37
+ `startOrResume*` at boot. It falls back to a fresh session only when no
38
+ resumable session exists (`state_not_found` / `resume_unavailable` /
39
+ `adapter_mismatch`) and reports which path ran.
40
+ - **Removal:** call `teardown()` — it removes Elwood-owned state (session
41
+ record, loop sidecar, generated settings, bridge script, socket home) without touching the
42
+ agent CLI's own user data.
43
+ - **Shutdown:** `stop()` for graceful, `kill()` for wedged sessions. Both are
44
+ safe after the process already exited. Stop and unexpected exit preserve
45
+ loop definitions for resume; kill clears them permanently.
46
+
47
+ Recurring loops are owned by Elwood and need no parent timer. Use
48
+ `createLoop`/`listLoops`/`cancelLoop`; resume restores unexpired definitions with
49
+ fresh clocks and no catch-up. Use the opt-in `parseLoopCommand` helper for a
50
+ shared `/loop` UX, since ordinary send methods keep slash-prefixed text literal.
51
+
52
+ `stateDir` can be arbitrarily deep: the hook bridge socket binds in a short
53
+ Elwood-owned temp home, not under `stateDir`, so macOS's ~104-byte socket path
54
+ cap does not constrain your state layout.
55
+
56
+ ## Gotchas
57
+
58
+ - **CJS bundlers (Electron main).** Elwood constructs its `require` from
59
+ `import.meta.url ?? __filename`, so bundling to CJS works without a
60
+ `define` workaround. If you bundle, keep `node-pty` external — it is a
61
+ native module.
62
+ - **Nested agent sessions.** Claude Code ≥ 2.1.201 does not persist
63
+ conversations for instances launched from inside another Claude Code
64
+ session (`CLAUDECODE`/`CLAUDE_CODE_*` in the environment). Hooks and turns
65
+ work, but resume will find nothing. If your parent app can itself be
66
+ launched from a Claude session (dev workflows, test runners), strip those
67
+ variables from the child environment when you need resumable sessions —
68
+ Elwood's own e2e suite does exactly this.
69
+ - **User keystrokes** should be forwarded with the `Uint8Array` overload of
70
+ `sendKeys` for verbatim delivery; the string overload applies terminal
71
+ input semantics (see [api.md](api.md)).
72
+ - **Interrupting a turn** (a stop button, the user's Escape) should call
73
+ `interrupt()` rather than forwarding a raw Escape byte: it no-ops safely
74
+ when no turn is running and resolves once the session is `ready` again.
75
+ - **Model switching** via `setModel` preserves the user's saved defaults on
76
+ both adapters: Claude applies session-only, and Elwood restores Codex's
77
+ config.toml after the CLI persists its picker selection (watch for the
78
+ `codex_default_model_persisted` warning in the rare concurrent-edit case).
79
+ - **Enumerating models without a session** — to populate a model selector
80
+ before the user starts a session — use `listClaudeModels`/`listCodexModels`.
81
+ They spin up a throwaway session, list, and always tear it down, so they cost
82
+ a few seconds each; cache the result in the parent app if you call them often.
package/docs/images.md ADDED
@@ -0,0 +1,67 @@
1
+ # Attaching images
2
+
3
+ Purpose: how to attach image content to a turn, what is validated, and how
4
+ each adapter ingests it.
5
+
6
+ `send`, `stream`, `sendPrompt`, `sendMessage`, and `sendGuidance` accept an
7
+ optional `images` list so a submission can carry image content alongside its
8
+ text, the equivalent of pasting or dragging an image into the CLI. It is an
9
+ attached-content model, not interleaving: images have no position within the
10
+ text, but the list is ordered (array order sets chip order). Elwood attaches
11
+ them as part of the same queued turn, before the text is submitted. The CLI
12
+ exposes the same thing as a repeatable `--image <path>` flag.
13
+
14
+ ```ts
15
+ await session.sendMessage("What's wrong with this screenshot?", {
16
+ images: [
17
+ { path: "/abs/path/to/shot.png" }, // an existing image file
18
+ { data: pngBytes, format: "png" }, // or in-memory bytes
19
+ ],
20
+ });
21
+ ```
22
+
23
+ ## Validation and limits
24
+
25
+ `ImageInput` is exactly `{ path }` or `{ data, format }` where `format` is
26
+ `"png" | "jpeg" | "gif" | "webp"`; extra keys are rejected. Inputs are
27
+ validated before anything reaches the composer:
28
+
29
+ - At most 16 images per submission.
30
+ - At most 25 MiB per image and 50 MiB per submission, counting path inputs
31
+ and byte inputs alike.
32
+ - At most 200 MiB of cloned image bytes held across all queued, not yet
33
+ attached submissions in one session.
34
+
35
+ A violation rejects the call with `invalid_image`. Malformed or over-limit
36
+ input rejects synchronously, before the submission takes a queue slot. Path
37
+ readability is checked at dispatch, so a file made unreadable after the call
38
+ still rejects. A `{ data }` buffer is cloned at the call, so mutating it
39
+ afterwards does not change what is attached. Byte inputs are written to a
40
+ short-lived temp file that is removed once the submission is attached.
41
+
42
+ ## Confirmation
43
+
44
+ Attachment is confirmed, never assumed. Each image waits for the CLI's
45
+ `[Image #N]` chip on the composer line. If the chip is not confirmed within
46
+ 10 s, or the clipboard cannot be read or written, the call rejects with
47
+ `image_attach_failed` and no text is submitted. If the session terminates
48
+ mid-attach the call rejects with `session_not_running`, like any queued
49
+ operation. An attach rejection leaves queue readiness unchanged.
50
+
51
+ ## Adapter mechanics
52
+
53
+ Each CLI ingests images through its own native path, so behavior differs.
54
+
55
+ **Claude** reads a pasted absolute image path itself. Elwood bracketed-pastes
56
+ each path (the same delivery a terminal produces on drag-and-drop), Claude
57
+ encodes the file, and an `[Image #N]` chip appears. The mechanism is
58
+ platform-neutral, but Elwood itself currently supports macOS only: both
59
+ adapters reject at startup with `unsupported_platform` elsewhere.
60
+
61
+ **Codex** ingests an interactive image only from the OS clipboard (Ctrl+V).
62
+ Elwood snapshots your clipboard once, writes each image onto the macOS
63
+ pasteboard, sends Ctrl+V, waits for the `[Image #N]` chip, and then restores
64
+ your prior clipboard. The whole transaction runs under a process-wide lock so
65
+ concurrent Codex sessions cannot cross-attach. Restoring the clipboard is
66
+ best-effort (text contents), and there is a brief window during the attach
67
+ when the injected image is the clipboard's contents.
@@ -0,0 +1,45 @@
1
+ # Session lifecycle
2
+
3
+ Purpose: event delivery guarantees, terminal sizing, and how to persist and
4
+ resume a session across parent-app restarts.
5
+
6
+ ## Event delivery guarantees
7
+
8
+ - `terminal:exit` is emitted exactly once per session process exit.
9
+ - A handler never fires after its unsubscribe function returns.
10
+ - A late `terminal:data` subscriber first receives the replay buffer as one
11
+ coalesced chunk, then live chunks, with no gap and no duplicates. The buffer
12
+ is bounded at 128 KB (oldest data dropped); use
13
+ `session.terminal.snapshot()` for current-screen ground truth.
14
+ - `stop()` / `kill()` after exit do not re-signal the PTY and preserve the exit
15
+ status, but they still confirm or retry the process-group reap and may
16
+ reject with `termination_failed`. `teardown()` is safe to call twice.
17
+ - `status` transitions mark every real turn boundary: `running` when a turn
18
+ starts and `ready` when it ends, including turns ended by an interrupt.
19
+ Consumers can clear "agent is working" UI on the `ready` beat.
20
+
21
+ The default terminal size is 189x48, wide enough that full-width TUI layouts
22
+ render without artificial wrapping. Visual embedders should pass and maintain
23
+ their real xterm size instead.
24
+
25
+ ## Persisting and resuming
26
+
27
+ To resume across parent-app restarts, persist exactly two things: the
28
+ `elwoodSessionId` and the `stateDir` it lives in (keep that directory intact).
29
+ Everything else Elwood needs is in the session record.
30
+
31
+ - Resume restores only the launch posture from the record: `permissionMode`,
32
+ allowed/disallowed tools, and `tools` for Claude; `sandbox` and
33
+ `approvalPolicy` for Codex. Explicit resume options override those fields
34
+ one by one and the result is re-persisted. Everything else is per-call and
35
+ must be re-supplied: `model`, `reasoningEffort`, hook handlers, `autotrust`,
36
+ `autoupdate`, `hookTimeoutMs`, `strictVersionCheck`, and `initialSize`.
37
+ - `resumeClaude` / `resumeCodex` reject with `resume_unavailable` when the CLI
38
+ never reported its conversation id (Claude is resumable only after one
39
+ completed turn), `state_not_found` when no record exists, and
40
+ `adapter_mismatch` when the id belongs to the other adapter.
41
+ - Prefer `startOrResumeClaude` / `startOrResumeCodex`: they fall back to a
42
+ fresh start only on those three errors, rethrow everything else (for example
43
+ `state_corrupt`), and return `{ session, resumed }`.
44
+ - Loop definitions are restored with the same ids and jitter but fresh clocks;
45
+ expired loops are pruned and missed runs are never replayed.
@@ -0,0 +1,86 @@
1
+ # Recovering an expired Claude login
2
+
3
+ Purpose: how Elwood detects a lapsed Claude login and how `ClaudeSession.login`
4
+ recovers it in place, including its security properties and limits.
5
+
6
+ If Claude's login lapses, the CLI stops responding and shows a banner such as
7
+ "Login expired · Please run /login" or "Not logged in · Run /login". Elwood
8
+ surfaces this so a session never wedges silently:
9
+
10
+ - At startup, a login-expired banner rejects the start with
11
+ `claude_not_authenticated`. The session is torn down, not reported usable.
12
+ - Mid-session, Elwood emits a content-free `login_expired` warning (and the
13
+ matching `warning` activity) carrying `recoveryCommand: "/login"`, and leaves
14
+ the session alive so you can recover without restarting.
15
+
16
+ ## Driving `/login`
17
+
18
+ `ClaudeSession.login(options)` drives the interactive `/login` flow. The
19
+ default account login ends with a human copying an authorization code from a
20
+ browser, so `login` cannot complete unattended; it brackets the human step:
21
+
22
+ ```ts
23
+ // Keep the event listener synchronous. Elwood's emitter ignores returned
24
+ // promises, so an async listener's rejection would be unhandled. Launch
25
+ // recovery from a separate function with its own catch.
26
+ session.on("warning", (w) => {
27
+ if (w.code === "login_expired") void recoverLogin();
28
+ });
29
+
30
+ async function recoverLogin() {
31
+ try {
32
+ await session.login({
33
+ onAuthUrl: (url) => openInBrowser(url), // optional: the browser sign-in URL
34
+ provideCode: () => promptHumanForCode(), // required: the code from the browser
35
+ // method defaults to "claudeai"; timeoutMs defaults to 300000
36
+ });
37
+ } catch (err) {
38
+ // login_failed / login_timeout / session_not_running: decide whether to
39
+ // retry, tear down, or alert a human. Never rethrow into the event loop.
40
+ reportLoginFailure(err);
41
+ }
42
+ }
43
+ ```
44
+
45
+ `ClaudeLoginOptions.method` is `"claudeai"`, `"console"`, or `"third_party"`.
46
+
47
+ `login` runs as an exclusive transaction. It serializes with every other
48
+ control operation, so nothing interleaves with its picker keys, the code, or
49
+ its Enters, and it never sends keystrokes into a blocking dialog. It submits
50
+ `/login`, selects the login `method` if the CLI shows its picker, reports a
51
+ validated authorization URL via `onAuthUrl`, and, when the CLI asks for a code,
52
+ calls `provideCode`, validates the returned code (rejecting empty, oversized,
53
+ or control-bearing values), and submits it followed by exactly one Enter.
54
+ Screen stages count only when they newly appear after the `/login` submission,
55
+ so stale on-screen text cannot drive the flow. It resolves only after the CLI
56
+ reports success and the session reaches a fresh `ready` state, and rejects
57
+ with `login_failed` (an explicit failure, an invalid code, or a failing
58
+ `provideCode`), `login_timeout`, or `session_not_running`. A flow that
59
+ completes without prompting for a code never calls `provideCode`.
60
+
61
+ ## Security considerations
62
+
63
+ `login` layers several defenses so an untrusted screen cannot hijack the flow:
64
+
65
+ - The transaction holds the control queue exclusively; nothing else writes
66
+ during it.
67
+ - The scraped URL must be `https:` on an exactly-approved Anthropic host with
68
+ no credentials, or the flow fails.
69
+ - The human-provided code is validated before it is written.
70
+ - Stage markers are scoped to the screen's active tail and must be new
71
+ relative to a pre-`/login` baseline.
72
+ - Login keystrokes hold while a blocking dialog is on screen.
73
+ - The code prompt is re-checked as still current immediately before the code
74
+ is written.
75
+
76
+ Two residual limitations remain by design:
77
+
78
+ - A single frame that renders both a genuine approved-host `claude.ai` OAuth
79
+ URL and a paste-code prompt in the active region can still advance the flow.
80
+ This requires forging a host-valid OAuth URL, not merely a phrase. Only run
81
+ `login` when the session is genuinely at Claude's `/login` prompt, not while
82
+ untrusted tool or model output is streaming into the terminal.
83
+ - The `/login` screen matchers are version-coupled to the Claude CLI and are
84
+ covered by unit tests against captured CLI strings, not by a live e2e test:
85
+ driving `/login` against a real authenticated session would mutate the
86
+ developer's auth and cannot run unattended in CI.
package/docs/loops.md ADDED
@@ -0,0 +1,58 @@
1
+ # Recurring loops
2
+
3
+ Purpose: how to schedule, inspect, cancel, and persist recurring prompts on a
4
+ session.
5
+
6
+ Elwood schedules loops itself, so Claude and Codex behave the same and no
7
+ parent-app timer is needed. The typed API supports fixed intervals and an idle
8
+ cadence, multiple loops per session, inspection, and cancellation:
9
+
10
+ ```ts
11
+ const fixed = await session.createLoop({
12
+ mode: "fixed",
13
+ intervalMs: 5 * 60_000,
14
+ message: "Check the deployment and report regressions.",
15
+ });
16
+ await session.createLoop({ mode: "idle", message: "Continue with the next useful task." });
17
+
18
+ console.log(await session.listLoops());
19
+ await session.cancelLoop(fixed.id);
20
+ ```
21
+
22
+ ## Parsing a `/loop` command
23
+
24
+ `parseLoopCommand("/loop 5m check the deployment")` returns the same fixed
25
+ request shape; `parseLoopCommand("/loop check the deployment")` returns an
26
+ idle request. Parsing is opt-in: `sendMessage("/loop ...")` still sends the
27
+ literal text. Use the helper when your app wants a shared `/loop` UX.
28
+
29
+ ## Limits
30
+
31
+ - Fixed intervals are one minute to less than seven days. Idle loops fire
32
+ after five minutes of readiness.
33
+ - At most 50 active loops per session; messages are 1 to 65,536 bytes.
34
+ - Delivery is readiness-safe and serial: a loop never interrupts a running
35
+ turn or writes into a blocking dialog.
36
+ - Each loop gets a stable, id-derived, delay-only jitter of up to 30 seconds.
37
+ - Loops expire after seven wall-clock days.
38
+ - Missed runs are never replayed after resume.
39
+
40
+ Validation, capacity, not-found cancellation, persistence, and
41
+ scheduling/submission failures reject with stable typed errors.
42
+
43
+ ## Persistence and lifecycle
44
+
45
+ Loop definitions live in a private, versioned, owner-only (`0600`) sidecar next
46
+ to the session record. The sidecar stores the loop message and cadence
47
+ metadata, but no live timer, due state, or submission state. This is the one
48
+ place Elwood persists prompt text; see
49
+ [design-notes.md](design-notes.md#state-privacy-and-safety).
50
+
51
+ - `stop()` and unexpected exits preserve definitions.
52
+ - `kill()` clears them permanently.
53
+ - `teardown()` removes them with the session.
54
+ - Resume restores unexpired definitions with the same ids and jitter, starting
55
+ fresh clocks from the resumed session's first real readiness.
56
+
57
+ Subscribe to the `loop` event for redacted `created`, `fired`, `cancelled`,
58
+ `expired`, and `failed` lifecycle events. The event never carries prompt text.
package/package.json ADDED
@@ -0,0 +1,83 @@
1
+ {
2
+ "name": "@with-logic/elwood",
3
+ "version": "0.1.0",
4
+ "description": "Control interactive agentic coding CLIs (Claude Code, Codex) through real terminal sessions: typed hooks, a unified activity stream, resumable sessions, and a headless CLI.",
5
+ "license": "MIT",
6
+ "repository": {
7
+ "type": "git",
8
+ "url": "git+https://github.com/with-logic/elwood.git"
9
+ },
10
+ "homepage": "https://github.com/with-logic/elwood#readme",
11
+ "bugs": {
12
+ "url": "https://github.com/with-logic/elwood/issues"
13
+ },
14
+ "keywords": [
15
+ "claude-code",
16
+ "codex",
17
+ "agent",
18
+ "pty",
19
+ "terminal",
20
+ "hooks",
21
+ "cli",
22
+ "automation",
23
+ "llm"
24
+ ],
25
+ "type": "module",
26
+ "files": [
27
+ "dist",
28
+ "docs/*.md",
29
+ "CHANGELOG.md",
30
+ "README.md"
31
+ ],
32
+ "main": "./dist/index.js",
33
+ "module": "./dist/index.js",
34
+ "types": "./dist/index.d.ts",
35
+ "exports": {
36
+ ".": {
37
+ "types": "./dist/index.d.ts",
38
+ "import": "./dist/index.js"
39
+ }
40
+ },
41
+ "bin": {
42
+ "elwood": "./dist/cli/entry.js"
43
+ },
44
+ "engines": {
45
+ "node": ">=24"
46
+ },
47
+ "publishConfig": {
48
+ "access": "public"
49
+ },
50
+ "scripts": {
51
+ "build": "tsc -p tsconfig.build.json && node scripts/postbuild.mjs",
52
+ "prepare": "npm run build",
53
+ "test": "vitest run --coverage",
54
+ "typecheck": "tsc --noEmit",
55
+ "lint": "biome check .",
56
+ "lint:fix": "biome check --write .",
57
+ "format": "biome format --write .",
58
+ "check:lines": "node --no-warnings scripts/check-lines.ts",
59
+ "check": "npm run build && npm run typecheck && npm run lint && npm run check:lines && npm test",
60
+ "check:all": "npm run check && npm run test:e2e",
61
+ "test:e2e": "exec node --no-warnings --experimental-test-coverage --test-coverage-include='src/**/*.ts' --test-coverage-exclude='src/app/**' --test-coverage-exclude='tests/**' --test-timeout=240000 --test-concurrency=1 --test tests/e2e/*.e2e.ts",
62
+ "dev:app": "exec node --no-warnings src/app/dev.ts",
63
+ "dev:web": "exec node --no-warnings scripts/supervise.ts src/app/web-dev.ts",
64
+ "example:minimal": "exec node --no-warnings scripts/supervise.ts examples/minimal.ts",
65
+ "example:stream": "exec node --no-warnings scripts/supervise.ts examples/stream.ts",
66
+ "example:full": "exec node --no-warnings scripts/supervise.ts examples/full.ts"
67
+ },
68
+ "devDependencies": {
69
+ "@biomejs/biome": "2.4.15",
70
+ "@types/node": "^25.9.1",
71
+ "@types/ws": "^8.18.1",
72
+ "@vitest/coverage-istanbul": "^4.1.9",
73
+ "@xterm/addon-fit": "^0.11.0",
74
+ "@xterm/xterm": "^6.0.0",
75
+ "typescript": "^6.0.3",
76
+ "vitest": "^4.1.9",
77
+ "ws": "^8.21.0"
78
+ },
79
+ "dependencies": {
80
+ "@xterm/headless": "^6.0.0",
81
+ "node-pty": "^1.1.0"
82
+ }
83
+ }