@deepseek-harness-tui/dsh-tui 0.12.0 → 0.14.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 (1542) hide show
  1. package/README.md +124 -8
  2. package/assets/claude-girl/claude-girl-happy.png +0 -0
  3. package/assets/claude-girl/claude-girl.png +0 -0
  4. package/assets/codex-girl/codex-girl-happy.png +0 -0
  5. package/assets/codex-girl/codex-girl.png +0 -0
  6. package/assets/deepy/README.md +60 -0
  7. package/assets/deepy/frames.json +1 -0
  8. package/assets/whale-girl/whale-girl-happy.png +0 -0
  9. package/assets/whaleGirl/README.md +7 -0
  10. package/assets/whaleGirl/frames.json +1 -0
  11. package/assets/whaleGirl/img/building/00.png +0 -0
  12. package/assets/whaleGirl/img/building/01.png +0 -0
  13. package/assets/whaleGirl/img/building/02.png +0 -0
  14. package/assets/whaleGirl/img/building/03.png +0 -0
  15. package/assets/whaleGirl/img/building/04.png +0 -0
  16. package/assets/whaleGirl/img/building/05.png +0 -0
  17. package/assets/whaleGirl/img/building/06.png +0 -0
  18. package/assets/whaleGirl/img/building/07.png +0 -0
  19. package/assets/whaleGirl/img/building/08.png +0 -0
  20. package/assets/whaleGirl/img/building/09.png +0 -0
  21. package/assets/whaleGirl/img/building/10.png +0 -0
  22. package/assets/whaleGirl/img/building/11.png +0 -0
  23. package/assets/whaleGirl/img/building/12.png +0 -0
  24. package/assets/whaleGirl/img/building/13.png +0 -0
  25. package/assets/whaleGirl/img/building/14.png +0 -0
  26. package/assets/whaleGirl/img/building/15.png +0 -0
  27. package/assets/whaleGirl/img/building/16.png +0 -0
  28. package/assets/whaleGirl/img/building/17.png +0 -0
  29. package/assets/whaleGirl/img/building/18.png +0 -0
  30. package/assets/whaleGirl/img/building/19.png +0 -0
  31. package/assets/whaleGirl/img/building/20.png +0 -0
  32. package/assets/whaleGirl/img/building/21.png +0 -0
  33. package/assets/whaleGirl/img/building/22.png +0 -0
  34. package/assets/whaleGirl/img/building/23.png +0 -0
  35. package/assets/whaleGirl/img/carrying/00.png +0 -0
  36. package/assets/whaleGirl/img/carrying/01.png +0 -0
  37. package/assets/whaleGirl/img/carrying/02.png +0 -0
  38. package/assets/whaleGirl/img/carrying/03.png +0 -0
  39. package/assets/whaleGirl/img/carrying/04.png +0 -0
  40. package/assets/whaleGirl/img/carrying/05.png +0 -0
  41. package/assets/whaleGirl/img/carrying/06.png +0 -0
  42. package/assets/whaleGirl/img/carrying/07.png +0 -0
  43. package/assets/whaleGirl/img/compacting/00.png +0 -0
  44. package/assets/whaleGirl/img/compacting/01.png +0 -0
  45. package/assets/whaleGirl/img/compacting/02.png +0 -0
  46. package/assets/whaleGirl/img/compacting/03.png +0 -0
  47. package/assets/whaleGirl/img/compacting/04.png +0 -0
  48. package/assets/whaleGirl/img/compacting/05.png +0 -0
  49. package/assets/whaleGirl/img/compacting/06.png +0 -0
  50. package/assets/whaleGirl/img/compacting/07.png +0 -0
  51. package/assets/whaleGirl/img/compacting/08.png +0 -0
  52. package/assets/whaleGirl/img/compacting/09.png +0 -0
  53. package/assets/whaleGirl/img/conducting/00.png +0 -0
  54. package/assets/whaleGirl/img/conducting/01.png +0 -0
  55. package/assets/whaleGirl/img/conducting/02.png +0 -0
  56. package/assets/whaleGirl/img/conducting/03.png +0 -0
  57. package/assets/whaleGirl/img/conducting/04.png +0 -0
  58. package/assets/whaleGirl/img/conducting/05.png +0 -0
  59. package/assets/whaleGirl/img/conducting/06.png +0 -0
  60. package/assets/whaleGirl/img/conducting/07.png +0 -0
  61. package/assets/whaleGirl/img/conducting/08.png +0 -0
  62. package/assets/whaleGirl/img/conducting/09.png +0 -0
  63. package/assets/whaleGirl/img/conducting/10.png +0 -0
  64. package/assets/whaleGirl/img/conducting/11.png +0 -0
  65. package/assets/whaleGirl/img/drag/00.png +0 -0
  66. package/assets/whaleGirl/img/drag/01.png +0 -0
  67. package/assets/whaleGirl/img/drag/02.png +0 -0
  68. package/assets/whaleGirl/img/drag/03.png +0 -0
  69. package/assets/whaleGirl/img/drag/04.png +0 -0
  70. package/assets/whaleGirl/img/drag/05.png +0 -0
  71. package/assets/whaleGirl/img/drag/06.png +0 -0
  72. package/assets/whaleGirl/img/drag/07.png +0 -0
  73. package/assets/whaleGirl/img/drag/08.png +0 -0
  74. package/assets/whaleGirl/img/drag/09.png +0 -0
  75. package/assets/whaleGirl/img/error/00.png +0 -0
  76. package/assets/whaleGirl/img/error/01.png +0 -0
  77. package/assets/whaleGirl/img/error/02.png +0 -0
  78. package/assets/whaleGirl/img/error/03.png +0 -0
  79. package/assets/whaleGirl/img/error/04.png +0 -0
  80. package/assets/whaleGirl/img/error/05.png +0 -0
  81. package/assets/whaleGirl/img/error/06.png +0 -0
  82. package/assets/whaleGirl/img/error/07.png +0 -0
  83. package/assets/whaleGirl/img/error/08.png +0 -0
  84. package/assets/whaleGirl/img/error/09.png +0 -0
  85. package/assets/whaleGirl/img/happy/00.png +0 -0
  86. package/assets/whaleGirl/img/happy/01.png +0 -0
  87. package/assets/whaleGirl/img/happy/02.png +0 -0
  88. package/assets/whaleGirl/img/happy/03.png +0 -0
  89. package/assets/whaleGirl/img/happy/04.png +0 -0
  90. package/assets/whaleGirl/img/happy/05.png +0 -0
  91. package/assets/whaleGirl/img/happy/06.png +0 -0
  92. package/assets/whaleGirl/img/happy/07.png +0 -0
  93. package/assets/whaleGirl/img/happy/08.png +0 -0
  94. package/assets/whaleGirl/img/happy/09.png +0 -0
  95. package/assets/whaleGirl/img/happy/10.png +0 -0
  96. package/assets/whaleGirl/img/idle/00.png +0 -0
  97. package/assets/whaleGirl/img/idle/01.png +0 -0
  98. package/assets/whaleGirl/img/idle/02.png +0 -0
  99. package/assets/whaleGirl/img/idle/03.png +0 -0
  100. package/assets/whaleGirl/img/idle/04.png +0 -0
  101. package/assets/whaleGirl/img/idle/05.png +0 -0
  102. package/assets/whaleGirl/img/idle/06.png +0 -0
  103. package/assets/whaleGirl/img/idle/07.png +0 -0
  104. package/assets/whaleGirl/img/idle/08.png +0 -0
  105. package/assets/whaleGirl/img/idle/09.png +0 -0
  106. package/assets/whaleGirl/img/idle/10.png +0 -0
  107. package/assets/whaleGirl/img/idle/11.png +0 -0
  108. package/assets/whaleGirl/img/idle/12.png +0 -0
  109. package/assets/whaleGirl/img/idle/13.png +0 -0
  110. package/assets/whaleGirl/img/idle/14.png +0 -0
  111. package/assets/whaleGirl/img/idle/15.png +0 -0
  112. package/assets/whaleGirl/img/idle/16.png +0 -0
  113. package/assets/whaleGirl/img/idle/17.png +0 -0
  114. package/assets/whaleGirl/img/idle/18.png +0 -0
  115. package/assets/whaleGirl/img/idle/19.png +0 -0
  116. package/assets/whaleGirl/img/idle/20.png +0 -0
  117. package/assets/whaleGirl/img/idle-look/00.png +0 -0
  118. package/assets/whaleGirl/img/idle-look/01.png +0 -0
  119. package/assets/whaleGirl/img/idle-look/02.png +0 -0
  120. package/assets/whaleGirl/img/idle-look/03.png +0 -0
  121. package/assets/whaleGirl/img/idle-look/04.png +0 -0
  122. package/assets/whaleGirl/img/idle-look/05.png +0 -0
  123. package/assets/whaleGirl/img/idle-look/06.png +0 -0
  124. package/assets/whaleGirl/img/idle-look/07.png +0 -0
  125. package/assets/whaleGirl/img/idle-look/08.png +0 -0
  126. package/assets/whaleGirl/img/idle-look/09.png +0 -0
  127. package/assets/whaleGirl/img/idle-look/10.png +0 -0
  128. package/assets/whaleGirl/img/idle-look/11.png +0 -0
  129. package/assets/whaleGirl/img/idle-look/12.png +0 -0
  130. package/assets/whaleGirl/img/idle-spout/00.png +0 -0
  131. package/assets/whaleGirl/img/idle-spout/01.png +0 -0
  132. package/assets/whaleGirl/img/idle-spout/02.png +0 -0
  133. package/assets/whaleGirl/img/idle-spout/03.png +0 -0
  134. package/assets/whaleGirl/img/idle-spout/04.png +0 -0
  135. package/assets/whaleGirl/img/idle-spout/05.png +0 -0
  136. package/assets/whaleGirl/img/idle-spout/06.png +0 -0
  137. package/assets/whaleGirl/img/idle-spout/07.png +0 -0
  138. package/assets/whaleGirl/img/idle-spout/08.png +0 -0
  139. package/assets/whaleGirl/img/idle-spout/09.png +0 -0
  140. package/assets/whaleGirl/img/idle-spout/10.png +0 -0
  141. package/assets/whaleGirl/img/music/00.png +0 -0
  142. package/assets/whaleGirl/img/music/01.png +0 -0
  143. package/assets/whaleGirl/img/music/02.png +0 -0
  144. package/assets/whaleGirl/img/music/03.png +0 -0
  145. package/assets/whaleGirl/img/music/04.png +0 -0
  146. package/assets/whaleGirl/img/music/05.png +0 -0
  147. package/assets/whaleGirl/img/music/06.png +0 -0
  148. package/assets/whaleGirl/img/music/07.png +0 -0
  149. package/assets/whaleGirl/img/notification/00.png +0 -0
  150. package/assets/whaleGirl/img/notification/01.png +0 -0
  151. package/assets/whaleGirl/img/notification/02.png +0 -0
  152. package/assets/whaleGirl/img/notification/03.png +0 -0
  153. package/assets/whaleGirl/img/notification/04.png +0 -0
  154. package/assets/whaleGirl/img/notification/05.png +0 -0
  155. package/assets/whaleGirl/img/notification/06.png +0 -0
  156. package/assets/whaleGirl/img/notification/07.png +0 -0
  157. package/assets/whaleGirl/img/poke-left/00.png +0 -0
  158. package/assets/whaleGirl/img/poke-left/01.png +0 -0
  159. package/assets/whaleGirl/img/poke-left/02.png +0 -0
  160. package/assets/whaleGirl/img/poke-left/03.png +0 -0
  161. package/assets/whaleGirl/img/poke-left/04.png +0 -0
  162. package/assets/whaleGirl/img/poke-left/05.png +0 -0
  163. package/assets/whaleGirl/img/poke-left/06.png +0 -0
  164. package/assets/whaleGirl/img/poke-left/07.png +0 -0
  165. package/assets/whaleGirl/img/poke-left/08.png +0 -0
  166. package/assets/whaleGirl/img/poke-left/09.png +0 -0
  167. package/assets/whaleGirl/img/poke-left/10.png +0 -0
  168. package/assets/whaleGirl/img/poke-right/00.png +0 -0
  169. package/assets/whaleGirl/img/poke-right/01.png +0 -0
  170. package/assets/whaleGirl/img/poke-right/02.png +0 -0
  171. package/assets/whaleGirl/img/poke-right/03.png +0 -0
  172. package/assets/whaleGirl/img/poke-right/04.png +0 -0
  173. package/assets/whaleGirl/img/poke-right/05.png +0 -0
  174. package/assets/whaleGirl/img/poke-right/06.png +0 -0
  175. package/assets/whaleGirl/img/poke-right/07.png +0 -0
  176. package/assets/whaleGirl/img/poke-right/08.png +0 -0
  177. package/assets/whaleGirl/img/poke-right/09.png +0 -0
  178. package/assets/whaleGirl/img/poke-right/10.png +0 -0
  179. package/assets/whaleGirl/img/sleeping/00.png +0 -0
  180. package/assets/whaleGirl/img/sleeping/01.png +0 -0
  181. package/assets/whaleGirl/img/sleeping/02.png +0 -0
  182. package/assets/whaleGirl/img/sleeping/03.png +0 -0
  183. package/assets/whaleGirl/img/sleeping/04.png +0 -0
  184. package/assets/whaleGirl/img/sleeping/05.png +0 -0
  185. package/assets/whaleGirl/img/smile-hearts/00.png +0 -0
  186. package/assets/whaleGirl/img/smile-hearts/01.png +0 -0
  187. package/assets/whaleGirl/img/smile-hearts/02.png +0 -0
  188. package/assets/whaleGirl/img/smile-hearts/03.png +0 -0
  189. package/assets/whaleGirl/img/smile-hearts/04.png +0 -0
  190. package/assets/whaleGirl/img/smile-hearts/05.png +0 -0
  191. package/assets/whaleGirl/img/smile-hearts/06.png +0 -0
  192. package/assets/whaleGirl/img/smile-hearts/07.png +0 -0
  193. package/assets/whaleGirl/img/smile-hearts/08.png +0 -0
  194. package/assets/whaleGirl/img/smile-hearts/09.png +0 -0
  195. package/assets/whaleGirl/img/smile-hearts/10.png +0 -0
  196. package/assets/whaleGirl/img/smile-hearts/11.png +0 -0
  197. package/assets/whaleGirl/img/smile-hearts/12.png +0 -0
  198. package/assets/whaleGirl/img/smile-hearts/13.png +0 -0
  199. package/assets/whaleGirl/img/smile-hearts/14.png +0 -0
  200. package/assets/whaleGirl/img/smile-hearts/15.png +0 -0
  201. package/assets/whaleGirl/img/swim/00.png +0 -0
  202. package/assets/whaleGirl/img/swim/01.png +0 -0
  203. package/assets/whaleGirl/img/swim/02.png +0 -0
  204. package/assets/whaleGirl/img/swim/03.png +0 -0
  205. package/assets/whaleGirl/img/swim/04.png +0 -0
  206. package/assets/whaleGirl/img/swim/05.png +0 -0
  207. package/assets/whaleGirl/img/swim/06.png +0 -0
  208. package/assets/whaleGirl/img/swim/07.png +0 -0
  209. package/assets/whaleGirl/img/thinking/00.png +0 -0
  210. package/assets/whaleGirl/img/thinking/01.png +0 -0
  211. package/assets/whaleGirl/img/thinking/02.png +0 -0
  212. package/assets/whaleGirl/img/thinking/03.png +0 -0
  213. package/assets/whaleGirl/img/thinking/04.png +0 -0
  214. package/assets/whaleGirl/img/thinking/05.png +0 -0
  215. package/assets/whaleGirl/img/thinking/06.png +0 -0
  216. package/assets/whaleGirl/img/thinking/07.png +0 -0
  217. package/assets/whaleGirl/img/thinking/08.png +0 -0
  218. package/assets/whaleGirl/img/thinking/09.png +0 -0
  219. package/assets/whaleGirl/img/thinking/10.png +0 -0
  220. package/assets/whaleGirl/img/thinking/11.png +0 -0
  221. package/assets/whaleGirl/img/thinking/12.png +0 -0
  222. package/assets/whaleGirl/img/thinking/13.png +0 -0
  223. package/assets/whaleGirl/img/thinking/14.png +0 -0
  224. package/assets/whaleGirl/img/thinking/15.png +0 -0
  225. package/assets/whaleGirl/img/thinking/16.png +0 -0
  226. package/assets/whaleGirl/img/thumbs-up/00.png +0 -0
  227. package/assets/whaleGirl/img/thumbs-up/01.png +0 -0
  228. package/assets/whaleGirl/img/thumbs-up/02.png +0 -0
  229. package/assets/whaleGirl/img/thumbs-up/03.png +0 -0
  230. package/assets/whaleGirl/img/thumbs-up/04.png +0 -0
  231. package/assets/whaleGirl/img/thumbs-up/05.png +0 -0
  232. package/assets/whaleGirl/img/thumbs-up/06.png +0 -0
  233. package/assets/whaleGirl/img/thumbs-up/07.png +0 -0
  234. package/assets/whaleGirl/img/thumbs-up/08.png +0 -0
  235. package/assets/whaleGirl/img/thumbs-up/09.png +0 -0
  236. package/assets/whaleGirl/img/thumbs-up/10.png +0 -0
  237. package/assets/whaleGirl/img/thumbs-up/11.png +0 -0
  238. package/assets/whaleGirl/img/thumbs-up/12.png +0 -0
  239. package/assets/whaleGirl/img/tickle/00.png +0 -0
  240. package/assets/whaleGirl/img/tickle/01.png +0 -0
  241. package/assets/whaleGirl/img/tickle/02.png +0 -0
  242. package/assets/whaleGirl/img/tickle/03.png +0 -0
  243. package/assets/whaleGirl/img/tickle/04.png +0 -0
  244. package/assets/whaleGirl/img/tickle/05.png +0 -0
  245. package/assets/whaleGirl/img/tickle/06.png +0 -0
  246. package/assets/whaleGirl/img/tickle/07.png +0 -0
  247. package/assets/whaleGirl/img/tickle/08.png +0 -0
  248. package/assets/whaleGirl/img/tickle/09.png +0 -0
  249. package/assets/whaleGirl/img/tickle/10.png +0 -0
  250. package/assets/whaleGirl/img/tickle/11.png +0 -0
  251. package/assets/whaleGirl/img/tickle/12.png +0 -0
  252. package/assets/whaleGirl/img/tickle/13.png +0 -0
  253. package/assets/whaleGirl/img/timings.json +1 -0
  254. package/assets/whaleGirl/img/typing/00.png +0 -0
  255. package/assets/whaleGirl/img/typing/01.png +0 -0
  256. package/assets/whaleGirl/img/typing/02.png +0 -0
  257. package/assets/whaleGirl/img/typing/03.png +0 -0
  258. package/assets/whaleGirl/img/typing/04.png +0 -0
  259. package/assets/whaleGirl/img/typing/05.png +0 -0
  260. package/assets/whaleGirl/img/typing/06.png +0 -0
  261. package/assets/whaleGirl/img/typing/07.png +0 -0
  262. package/assets/whaleGirl/img/typing/08.png +0 -0
  263. package/assets/whaleGirl/img/typing/09.png +0 -0
  264. package/assets/whaleGirl/img/typing/10.png +0 -0
  265. package/assets/whaleGirl/img/typing/11.png +0 -0
  266. package/assets/whaleGirl/img/typing/12.png +0 -0
  267. package/assets/whaleGirl/img/typing/13.png +0 -0
  268. package/assets/whaleGirl/img/waking/00.png +0 -0
  269. package/assets/whaleGirl/img/waking/01.png +0 -0
  270. package/assets/whaleGirl/img/waking/02.png +0 -0
  271. package/assets/whaleGirl/img/waking/03.png +0 -0
  272. package/assets/whaleGirl/img/waking/04.png +0 -0
  273. package/assets/whaleGirl/img/waking/05.png +0 -0
  274. package/assets/whaleGirl/img/waking/06.png +0 -0
  275. package/assets/whaleGirl/img/waking/07.png +0 -0
  276. package/assets/whaleGirl/img/waking/08.png +0 -0
  277. package/assets/whaleGirl/img/waking/09.png +0 -0
  278. package/assets/whaleGirl/img/waking/10.png +0 -0
  279. package/bin/dsh-tui.js +112 -21
  280. package/cordis.patch.yml +9 -1
  281. package/cordis.yml +2 -0
  282. package/guide/dsh-tui-guide/SKILL.md +4 -2
  283. package/guide/dsh-tui-guide/claude-backend.en.md +203 -0
  284. package/guide/dsh-tui-guide/claude-backend.md +161 -0
  285. package/guide/dsh-tui-guide/codex-backend.en.md +297 -0
  286. package/guide/dsh-tui-guide/codex-backend.md +257 -0
  287. package/guide/dsh-tui-guide/configuration.en.md +13 -1
  288. package/guide/dsh-tui-guide/configuration.md +13 -1
  289. package/guide/dsh-tui-guide/getting-started.en.md +6 -3
  290. package/guide/dsh-tui-guide/getting-started.md +4 -2
  291. package/guide/dsh-tui-guide/interaction.en.md +221 -15
  292. package/guide/dsh-tui-guide/interaction.md +153 -9
  293. package/guide/dsh-tui-guide/plugins.en.md +16 -6
  294. package/guide/dsh-tui-guide/plugins.md +14 -6
  295. package/guide/dsh-tui-guide/themes.en.md +31 -4
  296. package/guide/dsh-tui-guide/themes.md +26 -4
  297. package/guide/dsh-tui-guide/user-guide.en.md +145 -27
  298. package/guide/dsh-tui-guide/user-guide.md +113 -22
  299. package/guide/dsh-tui-guide/vscode.en.md +1 -0
  300. package/guide/dsh-tui-guide/vscode.md +1 -0
  301. package/lib/settings.json +348 -1
  302. package/lib/types/adapter/channel/state.d.ts.map +1 -1
  303. package/lib/types/adapter/channel/state.js +1 -0
  304. package/lib/types/adapter/channel/ui-policy.d.ts +21 -2
  305. package/lib/types/adapter/channel/ui-policy.d.ts.map +1 -1
  306. package/lib/types/adapter/channel/ui-policy.js +43 -1
  307. package/lib/types/adapter/channel/ui.d.ts.map +1 -1
  308. package/lib/types/adapter/channel/ui.js +45 -5
  309. package/lib/types/adapter/index.d.ts +1 -1
  310. package/lib/types/adapter/index.js +1 -1
  311. package/lib/types/adapter/kernel/host-facade.d.ts +4 -1
  312. package/lib/types/adapter/kernel/host-facade.d.ts.map +1 -1
  313. package/lib/types/adapter/kernel/host-facade.js +8 -1
  314. package/lib/types/adapter/kernel/runtime.d.ts.map +1 -1
  315. package/lib/types/adapter/kernel/runtime.js +13 -0
  316. package/lib/types/adapter/kernel/slices/index.d.ts +1 -0
  317. package/lib/types/adapter/kernel/slices/index.d.ts.map +1 -1
  318. package/lib/types/adapter/kernel/slices/index.js +3 -0
  319. package/lib/types/adapter/kernel/slices/panels.d.ts +3 -0
  320. package/lib/types/adapter/kernel/slices/panels.d.ts.map +1 -0
  321. package/lib/types/adapter/kernel/slices/panels.js +14 -0
  322. package/lib/types/adapter/ports/channel-capabilities.d.ts +48 -0
  323. package/lib/types/adapter/ports/channel-capabilities.d.ts.map +1 -0
  324. package/lib/types/adapter/ports/channel-capabilities.js +2 -0
  325. package/lib/types/adapter/ports/channel-catalog.d.ts +14 -0
  326. package/lib/types/adapter/ports/channel-catalog.d.ts.map +1 -1
  327. package/lib/types/adapter/ports/channel-display.d.ts +17 -1
  328. package/lib/types/adapter/ports/channel-display.d.ts.map +1 -1
  329. package/lib/types/adapter/ports/channel-session.d.ts +5 -0
  330. package/lib/types/adapter/ports/channel-session.d.ts.map +1 -1
  331. package/lib/types/adapter/ports/channel-settings.d.ts +20 -0
  332. package/lib/types/adapter/ports/channel-settings.d.ts.map +1 -1
  333. package/lib/types/adapter/ports/channel-ui.d.ts +243 -6
  334. package/lib/types/adapter/ports/channel-ui.d.ts.map +1 -1
  335. package/lib/types/adapter/ports/channel-view.d.ts +566 -8
  336. package/lib/types/adapter/ports/channel-view.d.ts.map +1 -1
  337. package/lib/types/adapter/ports/channel.d.ts +1 -1
  338. package/lib/types/adapter/ports/channel.js +1 -1
  339. package/lib/types/adapter/ports/descriptor.d.ts +1 -1
  340. package/lib/types/adapter/ports/descriptor.js +1 -1
  341. package/lib/types/adapter/ports/index.d.ts +1 -1
  342. package/lib/types/adapter/ports/index.js +1 -1
  343. package/lib/types/adapter/ports/panels.d.ts +28 -0
  344. package/lib/types/adapter/ports/panels.d.ts.map +1 -0
  345. package/lib/types/adapter/ports/panels.js +8 -0
  346. package/lib/types/adapter/ports/workspace.d.ts +1 -1
  347. package/lib/types/adapter/ports/workspace.js +1 -1
  348. package/lib/types/adapter/spec/index.d.ts +2 -2
  349. package/lib/types/adapter/spec/index.js +2 -2
  350. package/lib/types/adapter/spec/profile.d.ts +6 -6
  351. package/lib/types/adapter/spec/profile.d.ts.map +1 -1
  352. package/lib/types/adapter/spec/profile.js +6 -6
  353. package/lib/types/adapter/spec/protocol-constants.d.ts +3 -3
  354. package/lib/types/adapter/spec/protocol-constants.d.ts.map +1 -1
  355. package/lib/types/adapter/spec/protocol-constants.js +5 -5
  356. package/lib/types/adapter/spec/tui-contributions.d.ts +4 -4
  357. package/lib/types/adapter/spec/tui-contributions.d.ts.map +1 -1
  358. package/lib/types/adapter/spec/tui-contributions.js +5 -5
  359. package/lib/types/adapter/standard/descriptor.js +1 -1
  360. package/lib/types/adapter/standard/index.d.ts +3 -3
  361. package/lib/types/adapter/standard/index.js +3 -3
  362. package/lib/types/adapter/standard/registry.d.ts +3 -2
  363. package/lib/types/adapter/standard/registry.d.ts.map +1 -1
  364. package/lib/types/adapter/standard/registry.js +6 -5
  365. package/lib/types/adapter/standard/tui-extension.d.ts +1 -1
  366. package/lib/types/adapter/standard/tui-extension.js +1 -1
  367. package/lib/types/adapter/upstream/index.d.ts +1 -0
  368. package/lib/types/adapter/upstream/index.d.ts.map +1 -1
  369. package/lib/types/adapter/upstream/index.js +1 -0
  370. package/lib/types/adapter/upstream/panels-driver.d.ts +18 -0
  371. package/lib/types/adapter/upstream/panels-driver.d.ts.map +1 -0
  372. package/lib/types/adapter/upstream/panels-driver.js +159 -0
  373. package/lib/types/agent/backend.d.ts +168 -0
  374. package/lib/types/agent/backend.d.ts.map +1 -0
  375. package/lib/types/agent/backend.js +1 -0
  376. package/lib/types/agent/capabilities.d.ts +461 -0
  377. package/lib/types/agent/capabilities.d.ts.map +1 -0
  378. package/lib/types/agent/capabilities.js +1 -0
  379. package/lib/types/agent/events.d.ts +733 -0
  380. package/lib/types/agent/events.d.ts.map +1 -0
  381. package/lib/types/agent/events.js +2 -0
  382. package/lib/types/agent/index.d.ts +8 -0
  383. package/lib/types/agent/index.d.ts.map +1 -0
  384. package/lib/types/agent/index.js +7 -0
  385. package/lib/types/agent/messages.d.ts +52 -0
  386. package/lib/types/agent/messages.d.ts.map +1 -0
  387. package/lib/types/agent/messages.js +91 -0
  388. package/lib/types/agent/presentation.d.ts +29 -0
  389. package/lib/types/agent/presentation.d.ts.map +1 -0
  390. package/lib/types/agent/presentation.js +4 -0
  391. package/lib/types/agent/refs.d.ts +30 -0
  392. package/lib/types/agent/refs.d.ts.map +1 -0
  393. package/lib/types/agent/refs.js +39 -0
  394. package/lib/types/agent/session.d.ts +78 -0
  395. package/lib/types/agent/session.d.ts.map +1 -0
  396. package/lib/types/agent/session.js +1 -0
  397. package/lib/types/api.d.ts +2 -0
  398. package/lib/types/api.d.ts.map +1 -1
  399. package/lib/types/api.js +3 -1
  400. package/lib/types/backends/claude/activity.d.ts +53 -0
  401. package/lib/types/backends/claude/activity.d.ts.map +1 -0
  402. package/lib/types/backends/claude/activity.js +103 -0
  403. package/lib/types/backends/claude/auth.d.ts +245 -0
  404. package/lib/types/backends/claude/auth.d.ts.map +1 -0
  405. package/lib/types/backends/claude/auth.js +503 -0
  406. package/lib/types/backends/claude/backend.d.ts +32 -0
  407. package/lib/types/backends/claude/backend.d.ts.map +1 -0
  408. package/lib/types/backends/claude/backend.js +296 -0
  409. package/lib/types/backends/claude/catalog.d.ts +17 -0
  410. package/lib/types/backends/claude/catalog.d.ts.map +1 -0
  411. package/lib/types/backends/claude/catalog.js +94 -0
  412. package/lib/types/backends/claude/channels.d.ts +63 -0
  413. package/lib/types/backends/claude/channels.d.ts.map +1 -0
  414. package/lib/types/backends/claude/channels.js +275 -0
  415. package/lib/types/backends/claude/contract.d.ts +37 -0
  416. package/lib/types/backends/claude/contract.d.ts.map +1 -0
  417. package/lib/types/backends/claude/contract.js +46 -0
  418. package/lib/types/backends/claude/controls.d.ts +134 -0
  419. package/lib/types/backends/claude/controls.d.ts.map +1 -0
  420. package/lib/types/backends/claude/controls.js +425 -0
  421. package/lib/types/backends/claude/dialogs.d.ts +62 -0
  422. package/lib/types/backends/claude/dialogs.d.ts.map +1 -0
  423. package/lib/types/backends/claude/dialogs.js +253 -0
  424. package/lib/types/backends/claude/flag-settings.d.ts +12 -0
  425. package/lib/types/backends/claude/flag-settings.d.ts.map +1 -0
  426. package/lib/types/backends/claude/flag-settings.js +49 -0
  427. package/lib/types/backends/claude/images.d.ts +49 -0
  428. package/lib/types/backends/claude/images.d.ts.map +1 -0
  429. package/lib/types/backends/claude/images.js +94 -0
  430. package/lib/types/backends/claude/index.d.ts +5 -0
  431. package/lib/types/backends/claude/index.d.ts.map +1 -0
  432. package/lib/types/backends/claude/index.js +4 -0
  433. package/lib/types/backends/claude/install.d.ts +15 -0
  434. package/lib/types/backends/claude/install.d.ts.map +1 -0
  435. package/lib/types/backends/claude/install.js +91 -0
  436. package/lib/types/backends/claude/modelEnv.d.ts +64 -0
  437. package/lib/types/backends/claude/modelEnv.d.ts.map +1 -0
  438. package/lib/types/backends/claude/modelEnv.js +199 -0
  439. package/lib/types/backends/claude/narrow.d.ts +10 -0
  440. package/lib/types/backends/claude/narrow.d.ts.map +1 -0
  441. package/lib/types/backends/claude/narrow.js +8 -0
  442. package/lib/types/backends/claude/older-history.d.ts +16 -0
  443. package/lib/types/backends/claude/older-history.d.ts.map +1 -0
  444. package/lib/types/backends/claude/older-history.js +101 -0
  445. package/lib/types/backends/claude/options.d.ts +181 -0
  446. package/lib/types/backends/claude/options.d.ts.map +1 -0
  447. package/lib/types/backends/claude/options.js +208 -0
  448. package/lib/types/backends/claude/permissions.d.ts +83 -0
  449. package/lib/types/backends/claude/permissions.d.ts.map +1 -0
  450. package/lib/types/backends/claude/permissions.js +331 -0
  451. package/lib/types/backends/claude/prefs.d.ts +55 -0
  452. package/lib/types/backends/claude/prefs.d.ts.map +1 -0
  453. package/lib/types/backends/claude/prefs.js +150 -0
  454. package/lib/types/backends/claude/process.d.ts +19 -0
  455. package/lib/types/backends/claude/process.d.ts.map +1 -0
  456. package/lib/types/backends/claude/process.js +156 -0
  457. package/lib/types/backends/claude/replay.d.ts +129 -0
  458. package/lib/types/backends/claude/replay.d.ts.map +1 -0
  459. package/lib/types/backends/claude/replay.js +505 -0
  460. package/lib/types/backends/claude/sdk-warnings.d.ts +23 -0
  461. package/lib/types/backends/claude/sdk-warnings.d.ts.map +1 -0
  462. package/lib/types/backends/claude/sdk-warnings.js +55 -0
  463. package/lib/types/backends/claude/sdk.d.ts +12 -0
  464. package/lib/types/backends/claude/sdk.d.ts.map +1 -0
  465. package/lib/types/backends/claude/sdk.js +34 -0
  466. package/lib/types/backends/claude/send-message.d.ts +54 -0
  467. package/lib/types/backends/claude/send-message.d.ts.map +1 -0
  468. package/lib/types/backends/claude/send-message.js +65 -0
  469. package/lib/types/backends/claude/session/auth.d.ts +47 -0
  470. package/lib/types/backends/claude/session/auth.d.ts.map +1 -0
  471. package/lib/types/backends/claude/session/auth.js +226 -0
  472. package/lib/types/backends/claude/session/channels.d.ts +82 -0
  473. package/lib/types/backends/claude/session/channels.d.ts.map +1 -0
  474. package/lib/types/backends/claude/session/channels.js +45 -0
  475. package/lib/types/backends/claude/session/input.d.ts +16 -0
  476. package/lib/types/backends/claude/session/input.d.ts.map +1 -0
  477. package/lib/types/backends/claude/session/input.js +64 -0
  478. package/lib/types/backends/claude/session/lifecycle.d.ts +6 -0
  479. package/lib/types/backends/claude/session/lifecycle.d.ts.map +1 -0
  480. package/lib/types/backends/claude/session/lifecycle.js +852 -0
  481. package/lib/types/backends/claude/session/store.d.ts +17 -0
  482. package/lib/types/backends/claude/session/store.d.ts.map +1 -0
  483. package/lib/types/backends/claude/session/store.js +122 -0
  484. package/lib/types/backends/claude/session/subagents.d.ts +13 -0
  485. package/lib/types/backends/claude/session/subagents.d.ts.map +1 -0
  486. package/lib/types/backends/claude/session/subagents.js +77 -0
  487. package/lib/types/backends/claude/session/types.d.ts +89 -0
  488. package/lib/types/backends/claude/session/types.d.ts.map +1 -0
  489. package/lib/types/backends/claude/session/types.js +1 -0
  490. package/lib/types/backends/claude/session.d.ts +4 -0
  491. package/lib/types/backends/claude/session.d.ts.map +1 -0
  492. package/lib/types/backends/claude/session.js +2 -0
  493. package/lib/types/backends/claude/side-query.d.ts +34 -0
  494. package/lib/types/backends/claude/side-query.d.ts.map +1 -0
  495. package/lib/types/backends/claude/side-query.js +116 -0
  496. package/lib/types/backends/claude/task-output.d.ts +13 -0
  497. package/lib/types/backends/claude/task-output.d.ts.map +1 -0
  498. package/lib/types/backends/claude/task-output.js +101 -0
  499. package/lib/types/backends/claude/tools.d.ts +45 -0
  500. package/lib/types/backends/claude/tools.d.ts.map +1 -0
  501. package/lib/types/backends/claude/tools.js +231 -0
  502. package/lib/types/backends/claude/transcript-file.d.ts +41 -0
  503. package/lib/types/backends/claude/transcript-file.d.ts.map +1 -0
  504. package/lib/types/backends/claude/transcript-file.js +195 -0
  505. package/lib/types/backends/claude/translate/attempts.d.ts +33 -0
  506. package/lib/types/backends/claude/translate/attempts.d.ts.map +1 -0
  507. package/lib/types/backends/claude/translate/attempts.js +243 -0
  508. package/lib/types/backends/claude/translate/content.d.ts +33 -0
  509. package/lib/types/backends/claude/translate/content.d.ts.map +1 -0
  510. package/lib/types/backends/claude/translate/content.js +91 -0
  511. package/lib/types/backends/claude/translate/core.d.ts +76 -0
  512. package/lib/types/backends/claude/translate/core.d.ts.map +1 -0
  513. package/lib/types/backends/claude/translate/core.js +447 -0
  514. package/lib/types/backends/claude/translate/events.d.ts +9 -0
  515. package/lib/types/backends/claude/translate/events.d.ts.map +1 -0
  516. package/lib/types/backends/claude/translate/events.js +77 -0
  517. package/lib/types/backends/claude/translate/lanes.d.ts +31 -0
  518. package/lib/types/backends/claude/translate/lanes.d.ts.map +1 -0
  519. package/lib/types/backends/claude/translate/lanes.js +177 -0
  520. package/lib/types/backends/claude/translate/messages.d.ts +36 -0
  521. package/lib/types/backends/claude/translate/messages.d.ts.map +1 -0
  522. package/lib/types/backends/claude/translate/messages.js +202 -0
  523. package/lib/types/backends/claude/translate/system.d.ts +40 -0
  524. package/lib/types/backends/claude/translate/system.d.ts.map +1 -0
  525. package/lib/types/backends/claude/translate/system.js +399 -0
  526. package/lib/types/backends/claude/translate/tasks.d.ts +19 -0
  527. package/lib/types/backends/claude/translate/tasks.d.ts.map +1 -0
  528. package/lib/types/backends/claude/translate/tasks.js +159 -0
  529. package/lib/types/backends/claude/translate/types.d.ts +114 -0
  530. package/lib/types/backends/claude/translate/types.d.ts.map +1 -0
  531. package/lib/types/backends/claude/translate/types.js +1 -0
  532. package/lib/types/backends/claude/translate.d.ts +9 -0
  533. package/lib/types/backends/claude/translate.d.ts.map +1 -0
  534. package/lib/types/backends/claude/translate.js +6 -0
  535. package/lib/types/backends/codex/auth/external-tokens.d.ts +66 -0
  536. package/lib/types/backends/codex/auth/external-tokens.d.ts.map +1 -0
  537. package/lib/types/backends/codex/auth/external-tokens.js +325 -0
  538. package/lib/types/backends/codex/auth/route.d.ts +14 -0
  539. package/lib/types/backends/codex/auth/route.d.ts.map +1 -0
  540. package/lib/types/backends/codex/auth/route.js +52 -0
  541. package/lib/types/backends/codex/auth/status.d.ts +16 -0
  542. package/lib/types/backends/codex/auth/status.d.ts.map +1 -0
  543. package/lib/types/backends/codex/auth/status.js +115 -0
  544. package/lib/types/backends/codex/backend.d.ts +58 -0
  545. package/lib/types/backends/codex/backend.d.ts.map +1 -0
  546. package/lib/types/backends/codex/backend.js +201 -0
  547. package/lib/types/backends/codex/catalog.d.ts +17 -0
  548. package/lib/types/backends/codex/catalog.d.ts.map +1 -0
  549. package/lib/types/backends/codex/catalog.js +128 -0
  550. package/lib/types/backends/codex/channels.d.ts +59 -0
  551. package/lib/types/backends/codex/channels.d.ts.map +1 -0
  552. package/lib/types/backends/codex/channels.js +274 -0
  553. package/lib/types/backends/codex/contract.d.ts +46 -0
  554. package/lib/types/backends/codex/contract.d.ts.map +1 -0
  555. package/lib/types/backends/codex/contract.js +80 -0
  556. package/lib/types/backends/codex/detect.d.ts +14 -0
  557. package/lib/types/backends/codex/detect.d.ts.map +1 -0
  558. package/lib/types/backends/codex/detect.js +90 -0
  559. package/lib/types/backends/codex/index.d.ts +6 -0
  560. package/lib/types/backends/codex/index.d.ts.map +1 -0
  561. package/lib/types/backends/codex/index.js +5 -0
  562. package/lib/types/backends/codex/modes.d.ts +16 -0
  563. package/lib/types/backends/codex/modes.d.ts.map +1 -0
  564. package/lib/types/backends/codex/modes.js +49 -0
  565. package/lib/types/backends/codex/narrow.d.ts +20 -0
  566. package/lib/types/backends/codex/narrow.d.ts.map +1 -0
  567. package/lib/types/backends/codex/narrow.js +18 -0
  568. package/lib/types/backends/codex/prefs.d.ts +42 -0
  569. package/lib/types/backends/codex/prefs.d.ts.map +1 -0
  570. package/lib/types/backends/codex/prefs.js +124 -0
  571. package/lib/types/backends/codex/protocol/index.d.ts +149 -0
  572. package/lib/types/backends/codex/protocol/index.d.ts.map +1 -0
  573. package/lib/types/backends/codex/protocol/index.js +130 -0
  574. package/lib/types/backends/codex/rpc/binary.d.ts +35 -0
  575. package/lib/types/backends/codex/rpc/binary.d.ts.map +1 -0
  576. package/lib/types/backends/codex/rpc/binary.js +174 -0
  577. package/lib/types/backends/codex/rpc/client.d.ts +72 -0
  578. package/lib/types/backends/codex/rpc/client.d.ts.map +1 -0
  579. package/lib/types/backends/codex/rpc/client.js +214 -0
  580. package/lib/types/backends/codex/rpc/hub.d.ts +105 -0
  581. package/lib/types/backends/codex/rpc/hub.d.ts.map +1 -0
  582. package/lib/types/backends/codex/rpc/hub.js +532 -0
  583. package/lib/types/backends/codex/rpc/transport.d.ts +39 -0
  584. package/lib/types/backends/codex/rpc/transport.d.ts.map +1 -0
  585. package/lib/types/backends/codex/rpc/transport.js +212 -0
  586. package/lib/types/backends/codex/session/activity.d.ts +18 -0
  587. package/lib/types/backends/codex/session/activity.d.ts.map +1 -0
  588. package/lib/types/backends/codex/session/activity.js +108 -0
  589. package/lib/types/backends/codex/session/approvals.d.ts +39 -0
  590. package/lib/types/backends/codex/session/approvals.d.ts.map +1 -0
  591. package/lib/types/backends/codex/session/approvals.js +477 -0
  592. package/lib/types/backends/codex/session/commands.d.ts +37 -0
  593. package/lib/types/backends/codex/session/commands.d.ts.map +1 -0
  594. package/lib/types/backends/codex/session/commands.js +141 -0
  595. package/lib/types/backends/codex/session/controls.d.ts +37 -0
  596. package/lib/types/backends/codex/session/controls.d.ts.map +1 -0
  597. package/lib/types/backends/codex/session/controls.js +303 -0
  598. package/lib/types/backends/codex/session/goals.d.ts +25 -0
  599. package/lib/types/backends/codex/session/goals.d.ts.map +1 -0
  600. package/lib/types/backends/codex/session/goals.js +97 -0
  601. package/lib/types/backends/codex/session/history.d.ts +52 -0
  602. package/lib/types/backends/codex/session/history.d.ts.map +1 -0
  603. package/lib/types/backends/codex/session/history.js +196 -0
  604. package/lib/types/backends/codex/session/images.d.ts +17 -0
  605. package/lib/types/backends/codex/session/images.d.ts.map +1 -0
  606. package/lib/types/backends/codex/session/images.js +138 -0
  607. package/lib/types/backends/codex/session/input.d.ts +75 -0
  608. package/lib/types/backends/codex/session/input.d.ts.map +1 -0
  609. package/lib/types/backends/codex/session/input.js +294 -0
  610. package/lib/types/backends/codex/session/plan-review.d.ts +19 -0
  611. package/lib/types/backends/codex/session/plan-review.d.ts.map +1 -0
  612. package/lib/types/backends/codex/session/plan-review.js +48 -0
  613. package/lib/types/backends/codex/session/prompts.d.ts +7 -0
  614. package/lib/types/backends/codex/session/prompts.d.ts.map +1 -0
  615. package/lib/types/backends/codex/session/prompts.js +47 -0
  616. package/lib/types/backends/codex/session/session.d.ts +12 -0
  617. package/lib/types/backends/codex/session/session.d.ts.map +1 -0
  618. package/lib/types/backends/codex/session/session.js +871 -0
  619. package/lib/types/backends/codex/session/side-query.d.ts +25 -0
  620. package/lib/types/backends/codex/session/side-query.d.ts.map +1 -0
  621. package/lib/types/backends/codex/session/side-query.js +121 -0
  622. package/lib/types/backends/codex/session/state.d.ts +57 -0
  623. package/lib/types/backends/codex/session/state.d.ts.map +1 -0
  624. package/lib/types/backends/codex/session/state.js +1 -0
  625. package/lib/types/backends/codex/session/subagents.d.ts +28 -0
  626. package/lib/types/backends/codex/session/subagents.d.ts.map +1 -0
  627. package/lib/types/backends/codex/session/subagents.js +286 -0
  628. package/lib/types/backends/codex/session/tasks.d.ts +25 -0
  629. package/lib/types/backends/codex/session/tasks.d.ts.map +1 -0
  630. package/lib/types/backends/codex/session/tasks.js +207 -0
  631. package/lib/types/backends/codex/session/tool-output.d.ts +9 -0
  632. package/lib/types/backends/codex/session/tool-output.d.ts.map +1 -0
  633. package/lib/types/backends/codex/session/tool-output.js +29 -0
  634. package/lib/types/backends/codex/translate/commands.d.ts +30 -0
  635. package/lib/types/backends/codex/translate/commands.d.ts.map +1 -0
  636. package/lib/types/backends/codex/translate/commands.js +103 -0
  637. package/lib/types/backends/codex/translate/events.d.ts +9 -0
  638. package/lib/types/backends/codex/translate/events.d.ts.map +1 -0
  639. package/lib/types/backends/codex/translate/events.js +71 -0
  640. package/lib/types/backends/codex/translate/items.d.ts +112 -0
  641. package/lib/types/backends/codex/translate/items.d.ts.map +1 -0
  642. package/lib/types/backends/codex/translate/items.js +375 -0
  643. package/lib/types/backends/codex/translate/live.d.ts +39 -0
  644. package/lib/types/backends/codex/translate/live.d.ts.map +1 -0
  645. package/lib/types/backends/codex/translate/live.js +315 -0
  646. package/lib/types/backends/codex/translate/notices.d.ts +27 -0
  647. package/lib/types/backends/codex/translate/notices.d.ts.map +1 -0
  648. package/lib/types/backends/codex/translate/notices.js +99 -0
  649. package/lib/types/backends/codex/translate/presentation.d.ts +49 -0
  650. package/lib/types/backends/codex/translate/presentation.d.ts.map +1 -0
  651. package/lib/types/backends/codex/translate/presentation.js +237 -0
  652. package/lib/types/backends/codex/translate/replay.d.ts +18 -0
  653. package/lib/types/backends/codex/translate/replay.d.ts.map +1 -0
  654. package/lib/types/backends/codex/translate/replay.js +33 -0
  655. package/lib/types/backends/codex/translate/usage.d.ts +29 -0
  656. package/lib/types/backends/codex/translate/usage.d.ts.map +1 -0
  657. package/lib/types/backends/codex/translate/usage.js +65 -0
  658. package/lib/types/backends/shared/atomic-file.d.ts +4 -0
  659. package/lib/types/backends/shared/atomic-file.d.ts.map +1 -0
  660. package/lib/types/backends/shared/atomic-file.js +52 -0
  661. package/lib/types/backends/shared/channel-tokens.d.ts +29 -0
  662. package/lib/types/backends/shared/channel-tokens.d.ts.map +1 -0
  663. package/lib/types/backends/shared/channel-tokens.js +161 -0
  664. package/lib/types/backends/shared/display-path.d.ts +3 -0
  665. package/lib/types/backends/shared/display-path.d.ts.map +1 -0
  666. package/lib/types/backends/shared/display-path.js +12 -0
  667. package/lib/types/branding.d.ts +92 -0
  668. package/lib/types/branding.d.ts.map +1 -0
  669. package/lib/types/branding.js +117 -0
  670. package/lib/types/channel/activity.d.ts +53 -0
  671. package/lib/types/channel/activity.d.ts.map +1 -0
  672. package/lib/types/channel/activity.js +955 -0
  673. package/lib/types/channel/capabilities.d.ts +24 -0
  674. package/lib/types/channel/capabilities.d.ts.map +1 -0
  675. package/lib/types/channel/capabilities.js +57 -0
  676. package/lib/types/channel/channel-slug.d.ts +9 -0
  677. package/lib/types/channel/channel-slug.d.ts.map +1 -0
  678. package/lib/types/channel/channel-slug.js +15 -0
  679. package/lib/types/channel/channel-wizard.d.ts +30 -0
  680. package/lib/types/channel/channel-wizard.d.ts.map +1 -0
  681. package/lib/types/channel/channel-wizard.js +226 -0
  682. package/lib/types/channel/elicitation.d.ts +135 -0
  683. package/lib/types/channel/elicitation.d.ts.map +1 -0
  684. package/lib/types/channel/elicitation.js +360 -0
  685. package/lib/types/channel/goal-command.d.ts +49 -0
  686. package/lib/types/channel/goal-command.d.ts.map +1 -0
  687. package/lib/types/channel/goal-command.js +72 -0
  688. package/lib/types/channel/history-restore.d.ts +16 -0
  689. package/lib/types/channel/history-restore.d.ts.map +1 -0
  690. package/lib/types/channel/history-restore.js +214 -0
  691. package/lib/types/channel/interaction.d.ts +38 -0
  692. package/lib/types/channel/interaction.d.ts.map +1 -0
  693. package/lib/types/channel/interaction.js +110 -0
  694. package/lib/types/channel/job-format.d.ts +6 -0
  695. package/lib/types/channel/job-format.d.ts.map +1 -0
  696. package/lib/types/channel/job-format.js +12 -0
  697. package/lib/types/channel/live-output.d.ts +35 -0
  698. package/lib/types/channel/live-output.d.ts.map +1 -0
  699. package/lib/types/channel/live-output.js +74 -0
  700. package/lib/types/channel/model-capabilities.d.ts +10 -0
  701. package/lib/types/channel/model-capabilities.d.ts.map +1 -0
  702. package/lib/types/channel/model-capabilities.js +51 -0
  703. package/lib/types/channel/permissions.d.ts +155 -0
  704. package/lib/types/channel/permissions.d.ts.map +1 -0
  705. package/lib/types/channel/permissions.js +188 -0
  706. package/lib/types/channel/projection.d.ts +110 -0
  707. package/lib/types/channel/projection.d.ts.map +1 -0
  708. package/lib/types/channel/projection.js +1521 -0
  709. package/lib/types/channel/question-record.d.ts +76 -0
  710. package/lib/types/channel/question-record.d.ts.map +1 -0
  711. package/lib/types/channel/question-record.js +109 -0
  712. package/lib/types/channel/questions.d.ts +204 -0
  713. package/lib/types/channel/questions.d.ts.map +1 -0
  714. package/lib/types/channel/questions.js +286 -0
  715. package/lib/types/channel/sanitize.d.ts +49 -0
  716. package/lib/types/channel/sanitize.d.ts.map +1 -0
  717. package/lib/types/channel/sanitize.js +88 -0
  718. package/lib/types/channel/selection-record.d.ts +18 -0
  719. package/lib/types/channel/selection-record.d.ts.map +1 -0
  720. package/lib/types/channel/selection-record.js +45 -0
  721. package/lib/types/channel/side-prompts.d.ts +59 -0
  722. package/lib/types/channel/side-prompts.d.ts.map +1 -0
  723. package/lib/types/channel/side-prompts.js +127 -0
  724. package/lib/types/channel/transcript.d.ts +17 -0
  725. package/lib/types/channel/transcript.d.ts.map +1 -0
  726. package/lib/types/channel/transcript.js +19 -0
  727. package/lib/types/channel/usage.d.ts +48 -0
  728. package/lib/types/channel/usage.d.ts.map +1 -0
  729. package/lib/types/channel/usage.js +143 -0
  730. package/lib/types/commands.d.ts +147 -0
  731. package/lib/types/commands.d.ts.map +1 -1
  732. package/lib/types/commands.js +208 -6
  733. package/lib/types/components/ActivityLine.d.ts +6 -9
  734. package/lib/types/components/ActivityLine.d.ts.map +1 -1
  735. package/lib/types/components/ActivityLine.js +7 -8
  736. package/lib/types/components/AgentMessageComposer.d.ts +50 -0
  737. package/lib/types/components/AgentMessageComposer.d.ts.map +1 -0
  738. package/lib/types/components/AgentMessageComposer.js +159 -0
  739. package/lib/types/components/BtwPanel.d.ts +13 -12
  740. package/lib/types/components/BtwPanel.d.ts.map +1 -1
  741. package/lib/types/components/BtwPanel.js +35 -24
  742. package/lib/types/components/ChannelPicker.d.ts +40 -0
  743. package/lib/types/components/ChannelPicker.d.ts.map +1 -0
  744. package/lib/types/components/ChannelPicker.js +26 -0
  745. package/lib/types/components/Chat/JobCard.d.ts +29 -14
  746. package/lib/types/components/Chat/JobCard.d.ts.map +1 -1
  747. package/lib/types/components/Chat/JobCard.js +51 -64
  748. package/lib/types/components/Chat/JobGroupHeader.d.ts +27 -0
  749. package/lib/types/components/Chat/JobGroupHeader.d.ts.map +1 -0
  750. package/lib/types/components/Chat/JobGroupHeader.js +62 -0
  751. package/lib/types/components/Chat/SubagentMessage.d.ts +4 -1
  752. package/lib/types/components/Chat/SubagentMessage.d.ts.map +1 -1
  753. package/lib/types/components/Chat/SubagentMessage.js +10 -3
  754. package/lib/types/components/ClaudeGirl.d.ts +27 -0
  755. package/lib/types/components/ClaudeGirl.d.ts.map +1 -0
  756. package/lib/types/components/ClaudeGirl.js +30 -0
  757. package/lib/types/components/CodeBlockFrame.d.ts +19 -0
  758. package/lib/types/components/CodeBlockFrame.d.ts.map +1 -0
  759. package/lib/types/components/CodeBlockFrame.js +138 -0
  760. package/lib/types/components/CommandSuggestions.d.ts +10 -1
  761. package/lib/types/components/CommandSuggestions.d.ts.map +1 -1
  762. package/lib/types/components/CommandSuggestions.js +20 -3
  763. package/lib/types/components/ContextBarView.d.ts +2 -2
  764. package/lib/types/components/ContextBarView.d.ts.map +1 -1
  765. package/lib/types/components/ContextBarView.js +18 -8
  766. package/lib/types/components/EffortChargeGlyph.d.ts +1 -1
  767. package/lib/types/components/EffortChargeGlyph.d.ts.map +1 -1
  768. package/lib/types/components/EffortChargeGlyph.js +3 -4
  769. package/lib/types/components/EffortInputBorder.d.ts +1 -2
  770. package/lib/types/components/EffortInputBorder.d.ts.map +1 -1
  771. package/lib/types/components/EffortInputBorder.js +7 -4
  772. package/lib/types/components/EffortSlider.d.ts +5 -1
  773. package/lib/types/components/EffortSlider.d.ts.map +1 -1
  774. package/lib/types/components/EffortSlider.js +2 -2
  775. package/lib/types/components/EffortTierBadge.d.ts +1 -2
  776. package/lib/types/components/EffortTierBadge.d.ts.map +1 -1
  777. package/lib/types/components/EffortTierBadge.js +8 -5
  778. package/lib/types/components/GoalTodoPanel.d.ts +15 -2
  779. package/lib/types/components/GoalTodoPanel.d.ts.map +1 -1
  780. package/lib/types/components/GoalTodoPanel.js +65 -18
  781. package/lib/types/components/InlineMathParagraph.js +1 -1
  782. package/lib/types/components/JobsPanel.d.ts +41 -2
  783. package/lib/types/components/JobsPanel.d.ts.map +1 -1
  784. package/lib/types/components/JobsPanel.js +208 -16
  785. package/lib/types/components/KernelPicker.d.ts +28 -0
  786. package/lib/types/components/KernelPicker.d.ts.map +1 -0
  787. package/lib/types/components/KernelPicker.js +37 -0
  788. package/lib/types/components/LogoV2.d.ts +49 -3
  789. package/lib/types/components/LogoV2.d.ts.map +1 -1
  790. package/lib/types/components/LogoV2.js +157 -34
  791. package/lib/types/components/Markdown.d.ts +2 -1
  792. package/lib/types/components/Markdown.d.ts.map +1 -1
  793. package/lib/types/components/Markdown.js +37 -8
  794. package/lib/types/components/MathBlock.d.ts.map +1 -1
  795. package/lib/types/components/MathBlock.js +3 -1
  796. package/lib/types/components/MermaidDiagram.d.ts.map +1 -1
  797. package/lib/types/components/MermaidDiagram.js +7 -5
  798. package/lib/types/components/MessageList.d.ts +28 -4
  799. package/lib/types/components/MessageList.d.ts.map +1 -1
  800. package/lib/types/components/MessageList.js +247 -33
  801. package/lib/types/components/ModePicker.d.ts +20 -0
  802. package/lib/types/components/ModePicker.d.ts.map +1 -0
  803. package/lib/types/components/ModePicker.js +17 -0
  804. package/lib/types/components/OverlayAbove.d.ts +11 -1
  805. package/lib/types/components/OverlayAbove.d.ts.map +1 -1
  806. package/lib/types/components/OverlayAbove.js +2 -12
  807. package/lib/types/components/PageMargin.d.ts.map +1 -1
  808. package/lib/types/components/PageMargin.js +3 -1
  809. package/lib/types/components/PluginSceneBoundary.d.ts +1 -1
  810. package/lib/types/components/PluginSceneBoundary.js +1 -1
  811. package/lib/types/components/PromptInput.d.ts +22 -24
  812. package/lib/types/components/PromptInput.d.ts.map +1 -1
  813. package/lib/types/components/PromptInput.js +720 -210
  814. package/lib/types/components/SdkInstallWizard.d.ts +44 -0
  815. package/lib/types/components/SdkInstallWizard.d.ts.map +1 -0
  816. package/lib/types/components/SdkInstallWizard.js +18 -0
  817. package/lib/types/components/SearchBox.d.ts +22 -6
  818. package/lib/types/components/SearchBox.d.ts.map +1 -1
  819. package/lib/types/components/SearchBox.js +27 -14
  820. package/lib/types/components/SplitDiffView.d.ts.map +1 -1
  821. package/lib/types/components/SplitDiffView.js +113 -6
  822. package/lib/types/components/StarPrompt.d.ts.map +1 -1
  823. package/lib/types/components/StarPrompt.js +5 -3
  824. package/lib/types/components/StreamingMarkdown.d.ts.map +1 -1
  825. package/lib/types/components/StreamingMarkdown.js +6 -4
  826. package/lib/types/components/SubagentCard.d.ts +2 -1
  827. package/lib/types/components/SubagentCard.d.ts.map +1 -1
  828. package/lib/types/components/SubagentCard.js +32 -10
  829. package/lib/types/components/SubagentDashboard.d.ts +22 -3
  830. package/lib/types/components/SubagentDashboard.d.ts.map +1 -1
  831. package/lib/types/components/SubagentDashboard.js +69 -10
  832. package/lib/types/components/SubagentDetailScene.d.ts +22 -1
  833. package/lib/types/components/SubagentDetailScene.d.ts.map +1 -1
  834. package/lib/types/components/SubagentDetailScene.js +245 -45
  835. package/lib/types/components/SurfaceEdges.d.ts +21 -0
  836. package/lib/types/components/SurfaceEdges.d.ts.map +1 -0
  837. package/lib/types/components/SurfaceEdges.js +7 -0
  838. package/lib/types/components/SyntaxText.d.ts.map +1 -1
  839. package/lib/types/components/SyntaxText.js +4 -1
  840. package/lib/types/components/ThemePicker.d.ts +9 -0
  841. package/lib/types/components/ThemePicker.d.ts.map +1 -1
  842. package/lib/types/components/ThemePicker.js +74 -10
  843. package/lib/types/components/ThemePreviewPane.d.ts +26 -0
  844. package/lib/types/components/ThemePreviewPane.d.ts.map +1 -0
  845. package/lib/types/components/ThemePreviewPane.js +99 -0
  846. package/lib/types/components/TurnInterruptedRow.d.ts +3 -1
  847. package/lib/types/components/TurnInterruptedRow.d.ts.map +1 -1
  848. package/lib/types/components/TurnInterruptedRow.js +6 -3
  849. package/lib/types/components/TurnUsageRow.d.ts +24 -0
  850. package/lib/types/components/TurnUsageRow.d.ts.map +1 -0
  851. package/lib/types/components/TurnUsageRow.js +46 -0
  852. package/lib/types/components/WorkingSpinner.d.ts +2 -1
  853. package/lib/types/components/WorkingSpinner.d.ts.map +1 -1
  854. package/lib/types/components/WorkingSpinner.js +21 -4
  855. package/lib/types/components/approvals/ApprovalPanel.d.ts +36 -13
  856. package/lib/types/components/approvals/ApprovalPanel.d.ts.map +1 -1
  857. package/lib/types/components/approvals/ApprovalPanel.js +173 -25
  858. package/lib/types/components/claudeGirlSprite.d.ts +18 -0
  859. package/lib/types/components/claudeGirlSprite.d.ts.map +1 -0
  860. package/lib/types/components/claudeGirlSprite.js +48 -0
  861. package/lib/types/components/design-system/Divider.d.ts.map +1 -1
  862. package/lib/types/components/design-system/Divider.js +14 -9
  863. package/lib/types/components/design-system/ThemeProvider.d.ts.map +1 -1
  864. package/lib/types/components/design-system/ThemeProvider.js +46 -13
  865. package/lib/types/components/design-system/ThemedText.d.ts +3 -1
  866. package/lib/types/components/design-system/ThemedText.d.ts.map +1 -1
  867. package/lib/types/components/design-system/ThemedText.js +2 -2
  868. package/lib/types/components/diffPatch.d.ts +55 -0
  869. package/lib/types/components/diffPatch.d.ts.map +1 -0
  870. package/lib/types/components/diffPatch.js +142 -0
  871. package/lib/types/components/kernelCatalog.d.ts +48 -0
  872. package/lib/types/components/kernelCatalog.d.ts.map +1 -0
  873. package/lib/types/components/kernelCatalog.js +53 -0
  874. package/lib/types/components/launchpadActions.d.ts +80 -0
  875. package/lib/types/components/launchpadActions.d.ts.map +1 -0
  876. package/lib/types/components/launchpadActions.js +133 -0
  877. package/lib/types/components/launchpadLayout.d.ts +62 -0
  878. package/lib/types/components/launchpadLayout.d.ts.map +1 -0
  879. package/lib/types/components/launchpadLayout.js +176 -0
  880. package/lib/types/components/launchpadParams.d.ts +101 -0
  881. package/lib/types/components/launchpadParams.d.ts.map +1 -0
  882. package/lib/types/components/launchpadParams.js +171 -0
  883. package/lib/types/components/maidPortrait.d.ts +37 -5
  884. package/lib/types/components/maidPortrait.d.ts.map +1 -1
  885. package/lib/types/components/maidPortrait.js +73 -54
  886. package/lib/types/components/messages/AgentMessageFlow.d.ts +20 -0
  887. package/lib/types/components/messages/AgentMessageFlow.d.ts.map +1 -0
  888. package/lib/types/components/messages/AgentMessageFlow.js +37 -0
  889. package/lib/types/components/messages/AssistantThinkingMessage.d.ts +6 -1
  890. package/lib/types/components/messages/AssistantThinkingMessage.d.ts.map +1 -1
  891. package/lib/types/components/messages/AssistantThinkingMessage.js +29 -5
  892. package/lib/types/components/messages/AssistantToolUseMessage.d.ts +11 -2
  893. package/lib/types/components/messages/AssistantToolUseMessage.d.ts.map +1 -1
  894. package/lib/types/components/messages/AssistantToolUseMessage.js +289 -36
  895. package/lib/types/components/messages/TranscriptLeaves.d.ts +85 -0
  896. package/lib/types/components/messages/TranscriptLeaves.d.ts.map +1 -0
  897. package/lib/types/components/messages/TranscriptLeaves.js +74 -0
  898. package/lib/types/components/messages/agentTeam.d.ts +69 -0
  899. package/lib/types/components/messages/agentTeam.d.ts.map +1 -0
  900. package/lib/types/components/messages/agentTeam.js +53 -0
  901. package/lib/types/components/messages/liveOutputLines.d.ts +33 -0
  902. package/lib/types/components/messages/liveOutputLines.d.ts.map +1 -0
  903. package/lib/types/components/messages/liveOutputLines.js +100 -0
  904. package/lib/types/components/messages/subagentTranscript.d.ts +146 -0
  905. package/lib/types/components/messages/subagentTranscript.d.ts.map +1 -0
  906. package/lib/types/components/messages/subagentTranscript.js +304 -0
  907. package/lib/types/components/onboardingModel.d.ts +83 -0
  908. package/lib/types/components/onboardingModel.d.ts.map +1 -0
  909. package/lib/types/components/onboardingModel.js +128 -0
  910. package/lib/types/components/questions/AskUserQuestionPanel.d.ts +16 -1
  911. package/lib/types/components/questions/AskUserQuestionPanel.d.ts.map +1 -1
  912. package/lib/types/components/questions/AskUserQuestionPanel.js +76 -6
  913. package/lib/types/components/questions/PlanReviewPanel.d.ts +8 -3
  914. package/lib/types/components/questions/PlanReviewPanel.d.ts.map +1 -1
  915. package/lib/types/components/questions/PlanReviewPanel.js +11 -6
  916. package/lib/types/components/questions/ProviderModelEditor.d.ts +12 -0
  917. package/lib/types/components/questions/ProviderModelEditor.d.ts.map +1 -0
  918. package/lib/types/components/questions/ProviderModelEditor.js +266 -0
  919. package/lib/types/components/shimmer.d.ts +26 -0
  920. package/lib/types/components/shimmer.d.ts.map +1 -1
  921. package/lib/types/components/shimmer.js +26 -0
  922. package/lib/types/components/sidePanel/InfoPanel.d.ts +17 -0
  923. package/lib/types/components/sidePanel/InfoPanel.d.ts.map +1 -0
  924. package/lib/types/components/sidePanel/InfoPanel.js +129 -0
  925. package/lib/types/components/sidePanel/PanelBar.d.ts +21 -0
  926. package/lib/types/components/sidePanel/PanelBar.d.ts.map +1 -0
  927. package/lib/types/components/sidePanel/PanelBar.js +82 -0
  928. package/lib/types/components/sidePanel/PanelErrorBoundary.d.ts +21 -0
  929. package/lib/types/components/sidePanel/PanelErrorBoundary.d.ts.map +1 -0
  930. package/lib/types/components/sidePanel/PanelErrorBoundary.js +30 -0
  931. package/lib/types/components/sidePanel/PanelHost.d.ts +36 -0
  932. package/lib/types/components/sidePanel/PanelHost.d.ts.map +1 -0
  933. package/lib/types/components/sidePanel/PanelHost.js +81 -0
  934. package/lib/types/components/sidePanel/PanelPicker.d.ts +24 -0
  935. package/lib/types/components/sidePanel/PanelPicker.d.ts.map +1 -0
  936. package/lib/types/components/sidePanel/PanelPicker.js +45 -0
  937. package/lib/types/components/sidePanel/PanelStore.d.ts +57 -0
  938. package/lib/types/components/sidePanel/PanelStore.d.ts.map +1 -0
  939. package/lib/types/components/sidePanel/PanelStore.js +113 -0
  940. package/lib/types/components/sidePanel/SidePanelColumn.d.ts +24 -0
  941. package/lib/types/components/sidePanel/SidePanelColumn.d.ts.map +1 -0
  942. package/lib/types/components/sidePanel/SidePanelColumn.js +67 -0
  943. package/lib/types/components/sidePanel/SidePanelLayout.d.ts +54 -0
  944. package/lib/types/components/sidePanel/SidePanelLayout.d.ts.map +1 -0
  945. package/lib/types/components/sidePanel/SidePanelLayout.js +81 -0
  946. package/lib/types/components/sidePanel/SidePanelRuntimeContext.d.ts +43 -0
  947. package/lib/types/components/sidePanel/SidePanelRuntimeContext.d.ts.map +1 -0
  948. package/lib/types/components/sidePanel/SidePanelRuntimeContext.js +26 -0
  949. package/lib/types/components/sidePanel/TrajectoryPanel.d.ts +7 -0
  950. package/lib/types/components/sidePanel/TrajectoryPanel.d.ts.map +1 -0
  951. package/lib/types/components/sidePanel/TrajectoryPanel.js +327 -0
  952. package/lib/types/components/sidePanel/WorkspacePanel.d.ts +4 -0
  953. package/lib/types/components/sidePanel/WorkspacePanel.d.ts.map +1 -0
  954. package/lib/types/components/sidePanel/WorkspacePanel.js +171 -0
  955. package/lib/types/components/sidePanel/agentViewStore.d.ts +20 -0
  956. package/lib/types/components/sidePanel/agentViewStore.d.ts.map +1 -0
  957. package/lib/types/components/sidePanel/agentViewStore.js +26 -0
  958. package/lib/types/components/sidePanel/btw/BtwComposer.d.ts +50 -0
  959. package/lib/types/components/sidePanel/btw/BtwComposer.d.ts.map +1 -0
  960. package/lib/types/components/sidePanel/btw/BtwComposer.js +45 -0
  961. package/lib/types/components/sidePanel/btw/BtwPanelAdapter.d.ts +13 -0
  962. package/lib/types/components/sidePanel/btw/BtwPanelAdapter.d.ts.map +1 -0
  963. package/lib/types/components/sidePanel/btw/BtwPanelAdapter.js +147 -0
  964. package/lib/types/components/sidePanel/btw/BtwThreadScene.d.ts +14 -0
  965. package/lib/types/components/sidePanel/btw/BtwThreadScene.d.ts.map +1 -0
  966. package/lib/types/components/sidePanel/btw/BtwThreadScene.js +131 -0
  967. package/lib/types/components/sidePanel/btw/BtwThreadView.d.ts +30 -0
  968. package/lib/types/components/sidePanel/btw/BtwThreadView.d.ts.map +1 -0
  969. package/lib/types/components/sidePanel/btw/BtwThreadView.js +87 -0
  970. package/lib/types/components/sidePanel/btw/threads.d.ts +111 -0
  971. package/lib/types/components/sidePanel/btw/threads.d.ts.map +1 -0
  972. package/lib/types/components/sidePanel/btw/threads.js +302 -0
  973. package/lib/types/components/sidePanel/builtinPanels.d.ts +3 -0
  974. package/lib/types/components/sidePanel/builtinPanels.d.ts.map +1 -0
  975. package/lib/types/components/sidePanel/builtinPanels.js +269 -0
  976. package/lib/types/components/sidePanel/companion/CompanionPanel.d.ts +11 -0
  977. package/lib/types/components/sidePanel/companion/CompanionPanel.d.ts.map +1 -0
  978. package/lib/types/components/sidePanel/companion/CompanionPanel.js +492 -0
  979. package/lib/types/components/sidePanel/companion/SplashMascot.d.ts +32 -0
  980. package/lib/types/components/sidePanel/companion/SplashMascot.d.ts.map +1 -0
  981. package/lib/types/components/sidePanel/companion/SplashMascot.js +103 -0
  982. package/lib/types/components/sidePanel/companion/deepy.d.ts +75 -0
  983. package/lib/types/components/sidePanel/companion/deepy.d.ts.map +1 -0
  984. package/lib/types/components/sidePanel/companion/deepy.js +222 -0
  985. package/lib/types/components/sidePanel/companion/mood.d.ts +208 -0
  986. package/lib/types/components/sidePanel/companion/mood.d.ts.map +1 -0
  987. package/lib/types/components/sidePanel/companion/mood.js +256 -0
  988. package/lib/types/components/sidePanel/companion/pose.d.ts +43 -0
  989. package/lib/types/components/sidePanel/companion/pose.d.ts.map +1 -0
  990. package/lib/types/components/sidePanel/companion/pose.js +34 -0
  991. package/lib/types/components/sidePanel/companion/skins.d.ts +136 -0
  992. package/lib/types/components/sidePanel/companion/skins.d.ts.map +1 -0
  993. package/lib/types/components/sidePanel/companion/skins.js +582 -0
  994. package/lib/types/components/sidePanel/dimensions.d.ts +60 -0
  995. package/lib/types/components/sidePanel/dimensions.d.ts.map +1 -0
  996. package/lib/types/components/sidePanel/dimensions.js +75 -0
  997. package/lib/types/components/sidePanel/jobsFocusStore.d.ts +21 -0
  998. package/lib/types/components/sidePanel/jobsFocusStore.d.ts.map +1 -0
  999. package/lib/types/components/sidePanel/jobsFocusStore.js +30 -0
  1000. package/lib/types/components/sidePanel/panelBridge.d.ts +44 -0
  1001. package/lib/types/components/sidePanel/panelBridge.d.ts.map +1 -0
  1002. package/lib/types/components/sidePanel/panelBridge.js +55 -0
  1003. package/lib/types/components/sidePanel/pluginPanelAdapter.d.ts +22 -0
  1004. package/lib/types/components/sidePanel/pluginPanelAdapter.d.ts.map +1 -0
  1005. package/lib/types/components/sidePanel/pluginPanelAdapter.js +148 -0
  1006. package/lib/types/components/sidePanel/types.d.ts +110 -0
  1007. package/lib/types/components/sidePanel/types.d.ts.map +1 -0
  1008. package/lib/types/components/sidePanel/types.js +1 -0
  1009. package/lib/types/components/sidePanel/usePanelInput.d.ts +5 -0
  1010. package/lib/types/components/sidePanel/usePanelInput.d.ts.map +1 -0
  1011. package/lib/types/components/sidePanel/usePanelInput.js +44 -0
  1012. package/lib/types/components/sidePanel/useSidePanel.d.ts +47 -0
  1013. package/lib/types/components/sidePanel/useSidePanel.d.ts.map +1 -0
  1014. package/lib/types/components/sidePanel/useSidePanel.js +284 -0
  1015. package/lib/types/components/splashFonts.d.ts +17 -9
  1016. package/lib/types/components/splashFonts.d.ts.map +1 -1
  1017. package/lib/types/components/splashFonts.js +119 -15
  1018. package/lib/types/components/splashLayout.d.ts.map +1 -1
  1019. package/lib/types/components/splashLayout.js +3 -1
  1020. package/lib/types/components/subagentDetailMemory.d.ts +17 -0
  1021. package/lib/types/components/subagentDetailMemory.d.ts.map +1 -0
  1022. package/lib/types/components/subagentDetailMemory.js +28 -0
  1023. package/lib/types/components/trajectory/Inspector.d.ts.map +1 -1
  1024. package/lib/types/components/trajectory/Inspector.js +9 -0
  1025. package/lib/types/components/trajectory/Ledger.d.ts.map +1 -1
  1026. package/lib/types/components/trajectory/Ledger.js +7 -1
  1027. package/lib/types/components/trajectory/scope.d.ts +64 -0
  1028. package/lib/types/components/trajectory/scope.d.ts.map +1 -0
  1029. package/lib/types/components/trajectory/scope.js +88 -0
  1030. package/lib/types/components/trajectory/useTrajectoryScope.d.ts +42 -0
  1031. package/lib/types/components/trajectory/useTrajectoryScope.d.ts.map +1 -0
  1032. package/lib/types/components/trajectory/useTrajectoryScope.js +86 -0
  1033. package/lib/types/components/workspaces/HomeWorkspaceRow.d.ts +3 -1
  1034. package/lib/types/components/workspaces/HomeWorkspaceRow.d.ts.map +1 -1
  1035. package/lib/types/components/workspaces/HomeWorkspaceRow.js +3 -2
  1036. package/lib/types/customTheme.d.ts +4 -6
  1037. package/lib/types/customTheme.d.ts.map +1 -1
  1038. package/lib/types/customTheme.js +6 -8
  1039. package/lib/types/deepseekPricing.d.ts +10 -9
  1040. package/lib/types/deepseekPricing.d.ts.map +1 -1
  1041. package/lib/types/deepseekPricing.js +18 -11
  1042. package/lib/types/dsh-adapter/approvals.d.ts +18 -5
  1043. package/lib/types/dsh-adapter/approvals.d.ts.map +1 -1
  1044. package/lib/types/dsh-adapter/approvals.js +17 -4
  1045. package/lib/types/dsh-adapter/backend/session.d.ts +64 -0
  1046. package/lib/types/dsh-adapter/backend/session.d.ts.map +1 -0
  1047. package/lib/types/dsh-adapter/backend/session.js +291 -0
  1048. package/lib/types/dsh-adapter/backend/translate.d.ts +58 -0
  1049. package/lib/types/dsh-adapter/backend/translate.d.ts.map +1 -0
  1050. package/lib/types/dsh-adapter/backend/translate.js +467 -0
  1051. package/lib/types/dsh-adapter/backends.d.ts +49 -0
  1052. package/lib/types/dsh-adapter/backends.d.ts.map +1 -0
  1053. package/lib/types/dsh-adapter/backends.js +124 -0
  1054. package/lib/types/dsh-adapter/channel/action-readiness.d.ts +16 -0
  1055. package/lib/types/dsh-adapter/channel/action-readiness.d.ts.map +1 -1
  1056. package/lib/types/dsh-adapter/channel/action-readiness.js +109 -0
  1057. package/lib/types/dsh-adapter/channel/agent-view-projection.d.ts +2 -2
  1058. package/lib/types/dsh-adapter/channel/agent-view-projection.d.ts.map +1 -1
  1059. package/lib/types/dsh-adapter/channel/attached-context.d.ts +58 -0
  1060. package/lib/types/dsh-adapter/channel/attached-context.d.ts.map +1 -0
  1061. package/lib/types/dsh-adapter/channel/attached-context.js +109 -0
  1062. package/lib/types/dsh-adapter/channel/background-action.d.ts +2 -2
  1063. package/lib/types/dsh-adapter/channel/background-action.d.ts.map +1 -1
  1064. package/lib/types/dsh-adapter/channel/background-action.js +7 -5
  1065. package/lib/types/dsh-adapter/channel/binding-events.d.ts +25 -9
  1066. package/lib/types/dsh-adapter/channel/binding-events.d.ts.map +1 -1
  1067. package/lib/types/dsh-adapter/channel/binding-events.js +101 -135
  1068. package/lib/types/dsh-adapter/channel/binding.d.ts +61 -14
  1069. package/lib/types/dsh-adapter/channel/binding.d.ts.map +1 -1
  1070. package/lib/types/dsh-adapter/channel/binding.js +102 -35
  1071. package/lib/types/dsh-adapter/channel/capabilities.d.ts +82 -0
  1072. package/lib/types/dsh-adapter/channel/capabilities.d.ts.map +1 -0
  1073. package/lib/types/dsh-adapter/channel/capabilities.js +165 -0
  1074. package/lib/types/dsh-adapter/channel/command-completions.d.ts +3 -0
  1075. package/lib/types/dsh-adapter/channel/command-completions.d.ts.map +1 -1
  1076. package/lib/types/dsh-adapter/channel/command-completions.js +41 -4
  1077. package/lib/types/dsh-adapter/channel/compaction.d.ts.map +1 -1
  1078. package/lib/types/dsh-adapter/channel/compaction.js +3 -2
  1079. package/lib/types/dsh-adapter/channel/composer-images.d.ts +5 -0
  1080. package/lib/types/dsh-adapter/channel/composer-images.d.ts.map +1 -1
  1081. package/lib/types/dsh-adapter/channel/composer-images.js +4 -3
  1082. package/lib/types/dsh-adapter/channel/context-bookkeeping.d.ts +4 -12
  1083. package/lib/types/dsh-adapter/channel/context-bookkeeping.d.ts.map +1 -1
  1084. package/lib/types/dsh-adapter/channel/context-bookkeeping.js +9 -4
  1085. package/lib/types/dsh-adapter/channel/core/actions.d.ts +39 -0
  1086. package/lib/types/dsh-adapter/channel/core/actions.d.ts.map +1 -0
  1087. package/lib/types/dsh-adapter/channel/core/actions.js +152 -0
  1088. package/lib/types/dsh-adapter/channel/core/binding-feed.d.ts +145 -0
  1089. package/lib/types/dsh-adapter/channel/core/binding-feed.d.ts.map +1 -0
  1090. package/lib/types/dsh-adapter/channel/core/binding-feed.js +289 -0
  1091. package/lib/types/dsh-adapter/channel/core/compose.d.ts +217 -0
  1092. package/lib/types/dsh-adapter/channel/core/compose.d.ts.map +1 -0
  1093. package/lib/types/dsh-adapter/channel/core/compose.js +938 -0
  1094. package/lib/types/dsh-adapter/channel/core/files.d.ts +57 -0
  1095. package/lib/types/dsh-adapter/channel/core/files.d.ts.map +1 -0
  1096. package/lib/types/dsh-adapter/channel/core/files.js +45 -0
  1097. package/lib/types/dsh-adapter/channel/core/host.d.ts +55 -0
  1098. package/lib/types/dsh-adapter/channel/core/host.d.ts.map +1 -0
  1099. package/lib/types/dsh-adapter/channel/core/host.js +116 -0
  1100. package/lib/types/dsh-adapter/channel/core/local-actions.d.ts +46 -0
  1101. package/lib/types/dsh-adapter/channel/core/local-actions.d.ts.map +1 -0
  1102. package/lib/types/dsh-adapter/channel/core/local-actions.js +117 -0
  1103. package/lib/types/dsh-adapter/channel/core/local-images.d.ts +20 -0
  1104. package/lib/types/dsh-adapter/channel/core/local-images.d.ts.map +1 -0
  1105. package/lib/types/dsh-adapter/channel/core/local-images.js +147 -0
  1106. package/lib/types/dsh-adapter/channel/core/reports.d.ts +12 -0
  1107. package/lib/types/dsh-adapter/channel/core/reports.d.ts.map +1 -0
  1108. package/lib/types/dsh-adapter/channel/core/reports.js +77 -0
  1109. package/lib/types/dsh-adapter/channel/core/session-controls.d.ts +39 -0
  1110. package/lib/types/dsh-adapter/channel/core/session-controls.d.ts.map +1 -0
  1111. package/lib/types/dsh-adapter/channel/core/session-controls.js +219 -0
  1112. package/lib/types/dsh-adapter/channel/core/session-switch.d.ts +174 -0
  1113. package/lib/types/dsh-adapter/channel/core/session-switch.d.ts.map +1 -0
  1114. package/lib/types/dsh-adapter/channel/core/session-switch.js +390 -0
  1115. package/lib/types/dsh-adapter/channel/core/sessions.d.ts +40 -0
  1116. package/lib/types/dsh-adapter/channel/core/sessions.d.ts.map +1 -0
  1117. package/lib/types/dsh-adapter/channel/core/sessions.js +268 -0
  1118. package/lib/types/dsh-adapter/channel/decisions.d.ts +4 -3
  1119. package/lib/types/dsh-adapter/channel/decisions.d.ts.map +1 -1
  1120. package/lib/types/dsh-adapter/channel/decisions.js +4 -4
  1121. package/lib/types/dsh-adapter/channel/emitter.d.ts +15 -2
  1122. package/lib/types/dsh-adapter/channel/emitter.d.ts.map +1 -1
  1123. package/lib/types/dsh-adapter/channel/emitter.js +5 -3
  1124. package/lib/types/dsh-adapter/channel/extensions.d.ts +36 -0
  1125. package/lib/types/dsh-adapter/channel/extensions.d.ts.map +1 -0
  1126. package/lib/types/dsh-adapter/channel/extensions.js +714 -0
  1127. package/lib/types/dsh-adapter/channel/ide-selection.d.ts +1 -10
  1128. package/lib/types/dsh-adapter/channel/ide-selection.d.ts.map +1 -1
  1129. package/lib/types/dsh-adapter/channel/ide-selection.js +4 -46
  1130. package/lib/types/dsh-adapter/channel/input-actions.d.ts +27 -4
  1131. package/lib/types/dsh-adapter/channel/input-actions.d.ts.map +1 -1
  1132. package/lib/types/dsh-adapter/channel/input-actions.js +240 -21
  1133. package/lib/types/dsh-adapter/channel/input-delivery.d.ts +34 -7
  1134. package/lib/types/dsh-adapter/channel/input-delivery.d.ts.map +1 -1
  1135. package/lib/types/dsh-adapter/channel/input-delivery.js +79 -24
  1136. package/lib/types/dsh-adapter/channel/local-actions.d.ts +10 -32
  1137. package/lib/types/dsh-adapter/channel/local-actions.d.ts.map +1 -1
  1138. package/lib/types/dsh-adapter/channel/local-actions.js +10 -78
  1139. package/lib/types/dsh-adapter/channel/local-fs.d.ts +3 -0
  1140. package/lib/types/dsh-adapter/channel/local-fs.d.ts.map +1 -0
  1141. package/lib/types/dsh-adapter/channel/local-fs.js +46 -0
  1142. package/lib/types/dsh-adapter/channel/mode-actions.d.ts +3 -6
  1143. package/lib/types/dsh-adapter/channel/mode-actions.d.ts.map +1 -1
  1144. package/lib/types/dsh-adapter/channel/mode-actions.js +7 -2
  1145. package/lib/types/dsh-adapter/channel/mode-permission-actions.d.ts +10 -3
  1146. package/lib/types/dsh-adapter/channel/mode-permission-actions.d.ts.map +1 -1
  1147. package/lib/types/dsh-adapter/channel/mode-permission-actions.js +0 -1
  1148. package/lib/types/dsh-adapter/channel/model-actions.d.ts +3 -3
  1149. package/lib/types/dsh-adapter/channel/model-actions.d.ts.map +1 -1
  1150. package/lib/types/dsh-adapter/channel/model-actions.js +38 -5
  1151. package/lib/types/dsh-adapter/channel/model-switch.d.ts +2 -2
  1152. package/lib/types/dsh-adapter/channel/model-switch.d.ts.map +1 -1
  1153. package/lib/types/dsh-adapter/channel/model-switch.js +9 -6
  1154. package/lib/types/dsh-adapter/channel/preferences.d.ts +1 -1
  1155. package/lib/types/dsh-adapter/channel/preferences.d.ts.map +1 -1
  1156. package/lib/types/dsh-adapter/channel/preferences.js +25 -1
  1157. package/lib/types/dsh-adapter/channel/projection.d.ts +16 -13
  1158. package/lib/types/dsh-adapter/channel/projection.d.ts.map +1 -1
  1159. package/lib/types/dsh-adapter/channel/projection.js +38 -1138
  1160. package/lib/types/dsh-adapter/channel/question-record.d.ts +3 -75
  1161. package/lib/types/dsh-adapter/channel/question-record.d.ts.map +1 -1
  1162. package/lib/types/dsh-adapter/channel/question-record.js +3 -107
  1163. package/lib/types/dsh-adapter/channel/reports.d.ts.map +1 -1
  1164. package/lib/types/dsh-adapter/channel/reports.js +13 -4
  1165. package/lib/types/dsh-adapter/channel/session-activity.d.ts +9 -0
  1166. package/lib/types/dsh-adapter/channel/session-activity.d.ts.map +1 -0
  1167. package/lib/types/dsh-adapter/channel/session-activity.js +42 -0
  1168. package/lib/types/dsh-adapter/channel/session-adoption.d.ts +4 -4
  1169. package/lib/types/dsh-adapter/channel/session-adoption.d.ts.map +1 -1
  1170. package/lib/types/dsh-adapter/channel/session-adoption.js +3 -1
  1171. package/lib/types/dsh-adapter/channel/session-fork.d.ts +1 -1
  1172. package/lib/types/dsh-adapter/channel/session-fork.d.ts.map +1 -1
  1173. package/lib/types/dsh-adapter/channel/session-fork.js +2 -1
  1174. package/lib/types/dsh-adapter/channel/session-live-adoption.d.ts +7 -3
  1175. package/lib/types/dsh-adapter/channel/session-live-adoption.d.ts.map +1 -1
  1176. package/lib/types/dsh-adapter/channel/session-live-adoption.js +1 -1
  1177. package/lib/types/dsh-adapter/channel/session-metadata.d.ts +2 -9
  1178. package/lib/types/dsh-adapter/channel/session-metadata.d.ts.map +1 -1
  1179. package/lib/types/dsh-adapter/channel/session-reset.d.ts +5 -1
  1180. package/lib/types/dsh-adapter/channel/session-reset.d.ts.map +1 -1
  1181. package/lib/types/dsh-adapter/channel/session-reset.js +5 -0
  1182. package/lib/types/dsh-adapter/channel/session-resume.d.ts +5 -10
  1183. package/lib/types/dsh-adapter/channel/session-resume.d.ts.map +1 -1
  1184. package/lib/types/dsh-adapter/channel/session-resume.js +74 -113
  1185. package/lib/types/dsh-adapter/channel/session-rewind.d.ts +4 -4
  1186. package/lib/types/dsh-adapter/channel/session-rewind.d.ts.map +1 -1
  1187. package/lib/types/dsh-adapter/channel/session-rewind.js +7 -6
  1188. package/lib/types/dsh-adapter/channel/session-tree-actions.d.ts +4 -4
  1189. package/lib/types/dsh-adapter/channel/session-tree-actions.d.ts.map +1 -1
  1190. package/lib/types/dsh-adapter/channel/session-tree-actions.js +8 -7
  1191. package/lib/types/dsh-adapter/channel/settings-host.d.ts +1 -1
  1192. package/lib/types/dsh-adapter/channel/settings-host.d.ts.map +1 -1
  1193. package/lib/types/dsh-adapter/channel/settings-host.js +8 -0
  1194. package/lib/types/dsh-adapter/channel/skill-catalog.d.ts +5 -1
  1195. package/lib/types/dsh-adapter/channel/skill-catalog.d.ts.map +1 -1
  1196. package/lib/types/dsh-adapter/channel/skill-catalog.js +2 -2
  1197. package/lib/types/dsh-adapter/channel/state.d.ts +89 -2
  1198. package/lib/types/dsh-adapter/channel/state.d.ts.map +1 -1
  1199. package/lib/types/dsh-adapter/channel/state.js +9 -4
  1200. package/lib/types/dsh-adapter/channel/subagent-projection.d.ts +58 -3
  1201. package/lib/types/dsh-adapter/channel/subagent-projection.d.ts.map +1 -1
  1202. package/lib/types/dsh-adapter/channel/subagent-projection.js +153 -9
  1203. package/lib/types/dsh-adapter/channel/subagent-transcript.d.ts +114 -0
  1204. package/lib/types/dsh-adapter/channel/subagent-transcript.d.ts.map +1 -0
  1205. package/lib/types/dsh-adapter/channel/subagent-transcript.js +279 -0
  1206. package/lib/types/dsh-adapter/channel/transcript.d.ts +7 -15
  1207. package/lib/types/dsh-adapter/channel/transcript.d.ts.map +1 -1
  1208. package/lib/types/dsh-adapter/channel/transcript.js +17 -21
  1209. package/lib/types/dsh-adapter/channel/types.d.ts +16 -7
  1210. package/lib/types/dsh-adapter/channel/types.d.ts.map +1 -1
  1211. package/lib/types/dsh-adapter/channel/usage.d.ts +3 -6
  1212. package/lib/types/dsh-adapter/channel/usage.d.ts.map +1 -1
  1213. package/lib/types/dsh-adapter/channel/usage.js +5 -16
  1214. package/lib/types/dsh-adapter/channel/workspace-actions.d.ts.map +1 -1
  1215. package/lib/types/dsh-adapter/channel/workspace-actions.js +2 -1
  1216. package/lib/types/dsh-adapter/channel.d.ts +17 -8
  1217. package/lib/types/dsh-adapter/channel.d.ts.map +1 -1
  1218. package/lib/types/dsh-adapter/channel.js +24 -1006
  1219. package/lib/types/dsh-adapter/context-occupancy.d.ts +209 -0
  1220. package/lib/types/dsh-adapter/context-occupancy.d.ts.map +1 -0
  1221. package/lib/types/dsh-adapter/context-occupancy.js +304 -0
  1222. package/lib/types/dsh-adapter/contract.d.ts +14 -0
  1223. package/lib/types/dsh-adapter/contract.d.ts.map +1 -1
  1224. package/lib/types/dsh-adapter/contract.js +24 -0
  1225. package/lib/types/dsh-adapter/decision-guard.d.ts +24 -0
  1226. package/lib/types/dsh-adapter/decision-guard.d.ts.map +1 -1
  1227. package/lib/types/dsh-adapter/decision-guard.js +44 -0
  1228. package/lib/types/dsh-adapter/extension-events.d.ts +4 -1
  1229. package/lib/types/dsh-adapter/extension-events.d.ts.map +1 -1
  1230. package/lib/types/dsh-adapter/extension-events.js +22 -10
  1231. package/lib/types/dsh-adapter/index.d.ts +71 -1
  1232. package/lib/types/dsh-adapter/index.d.ts.map +1 -1
  1233. package/lib/types/dsh-adapter/index.js +47 -1
  1234. package/lib/types/dsh-adapter/jobs.d.ts +5 -3
  1235. package/lib/types/dsh-adapter/jobs.d.ts.map +1 -1
  1236. package/lib/types/dsh-adapter/jobs.js +53 -14
  1237. package/lib/types/dsh-adapter/migrate/parse/jsonl.d.ts +1 -16
  1238. package/lib/types/dsh-adapter/migrate/parse/jsonl.d.ts.map +1 -1
  1239. package/lib/types/dsh-adapter/migrate/parse/jsonl.js +3 -29
  1240. package/lib/types/dsh-adapter/migrate/sessionize.d.ts.map +1 -1
  1241. package/lib/types/dsh-adapter/migrate/sessionize.js +11 -12
  1242. package/lib/types/dsh-adapter/oauth-credential-source.d.ts +34 -0
  1243. package/lib/types/dsh-adapter/oauth-credential-source.d.ts.map +1 -0
  1244. package/lib/types/dsh-adapter/oauth-credential-source.js +66 -0
  1245. package/lib/types/dsh-adapter/panel-runtime-registry.d.ts +39 -0
  1246. package/lib/types/dsh-adapter/panel-runtime-registry.d.ts.map +1 -0
  1247. package/lib/types/dsh-adapter/panel-runtime-registry.js +84 -0
  1248. package/lib/types/dsh-adapter/panels.d.ts +251 -0
  1249. package/lib/types/dsh-adapter/panels.d.ts.map +1 -0
  1250. package/lib/types/dsh-adapter/panels.js +407 -0
  1251. package/lib/types/dsh-adapter/plugin-host.js +1 -1
  1252. package/lib/types/dsh-adapter/plugin.d.ts +55 -3
  1253. package/lib/types/dsh-adapter/plugin.d.ts.map +1 -1
  1254. package/lib/types/dsh-adapter/plugin.js +708 -135
  1255. package/lib/types/dsh-adapter/presets.d.ts +26 -6
  1256. package/lib/types/dsh-adapter/presets.d.ts.map +1 -1
  1257. package/lib/types/dsh-adapter/presets.js +29 -7
  1258. package/lib/types/dsh-adapter/provider-model-capabilities.d.ts +10 -0
  1259. package/lib/types/dsh-adapter/provider-model-capabilities.d.ts.map +1 -0
  1260. package/lib/types/dsh-adapter/provider-model-capabilities.js +80 -0
  1261. package/lib/types/dsh-adapter/providerWizard.d.ts +8 -2
  1262. package/lib/types/dsh-adapter/providerWizard.d.ts.map +1 -1
  1263. package/lib/types/dsh-adapter/providerWizard.js +118 -52
  1264. package/lib/types/dsh-adapter/questions.d.ts +29 -124
  1265. package/lib/types/dsh-adapter/questions.d.ts.map +1 -1
  1266. package/lib/types/dsh-adapter/questions.js +33 -267
  1267. package/lib/types/dsh-adapter/recap.d.ts +3 -15
  1268. package/lib/types/dsh-adapter/recap.d.ts.map +1 -1
  1269. package/lib/types/dsh-adapter/recap.js +3 -46
  1270. package/lib/types/dsh-adapter/sanitize.d.ts +4 -44
  1271. package/lib/types/dsh-adapter/sanitize.d.ts.map +1 -1
  1272. package/lib/types/dsh-adapter/sanitize.js +4 -84
  1273. package/lib/types/dsh-adapter/session-mount-heartbeat.d.ts +3 -1
  1274. package/lib/types/dsh-adapter/session-mount-heartbeat.d.ts.map +1 -1
  1275. package/lib/types/dsh-adapter/session-mount-heartbeat.js +4 -2
  1276. package/lib/types/dsh-adapter/sessions/digest.d.ts +18 -3
  1277. package/lib/types/dsh-adapter/sessions/digest.d.ts.map +1 -1
  1278. package/lib/types/dsh-adapter/sessions/digest.js +60 -27
  1279. package/lib/types/dsh-adapter/sessions/list.d.ts.map +1 -1
  1280. package/lib/types/dsh-adapter/sessions/list.js +6 -4
  1281. package/lib/types/dsh-adapter/sessions/recovery.d.ts +2 -2
  1282. package/lib/types/dsh-adapter/sessions/recovery.d.ts.map +1 -1
  1283. package/lib/types/dsh-adapter/sessions/recovery.js +23 -14
  1284. package/lib/types/dsh-adapter/sessions/store.d.ts +2 -0
  1285. package/lib/types/dsh-adapter/sessions/store.d.ts.map +1 -1
  1286. package/lib/types/dsh-adapter/sessions/store.js +1 -0
  1287. package/lib/types/dsh-adapter/sessions/types.d.ts +2 -0
  1288. package/lib/types/dsh-adapter/sessions/types.d.ts.map +1 -1
  1289. package/lib/types/dsh-adapter/sideQuestion.d.ts.map +1 -1
  1290. package/lib/types/dsh-adapter/sideQuestion.js +3 -13
  1291. package/lib/types/dsh-adapter/startup-args.d.ts +8 -0
  1292. package/lib/types/dsh-adapter/startup-args.d.ts.map +1 -0
  1293. package/lib/types/dsh-adapter/startup-args.js +34 -0
  1294. package/lib/types/dsh-adapter/subagents.d.ts.map +1 -1
  1295. package/lib/types/dsh-adapter/subagents.js +7 -0
  1296. package/lib/types/dsh-adapter/themes.d.ts +1 -1
  1297. package/lib/types/dsh-adapter/themes.d.ts.map +1 -1
  1298. package/lib/types/dsh-adapter/trajectory/agent-source.d.ts +84 -0
  1299. package/lib/types/dsh-adapter/trajectory/agent-source.d.ts.map +1 -0
  1300. package/lib/types/dsh-adapter/trajectory/agent-source.js +601 -0
  1301. package/lib/types/dsh-adapter/trajectory/guards.d.ts +31 -1
  1302. package/lib/types/dsh-adapter/trajectory/guards.d.ts.map +1 -1
  1303. package/lib/types/dsh-adapter/trajectory/guards.js +28 -0
  1304. package/lib/types/dsh-adapter/trajectory/index.d.ts +3 -1
  1305. package/lib/types/dsh-adapter/trajectory/index.d.ts.map +1 -1
  1306. package/lib/types/dsh-adapter/trajectory/index.js +1 -0
  1307. package/lib/types/dsh-adapter/trajectory/inspect.d.ts +7 -0
  1308. package/lib/types/dsh-adapter/trajectory/inspect.d.ts.map +1 -1
  1309. package/lib/types/dsh-adapter/trajectory/inspect.js +70 -2
  1310. package/lib/types/dsh-adapter/trajectory/projection.d.ts +4 -0
  1311. package/lib/types/dsh-adapter/trajectory/projection.d.ts.map +1 -1
  1312. package/lib/types/dsh-adapter/trajectory/projection.js +36 -0
  1313. package/lib/types/dsh-adapter/trajectory/types.d.ts +13 -0
  1314. package/lib/types/dsh-adapter/trajectory/types.d.ts.map +1 -1
  1315. package/lib/types/effortPrefs.d.ts +7 -0
  1316. package/lib/types/effortPrefs.d.ts.map +1 -1
  1317. package/lib/types/effortPrefs.js +11 -2
  1318. package/lib/types/handoffAck.d.ts +57 -0
  1319. package/lib/types/handoffAck.d.ts.map +1 -0
  1320. package/lib/types/handoffAck.js +154 -0
  1321. package/lib/types/handoffEvents.d.ts +52 -0
  1322. package/lib/types/handoffEvents.d.ts.map +1 -0
  1323. package/lib/types/handoffEvents.js +128 -0
  1324. package/lib/types/history.d.ts +24 -7
  1325. package/lib/types/history.d.ts.map +1 -1
  1326. package/lib/types/history.js +77 -18
  1327. package/lib/types/i18n.d.ts +3937 -97
  1328. package/lib/types/i18n.d.ts.map +1 -1
  1329. package/lib/types/i18n.js +1154 -12
  1330. package/lib/types/ink/colorize.d.ts.map +1 -1
  1331. package/lib/types/ink/colorize.js +8 -2
  1332. package/lib/types/ink/components/AlternateScreen.d.ts +12 -1
  1333. package/lib/types/ink/components/AlternateScreen.d.ts.map +1 -1
  1334. package/lib/types/ink/components/AlternateScreen.js +25 -4
  1335. package/lib/types/ink/components/App.d.ts +19 -2
  1336. package/lib/types/ink/components/App.d.ts.map +1 -1
  1337. package/lib/types/ink/components/App.js +114 -66
  1338. package/lib/types/ink/components/Image.d.ts +8 -1
  1339. package/lib/types/ink/components/Image.d.ts.map +1 -1
  1340. package/lib/types/ink/components/Image.js +2 -2
  1341. package/lib/types/ink/components/TerminalSizeContext.d.ts +7 -0
  1342. package/lib/types/ink/components/TerminalSizeContext.d.ts.map +1 -1
  1343. package/lib/types/ink/components/Text.d.ts +8 -1
  1344. package/lib/types/ink/components/Text.d.ts.map +1 -1
  1345. package/lib/types/ink/components/Text.js +11 -1
  1346. package/lib/types/ink/dom.d.ts.map +1 -1
  1347. package/lib/types/ink/dom.js +75 -3
  1348. package/lib/types/ink/hooks/use-input.d.ts +11 -0
  1349. package/lib/types/ink/hooks/use-input.d.ts.map +1 -1
  1350. package/lib/types/ink/hooks/use-input.js +17 -6
  1351. package/lib/types/ink/hooks/use-terminal-viewport.d.ts.map +1 -1
  1352. package/lib/types/ink/hooks/use-terminal-viewport.js +3 -1
  1353. package/lib/types/ink/ink.d.ts +18 -0
  1354. package/lib/types/ink/ink.d.ts.map +1 -1
  1355. package/lib/types/ink/ink.js +59 -10
  1356. package/lib/types/ink/kitty-graphics.d.ts +7 -2
  1357. package/lib/types/ink/kitty-graphics.d.ts.map +1 -1
  1358. package/lib/types/ink/kitty-graphics.js +15 -7
  1359. package/lib/types/ink/node-cache.d.ts +15 -1
  1360. package/lib/types/ink/node-cache.d.ts.map +1 -1
  1361. package/lib/types/ink/node-cache.js +4 -1
  1362. package/lib/types/ink/output.d.ts +10 -1
  1363. package/lib/types/ink/output.d.ts.map +1 -1
  1364. package/lib/types/ink/output.js +5 -3
  1365. package/lib/types/ink/parse-keypress.d.ts +49 -3
  1366. package/lib/types/ink/parse-keypress.d.ts.map +1 -1
  1367. package/lib/types/ink/parse-keypress.js +700 -127
  1368. package/lib/types/ink/reconciler.d.ts.map +1 -1
  1369. package/lib/types/ink/reconciler.js +9 -0
  1370. package/lib/types/ink/render-node-to-output.d.ts +1 -1
  1371. package/lib/types/ink/render-node-to-output.d.ts.map +1 -1
  1372. package/lib/types/ink/render-node-to-output.js +237 -9
  1373. package/lib/types/ink/render-stats.d.ts +35 -0
  1374. package/lib/types/ink/render-stats.d.ts.map +1 -0
  1375. package/lib/types/ink/render-stats.js +53 -0
  1376. package/lib/types/ink/screen.d.ts +26 -1
  1377. package/lib/types/ink/screen.d.ts.map +1 -1
  1378. package/lib/types/ink/screen.js +96 -1
  1379. package/lib/types/ink/selection.d.ts +23 -1
  1380. package/lib/types/ink/selection.d.ts.map +1 -1
  1381. package/lib/types/ink/selection.js +102 -26
  1382. package/lib/types/ink/sixel-codec.d.ts +21 -0
  1383. package/lib/types/ink/sixel-codec.d.ts.map +1 -1
  1384. package/lib/types/ink/sixel-codec.js +49 -8
  1385. package/lib/types/ink/sixel-graphics.js +2 -2
  1386. package/lib/types/ink/styles.d.ts +46 -0
  1387. package/lib/types/ink/styles.d.ts.map +1 -1
  1388. package/lib/types/ink/terminal-image.d.ts +7 -0
  1389. package/lib/types/ink/terminal-image.d.ts.map +1 -1
  1390. package/lib/types/ink/terminal-querier.d.ts +1 -1
  1391. package/lib/types/ink/terminal-querier.js +4 -4
  1392. package/lib/types/ink/text-decoration.d.ts +49 -0
  1393. package/lib/types/ink/text-decoration.d.ts.map +1 -0
  1394. package/lib/types/ink/text-decoration.js +235 -0
  1395. package/lib/types/ink/update-overflow-guard.d.ts +9 -0
  1396. package/lib/types/ink/update-overflow-guard.d.ts.map +1 -1
  1397. package/lib/types/ink/update-overflow-guard.js +41 -0
  1398. package/lib/types/ink/wrap-text.d.ts.map +1 -1
  1399. package/lib/types/ink/wrap-text.js +5 -1
  1400. package/lib/types/kernelPrefs.d.ts +51 -0
  1401. package/lib/types/kernelPrefs.d.ts.map +1 -0
  1402. package/lib/types/kernelPrefs.js +126 -0
  1403. package/lib/types/math/renderer.d.ts +2 -0
  1404. package/lib/types/math/renderer.d.ts.map +1 -1
  1405. package/lib/types/math/renderer.js +4 -0
  1406. package/lib/types/modelRecents.d.ts +10 -2
  1407. package/lib/types/modelRecents.d.ts.map +1 -1
  1408. package/lib/types/modelRecents.js +20 -7
  1409. package/lib/types/onboardingPrefs.d.ts +52 -0
  1410. package/lib/types/onboardingPrefs.d.ts.map +1 -0
  1411. package/lib/types/onboardingPrefs.js +107 -0
  1412. package/lib/types/panels.d.ts +4 -0
  1413. package/lib/types/panels.d.ts.map +1 -0
  1414. package/lib/types/panels.js +4 -0
  1415. package/lib/types/screens/AgentTranscriptScene.d.ts +42 -0
  1416. package/lib/types/screens/AgentTranscriptScene.d.ts.map +1 -0
  1417. package/lib/types/screens/AgentTranscriptScene.js +269 -0
  1418. package/lib/types/screens/Chat.d.ts +66 -7
  1419. package/lib/types/screens/Chat.d.ts.map +1 -1
  1420. package/lib/types/screens/Chat.js +1720 -381
  1421. package/lib/types/screens/Launchpad.d.ts +211 -0
  1422. package/lib/types/screens/Launchpad.d.ts.map +1 -0
  1423. package/lib/types/screens/Launchpad.js +726 -0
  1424. package/lib/types/screens/Onboarding.d.ts +37 -0
  1425. package/lib/types/screens/Onboarding.d.ts.map +1 -0
  1426. package/lib/types/screens/Onboarding.js +492 -0
  1427. package/lib/types/screens/SessionSupervisor.d.ts +3 -3
  1428. package/lib/types/screens/SessionSupervisor.d.ts.map +1 -1
  1429. package/lib/types/screens/SessionSupervisor.js +87 -17
  1430. package/lib/types/screens/Settings.d.ts.map +1 -1
  1431. package/lib/types/screens/Settings.js +211 -7
  1432. package/lib/types/screens/StatusLine.d.ts +40 -1
  1433. package/lib/types/screens/StatusLine.d.ts.map +1 -1
  1434. package/lib/types/screens/StatusLine.js +160 -30
  1435. package/lib/types/screens/StatusMetrics.d.ts +75 -17
  1436. package/lib/types/screens/StatusMetrics.d.ts.map +1 -1
  1437. package/lib/types/screens/StatusMetrics.js +161 -30
  1438. package/lib/types/screens/TrajectoryScene.d.ts.map +1 -1
  1439. package/lib/types/screens/TrajectoryScene.js +74 -12
  1440. package/lib/types/screens/chat/backendCommands.d.ts +37 -0
  1441. package/lib/types/screens/chat/backendCommands.d.ts.map +1 -0
  1442. package/lib/types/screens/chat/backendCommands.js +51 -0
  1443. package/lib/types/screens/chat/useBackendChannels.d.ts +20 -0
  1444. package/lib/types/screens/chat/useBackendChannels.d.ts.map +1 -0
  1445. package/lib/types/screens/chat/useBackendChannels.js +117 -0
  1446. package/lib/types/screens/chat/useKernelPicker.d.ts +23 -0
  1447. package/lib/types/screens/chat/useKernelPicker.d.ts.map +1 -0
  1448. package/lib/types/screens/chat/useKernelPicker.js +72 -0
  1449. package/lib/types/screens/chatOverlay.d.ts +49 -2
  1450. package/lib/types/screens/chatOverlay.d.ts.map +1 -1
  1451. package/lib/types/screens/chatOverlay.js +12 -0
  1452. package/lib/types/screens/sessionSupervisor/model.d.ts +1 -2
  1453. package/lib/types/screens/sessionSupervisor/model.d.ts.map +1 -1
  1454. package/lib/types/screens/sessionSupervisor/model.js +4 -2
  1455. package/lib/types/screens/sessionSupervisor/useForeignSessions.d.ts.map +1 -1
  1456. package/lib/types/screens/sessionSupervisor/useForeignSessions.js +5 -1
  1457. package/lib/types/screens/sessionSupervisor/useSessionSupervisor.d.ts +14 -0
  1458. package/lib/types/screens/sessionSupervisor/useSessionSupervisor.d.ts.map +1 -1
  1459. package/lib/types/screens/sessionSupervisor/useSessionSupervisor.js +104 -25
  1460. package/lib/types/sessionHistory.d.ts +18 -1
  1461. package/lib/types/sessionHistory.d.ts.map +1 -1
  1462. package/lib/types/sessionHistory.js +46 -4
  1463. package/lib/types/sessionPins.d.ts +7 -0
  1464. package/lib/types/sessionPins.d.ts.map +1 -1
  1465. package/lib/types/sessionPins.js +9 -0
  1466. package/lib/types/sessions/resumeFailure.d.ts.map +1 -1
  1467. package/lib/types/sessions/resumeFailure.js +2 -1
  1468. package/lib/types/settings/definitions.d.ts +167 -0
  1469. package/lib/types/settings/definitions.d.ts.map +1 -1
  1470. package/lib/types/settings/definitions.js +129 -0
  1471. package/lib/types/terminal-utils/hyperlink.d.ts +2 -2
  1472. package/lib/types/terminal-utils/hyperlink.d.ts.map +1 -1
  1473. package/lib/types/terminal-utils/hyperlink.js +21 -4
  1474. package/lib/types/terminal-utils/markdown.d.ts +34 -6
  1475. package/lib/types/terminal-utils/markdown.d.ts.map +1 -1
  1476. package/lib/types/terminal-utils/markdown.js +257 -66
  1477. package/lib/types/theme.d.ts +49 -8
  1478. package/lib/types/theme.d.ts.map +1 -1
  1479. package/lib/types/theme.js +514 -18
  1480. package/lib/types/tips.js +7 -7
  1481. package/lib/types/trajectory/effortIgnition.d.ts +25 -7
  1482. package/lib/types/trajectory/effortIgnition.d.ts.map +1 -1
  1483. package/lib/types/trajectory/effortIgnition.js +106 -34
  1484. package/lib/types/trajectory/window.d.ts +26 -0
  1485. package/lib/types/trajectory/window.d.ts.map +1 -0
  1486. package/lib/types/trajectory/window.js +27 -0
  1487. package/lib/types/tuiDisplayPrefs.d.ts +79 -2
  1488. package/lib/types/tuiDisplayPrefs.d.ts.map +1 -1
  1489. package/lib/types/tuiDisplayPrefs.js +118 -0
  1490. package/lib/types/update.d.ts +141 -12
  1491. package/lib/types/update.d.ts.map +1 -1
  1492. package/lib/types/update.js +386 -62
  1493. package/lib/types/utils/bmp.d.ts.map +1 -1
  1494. package/lib/types/utils/bmp.js +8 -1
  1495. package/lib/types/utils/clipboard.d.ts.map +1 -1
  1496. package/lib/types/utils/clipboard.js +25 -6
  1497. package/lib/types/utils/crashDetail.d.ts +56 -0
  1498. package/lib/types/utils/crashDetail.d.ts.map +1 -0
  1499. package/lib/types/utils/crashDetail.js +175 -0
  1500. package/lib/types/utils/credentials.d.ts.map +1 -1
  1501. package/lib/types/utils/credentials.js +5 -1
  1502. package/lib/types/utils/draftWordBoundary.d.ts +23 -0
  1503. package/lib/types/utils/draftWordBoundary.d.ts.map +1 -0
  1504. package/lib/types/utils/draftWordBoundary.js +161 -0
  1505. package/lib/types/utils/fileTarget.d.ts.map +1 -1
  1506. package/lib/types/utils/fileTarget.js +7 -9
  1507. package/lib/types/utils/imageResize.d.ts +9 -23
  1508. package/lib/types/utils/imageResize.d.ts.map +1 -1
  1509. package/lib/types/utils/imageResize.js +24 -20
  1510. package/lib/types/utils/inputPaste.d.ts +63 -0
  1511. package/lib/types/utils/inputPaste.d.ts.map +1 -0
  1512. package/lib/types/utils/inputPaste.js +148 -0
  1513. package/lib/types/utils/intl.d.ts +8 -0
  1514. package/lib/types/utils/intl.d.ts.map +1 -1
  1515. package/lib/types/utils/intl.js +11 -0
  1516. package/lib/types/utils/jsonl.d.ts +24 -0
  1517. package/lib/types/utils/jsonl.d.ts.map +1 -0
  1518. package/lib/types/utils/jsonl.js +36 -0
  1519. package/lib/types/utils/keymap.d.ts +13 -3
  1520. package/lib/types/utils/keymap.d.ts.map +1 -1
  1521. package/lib/types/utils/keymap.js +27 -5
  1522. package/package.json +36 -9
  1523. package/{dsh-ecosystem-spec → tui-profile}/registry/README.md +1 -1
  1524. package/{dsh-ecosystem-spec → tui-profile}/registry/registry-0.15.json +1 -1
  1525. /package/{dsh-ecosystem-spec → tui-profile}/protocols/profile-definitions.d.ts +0 -0
  1526. /package/{dsh-ecosystem-spec → tui-profile}/protocols/profile-definitions.js +0 -0
  1527. /package/{dsh-ecosystem-spec → tui-profile}/protocols/tui-channel-http.d.ts +0 -0
  1528. /package/{dsh-ecosystem-spec → tui-profile}/protocols/tui-channel-http.js +0 -0
  1529. /package/{dsh-ecosystem-spec → tui-profile}/protocols/tui-channel.d.ts +0 -0
  1530. /package/{dsh-ecosystem-spec → tui-profile}/protocols/tui-channel.js +0 -0
  1531. /package/{dsh-ecosystem-spec → tui-profile}/protocols/tui-contributions.d.ts +0 -0
  1532. /package/{dsh-ecosystem-spec → tui-profile}/protocols/tui-contributions.js +0 -0
  1533. /package/{dsh-ecosystem-spec → tui-profile}/registry/contracts/decision-events-v1alpha1.json +0 -0
  1534. /package/{dsh-ecosystem-spec → tui-profile}/registry/contracts/scene-v1alpha1.json +0 -0
  1535. /package/{dsh-ecosystem-spec → tui-profile}/registry/contracts/settings-section-v1alpha1.json +0 -0
  1536. /package/{dsh-ecosystem-spec → tui-profile}/registry/contracts/tui-channel-v1alpha1.json +0 -0
  1537. /package/{dsh-ecosystem-spec → tui-profile}/registry/contracts/workspace-provider-v1alpha1.json +0 -0
  1538. /package/{dsh-ecosystem-spec → tui-profile}/registry/host-descriptor.tui.example.json +0 -0
  1539. /package/{dsh-ecosystem-spec → tui-profile}/registry/permissions-0.1.json +0 -0
  1540. /package/{dsh-ecosystem-spec → tui-profile}/schemas/conformance-claim.schema.json +0 -0
  1541. /package/{dsh-ecosystem-spec → tui-profile}/schemas/effect-ledger-record.schema.json +0 -0
  1542. /package/{dsh-ecosystem-spec → tui-profile}/schemas/host-descriptor.schema.json +0 -0
@@ -0,0 +1,852 @@
1
+ import { t } from '../../../i18n.js';
2
+ import { CLAUDE_BACKEND_ID, CLI_CAPABILITY, cliVersionDrift, VALIDATED_CLI_VERSIONS, VALIDATED_SDK_VERSION } from '../contract.js';
3
+ import { isAuthFailure, CLAUDE_OAUTH_PROVIDER } from '../auth.js';
4
+ import { accountView } from '../controls.js';
5
+ import { buildQueryOptions } from '../options.js';
6
+ import { createClaudeDialogBridge, SUPPORTED_DIALOG_KINDS } from '../dialogs.js';
7
+ import { createClaudeActivityPublisher } from '../activity.js';
8
+ import { createClaudePermissionBridge, WITHDRAWN_MESSAGE } from '../permissions.js';
9
+ import { createStderrSink } from '../process.js';
10
+ import { memoryClaudePrefs } from '../prefs.js';
11
+ import { fileClaudeChannels } from '../channels.js';
12
+ import { fileClaudeChannelTokens } from '../../shared/channel-tokens.js';
13
+ import { createClaudeTranscriptHistory } from '../older-history.js';
14
+ import { join } from 'node:path';
15
+ import { DATA_DIR } from '../../../utils/paths.js';
16
+ import { envSlotsServeModel, mergedModelEnv } from '../modelEnv.js';
17
+ import { claudeConfigDir } from '../transcript-file.js';
18
+ import { CLAUDE_IMAGE_LIMITS, claudeImageBlocks } from '../images.js';
19
+ import { createClaudeSideQuery } from '../side-query.js';
20
+ import { writeFlagSettingsFile } from '../flag-settings.js';
21
+ import { createClaudeTranslator } from '../translate.js';
22
+ import { errorText, rec } from '../narrow.js';
23
+ import { accountLines, authSourceLabel, createSessionAuth } from './auth.js';
24
+ import { createSessionControls } from './channels.js';
25
+ import { createInbox, priorityOf, wakeOf } from './input.js';
26
+ import { createSessionStore } from './store.js';
27
+ import { sessionTaskCapabilities } from './subagents.js';
28
+ const REAL_CLOCK = {
29
+ setTimeout: (callback, ms) => {
30
+ const handle = setTimeout(callback, ms);
31
+ handle.unref();
32
+ return handle;
33
+ },
34
+ clearTimeout: handle => { clearTimeout(handle); },
35
+ };
36
+ /** The CLI's answer to `resume` of a session it has no transcript for. */
37
+ const NO_CONVERSATION = /No conversation found with session ID/iu;
38
+ /** Open one session: start the query, wait for its handshake, start the
39
+ * consumer loop. Throws (after cleaning up) when the CLI cannot start. */
40
+ export async function openClaudeSession(input) {
41
+ // The replayed history goes to the channel once (`history()`) and is then
42
+ // let go: a long transcript's events must not live as long as the session.
43
+ const { resume, ...deps } = input;
44
+ const resumed = resume !== undefined;
45
+ const compactedFrom = resume?.compactedFrom;
46
+ let replayHistory = resume?.events;
47
+ /** The CLI's current session id: the opened one until a
48
+ * `conversation_reset` moves the CLI to a new one. */
49
+ let currentSessionId = deps.sessionId;
50
+ /** A reset was seen; the next frame naming another id adopts it. */
51
+ let resetPending = false;
52
+ const clock = deps.clock ?? REAL_CLOCK;
53
+ const forceSettleMs = deps.forceSettleMs ?? 30_000;
54
+ const prefs = deps.prefs ?? memoryClaudePrefs();
55
+ // The relay channel profiles: the file store under ~/.dsh-tui by default,
56
+ // injectable like prefs (tests run an in-memory store).
57
+ const channels = deps.channels ?? fileClaudeChannels(join(DATA_DIR, 'backends', 'claude'), message => deps.host.debug(message));
58
+ // The channel-token seam: ~/.dsh/.credentials.yaml by default (the
59
+ // /provider precedent), injectable for tests.
60
+ const channelTokens = deps.channelTokens ?? fileClaudeChannelTokens(undefined, message => deps.host.debug(message));
61
+ const listeners = new Set();
62
+ /** Batches produced before the channel subscribed (handshake, start notices). */
63
+ const backlog = [];
64
+ let status = 'starting';
65
+ let disposing = false;
66
+ let settlingPrompts = false;
67
+ let disposePromise;
68
+ let cliVersion;
69
+ let cliCapabilities = [];
70
+ /** `system/init.apiKeySource`: the CLI's own account of its credential. */
71
+ let apiKeySource;
72
+ /** `accountInfo()` once fetched (never surfaces the email). */
73
+ let account;
74
+ let forceTimer;
75
+ /** The credential plan the live query runs on. */
76
+ let authPlan = deps.auth?.plan ?? { source: 'claude-login', env: deps.env };
77
+ /** The CLI's config directory under the live plan's environment. */
78
+ const configDir = () => claudeConfigDir(authPlan.env.CLAUDE_CONFIG_DIR === undefined ? process.env : authPlan.env);
79
+ /** The model-routing env the CLI child applies (modelEnv.ts), read per
80
+ * run so a reconnect's renewed plan counts. */
81
+ const childModelEnv = () => mergedModelEnv(configDir(), authPlan.env, new Set(Object.keys(authPlan.settings?.env ?? {})));
82
+ let authFailed = false;
83
+ /**
84
+ * The CLI wrote this session's transcript (an input started, or a turn
85
+ * reported its result). Until then a restart must create the session with
86
+ * the same id: `resume` of an id the CLI has no transcript for fails its
87
+ * handshake ("No conversation found").
88
+ */
89
+ let persisted = resumed;
90
+ /** What this session pushed, by input uuid, until the CLI starts it: a
91
+ * reconnect re-delivers what the old CLI never started. */
92
+ const pushed = new Map();
93
+ /** Callers waiting for the open turn to close (a deferred `/login`). */
94
+ const idleWaiters = [];
95
+ /** No turn open and nothing queued the CLI would start next. */
96
+ const idle = () => !translator.turnOpen && translator.unstartedInputs().length === 0;
97
+ const settleIdleWaiters = (error) => {
98
+ if (error === undefined && !idle())
99
+ return;
100
+ for (const waiter of idleWaiters.splice(0)) {
101
+ if (error === undefined)
102
+ waiter.resolve();
103
+ else
104
+ waiter.reject(error);
105
+ }
106
+ };
107
+ const translator = createClaudeTranslator({
108
+ cwd: deps.cwd,
109
+ userRows: 'lifecycle',
110
+ debug: deps.host.debug,
111
+ // A resumed session continues the replay's numbering and task table.
112
+ ...(resume === undefined ? {} : { start: { ...resume.start, ...(resume.tasks === undefined || resume.tasks.length === 0 ? {} : { tasks: resume.tasks }) } }),
113
+ });
114
+ translator.noteMode(deps.start.mode);
115
+ // The working line's publisher (activity.ts): folded from the translator's
116
+ // own state after every batch, never from a second parse of the stream. A
117
+ // parked permission/dialog prompt is the waiting phase; the fold dedupes,
118
+ // so folding after every emit publishes only real changes.
119
+ const activityPublisher = createClaudeActivityPublisher();
120
+ const publishActivity = () => {
121
+ activityPublisher.fold(translator.activityState(), asking || dialogsOpen);
122
+ };
123
+ const emit = (events, wake = 'sync', duringDispose = false) => {
124
+ if (disposing && !duringDispose)
125
+ return;
126
+ if (events.length === 0)
127
+ return;
128
+ const meta = { replay: false, wake };
129
+ if (listeners.size === 0) {
130
+ backlog.push([events, meta]);
131
+ publishActivity();
132
+ return;
133
+ }
134
+ for (const listener of [...listeners]) {
135
+ try {
136
+ listener(events, meta);
137
+ }
138
+ catch (error) {
139
+ deps.host.debug(`claude: listener failed (${errorText(error)})`);
140
+ }
141
+ }
142
+ publishActivity();
143
+ };
144
+ const clearForceTimer = () => {
145
+ if (forceTimer === undefined)
146
+ return;
147
+ clock.clearTimeout(forceTimer);
148
+ forceTimer = undefined;
149
+ };
150
+ /** Prompts are parked: the session needs the user. Only
151
+ * transitions are announced; the CLI's own `session_state_changed`
152
+ * frames say the same and are idempotent with these. */
153
+ let asking = false;
154
+ const bridge = createClaudePermissionBridge({
155
+ cwd: deps.cwd,
156
+ emit: events => emit(events, 'sync', settlingPrompts),
157
+ debug: deps.host.debug,
158
+ closing: () => disposing,
159
+ onPendingChange: count => {
160
+ const next = count > 0;
161
+ if (next === asking)
162
+ return;
163
+ asking = next;
164
+ if (disposing)
165
+ return;
166
+ if (next && !dialogsOpen)
167
+ emit([{ type: 'session.status', status: 'requires-action' }], 'none');
168
+ else if (!next && !dialogsOpen && translator.turnOpen)
169
+ emit([{ type: 'session.status', status: 'running' }], 'none');
170
+ },
171
+ });
172
+ /** MCP elicitation and user dialogs (dialogs.ts): parked like prompts. */
173
+ let dialogsOpen = false;
174
+ const dialogs = createClaudeDialogBridge({
175
+ emit: events => emit(events, 'sync', settlingPrompts),
176
+ debug: deps.host.debug,
177
+ closing: () => disposing,
178
+ onPendingChange: count => {
179
+ const next = count > 0;
180
+ if (next === dialogsOpen)
181
+ return;
182
+ dialogsOpen = next;
183
+ if (disposing)
184
+ return;
185
+ if (next && !asking)
186
+ emit([{ type: 'session.status', status: 'requires-action' }], 'none');
187
+ else if (!next && !asking && translator.turnOpen)
188
+ emit([{ type: 'session.status', status: 'running' }], 'none');
189
+ },
190
+ });
191
+ const stderrSink = createStderrSink(line => {
192
+ deps.host.debug(`[claude-stderr] ${line}`);
193
+ deps.host.stderr?.(line);
194
+ });
195
+ const startRun = (resume) => {
196
+ const inbox = createInbox();
197
+ const abortController = new AbortController();
198
+ const startModel = prefs.read().model ?? deps.model;
199
+ // The CLI checks an explicit `model` against its official catalog and
200
+ // refuses a relay model name (`[claude-code:unrecognized_model]`), while
201
+ // the same name in an env slot (ANTHROPIC_MODEL /
202
+ // ANTHROPIC_DEFAULT_<TIER>_MODEL) routes fine. When the child's env
203
+ // already routes to the model, the parameter is left out; anything
204
+ // else is still pinned explicitly.
205
+ const explicitModel = startModel !== undefined && envSlotsServeModel(childModelEnv(), startModel)
206
+ ? undefined
207
+ : startModel;
208
+ const startEffort = prefs.read().effort ?? deps.effort;
209
+ // The plan's flag layer (a channel token may ride it) goes by file, out
210
+ // of the CLI's argv; it lives as long as this run.
211
+ const flagSettings = authPlan.settings === undefined ? undefined : writeFlagSettingsFile(authPlan.settings);
212
+ let query;
213
+ try {
214
+ query = deps.sdk.query({
215
+ prompt: inbox,
216
+ options: buildQueryOptions({
217
+ cwd: deps.cwd,
218
+ // A reconnect resumes the same session (same id, same transcript);
219
+ // the SDK refuses `sessionId` together with `resume`.
220
+ ...(resume ? { resume: currentSessionId } : { sessionId: currentSessionId }),
221
+ permissionMode: (translator.mode ?? deps.start.mode),
222
+ executable: deps.executable.path,
223
+ env: authPlan.env,
224
+ ...(flagSettings === undefined ? {} : { settingsFile: flagSettings.path }),
225
+ canUseTool: bridge.canUseTool,
226
+ onElicitation: dialogs.onElicitation,
227
+ onUserDialog: dialogs.onUserDialog,
228
+ supportedDialogKinds: SUPPORTED_DIALOG_KINDS,
229
+ stderr: stderrSink,
230
+ abortController,
231
+ ...(explicitModel === undefined ? {} : { model: explicitModel }),
232
+ ...(startEffort === undefined ? {} : { effort: startEffort }),
233
+ // Echoes are the user-row fallback for a CLI without lifecycle
234
+ // frames; requesting them is harmless when lifecycle frames win (the
235
+ // translator ignores an echo of an input it already confirmed).
236
+ replayUserMessages: true,
237
+ }),
238
+ });
239
+ }
240
+ catch (error) {
241
+ flagSettings?.dispose();
242
+ throw error;
243
+ }
244
+ return { inbox, abortController, query, ...(flagSettings === undefined ? {} : { flagSettings }), consumer: Promise.resolve() };
245
+ };
246
+ let run = startRun(resumed);
247
+ /** Shut one run's CLI down; safe to call from any state. */
248
+ const stopRun = (target) => {
249
+ target.inbox.close();
250
+ try {
251
+ target.query.close();
252
+ }
253
+ catch (error) {
254
+ deps.host.debug(`claude: close failed (${errorText(error)})`);
255
+ }
256
+ target.abortController.abort();
257
+ target.flagSettings?.dispose();
258
+ };
259
+ /** This session in the backend's reference vocabulary (its id follows a
260
+ * conversation reset). */
261
+ const ownRef = { backendId: CLAUDE_BACKEND_ID, get sessionId() { return currentSessionId; } };
262
+ const store = createSessionStore({
263
+ deps,
264
+ ownRef,
265
+ emit,
266
+ get run() { return run; },
267
+ get persisted() { return persisted; },
268
+ get currentSessionId() { return currentSessionId; },
269
+ });
270
+ /** Shut the session down; safe to call from any state. */
271
+ const teardown = () => {
272
+ clearForceTimer();
273
+ // Pending prompt settlements must reach the channel before the query closes.
274
+ settlingPrompts = true;
275
+ bridge.settleAll();
276
+ dialogs.settleAll();
277
+ settlingPrompts = false;
278
+ stopRun(run);
279
+ };
280
+ /** The CLI went away (or the loop failed) without our dispose. */
281
+ const onExit = (error) => {
282
+ if (disposing)
283
+ return;
284
+ disposing = true;
285
+ status = 'disposed';
286
+ const reason = error === undefined ? t('claude-process-ended') : errorText(error);
287
+ teardown();
288
+ emit([
289
+ ...translator.forceCloseTurn({ kind: 'error', message: reason }),
290
+ // The process's background work went with it (the level is per process).
291
+ { type: 'tasks.snapshot', taskIds: [] },
292
+ { type: 'notice', level: 'error', text: t('claude-process-exited', { reason }) },
293
+ { type: 'session.status', status: 'disposed' },
294
+ ], 'sync', true);
295
+ settleIdleWaiters(new Error(t('claude-session-closed')));
296
+ };
297
+ const fetchAccount = (target) => {
298
+ const query = target.query;
299
+ if (typeof query.accountInfo !== 'function')
300
+ return;
301
+ void query.accountInfo().then(info => { if (target === run)
302
+ account = info; }, (error) => {
303
+ deps.host.debug(`claude: accountInfo failed (${errorText(error)})`);
304
+ });
305
+ };
306
+ /** Seed the model before any UI asks for it, with `startRun`'s priority:
307
+ * the persisted choice, the start model, else what the handshake says
308
+ * (its `model`, else the `default` catalog row's resolved model). Only
309
+ * an empty model is seeded: a resumed session keeps the replay's, and a
310
+ * reconnect keeps a model the user switched to. */
311
+ const seedModel = (init) => {
312
+ if (translator.model !== '')
313
+ return;
314
+ const catalog = (Array.isArray(init?.models) ? init.models : []).flatMap((row) => {
315
+ if (typeof row !== 'object' || row === null)
316
+ return [];
317
+ const value = row.value;
318
+ return typeof value === 'string' ? [{ value, resolvedModel: row.resolvedModel }] : [];
319
+ });
320
+ const defaultRow = catalog.find(row => row.value === 'default');
321
+ const fromRow = defaultRow === undefined ? undefined
322
+ : typeof defaultRow.resolvedModel === 'string' && defaultRow.resolvedModel !== '' ? defaultRow.resolvedModel : defaultRow.value;
323
+ const handshakeModel = typeof init?.model === 'string' && init.model !== '' ? init.model : fromRow;
324
+ const model = prefs.read().model ?? deps.model ?? handshakeModel;
325
+ if (model === undefined)
326
+ return;
327
+ emit(translator.noteModel(model), 'none');
328
+ };
329
+ /** The handshake of one run: capabilities, model catalog, commands. */
330
+ const handshake = async (target) => {
331
+ let timer;
332
+ const init = await Promise.race([
333
+ target.query.initializationResult(),
334
+ new Promise((_, reject) => {
335
+ timer = clock.setTimeout(() => reject(new Error(t('claude-start-timeout'))), deps.initTimeoutMs ?? 60_000);
336
+ }),
337
+ ]).finally(() => clock.clearTimeout(timer));
338
+ const result = rec(init);
339
+ // Capabilities come from this handshake alone (a run that reports none
340
+ // must not inherit the previous CLI's): without `msg_lifecycle_v1` user
341
+ // rows come from the replay echo.
342
+ const capabilities = result?.capabilities;
343
+ cliCapabilities = Array.isArray(capabilities) ? capabilities.filter((item) => typeof item === 'string') : [];
344
+ translator.setUserRows(cliCapabilities.includes(CLI_CAPABILITY.lifecycle) ? 'lifecycle' : 'replay');
345
+ seedModel(result);
346
+ fetchAccount(target);
347
+ return result;
348
+ };
349
+ /** The CLI continues under another session id (after a reset). */
350
+ const adoptSessionId = (next) => {
351
+ const previous = currentSessionId;
352
+ currentSessionId = next;
353
+ deps.host.debug(`claude: the session continues as ${next} (was ${previous})`);
354
+ try {
355
+ prefs.touch(next);
356
+ if (prefs.read().lastSession === previous)
357
+ prefs.write({ lastSession: next });
358
+ // The accent belongs to the TUI's session, which continues.
359
+ const color = prefs.color(previous);
360
+ if (color !== '')
361
+ prefs.setColor(next, color);
362
+ }
363
+ catch (error) {
364
+ deps.host.debug(`claude: prefs update after reset failed (${errorText(error)})`);
365
+ }
366
+ };
367
+ const afterMessage = (message, events) => {
368
+ const value = rec(message);
369
+ if (value?.type === 'system' && value.subtype === 'elicitation_complete' && typeof value.mcp_server_name === 'string' && typeof value.elicitation_id === 'string') {
370
+ dialogs.complete(value.mcp_server_name, value.elicitation_id);
371
+ }
372
+ // After a reset the CLI runs under a new session id, named by the frames
373
+ // that follow (not by the reset frame's `new_conversation_id`).
374
+ if (value?.type === 'conversation_reset') {
375
+ resetPending = true;
376
+ }
377
+ else if (resetPending && typeof value?.session_id === 'string' && value.session_id !== '' && value.session_id !== currentSessionId) {
378
+ resetPending = false;
379
+ adoptSessionId(value.session_id);
380
+ }
381
+ if (value?.type === 'result' || (value?.type === 'system' && value.subtype === 'session_state_changed' && value.state === 'idle')) {
382
+ clearForceTimer();
383
+ }
384
+ if (value?.type === 'system' && value.subtype === 'init') {
385
+ if (Array.isArray(value.capabilities))
386
+ cliCapabilities = value.capabilities.filter((item) => typeof item === 'string');
387
+ if (typeof value.apiKeySource === 'string')
388
+ apiKeySource = value.apiKeySource;
389
+ if (Array.isArray(value.terminal_slash_commands))
390
+ controls.setTerminalOnly(value.terminal_slash_commands.filter((item) => typeof item === 'string'));
391
+ }
392
+ if (value?.type === 'result' || (value?.type === 'command_lifecycle' && value.state === 'started')) {
393
+ persisted = true;
394
+ store.flushRename();
395
+ }
396
+ // While a reconnect is renewing the credential, the old CLI's late
397
+ // failing turn is the failure being handled, not a new one.
398
+ if (auth.reconnecting === undefined && isAuthFailure(message))
399
+ authFailed = true;
400
+ if (value?.type === 'result') {
401
+ if (auth.reconnecting !== undefined) {
402
+ authFailed = false;
403
+ }
404
+ else if (authFailed) {
405
+ authFailed = false;
406
+ auth.onAuthFailure();
407
+ }
408
+ else if (value.is_error !== true) {
409
+ auth.attempts = 0;
410
+ }
411
+ // Forget pushes the CLI has started (only unstarted ones are kept).
412
+ const unstarted = new Set(translator.unstartedInputs());
413
+ for (const uuid of pushed.keys())
414
+ if (!unstarted.has(uuid))
415
+ pushed.delete(uuid);
416
+ }
417
+ for (const event of events) {
418
+ // Every confirmation of the model (a re-init's `model.changed`, the
419
+ // first init's `session.ready`, a `message_start` drift) re-checks
420
+ // the effort against what that model declares (controls.ts).
421
+ if ((event.type === 'model.changed' || event.type === 'session.ready') && event.model !== '') {
422
+ controls.noteConfirmedModel(event.model);
423
+ }
424
+ if (event.type !== 'session.ready' || event.backendVersion === undefined || cliVersion !== undefined)
425
+ continue;
426
+ cliVersion = event.backendVersion;
427
+ // Drift is reported, never a stop.
428
+ if (cliVersionDrift(cliVersion) !== undefined) {
429
+ emit([{ type: 'notice', level: 'warning', text: t('claude-version-drift', { version: cliVersion, validated: VALIDATED_CLI_VERSIONS.join(', ') }) }]);
430
+ }
431
+ }
432
+ };
433
+ /**
434
+ * Runs stopped on purpose ahead of their replacement (an auth-failure
435
+ * reconnect stops the old CLI before it renews the credential): their late
436
+ * messages are not the session's any more, and their end is not a loss.
437
+ */
438
+ const retired = new WeakSet();
439
+ /** Consume one run until it ends; an ended run that is no longer the
440
+ * current one was replaced on purpose (reconnect), not lost. */
441
+ const consume = (target) => (async () => {
442
+ try {
443
+ for await (const message of target.query) {
444
+ if (target !== run || retired.has(target))
445
+ return;
446
+ let events;
447
+ try {
448
+ events = translator.translate(message);
449
+ }
450
+ catch (error) {
451
+ // A translator bug must not take the session down with it.
452
+ deps.host.debug(`claude: translate failed (${errorText(error)})`);
453
+ continue;
454
+ }
455
+ for (const event of events) {
456
+ if (event.type === 'session.status' && event.status !== 'disposed' && !disposing)
457
+ status = event.status;
458
+ }
459
+ emit(events, wakeOf(message, events));
460
+ afterMessage(message, events);
461
+ if (idleWaiters.length > 0)
462
+ settleIdleWaiters();
463
+ }
464
+ if (target === run && !retired.has(target))
465
+ onExit(undefined);
466
+ }
467
+ catch (error) {
468
+ if (target === run && !retired.has(target))
469
+ onExit(error);
470
+ }
471
+ })();
472
+ /**
473
+ * Start a replacement run and complete its handshake. A session the CLI
474
+ * has persisted is resumed; one it has not is created again under the
475
+ * same id — and a resume the CLI answers with "No conversation found"
476
+ * falls back to that create.
477
+ */
478
+ const openRun = async () => {
479
+ const resume = persisted;
480
+ // The replacement becomes the current run at once, so the old run's
481
+ // consumer — ending as its CLI closes — knows it was replaced, not lost.
482
+ run = startRun(resume);
483
+ try {
484
+ await handshake(run);
485
+ }
486
+ catch (error) {
487
+ // A dispose during the handshake must not spawn the fallback: nothing
488
+ // would ever stop it.
489
+ if (disposing || !resume || !NO_CONVERSATION.test(errorText(error)))
490
+ throw error;
491
+ deps.host.debug(`claude: resume refused (${errorText(error)}); creating the session again`);
492
+ stopRun(run);
493
+ run = startRun(false);
494
+ await handshake(run);
495
+ }
496
+ };
497
+ /** Withdraw the old CLI's prompts, close its turn, stop it; what it never
498
+ * started is re-pushed to the replacement. */
499
+ const stopForReconnect = () => {
500
+ const previous = run;
501
+ bridge.settleAll(WITHDRAWN_MESSAGE);
502
+ dialogs.settleAll();
503
+ clearForceTimer();
504
+ emit(translator.forceCloseTurn({ kind: 'aborted' }));
505
+ const unstarted = translator.unstartedInputs();
506
+ retired.add(previous);
507
+ stopRun(previous);
508
+ return { unstarted };
509
+ };
510
+ const auth = createSessionAuth({
511
+ deps,
512
+ clock,
513
+ translator,
514
+ pushed,
515
+ idleWaiters,
516
+ idle,
517
+ stopForReconnect,
518
+ openRun,
519
+ emit,
520
+ consume,
521
+ onExit,
522
+ stopRun,
523
+ get run() { return run; },
524
+ get disposing() { return disposing; },
525
+ get authPlan() { return authPlan; },
526
+ set authPlan(value) { authPlan = value; },
527
+ get account() { return account; },
528
+ get apiKeySource() { return apiKeySource; },
529
+ });
530
+ const controls = createSessionControls({
531
+ deps,
532
+ prefs,
533
+ channels,
534
+ channelTokens,
535
+ translator,
536
+ configDir,
537
+ emit,
538
+ get run() { return run; },
539
+ get authPlan() { return authPlan; },
540
+ get session() { return session; },
541
+ });
542
+ try {
543
+ const init = await handshake(run);
544
+ controls.seed(init);
545
+ // The model the session opened with is confirmed too (a resumed
546
+ // session's replay model is never re-announced by a frame): with the
547
+ // catalog seeded, the effort readout is checked before any UI asks.
548
+ controls.noteConfirmedModel(translator.model);
549
+ }
550
+ catch (error) {
551
+ disposing = true;
552
+ teardown();
553
+ throw error;
554
+ }
555
+ status = 'idle';
556
+ for (const text of deps.startNotices ?? [])
557
+ emit([{ type: 'notice', level: 'warning', text }]);
558
+ // The start mode is the session's first mode (the CLI confirms it with its
559
+ // first `init`); the status line shows it from the start.
560
+ emit([{ type: 'mode.changed', modeId: translator.mode ?? deps.start.mode }], 'none');
561
+ // The remembered effort level, same way: the CLI reports none back, so the
562
+ // status line's effort readout would stay empty until the first /effort
563
+ // switch without this seed.
564
+ const seedEffort = prefs.read().effort ?? deps.effort;
565
+ if (seedEffort !== undefined)
566
+ emit([{ type: 'effort.changed', effort: seedEffort }], 'none');
567
+ // The session's `/color` accent (kept TUI-side per session id).
568
+ const startColor = prefs.color(currentSessionId);
569
+ if (startColor !== '')
570
+ emit([{ type: 'session.color', color: startColor }]);
571
+ run.consumer = consume(run);
572
+ // A resumed transcript does not record the context window: ask the CLI
573
+ // once, so the status line has it before the first `result`.
574
+ if (resumed) {
575
+ const query = run.query;
576
+ if (typeof query.getContextUsage === 'function') {
577
+ void query.getContextUsage({ detail: 'summary' }).then(usage => {
578
+ if (disposing || !Number.isFinite(usage.maxTokens) || usage.maxTokens <= 0)
579
+ return;
580
+ emit([{ type: 'context.capacity', contextWindow: usage.maxTokens }]);
581
+ }, (error) => {
582
+ deps.host.debug(`claude: context usage after resume failed (${errorText(error)})`);
583
+ });
584
+ }
585
+ }
586
+ const session = {
587
+ ref: ownRef,
588
+ cwd: deps.cwd,
589
+ get status() {
590
+ if (status === 'disposed')
591
+ return 'disposed';
592
+ if (bridge.size > 0 || dialogs.size > 0)
593
+ return 'requires-action';
594
+ return translator.turnOpen ? 'running' : status;
595
+ },
596
+ capabilities: {
597
+ native: {},
598
+ permissions: {
599
+ respond: (requestId, decision) => bridge.respond(requestId, decision),
600
+ pending: () => bridge.pendingViews(),
601
+ },
602
+ questions: {
603
+ respond: (requestId, answers) => {
604
+ if (dialogs.owns(requestId))
605
+ dialogs.respond(requestId, answers);
606
+ else
607
+ bridge.respondQuestion(requestId, answers);
608
+ },
609
+ cancel: requestId => {
610
+ if (dialogs.owns(requestId))
611
+ dialogs.cancel(requestId);
612
+ else
613
+ bridge.cancelQuestion(requestId);
614
+ },
615
+ },
616
+ ...controls.capabilities,
617
+ ...store.sessionStoreCapabilities(),
618
+ sideQuery: createClaudeSideQuery({
619
+ sdk: deps.sdk,
620
+ cwd: deps.cwd,
621
+ sessionId: () => currentSessionId,
622
+ persisted: () => persisted,
623
+ model: () => translator.model,
624
+ spawn: () => ({ env: authPlan.env, ...(authPlan.settings === undefined ? {} : { settings: authPlan.settings }), executable: deps.executable.path }),
625
+ debug: deps.host.debug,
626
+ }),
627
+ ...store.renameCapability(),
628
+ // Images go in the message itself (base64 blocks), staged by the
629
+ // channel under these limits (images.ts).
630
+ images: { limits: CLAUDE_IMAGE_LIMITS },
631
+ color: {
632
+ current: () => prefs.color(currentSessionId),
633
+ set(color) {
634
+ prefs.setColor(currentSessionId, color);
635
+ emit([{ type: 'session.color', color }]);
636
+ },
637
+ },
638
+ ...sessionTaskCapabilities({
639
+ deps,
640
+ translator,
641
+ get run() { return run; },
642
+ get disposing() { return disposing; },
643
+ get currentSessionId() { return currentSessionId; },
644
+ get authPlan() { return authPlan; },
645
+ }),
646
+ transcript: createClaudeTranscriptHistory({
647
+ sessionId: () => currentSessionId,
648
+ cwd: deps.cwd,
649
+ configDir,
650
+ ...(compactedFrom === undefined ? {} : { compactedFrom }),
651
+ debug: deps.host.debug,
652
+ }),
653
+ account: {
654
+ async info() {
655
+ const query = run.query;
656
+ if (typeof query.accountInfo === 'function')
657
+ account = await query.accountInfo();
658
+ return accountView(account ?? {}, apiKeySource);
659
+ },
660
+ },
661
+ auth: {
662
+ oauthProvider: CLAUDE_OAUTH_PROVIDER,
663
+ status: auth.authStatus,
664
+ async reconnect() {
665
+ auth.attempts = 0;
666
+ // Never under a running turn: the restart would abort it and drop
667
+ // what the user queued behind it. Reconnect once it ends.
668
+ if (!idle())
669
+ emit([{ type: 'notice', level: 'info', text: t('claude-auth-reconnect-deferred') }]);
670
+ await auth.reconnect({}, { waitIdle: true });
671
+ },
672
+ },
673
+ // The working-activity line this backend folds itself (activity.ts):
674
+ // the channel subscribes per binding and forwards into the store the
675
+ // DSH projection feed fills, so the UI's working line stays
676
+ // backend-neutral. A late subscriber receives the latest value once —
677
+ // a rebind shows the running line without waiting for a change.
678
+ workingActivity: {
679
+ subscribe(listener) {
680
+ return activityPublisher.subscribe(view => {
681
+ try {
682
+ listener(view);
683
+ }
684
+ catch (error) {
685
+ deps.host.debug(`claude: activity listener failed (${errorText(error)})`);
686
+ }
687
+ });
688
+ },
689
+ },
690
+ diagnostics: {
691
+ lines: () => [
692
+ t('claude-doctor-cli', { path: deps.executable.path ?? t('claude-doctor-bundled'), source: deps.executable.source, version: cliVersion ?? t('doctor-unknown') }),
693
+ ...(cliVersionDrift(cliVersion) === undefined ? [] : [t('claude-version-drift', { version: cliVersion ?? '', validated: VALIDATED_CLI_VERSIONS.join(', ') })]),
694
+ t('claude-doctor-sdk', { version: deps.sdkVersion ?? t('doctor-unknown'), validated: VALIDATED_SDK_VERSION }),
695
+ t('claude-doctor-mode', { mode: translator.mode ?? deps.start.mode, source: deps.start.source }),
696
+ t('claude-auth-source', { source: authSourceLabel(authPlan) }),
697
+ ...(account === undefined ? [] : accountLines(accountView(account, apiKeySource))),
698
+ ],
699
+ },
700
+ },
701
+ // A created session has no durable history yet; a resumed one replays
702
+ // the transcript read before the CLI started (backend.ts).
703
+ // Handed over once: the channel paints it at adoption and never asks
704
+ // again (a later call has nothing to repaint from memory).
705
+ history: () => {
706
+ const events = replayHistory ?? [];
707
+ replayHistory = undefined;
708
+ return Promise.resolve(events);
709
+ },
710
+ subscribe(listener) {
711
+ listeners.add(listener);
712
+ if (backlog.length > 0) {
713
+ // Delivered after the subscriber's own setup returns (it may be
714
+ // inside a binding transaction).
715
+ queueMicrotask(() => {
716
+ if (!listeners.has(listener))
717
+ return;
718
+ for (const [events, meta] of backlog.splice(0))
719
+ listener(events, meta);
720
+ });
721
+ }
722
+ return () => { listeners.delete(listener); };
723
+ },
724
+ async submit(input, placement) {
725
+ // A credential reconnect is swapping the CLI: the input goes to the
726
+ // new one (the old one's stdin is closed). A `/login` reconnect still
727
+ // waiting for the session to go idle leaves the old CLI serving.
728
+ if (auth.reconnecting !== undefined && !auth.reconnectDeferred)
729
+ await auth.reconnecting.catch(() => undefined);
730
+ if (disposing || run.inbox.closed)
731
+ throw new Error(t('claude-session-closed'));
732
+ // Pasted images and `@image` mentions arrive as image blocks with their
733
+ // staged facades (`input.images`, block order): each is read back and
734
+ // sent as a base64 block after the text. An image block without its
735
+ // facade (dropped from memory meanwhile) refuses the message — never
736
+ // the text without part of it.
737
+ const imageBlocks = (input.blocks ?? []).filter(block => block.type === 'image').length;
738
+ const staged = input.images ?? [];
739
+ if (imageBlocks > staged.length)
740
+ throw new Error(t('claude-image-unreadable', { name: `#${staged.length + 1}`, err: t('claude-image-gone') }));
741
+ const images = staged.length === 0 ? [] : await claudeImageBlocks(staged);
742
+ // An auth-failure reconnect may have started during the read (this
743
+ // run's inbox is then closed until the replacement is up): wait for
744
+ // it again before judging. A deferred `/login` reconnect is not waited
745
+ // for; the old CLI keeps serving until it swaps.
746
+ if (auth.reconnecting !== undefined && !auth.reconnectDeferred)
747
+ await auth.reconnecting.catch(() => undefined);
748
+ if (disposing || run.inbox.closed)
749
+ throw new Error(t('claude-session-closed'));
750
+ const texts = (input.blocks ?? [{ type: 'text', text: input.text }])
751
+ .flatMap(block => block.type === 'text' && typeof block.text === 'string' && block.text !== '' ? [block.text] : []);
752
+ const content = images.length === 0 && texts.length <= 1
753
+ ? texts[0] ?? input.text
754
+ : [...texts.map(text => ({ type: 'text', text })), ...images];
755
+ const priority = priorityOf(placement, translator.turnOpen);
756
+ translator.registerInput(input.clientMessageId, input.text, placement, staged);
757
+ const message = {
758
+ type: 'user',
759
+ message: { role: 'user', content },
760
+ parent_tool_use_id: null,
761
+ uuid: input.clientMessageId,
762
+ ...(priority === undefined ? {} : { priority }),
763
+ };
764
+ try {
765
+ run.inbox.push(message);
766
+ }
767
+ catch (error) {
768
+ translator.unregisterInput(input.clientMessageId);
769
+ throw error instanceof Error ? error : new Error(String(error));
770
+ }
771
+ pushed.set(input.clientMessageId, message);
772
+ return { accepted: true };
773
+ },
774
+ async cancel(cause) {
775
+ // The session is going away; nothing queues behind a disposed CLI.
776
+ if (disposing)
777
+ return { stillQueued: [], outcome: 'unknown' };
778
+ if (translator.turnOpen && forceTimer === undefined) {
779
+ forceTimer = clock.setTimeout(() => {
780
+ forceTimer = undefined;
781
+ if (disposing || !translator.turnOpen)
782
+ return;
783
+ // The CLI never withdrew its prompts either: close the panels too.
784
+ bridge.settleAll(WITHDRAWN_MESSAGE);
785
+ dialogs.settleAll();
786
+ emit([
787
+ ...translator.forceCloseTurn({ kind: 'aborted' }),
788
+ { type: 'notice', level: 'warning', text: t('claude-cancel-forced') },
789
+ { type: 'session.status', status: 'requires-action' },
790
+ ]);
791
+ settleIdleWaiters();
792
+ }, forceSettleMs);
793
+ }
794
+ // An `interrupt` parks the queue in the channel (the dock) instead of
795
+ // re-delivering it, so the queued inputs go with the turn when the CLI
796
+ // can drop them; a user cancel keeps them (they run as the next turn).
797
+ // A CLI without the capability keeps its queue and runs it — the
798
+ // cancel receipt's `still_queued` tells the channel, which un-docks.
799
+ translator.clearInterruptedCalls();
800
+ const cancelQueued = cause !== 'user' && cliCapabilities.includes(CLI_CAPABILITY.interruptCancelQueued);
801
+ // The queued inputs this cancel covers, taken before the request (an
802
+ // input pushed meanwhile belongs to a newer batch). Without a
803
+ // `still_queued` answer they are reported as still queued: a failed
804
+ // or answerless interrupt must not read as an empty queue, or the
805
+ // dock would offer to re-send inputs the CLI still holds.
806
+ const covered = translator.pendingInputs();
807
+ // The documented `cancel_queued` interrupt field is reachable through
808
+ // the runtime method's option bag (absent from the TS signature).
809
+ const query = run.query;
810
+ const interrupt = query.interrupt;
811
+ try {
812
+ const receipt = rec(await interrupt.call(query, cancelQueued ? { cancelQueued: true } : undefined));
813
+ if (Array.isArray(receipt?.still_queued)) {
814
+ // The receipt's `still_queued` is the CLI's live queue snapshot:
815
+ // exactly the uuids that will still run (sdk.d.ts).
816
+ const stillQueued = receipt.still_queued.filter((id) => typeof id === 'string');
817
+ return { stillQueued, outcome: 'confirmed' };
818
+ }
819
+ // An older CLI resolves interrupt() to undefined (sdk.d.ts): no
820
+ // snapshot came back, nothing is confirmed deleted.
821
+ return { stillQueued: covered, outcome: 'unknown' };
822
+ }
823
+ catch (error) {
824
+ deps.host.debug(`claude: interrupt failed (${errorText(error)})`);
825
+ return { stillQueued: covered, outcome: 'failed' };
826
+ }
827
+ },
828
+ dispose() {
829
+ if (disposePromise !== undefined)
830
+ return disposePromise;
831
+ disposePromise = (async () => {
832
+ const wasDisposed = status === 'disposed';
833
+ disposing = true;
834
+ status = 'disposed';
835
+ teardown();
836
+ let timer;
837
+ await Promise.race([
838
+ run.consumer,
839
+ new Promise(resolve => { timer = clock.setTimeout(resolve, deps.closeTimeoutMs ?? 5000); }),
840
+ ]);
841
+ clock.clearTimeout(timer);
842
+ if (!wasDisposed)
843
+ emit([{ type: 'session.status', status: 'disposed' }], 'none', true);
844
+ settleIdleWaiters(new Error(t('claude-session-closed')));
845
+ listeners.clear();
846
+ backlog.length = 0;
847
+ })();
848
+ return disposePromise;
849
+ },
850
+ };
851
+ return session;
852
+ }