@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
@@ -0,0 +1,108 @@
1
+ /**
2
+ * Allowlist of known adapter startup trust prompts and how to answer them.
3
+ * Implements PRD §5.1 and §5.5 (C-CLAUDE-10, C-CODEX-11, C-CLAUDE-14, C-CODEX-15).
4
+ *
5
+ * This is an EXPLICIT allowlist, not an open-ended matcher: each entry names one
6
+ * concrete prompt by its on-screen text and a fixed affirmative outcome. A new
7
+ * CLI prompt is trusted only by adding a deliberate entry here — Elwood never
8
+ * blanket-answers "any first-run confirmation", which would silently bypass a
9
+ * future CLI security gate for third-party code or config.
10
+ */
11
+ import { nonOptionText } from "./terminal-options.js";
12
+ // Affirmative option shapes. Each rejects decline words so "No, ..." never matches.
13
+ const notDecline = "(?!.*\\b(no|without|not|quit|cancel|deny|don't)\\b)";
14
+ const yesOption = new RegExp(`^${notDecline}.*\\b(yes|trust|continue|proceed)\\b`, "i");
15
+ const useMcpOption = new RegExp(`^${notDecline}.*\\buse this(?:.*\\bMCP)? server`, "i");
16
+ // Codex hook trust's real affirmative is "Trust all and continue" / "Trust
17
+ // hooks" — matched specifically so a nearby unrelated dialog's generic "Yes,
18
+ // continue" (e.g. a credential prompt) can never be selected for hook trust.
19
+ const trustHooksOption = new RegExp(`^${notDecline}.*\\btrust\\b.*\\b(hooks?|all)\\b`, "i");
20
+ /**
21
+ * The allowlist. Wording verified against claude 2.1.205–2.1.252 and codex-cli 0.142.5.
22
+ * `workspace`/`directory` trust are the folder-trust gates; `skill`, `plugin`,
23
+ * and `mcp` cover the CLI's first-run trust prompts for loading third-party
24
+ * skills, plugins, and MCP servers under a full-trust launch.
25
+ */
26
+ // Each `headerPattern` matches the prompt's QUESTION/HEADER wording — never a
27
+ // phrase that lives only in an affirmative option — so recognition anchors on a
28
+ // header line (matched via `trustHeaderMatches` over the frame's non-option
29
+ // text), which a hostile option cannot spoof (PRD §5.1).
30
+ export const trustPromptAllowlist = [
31
+ {
32
+ // Header renders as "Do you trust this folder?" or "Quick safety check: Is
33
+ // this a project you created or one you trust?" (claude 2.1.205/2.1.206).
34
+ id: "workspace_trust",
35
+ agent: "claude",
36
+ headerPattern: /do you trust this folder|project you .*\bor one you trust/i,
37
+ accept: yesOption,
38
+ answerPolicy: "autotrust",
39
+ },
40
+ {
41
+ id: "skill_trust",
42
+ agent: "claude",
43
+ headerPattern: /do you (?:want to )?(?:trust|load) (?:this|the) skill|load this skill\?/i,
44
+ accept: yesOption,
45
+ answerPolicy: "autotrust",
46
+ },
47
+ {
48
+ id: "plugin_trust",
49
+ agent: "claude",
50
+ headerPattern: /do you (?:want to )?trust (?:this|the) plugin|trust the plugin\?/i,
51
+ accept: yesOption,
52
+ answerPolicy: "autotrust",
53
+ },
54
+ {
55
+ // Header "New MCP server found in this project"; the affirmative option is
56
+ // "Use this MCP server" (no yes/trust/continue word), needing a per-prompt
57
+ // accept — the generic yes-matcher would leave it wedged.
58
+ id: "mcp_trust",
59
+ agent: "claude",
60
+ headerPattern: /New MCP server found|do you trust (?:this|the) MCP server/i,
61
+ accept: useMcpOption,
62
+ answerPolicy: "autotrust",
63
+ },
64
+ {
65
+ // Codex's directory-trust gate keeps the stable `workspace_trust` label
66
+ // (PRD §5.4) even though its wording differs from Claude's.
67
+ id: "workspace_trust",
68
+ agent: "codex",
69
+ headerPattern: /Do you trust the contents of this directory/i,
70
+ accept: yesOption,
71
+ answerPolicy: "autotrust",
72
+ },
73
+ // Hook trust is Elwood's own integration, required for the session to work, so
74
+ // it is always answered (not gated on autotrust) — see `answerPolicy: "always"`.
75
+ {
76
+ id: "hook_trust",
77
+ agent: "codex",
78
+ headerPattern: /Hooks need review/i,
79
+ // Specific to hook trust's own option ("Trust all and continue"), never a
80
+ // generic "Yes" that could belong to a different dialog in the same frame.
81
+ accept: trustHooksOption,
82
+ answerPolicy: "always",
83
+ },
84
+ ];
85
+ /**
86
+ * True when `spec`'s HEADER wording appears in `header` — the frame's NON-option
87
+ * text as produced by `nonOptionText`. This is the ONE shared, option-aware
88
+ * recognizer: the responder, the cursor navigator, and the screen-fact blocking
89
+ * rules all go through it (each computes `nonOptionText` once per frame and
90
+ * tests every spec against that), so a numbered or cursor-selectable option whose
91
+ * label merely contains a trust phrase is never recognized as a prompt. Matching
92
+ * joined non-option lines also keeps wrapped headers matchable (§5.1).
93
+ */
94
+ export function trustHeaderMatches(header, spec) {
95
+ return spec.headerPattern.test(header);
96
+ }
97
+ /** `trustHeaderMatches` over a raw frame, for callers that test a single spec. */
98
+ export function trustPromptHeaderVisible(frame, spec) {
99
+ return trustHeaderMatches(nonOptionText(frame), spec);
100
+ }
101
+ /** Specs for one agent that stay UNANSWERED under the effective policy (block on the human). */
102
+ export function blockingTrustSpecs(agent, autotrust) {
103
+ return trustPromptAllowlist.filter(
104
+ // An `answerPolicy: "always"` prompt (hook trust) is auto-handled, so it must
105
+ // NOT be classified as human-blocking. Others block only when autotrust is off.
106
+ (spec) => spec.agent === agent && spec.answerPolicy !== "always" && !autotrust);
107
+ }
108
+ //# sourceMappingURL=trust-prompts.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"trust-prompts.js","sourceRoot":"","sources":["../../src/core/trust-prompts.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAGH,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AA8DtD,oFAAoF;AACpF,MAAM,UAAU,GAAG,qDAAqD,CAAC;AACzE,MAAM,SAAS,GAAG,IAAI,MAAM,CAAC,IAAI,UAAU,sCAAsC,EAAE,GAAG,CAAC,CAAC;AACxF,MAAM,YAAY,GAAG,IAAI,MAAM,CAAC,IAAI,UAAU,mCAAmC,EAAE,GAAG,CAAC,CAAC;AACxF,2EAA2E;AAC3E,6EAA6E;AAC7E,6EAA6E;AAC7E,MAAM,gBAAgB,GAAG,IAAI,MAAM,CAAC,IAAI,UAAU,mCAAmC,EAAE,GAAG,CAAC,CAAC;AAE5F;;;;;GAKG;AACH,8EAA8E;AAC9E,gFAAgF;AAChF,4EAA4E;AAC5E,yDAAyD;AACzD,MAAM,CAAC,MAAM,oBAAoB,GAAG;IAClC;QACE,2EAA2E;QAC3E,0EAA0E;QAC1E,EAAE,EAAE,iBAAiB;QACrB,KAAK,EAAE,QAAQ;QACf,aAAa,EAAE,4DAA4D;QAC3E,MAAM,EAAE,SAAS;QACjB,YAAY,EAAE,WAAW;KAC1B;IACD;QACE,EAAE,EAAE,aAAa;QACjB,KAAK,EAAE,QAAQ;QACf,aAAa,EAAE,0EAA0E;QACzF,MAAM,EAAE,SAAS;QACjB,YAAY,EAAE,WAAW;KAC1B;IACD;QACE,EAAE,EAAE,cAAc;QAClB,KAAK,EAAE,QAAQ;QACf,aAAa,EAAE,mEAAmE;QAClF,MAAM,EAAE,SAAS;QACjB,YAAY,EAAE,WAAW;KAC1B;IACD;QACE,2EAA2E;QAC3E,2EAA2E;QAC3E,0DAA0D;QAC1D,EAAE,EAAE,WAAW;QACf,KAAK,EAAE,QAAQ;QACf,aAAa,EAAE,4DAA4D;QAC3E,MAAM,EAAE,YAAY;QACpB,YAAY,EAAE,WAAW;KAC1B;IACD;QACE,wEAAwE;QACxE,4DAA4D;QAC5D,EAAE,EAAE,iBAAiB;QACrB,KAAK,EAAE,OAAO;QACd,aAAa,EAAE,8CAA8C;QAC7D,MAAM,EAAE,SAAS;QACjB,YAAY,EAAE,WAAW;KAC1B;IACD,+EAA+E;IAC/E,iFAAiF;IACjF;QACE,EAAE,EAAE,YAAY;QAChB,KAAK,EAAE,OAAO;QACd,aAAa,EAAE,oBAAoB;QACnC,0EAA0E;QAC1E,2EAA2E;QAC3E,MAAM,EAAE,gBAAgB;QACxB,YAAY,EAAE,QAAQ;KACvB;CAC4C,CAAC;AAEhD;;;;;;;;GAQG;AACH,MAAM,UAAU,kBAAkB,CAAC,MAAc,EAAE,IAAqB;IACtE,OAAO,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;AACzC,CAAC;AAED,kFAAkF;AAClF,MAAM,UAAU,wBAAwB,CAAC,KAAa,EAAE,IAAqB;IAC3E,OAAO,kBAAkB,CAAC,aAAa,CAAC,KAAK,CAAC,EAAE,IAAI,CAAC,CAAC;AACxD,CAAC;AAiBD,gGAAgG;AAChG,MAAM,UAAU,kBAAkB,CAChC,KAAsB,EACtB,SAAkB;IAElB,OAAO,oBAAoB,CAAC,MAAM;IAChC,8EAA8E;IAC9E,gFAAgF;IAChF,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,KAAK,KAAK,IAAI,IAAI,CAAC,YAAY,KAAK,QAAQ,IAAI,CAAC,SAAS,CAC/E,CAAC;AACJ,CAAC"}
@@ -0,0 +1,48 @@
1
+ /**
2
+ * Detects and answers the allowlisted family of adapter startup trust prompts.
3
+ * Implements PRD §5.1 and §9.1 (C-CLAUDE-10, C-CODEX-11, C-CLAUDE-14, C-CODEX-15).
4
+ *
5
+ * Policy (PRD §5.1): an agent must NEVER be left waiting on a trust gate.
6
+ * Under the caller's full-trust posture, when an allowlisted trust prompt is
7
+ * visible in the current frame, Elwood selects its affirmative option and sends
8
+ * it — always say yes. Elwood only auto-answers ALLOWLISTED prompts (an
9
+ * off-allowlist confirmation is left to the human), and never re-answers the same
10
+ * prompt; those are the only limits.
11
+ */
12
+ import type { ElwoodAgentKind } from "./activity.ts";
13
+ import { type TrustPromptIdFor } from "./trust-prompts.ts";
14
+ /** An answered trust prompt; `prompt` is narrowed to the responder's agent. */
15
+ export type TrustPromptAutomation<A extends ElwoodAgentKind = ElwoodAgentKind> = {
16
+ readonly prompt: TrustPromptIdFor<A>;
17
+ readonly input: string;
18
+ };
19
+ /**
20
+ * The completion of an answered trust write: a `void | Promise<void>` write is
21
+ * normalized to a promise that resolves on success and rejects once the prompt
22
+ * has been un-settled (kept retryable) on a rejected write.
23
+ */
24
+ export type TrustWriteResult = void | Promise<void>;
25
+ /**
26
+ * The outcome of handling a frame: an answered prompt, a recognized prompt whose
27
+ * affirmative option has not rendered yet (a TRANSIENT render delay — under the
28
+ * say-yes policy a later frame carrying the option is still answered, so this is
29
+ * never a terminal wedge), or nothing.
30
+ */
31
+ export type TrustPromptResult<A extends ElwoodAgentKind = ElwoodAgentKind> = {
32
+ readonly kind: "answered";
33
+ readonly automation: TrustPromptAutomation<A>;
34
+ readonly settled: Promise<void>;
35
+ } | {
36
+ readonly kind: "option_pending";
37
+ readonly prompt: TrustPromptIdFor<A>;
38
+ } | undefined;
39
+ export declare class TrustPromptResponder<A extends ElwoodAgentKind> {
40
+ private readonly autotrust;
41
+ private readonly specs;
42
+ private readonly settled;
43
+ private readonly reportedPending;
44
+ constructor(agent: A, autotrust?: boolean);
45
+ /** `frame` MUST be the CURRENT rendered screen, not an accumulated buffer. */
46
+ handle(frame: string, write: (input: string) => TrustWriteResult, readFrame?: () => string): TrustPromptResult<A>;
47
+ }
48
+ //# sourceMappingURL=trust-responder.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"trust-responder.d.ts","sourceRoot":"","sources":["../../src/core/trust-responder.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAQrD,OAAO,EACL,KAAK,gBAAgB,EAItB,MAAM,oBAAoB,CAAC;AAQ5B,+EAA+E;AAC/E,MAAM,MAAM,qBAAqB,CAAC,CAAC,SAAS,eAAe,GAAG,eAAe,IAAI;IAC/E,QAAQ,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAC,CAAC,CAAC;IACrC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;CACxB,CAAC;AAEF;;;;GAIG;AACH,MAAM,MAAM,gBAAgB,GAAG,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;AAEpD;;;;;GAKG;AACH,MAAM,MAAM,iBAAiB,CAAC,CAAC,SAAS,eAAe,GAAG,eAAe,IACrE;IACE,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAC;IAC1B,QAAQ,CAAC,UAAU,EAAE,qBAAqB,CAAC,CAAC,CAAC,CAAC;IAG9C,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;CACjC,GACD;IAAE,QAAQ,CAAC,IAAI,EAAE,gBAAgB,CAAC;IAAC,QAAQ,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAC,CAAC,CAAA;CAAE,GACzE,SAAS,CAAC;AAEd,qBAAa,oBAAoB,CAAC,CAAC,SAAS,eAAe;IAGzD,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAU;IACpC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAA8B;IACpD,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAkC;IAI1D,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAkC;gBAEtD,KAAK,EAAE,CAAC,EAAE,SAAS,UAAQ;IAKvC,8EAA8E;IAC9E,MAAM,CACJ,KAAK,EAAE,MAAM,EACb,KAAK,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,gBAAgB,EAC1C,SAAS,CAAC,EAAE,MAAM,MAAM,GACvB,iBAAiB,CAAC,CAAC,CAAC;CA0CxB"}
@@ -0,0 +1,119 @@
1
+ /**
2
+ * Detects and answers the allowlisted family of adapter startup trust prompts.
3
+ * Implements PRD §5.1 and §9.1 (C-CLAUDE-10, C-CODEX-11, C-CLAUDE-14, C-CODEX-15).
4
+ *
5
+ * Policy (PRD §5.1): an agent must NEVER be left waiting on a trust gate.
6
+ * Under the caller's full-trust posture, when an allowlisted trust prompt is
7
+ * visible in the current frame, Elwood selects its affirmative option and sends
8
+ * it — always say yes. Elwood only auto-answers ALLOWLISTED prompts (an
9
+ * off-allowlist confirmation is left to the human), and never re-answers the same
10
+ * prompt; those are the only limits.
11
+ */
12
+ import { delay } from "./delay.js";
13
+ import { nonOptionText, optionInput, optionKeystrokes, selectableOptions, } from "./terminal-options.js";
14
+ import { trustHeaderMatches, trustPromptAllowlist, trustPromptHeaderVisible, } from "./trust-prompts.js";
15
+ const cursorRetryMs = 250;
16
+ const cursorNavigationTimeoutMs = 5_000;
17
+ export class TrustPromptResponder {
18
+ // Whether the caller launched under full trust (`autotrust`). `answerPolicy:
19
+ // "always"` prompts (hook trust) are answered even when this is false.
20
+ autotrust;
21
+ specs;
22
+ settled = new Set();
23
+ // A prompt whose "option not rendered yet" state was reported once, kept
24
+ // SEPARATE from `settled` so a later frame with the real option can still be
25
+ // answered — the pending state is transient, not terminal.
26
+ reportedPending = new Set();
27
+ constructor(agent, autotrust = false) {
28
+ this.autotrust = autotrust;
29
+ this.specs = trustPromptAllowlist.filter((spec) => spec.agent === agent);
30
+ }
31
+ /** `frame` MUST be the CURRENT rendered screen, not an accumulated buffer. */
32
+ handle(frame, write, readFrame) {
33
+ const header = nonOptionText(frame);
34
+ for (const spec of this.specs) {
35
+ const id = spec.id;
36
+ // `answerPolicy: "always"` prompts (Elwood's own hook bridge) answer
37
+ // regardless of autotrust; every other trust prompt requires the caller's
38
+ // full-trust posture.
39
+ if (!(this.autotrust || spec.answerPolicy === "always"))
40
+ continue;
41
+ // Recognized when the prompt's HEADER wording appears on a NON-OPTION line
42
+ // (via the shared `trustHeaderMatches`), so a phrase living only inside an
43
+ // option label can't spoof a prompt. That is the ONLY guard — recognition
44
+ // means "say yes".
45
+ if (this.settled.has(id) || !trustHeaderMatches(header, spec))
46
+ continue;
47
+ const options = selectableOptions(frame);
48
+ const option = options.find((candidate) => spec.accept.test(candidate.label));
49
+ if (option === undefined) {
50
+ // Affirmative not rendered yet (partial frame). Report once, but DON'T
51
+ // settle — a later frame with the option can still be answered.
52
+ if (this.reportedPending.has(id))
53
+ continue;
54
+ this.reportedPending.add(id);
55
+ return { kind: "option_pending", prompt: id };
56
+ }
57
+ // Settle OPTIMISTICALLY so a second frame in the same tick does not re-answer,
58
+ // but keep the settle contingent on the write: if the write is rejected we
59
+ // un-settle here so a later frame re-attempts it, and the returned `settled`
60
+ // promise rejects so the caller emits a warning instead of a false "answered".
61
+ this.settled.add(id);
62
+ const input = optionInput(option);
63
+ const operation = option.style === "cursor"
64
+ ? readFrame === undefined
65
+ ? Promise.reject(new Error("Cursor trust navigation requires live screen reads."))
66
+ : navigateCursorOption(spec, input, write, readFrame)
67
+ : writeOptionKeys(optionKeystrokes(option), write);
68
+ const settled = operation.catch((error) => {
69
+ this.settled.delete(id);
70
+ throw error;
71
+ });
72
+ return { kind: "answered", automation: { prompt: id, input }, settled };
73
+ }
74
+ return undefined;
75
+ }
76
+ }
77
+ /** Writes one option's keys in order (numbered prompts and parser-only tests). */
78
+ async function writeOptionKeys(keys, write) {
79
+ for (const key of keys)
80
+ await write(key);
81
+ }
82
+ /** Navigates a cursor prompt one observed frame at a time, retrying swallowed startup input. */
83
+ async function navigateCursorOption(spec, originalInput, write, readFrame) {
84
+ const deadline = Date.now() + cursorNavigationTimeoutMs;
85
+ while (Date.now() < deadline) {
86
+ const before = readFrame();
87
+ if (!trustPromptHeaderVisible(before, spec)) {
88
+ throw new Error("Cursor trust prompt disappeared before confirmation.");
89
+ }
90
+ const target = selectableOptions(before).find((option) => spec.accept.test(option.label));
91
+ if (target?.style !== "cursor") {
92
+ await delay(cursorRetryMs);
93
+ continue;
94
+ }
95
+ const key = target.offset === 0 ? "\r" : target.offset < 0 ? "\u001b[A" : "\u001b[B";
96
+ await write(key);
97
+ const progress = await waitForCursorProgress(spec, target.offset, readFrame);
98
+ if (progress === "cleared")
99
+ return;
100
+ }
101
+ throw new Error(`Cursor trust navigation timed out (${originalInput}).`);
102
+ }
103
+ async function waitForCursorProgress(spec, priorOffset, readFrame) {
104
+ const deadline = Date.now() + cursorRetryMs;
105
+ while (Date.now() < deadline) {
106
+ await delay(20);
107
+ const frame = readFrame();
108
+ if (!trustPromptHeaderVisible(frame, spec)) {
109
+ if (priorOffset === 0)
110
+ return "cleared";
111
+ throw new Error("Cursor trust prompt disappeared before confirmation.");
112
+ }
113
+ const target = selectableOptions(frame).find((option) => spec.accept.test(option.label));
114
+ if (target?.style === "cursor" && target.offset !== priorOffset)
115
+ return "retry";
116
+ }
117
+ return "retry";
118
+ }
119
+ //# sourceMappingURL=trust-responder.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"trust-responder.js","sourceRoot":"","sources":["../../src/core/trust-responder.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAGH,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AACnC,OAAO,EACL,aAAa,EACb,WAAW,EACX,gBAAgB,EAChB,iBAAiB,GAClB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAEL,kBAAkB,EAClB,oBAAoB,EACpB,wBAAwB,GACzB,MAAM,oBAAoB,CAAC;AAK5B,MAAM,aAAa,GAAG,GAAG,CAAC;AAC1B,MAAM,yBAAyB,GAAG,KAAK,CAAC;AAgCxC,MAAM,OAAO,oBAAoB;IAC/B,6EAA6E;IAC7E,uEAAuE;IACtD,SAAS,CAAU;IACnB,KAAK,CAA8B;IACnC,OAAO,GAAG,IAAI,GAAG,EAAuB,CAAC;IAC1D,yEAAyE;IACzE,6EAA6E;IAC7E,2DAA2D;IAC1C,eAAe,GAAG,IAAI,GAAG,EAAuB,CAAC;IAElE,YAAY,KAAQ,EAAE,SAAS,GAAG,KAAK;QACrC,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC3B,IAAI,CAAC,KAAK,GAAG,oBAAoB,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,KAAK,KAAK,CAAC,CAAC;IAC3E,CAAC;IAED,8EAA8E;IAC9E,MAAM,CACJ,KAAa,EACb,KAA0C,EAC1C,SAAwB;QAExB,MAAM,MAAM,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;QACpC,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;YAC9B,MAAM,EAAE,GAAG,IAAI,CAAC,EAAyB,CAAC;YAC1C,qEAAqE;YACrE,0EAA0E;YAC1E,sBAAsB;YACtB,IAAI,CAAC,CAAC,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,YAAY,KAAK,QAAQ,CAAC;gBAAE,SAAS;YAClE,2EAA2E;YAC3E,2EAA2E;YAC3E,0EAA0E;YAC1E,mBAAmB;YACnB,IAAI,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,kBAAkB,CAAC,MAAM,EAAE,IAAI,CAAC;gBAAE,SAAS;YACxE,MAAM,OAAO,GAAG,iBAAiB,CAAC,KAAK,CAAC,CAAC;YACzC,MAAM,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC;YAC9E,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;gBACzB,uEAAuE;gBACvE,gEAAgE;gBAChE,IAAI,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,EAAE,CAAC;oBAAE,SAAS;gBAC3C,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;gBAC7B,OAAO,EAAE,IAAI,EAAE,gBAAgB,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC;YAChD,CAAC;YACD,+EAA+E;YAC/E,2EAA2E;YAC3E,6EAA6E;YAC7E,+EAA+E;YAC/E,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YACrB,MAAM,KAAK,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC;YAClC,MAAM,SAAS,GACb,MAAM,CAAC,KAAK,KAAK,QAAQ;gBACvB,CAAC,CAAC,SAAS,KAAK,SAAS;oBACvB,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,qDAAqD,CAAC,CAAC;oBAClF,CAAC,CAAC,oBAAoB,CAAC,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,SAAS,CAAC;gBACvD,CAAC,CAAC,eAAe,CAAC,gBAAgB,CAAC,MAAM,CAAC,EAAE,KAAK,CAAC,CAAC;YACvD,MAAM,OAAO,GAAG,SAAS,CAAC,KAAK,CAAC,CAAC,KAAc,EAAE,EAAE;gBACjD,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;gBACxB,MAAM,KAAK,CAAC;YACd,CAAC,CAAC,CAAC;YACH,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,UAAU,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,CAAC;QAC1E,CAAC;QACD,OAAO,SAAS,CAAC;IACnB,CAAC;CACF;AAED,kFAAkF;AAClF,KAAK,UAAU,eAAe,CAC5B,IAAuB,EACvB,KAA0C;IAE1C,KAAK,MAAM,GAAG,IAAI,IAAI;QAAE,MAAM,KAAK,CAAC,GAAG,CAAC,CAAC;AAC3C,CAAC;AAED,gGAAgG;AAChG,KAAK,UAAU,oBAAoB,CACjC,IAAsB,EACtB,aAAqB,EACrB,KAA0C,EAC1C,SAAuB;IAEvB,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,yBAAyB,CAAC;IACxD,OAAO,IAAI,CAAC,GAAG,EAAE,GAAG,QAAQ,EAAE,CAAC;QAC7B,MAAM,MAAM,GAAG,SAAS,EAAE,CAAC;QAC3B,IAAI,CAAC,wBAAwB,CAAC,MAAM,EAAE,IAAI,CAAC,EAAE,CAAC;YAC5C,MAAM,IAAI,KAAK,CAAC,sDAAsD,CAAC,CAAC;QAC1E,CAAC;QACD,MAAM,MAAM,GAAG,iBAAiB,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;QAC1F,IAAI,MAAM,EAAE,KAAK,KAAK,QAAQ,EAAE,CAAC;YAC/B,MAAM,KAAK,CAAC,aAAa,CAAC,CAAC;YAC3B,SAAS;QACX,CAAC;QACD,MAAM,GAAG,GAAG,MAAM,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,UAAU,CAAC;QACrF,MAAM,KAAK,CAAC,GAAG,CAAC,CAAC;QACjB,MAAM,QAAQ,GAAG,MAAM,qBAAqB,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;QAC7E,IAAI,QAAQ,KAAK,SAAS;YAAE,OAAO;IACrC,CAAC;IACD,MAAM,IAAI,KAAK,CAAC,sCAAsC,aAAa,IAAI,CAAC,CAAC;AAC3E,CAAC;AAED,KAAK,UAAU,qBAAqB,CAClC,IAAsB,EACtB,WAAmB,EACnB,SAAuB;IAEvB,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,aAAa,CAAC;IAC5C,OAAO,IAAI,CAAC,GAAG,EAAE,GAAG,QAAQ,EAAE,CAAC;QAC7B,MAAM,KAAK,CAAC,EAAE,CAAC,CAAC;QAChB,MAAM,KAAK,GAAG,SAAS,EAAE,CAAC;QAC1B,IAAI,CAAC,wBAAwB,CAAC,KAAK,EAAE,IAAI,CAAC,EAAE,CAAC;YAC3C,IAAI,WAAW,KAAK,CAAC;gBAAE,OAAO,SAAS,CAAC;YACxC,MAAM,IAAI,KAAK,CAAC,sDAAsD,CAAC,CAAC;QAC1E,CAAC;QACD,MAAM,MAAM,GAAG,iBAAiB,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;QACzF,IAAI,MAAM,EAAE,KAAK,KAAK,QAAQ,IAAI,MAAM,CAAC,MAAM,KAAK,WAAW;YAAE,OAAO,OAAO,CAAC;IAClF,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC"}
@@ -0,0 +1,21 @@
1
+ /**
2
+ * Screen-state polling primitives for TUI automation flows.
3
+ * Implements PRD §5.3 model picker automation.
4
+ */
5
+ export type ScreenTerminal = {
6
+ sendInput(data: string | Uint8Array): void | Promise<void>;
7
+ snapshot(): {
8
+ readonly text: string;
9
+ };
10
+ };
11
+ export declare const defaultModelTimeoutMs = 20000;
12
+ export declare function waitForScreen(terminal: ScreenTerminal, test: (text: string) => boolean, timeoutMs: number, label: string): Promise<string>;
13
+ export declare function openCommandScreen(input: {
14
+ readonly terminal: ScreenTerminal;
15
+ readonly submit: () => Promise<void>;
16
+ readonly isOpen: (text: string) => boolean;
17
+ readonly timeoutMs: number;
18
+ readonly label: string;
19
+ readonly nudgeDelayMs?: number;
20
+ }): Promise<string>;
21
+ //# sourceMappingURL=tui-screen.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tui-screen.d.ts","sourceRoot":"","sources":["../../src/core/tui-screen.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAKH,MAAM,MAAM,cAAc,GAAG;IAC3B,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,UAAU,GAAG,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC3D,QAAQ,IAAI;QAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC;CACvC,CAAC;AAEF,eAAO,MAAM,qBAAqB,QAAS,CAAC;AAI5C,wBAAsB,aAAa,CACjC,QAAQ,EAAE,cAAc,EACxB,IAAI,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,EAC/B,SAAS,EAAE,MAAM,EACjB,KAAK,EAAE,MAAM,GACZ,OAAO,CAAC,MAAM,CAAC,CAQjB;AAED,wBAAsB,iBAAiB,CAAC,KAAK,EAAE;IAC7C,QAAQ,CAAC,QAAQ,EAAE,cAAc,CAAC;IAClC,QAAQ,CAAC,MAAM,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IACrC,QAAQ,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC;IAC3C,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,CAAC;CAChC,GAAG,OAAO,CAAC,MAAM,CAAC,CAiClB"}
@@ -0,0 +1,56 @@
1
+ /**
2
+ * Screen-state polling primitives for TUI automation flows.
3
+ * Implements PRD §5.3 model picker automation.
4
+ */
5
+ import { delay } from "./delay.js";
6
+ import { elwoodError } from "./errors.js";
7
+ export const defaultModelTimeoutMs = 20_000;
8
+ const pollMs = 100;
9
+ const openNudgeDelayMs = 2_000;
10
+ export async function waitForScreen(terminal, test, timeoutMs, label) {
11
+ const started = Date.now();
12
+ while (Date.now() - started < timeoutMs) {
13
+ const text = terminal.snapshot().text;
14
+ if (test(text))
15
+ return text;
16
+ await delay(pollMs);
17
+ }
18
+ throw elwoodError("model_automation_failed", `Timed out waiting for ${label}.`);
19
+ }
20
+ export async function openCommandScreen(input) {
21
+ await input.submit();
22
+ // The command text or its Enter can be dropped when the TUI is redrawing
23
+ // (e.g. an MCP-server boot streaming into the composer at startup). A bare
24
+ // Enter nudge cannot recover a lost command line, so re-submit the whole
25
+ // command on each nudge interval until the picker opens or the timeout
26
+ // fires. Re-typing an idempotent slash command on an empty composer, and a
27
+ // surplus Enter, are both no-ops once the picker is already open.
28
+ const nudgeDelayMs = input.nudgeDelayMs ?? openNudgeDelayMs;
29
+ let resubmitting = false;
30
+ let nudgeTimer;
31
+ // A re-submit that rejects (e.g. the session closed while polling) must
32
+ // settle this call with that error immediately, not be dropped as an
33
+ // unhandled rejection while the caller waits out the picker timeout.
34
+ const submitFailed = new Promise((_resolve, reject) => {
35
+ nudgeTimer = setInterval(() => {
36
+ if (resubmitting || input.isOpen(input.terminal.snapshot().text))
37
+ return;
38
+ resubmitting = true;
39
+ // A rejected re-submit (e.g. the session closed while polling) is
40
+ // propagated unchanged so the caller settles with the real error.
41
+ input.submit().then(() => {
42
+ resubmitting = false;
43
+ }, reject);
44
+ }, nudgeDelayMs);
45
+ });
46
+ try {
47
+ return await Promise.race([
48
+ waitForScreen(input.terminal, input.isOpen, input.timeoutMs, input.label),
49
+ submitFailed,
50
+ ]);
51
+ }
52
+ finally {
53
+ clearInterval(nudgeTimer);
54
+ }
55
+ }
56
+ //# sourceMappingURL=tui-screen.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tui-screen.js","sourceRoot":"","sources":["../../src/core/tui-screen.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AACnC,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAO1C,MAAM,CAAC,MAAM,qBAAqB,GAAG,MAAM,CAAC;AAC5C,MAAM,MAAM,GAAG,GAAG,CAAC;AACnB,MAAM,gBAAgB,GAAG,KAAK,CAAC;AAE/B,MAAM,CAAC,KAAK,UAAU,aAAa,CACjC,QAAwB,EACxB,IAA+B,EAC/B,SAAiB,EACjB,KAAa;IAEb,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IAC3B,OAAO,IAAI,CAAC,GAAG,EAAE,GAAG,OAAO,GAAG,SAAS,EAAE,CAAC;QACxC,MAAM,IAAI,GAAG,QAAQ,CAAC,QAAQ,EAAE,CAAC,IAAI,CAAC;QACtC,IAAI,IAAI,CAAC,IAAI,CAAC;YAAE,OAAO,IAAI,CAAC;QAC5B,MAAM,KAAK,CAAC,MAAM,CAAC,CAAC;IACtB,CAAC;IACD,MAAM,WAAW,CAAC,yBAAyB,EAAE,yBAAyB,KAAK,GAAG,CAAC,CAAC;AAClF,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,iBAAiB,CAAC,KAOvC;IACC,MAAM,KAAK,CAAC,MAAM,EAAE,CAAC;IACrB,yEAAyE;IACzE,2EAA2E;IAC3E,yEAAyE;IACzE,uEAAuE;IACvE,2EAA2E;IAC3E,kEAAkE;IAClE,MAAM,YAAY,GAAG,KAAK,CAAC,YAAY,IAAI,gBAAgB,CAAC;IAC5D,IAAI,YAAY,GAAG,KAAK,CAAC;IACzB,IAAI,UAAsD,CAAC;IAC3D,wEAAwE;IACxE,qEAAqE;IACrE,qEAAqE;IACrE,MAAM,YAAY,GAAG,IAAI,OAAO,CAAQ,CAAC,QAAQ,EAAE,MAAM,EAAE,EAAE;QAC3D,UAAU,GAAG,WAAW,CAAC,GAAG,EAAE;YAC5B,IAAI,YAAY,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC,IAAI,CAAC;gBAAE,OAAO;YACzE,YAAY,GAAG,IAAI,CAAC;YACpB,kEAAkE;YAClE,kEAAkE;YAClE,KAAK,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE;gBACvB,YAAY,GAAG,KAAK,CAAC;YACvB,CAAC,EAAE,MAAM,CAAC,CAAC;QACb,CAAC,EAAE,YAAY,CAAC,CAAC;IACnB,CAAC,CAAC,CAAC;IACH,IAAI,CAAC;QACH,OAAO,MAAM,OAAO,CAAC,IAAI,CAAC;YACxB,aAAa,CAAC,KAAK,CAAC,QAAQ,EAAE,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,SAAS,EAAE,KAAK,CAAC,KAAK,CAAC;YACzE,YAAY;SACb,CAAC,CAAC;IACL,CAAC;YAAS,CAAC;QACT,aAAa,CAAC,UAAU,CAAC,CAAC;IAC5B,CAAC;AACH,CAAC"}
@@ -0,0 +1,41 @@
1
+ /**
2
+ * Rendered-TUI turn-state watching driven by adapter screen-fact tables for
3
+ * hook-independent turn boundaries. Frames carry both the viewport text and
4
+ * the OSC window title, so a width-independent title spinner can reveal a
5
+ * turn the elided footer hides.
6
+ * Implements PRD §5.3 and C-TURN-01 through C-TURN-05.
7
+ */
8
+ import type { ScreenFacts } from "./screen-facts.ts";
9
+ export type TurnEdge = "started" | "ended";
10
+ export declare class TurnStateWatcher {
11
+ private running;
12
+ private bannerSeen;
13
+ private armed;
14
+ private replaySettling;
15
+ private quietStreak;
16
+ /**
17
+ * Watching starts only after initial readiness so startup spinners that borrow the
18
+ * same wording (Codex MCP boot) cannot fabricate turns.
19
+ *
20
+ * On RESUME (C-API-28's composer-marked readiness) the CLI marks ready on its FIRST
21
+ * composer frame, but the transcript replay that follows repaints prior turns —
22
+ * including footer lines the fact tables read as `working_visible`. Those flashes are
23
+ * history, not work: emitting a started/ended pair for them fabricates a phantom turn
24
+ * on EVERY resume (observed as one false unread per resumed conversation downstream).
25
+ * So `arm(true)` enters a settling state that swallows rendered turn edges until the
26
+ * first QUIET composer frame (composer visible, no working marker) — the replay has
27
+ * finished painting and the screen is genuinely idle; detection then behaves exactly
28
+ * like a cold start's post-ready watcher. Evidence-based turns (`caller_submitted`,
29
+ * hooks) are unaffected throughout.
30
+ */
31
+ arm(resumed?: boolean): void;
32
+ /** Consumes facts already classified from the frame (see observeRenderedFrame).
33
+ * `evidenceRunning` — the session is running from EVIDENCE (a caller
34
+ * submission or hook), not from rendered detection — also releases
35
+ * settling: a real turn began, so the replay is over by definition, and
36
+ * holding settling through it would swallow that turn's rendered end-edge
37
+ * (a message drained at resume-readiness can start its spinner before any
38
+ * quiet composer frame ever paints). */
39
+ observe(facts: ScreenFacts, evidenceRunning?: boolean): TurnEdge | undefined;
40
+ }
41
+ //# sourceMappingURL=turn-state.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"turn-state.d.ts","sourceRoot":"","sources":["../../src/core/turn-state.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAErD,MAAM,MAAM,QAAQ,GAAG,SAAS,GAAG,OAAO,CAAC;AAU3C,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,UAAU,CAAS;IAC3B,OAAO,CAAC,KAAK,CAAS;IACtB,OAAO,CAAC,cAAc,CAAS;IAO/B,OAAO,CAAC,WAAW,CAAK;IAExB;;;;;;;;;;;;;;OAcG;IACH,GAAG,CAAC,OAAO,UAAQ,GAAG,IAAI;IAM1B;;;;;;4CAMwC;IACxC,OAAO,CAAC,KAAK,EAAE,WAAW,EAAE,eAAe,UAAQ,GAAG,QAAQ,GAAG,SAAS;CAqD3E"}
@@ -0,0 +1,109 @@
1
+ /**
2
+ * Rendered-TUI turn-state watching driven by adapter screen-fact tables for
3
+ * hook-independent turn boundaries. Frames carry both the viewport text and
4
+ * the OSC window title, so a width-independent title spinner can reveal a
5
+ * turn the elided footer hides.
6
+ * Implements PRD §5.3 and C-TURN-01 through C-TURN-05.
7
+ */
8
+ // Consecutive quiet, non-blocking composer frames required to declare the resume
9
+ // transcript replay finished. The replay repaints working footers in bursts with
10
+ // brief (1-frame) quiet gaps between them; requiring several quiet frames in a row
11
+ // clears those gaps before detection resumes, so a post-replay burst can't fire a
12
+ // phantom turn. A real post-resume turn is EVIDENCE-driven and bypasses settling, so
13
+ // this only delays RENDERED detection by a few poll frames (C-TURN-03).
14
+ const quietFramesToSettle = 5;
15
+ export class TurnStateWatcher {
16
+ running = false;
17
+ bannerSeen = false;
18
+ armed = false;
19
+ replaySettling = false;
20
+ // Consecutive quiet, non-blocking composer frames seen while settling. The resume
21
+ // transcript replay repaints working-token footers in BURSTS with brief quiet gaps
22
+ // between them, so a SINGLE quiet composer frame is not proof the replay finished —
23
+ // releasing on it lets a later burst fire a phantom `started`. Require the composer
24
+ // to stay quiet for `quietFramesToSettle` consecutive frames; any working/blocking
25
+ // frame resets the run to 0 (C-TURN-03, real-Codex resume).
26
+ quietStreak = 0;
27
+ /**
28
+ * Watching starts only after initial readiness so startup spinners that borrow the
29
+ * same wording (Codex MCP boot) cannot fabricate turns.
30
+ *
31
+ * On RESUME (C-API-28's composer-marked readiness) the CLI marks ready on its FIRST
32
+ * composer frame, but the transcript replay that follows repaints prior turns —
33
+ * including footer lines the fact tables read as `working_visible`. Those flashes are
34
+ * history, not work: emitting a started/ended pair for them fabricates a phantom turn
35
+ * on EVERY resume (observed as one false unread per resumed conversation downstream).
36
+ * So `arm(true)` enters a settling state that swallows rendered turn edges until the
37
+ * first QUIET composer frame (composer visible, no working marker) — the replay has
38
+ * finished painting and the screen is genuinely idle; detection then behaves exactly
39
+ * like a cold start's post-ready watcher. Evidence-based turns (`caller_submitted`,
40
+ * hooks) are unaffected throughout.
41
+ */
42
+ arm(resumed = false) {
43
+ this.armed = true;
44
+ this.replaySettling = resumed;
45
+ this.quietStreak = 0;
46
+ }
47
+ /** Consumes facts already classified from the frame (see observeRenderedFrame).
48
+ * `evidenceRunning` — the session is running from EVIDENCE (a caller
49
+ * submission or hook), not from rendered detection — also releases
50
+ * settling: a real turn began, so the replay is over by definition, and
51
+ * holding settling through it would swallow that turn's rendered end-edge
52
+ * (a message drained at resume-readiness can start its spinner before any
53
+ * quiet composer frame ever paints). */
54
+ observe(facts, evidenceRunning = false) {
55
+ if (!this.armed)
56
+ return undefined;
57
+ if (this.replaySettling) {
58
+ if (evidenceRunning) {
59
+ // A real turn is ALREADY running from evidence — release settling and
60
+ // synchronize only to CURRENT rendered work. The stale resume composer
61
+ // can remain painted briefly after caller submission, so it is not an end
62
+ // edge until a working frame has established this turn. An interrupt
63
+ // banner remains a valid immediate end below even without a spinner.
64
+ this.replaySettling = false;
65
+ this.running = facts.working_visible || facts.interrupt_complete_visible;
66
+ }
67
+ else {
68
+ // Without evidence, settling releases only after the composer stays QUIET and
69
+ // non-blocking for `quietFramesToSettle` consecutive frames — one quiet frame
70
+ // is not enough because the replay repaints working footers in bursts with
71
+ // brief quiet gaps, and releasing on a lone quiet frame lets the next burst
72
+ // fire a phantom `started`. A blocking dialog's option caret is byte-identical
73
+ // to the composer marker, so a blocking frame is NOT quiet and resets the run
74
+ // (matches the end-edge gate, so queued sends never drain into a dialog).
75
+ const quiet = facts.composer_visible && !facts.working_visible && !facts.blocking_prompt_visible;
76
+ this.quietStreak = quiet ? this.quietStreak + 1 : 0;
77
+ if (this.quietStreak >= quietFramesToSettle)
78
+ this.replaySettling = false;
79
+ return undefined;
80
+ }
81
+ }
82
+ if (!this.running && facts.working_visible) {
83
+ this.running = true;
84
+ return "started";
85
+ }
86
+ // The end banner fires the ended edge at any width — including narrow
87
+ // screens where the elided footer means "started" was never observed.
88
+ if (facts.interrupt_complete_visible && !this.bannerSeen) {
89
+ this.bannerSeen = true;
90
+ this.running = false;
91
+ return "ended";
92
+ }
93
+ if (!facts.interrupt_complete_visible)
94
+ this.bannerSeen = false;
95
+ // A screen with neither the working token nor the composer holds state.
96
+ // A blocking dialog also holds it: Claude's permission dialog renders a
97
+ // "❯ 1. Yes" caret that would otherwise read as the idle composer, and a
98
+ // false ready here would drain queued sends into the dialog.
99
+ if (this.running &&
100
+ !facts.working_visible &&
101
+ facts.composer_visible &&
102
+ !facts.blocking_prompt_visible) {
103
+ this.running = false;
104
+ return "ended";
105
+ }
106
+ return undefined;
107
+ }
108
+ }
109
+ //# sourceMappingURL=turn-state.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"turn-state.js","sourceRoot":"","sources":["../../src/core/turn-state.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAMH,iFAAiF;AACjF,iFAAiF;AACjF,mFAAmF;AACnF,kFAAkF;AAClF,qFAAqF;AACrF,wEAAwE;AACxE,MAAM,mBAAmB,GAAG,CAAC,CAAC;AAE9B,MAAM,OAAO,gBAAgB;IACnB,OAAO,GAAG,KAAK,CAAC;IAChB,UAAU,GAAG,KAAK,CAAC;IACnB,KAAK,GAAG,KAAK,CAAC;IACd,cAAc,GAAG,KAAK,CAAC;IAC/B,kFAAkF;IAClF,mFAAmF;IACnF,oFAAoF;IACpF,oFAAoF;IACpF,mFAAmF;IACnF,4DAA4D;IACpD,WAAW,GAAG,CAAC,CAAC;IAExB;;;;;;;;;;;;;;OAcG;IACH,GAAG,CAAC,OAAO,GAAG,KAAK;QACjB,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;QAClB,IAAI,CAAC,cAAc,GAAG,OAAO,CAAC;QAC9B,IAAI,CAAC,WAAW,GAAG,CAAC,CAAC;IACvB,CAAC;IAED;;;;;;4CAMwC;IACxC,OAAO,CAAC,KAAkB,EAAE,eAAe,GAAG,KAAK;QACjD,IAAI,CAAC,IAAI,CAAC,KAAK;YAAE,OAAO,SAAS,CAAC;QAClC,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;YACxB,IAAI,eAAe,EAAE,CAAC;gBACpB,sEAAsE;gBACtE,uEAAuE;gBACvE,0EAA0E;gBAC1E,qEAAqE;gBACrE,qEAAqE;gBACrE,IAAI,CAAC,cAAc,GAAG,KAAK,CAAC;gBAC5B,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC,eAAe,IAAI,KAAK,CAAC,0BAA0B,CAAC;YAC3E,CAAC;iBAAM,CAAC;gBACN,8EAA8E;gBAC9E,8EAA8E;gBAC9E,2EAA2E;gBAC3E,4EAA4E;gBAC5E,+EAA+E;gBAC/E,8EAA8E;gBAC9E,0EAA0E;gBAC1E,MAAM,KAAK,GACT,KAAK,CAAC,gBAAgB,IAAI,CAAC,KAAK,CAAC,eAAe,IAAI,CAAC,KAAK,CAAC,uBAAuB,CAAC;gBACrF,IAAI,CAAC,WAAW,GAAG,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;gBACpD,IAAI,IAAI,CAAC,WAAW,IAAI,mBAAmB;oBAAE,IAAI,CAAC,cAAc,GAAG,KAAK,CAAC;gBACzE,OAAO,SAAS,CAAC;YACnB,CAAC;QACH,CAAC;QACD,IAAI,CAAC,IAAI,CAAC,OAAO,IAAI,KAAK,CAAC,eAAe,EAAE,CAAC;YAC3C,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;YACpB,OAAO,SAAS,CAAC;QACnB,CAAC;QACD,sEAAsE;QACtE,sEAAsE;QACtE,IAAI,KAAK,CAAC,0BAA0B,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC;YACzD,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;YACvB,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;YACrB,OAAO,OAAO,CAAC;QACjB,CAAC;QACD,IAAI,CAAC,KAAK,CAAC,0BAA0B;YAAE,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;QAC/D,wEAAwE;QACxE,wEAAwE;QACxE,yEAAyE;QACzE,6DAA6D;QAC7D,IACE,IAAI,CAAC,OAAO;YACZ,CAAC,KAAK,CAAC,eAAe;YACtB,KAAK,CAAC,gBAAgB;YACtB,CAAC,KAAK,CAAC,uBAAuB,EAC9B,CAAC;YACD,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;YACrB,OAAO,OAAO,CAAC;QACjB,CAAC;QACD,OAAO,SAAS,CAAC;IACnB,CAAC;CACF"}