@deepseek-harness-tui/dsh-tui 0.14.1 → 0.16.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 (886) hide show
  1. package/README.md +163 -17
  2. package/bin/dsh-tui.js +200 -34
  3. package/cordis.patch.yml +16 -52
  4. package/cordis.yml +6 -2
  5. package/guide/dsh-tui-guide/claude-backend.en.md +44 -7
  6. package/guide/dsh-tui-guide/claude-backend.md +28 -6
  7. package/guide/dsh-tui-guide/codex-backend.en.md +47 -10
  8. package/guide/dsh-tui-guide/codex-backend.md +26 -4
  9. package/guide/dsh-tui-guide/configuration.en.md +168 -18
  10. package/guide/dsh-tui-guide/configuration.md +144 -16
  11. package/guide/dsh-tui-guide/getting-started.en.md +15 -0
  12. package/guide/dsh-tui-guide/getting-started.md +15 -0
  13. package/guide/dsh-tui-guide/interaction.en.md +64 -24
  14. package/guide/dsh-tui-guide/interaction.md +49 -19
  15. package/guide/dsh-tui-guide/plugins.en.md +97 -3
  16. package/guide/dsh-tui-guide/plugins.md +55 -2
  17. package/guide/dsh-tui-guide/themes.en.md +23 -14
  18. package/guide/dsh-tui-guide/themes.md +19 -12
  19. package/guide/dsh-tui-guide/user-guide.en.md +53 -21
  20. package/guide/dsh-tui-guide/user-guide.md +43 -22
  21. package/lib/settings.json +103 -9
  22. package/lib/types/adapter/channel/projection.d.ts.map +1 -1
  23. package/lib/types/adapter/channel/projection.js +1 -0
  24. package/lib/types/adapter/channel/ui-policy.d.ts +1 -1
  25. package/lib/types/adapter/channel/ui-policy.d.ts.map +1 -1
  26. package/lib/types/adapter/channel/ui-policy.js +4 -0
  27. package/lib/types/adapter/channel/ui.d.ts +2 -0
  28. package/lib/types/adapter/channel/ui.d.ts.map +1 -1
  29. package/lib/types/adapter/channel/ui.js +6 -2
  30. package/lib/types/adapter/kernel/runtime.d.ts.map +1 -1
  31. package/lib/types/adapter/kernel/runtime.js +2 -0
  32. package/lib/types/adapter/ports/channel-catalog.d.ts +5 -1
  33. package/lib/types/adapter/ports/channel-catalog.d.ts.map +1 -1
  34. package/lib/types/adapter/ports/channel-settings.d.ts +14 -3
  35. package/lib/types/adapter/ports/channel-settings.d.ts.map +1 -1
  36. package/lib/types/adapter/ports/channel-ui.d.ts +56 -12
  37. package/lib/types/adapter/ports/channel-ui.d.ts.map +1 -1
  38. package/lib/types/adapter/ports/channel-view.d.ts +68 -0
  39. package/lib/types/adapter/ports/channel-view.d.ts.map +1 -1
  40. package/lib/types/adapter/ports/channel.d.ts +2 -0
  41. package/lib/types/adapter/ports/channel.d.ts.map +1 -1
  42. package/lib/types/adapter/spec/backend-capabilities.d.ts +22 -0
  43. package/lib/types/adapter/spec/backend-capabilities.d.ts.map +1 -0
  44. package/lib/types/adapter/spec/backend-capabilities.js +49 -0
  45. package/lib/types/adapter/spec/protocol-constants.d.ts.map +1 -1
  46. package/lib/types/adapter/spec/protocol-constants.js +10 -3
  47. package/lib/types/adapter/spec/tui-contributions.d.ts +3 -0
  48. package/lib/types/adapter/spec/tui-contributions.d.ts.map +1 -1
  49. package/lib/types/adapter/spec/tui-contributions.js +7 -0
  50. package/lib/types/adapter/standard/registry.d.ts +6 -0
  51. package/lib/types/adapter/standard/registry.d.ts.map +1 -1
  52. package/lib/types/adapter/standard/registry.js +65 -15
  53. package/lib/types/adapter/standard/tui-extension.d.ts.map +1 -1
  54. package/lib/types/adapter/standard/tui-extension.js +7 -1
  55. package/lib/types/adapter/standard/types.d.ts +10 -1
  56. package/lib/types/adapter/standard/types.d.ts.map +1 -1
  57. package/lib/types/adapter/upstream/host-descriptor-driver.d.ts.map +1 -1
  58. package/lib/types/adapter/upstream/host-descriptor-driver.js +52 -0
  59. package/lib/types/agent/backend-manifest.d.ts +152 -0
  60. package/lib/types/agent/backend-manifest.d.ts.map +1 -0
  61. package/lib/types/agent/backend-manifest.js +14 -0
  62. package/lib/types/agent/backend.d.ts +71 -5
  63. package/lib/types/agent/backend.d.ts.map +1 -1
  64. package/lib/types/agent/capabilities.d.ts +6 -0
  65. package/lib/types/agent/capabilities.d.ts.map +1 -1
  66. package/lib/types/agent/events.d.ts +3 -2
  67. package/lib/types/agent/events.d.ts.map +1 -1
  68. package/lib/types/agent/index.d.ts +2 -0
  69. package/lib/types/agent/index.d.ts.map +1 -1
  70. package/lib/types/agent/refs.d.ts +11 -1
  71. package/lib/types/agent/refs.d.ts.map +1 -1
  72. package/lib/types/agent/starting-session.d.ts +4 -0
  73. package/lib/types/agent/starting-session.d.ts.map +1 -0
  74. package/lib/types/agent/starting-session.js +19 -0
  75. package/lib/types/backends/claude/activity.d.ts +1 -1
  76. package/lib/types/backends/claude/activity.d.ts.map +1 -1
  77. package/lib/types/backends/claude/activity.js +5 -5
  78. package/lib/types/backends/claude/auth.d.ts.map +1 -1
  79. package/lib/types/backends/claude/auth.js +10 -3
  80. package/lib/types/backends/claude/backend.d.ts.map +1 -1
  81. package/lib/types/backends/claude/backend.js +103 -29
  82. package/lib/types/backends/claude/catalog.d.ts +2 -1
  83. package/lib/types/backends/claude/catalog.d.ts.map +1 -1
  84. package/lib/types/backends/claude/catalog.js +15 -5
  85. package/lib/types/backends/claude/channels.d.ts +5 -3
  86. package/lib/types/backends/claude/channels.d.ts.map +1 -1
  87. package/lib/types/backends/claude/channels.js +5 -4
  88. package/lib/types/backends/claude/contract.d.ts +4 -0
  89. package/lib/types/backends/claude/contract.d.ts.map +1 -1
  90. package/lib/types/backends/claude/contract.js +4 -0
  91. package/lib/types/backends/claude/controls.d.ts +4 -0
  92. package/lib/types/backends/claude/controls.d.ts.map +1 -1
  93. package/lib/types/backends/claude/controls.js +34 -42
  94. package/lib/types/backends/claude/dialogs.d.ts +8 -2
  95. package/lib/types/backends/claude/dialogs.d.ts.map +1 -1
  96. package/lib/types/backends/claude/dialogs.js +24 -16
  97. package/lib/types/backends/claude/images.d.ts +1 -1
  98. package/lib/types/backends/claude/images.d.ts.map +1 -1
  99. package/lib/types/backends/claude/images.js +7 -7
  100. package/lib/types/backends/claude/manifest.d.ts +21 -0
  101. package/lib/types/backends/claude/manifest.d.ts.map +1 -0
  102. package/lib/types/backends/claude/manifest.js +29 -0
  103. package/lib/types/backends/claude/older-history.js +2 -2
  104. package/lib/types/backends/claude/permissions.js +11 -11
  105. package/lib/types/backends/claude/prefs.d.ts +4 -2
  106. package/lib/types/backends/claude/prefs.d.ts.map +1 -1
  107. package/lib/types/backends/claude/prefs.js +4 -3
  108. package/lib/types/backends/claude/process.d.ts +16 -4
  109. package/lib/types/backends/claude/process.d.ts.map +1 -1
  110. package/lib/types/backends/claude/process.js +100 -37
  111. package/lib/types/backends/claude/send-message.d.ts +1 -1
  112. package/lib/types/backends/claude/send-message.d.ts.map +1 -1
  113. package/lib/types/backends/claude/session/auth.js +22 -22
  114. package/lib/types/backends/claude/session/channels.d.ts +4 -0
  115. package/lib/types/backends/claude/session/channels.d.ts.map +1 -1
  116. package/lib/types/backends/claude/session/channels.js +5 -3
  117. package/lib/types/backends/claude/session/lifecycle.d.ts.map +1 -1
  118. package/lib/types/backends/claude/session/lifecycle.js +31 -23
  119. package/lib/types/backends/claude/session/store.js +8 -8
  120. package/lib/types/backends/claude/session/subagents.js +2 -2
  121. package/lib/types/backends/claude/session/types.d.ts +7 -0
  122. package/lib/types/backends/claude/session/types.d.ts.map +1 -1
  123. package/lib/types/backends/claude/side-query.js +3 -3
  124. package/lib/types/backends/claude/task-output.js +5 -5
  125. package/lib/types/backends/claude/text.d.ts +778 -0
  126. package/lib/types/backends/claude/text.d.ts.map +1 -0
  127. package/lib/types/backends/claude/text.js +298 -0
  128. package/lib/types/backends/claude/transcript-file.d.ts +1 -1
  129. package/lib/types/backends/claude/transcript-file.d.ts.map +1 -1
  130. package/lib/types/backends/claude/transcript-file.js +4 -4
  131. package/lib/types/backends/claude/translate/attempts.js +2 -2
  132. package/lib/types/backends/claude/translate/core.js +3 -3
  133. package/lib/types/backends/claude/translate/messages.js +4 -4
  134. package/lib/types/backends/claude/translate/system.js +14 -14
  135. package/lib/types/backends/claude/translate/tasks.js +2 -2
  136. package/lib/types/backends/claude/translate/types.d.ts +1 -1
  137. package/lib/types/backends/claude/translate/types.d.ts.map +1 -1
  138. package/lib/types/backends/codex/auth/external-tokens.js +16 -16
  139. package/lib/types/backends/codex/auth/status.js +14 -14
  140. package/lib/types/backends/codex/backend.d.ts +4 -19
  141. package/lib/types/backends/codex/backend.d.ts.map +1 -1
  142. package/lib/types/backends/codex/backend.js +118 -25
  143. package/lib/types/backends/codex/catalog.d.ts +2 -1
  144. package/lib/types/backends/codex/catalog.d.ts.map +1 -1
  145. package/lib/types/backends/codex/catalog.js +63 -18
  146. package/lib/types/backends/codex/channels.d.ts +6 -3
  147. package/lib/types/backends/codex/channels.d.ts.map +1 -1
  148. package/lib/types/backends/codex/channels.js +15 -13
  149. package/lib/types/backends/codex/contract.d.ts +3 -0
  150. package/lib/types/backends/codex/contract.d.ts.map +1 -1
  151. package/lib/types/backends/codex/contract.js +3 -0
  152. package/lib/types/backends/codex/detect.d.ts.map +1 -1
  153. package/lib/types/backends/codex/detect.js +9 -6
  154. package/lib/types/backends/codex/manifest.d.ts +30 -0
  155. package/lib/types/backends/codex/manifest.d.ts.map +1 -0
  156. package/lib/types/backends/codex/manifest.js +23 -0
  157. package/lib/types/backends/codex/prefs.d.ts +4 -2
  158. package/lib/types/backends/codex/prefs.d.ts.map +1 -1
  159. package/lib/types/backends/codex/prefs.js +4 -3
  160. package/lib/types/backends/codex/rpc/hub.js +2 -2
  161. package/lib/types/backends/codex/session/activity.d.ts +1 -1
  162. package/lib/types/backends/codex/session/activity.d.ts.map +1 -1
  163. package/lib/types/backends/codex/session/activity.js +13 -13
  164. package/lib/types/backends/codex/session/approvals.js +30 -30
  165. package/lib/types/backends/codex/session/async-questions.d.ts +17 -0
  166. package/lib/types/backends/codex/session/async-questions.d.ts.map +1 -0
  167. package/lib/types/backends/codex/session/async-questions.js +89 -0
  168. package/lib/types/backends/codex/session/commands.d.ts +8 -2
  169. package/lib/types/backends/codex/session/commands.d.ts.map +1 -1
  170. package/lib/types/backends/codex/session/commands.js +71 -23
  171. package/lib/types/backends/codex/session/controls.d.ts +1 -1
  172. package/lib/types/backends/codex/session/controls.d.ts.map +1 -1
  173. package/lib/types/backends/codex/session/controls.js +21 -16
  174. package/lib/types/backends/codex/session/goals.d.ts.map +1 -1
  175. package/lib/types/backends/codex/session/goals.js +3 -3
  176. package/lib/types/backends/codex/session/history.js +2 -2
  177. package/lib/types/backends/codex/session/images.js +8 -8
  178. package/lib/types/backends/codex/session/input.d.ts +6 -2
  179. package/lib/types/backends/codex/session/input.d.ts.map +1 -1
  180. package/lib/types/backends/codex/session/input.js +55 -13
  181. package/lib/types/backends/codex/session/plan-review.js +6 -6
  182. package/lib/types/backends/codex/session/session.d.ts.map +1 -1
  183. package/lib/types/backends/codex/session/session.js +100 -42
  184. package/lib/types/backends/codex/session/side-query.d.ts.map +1 -1
  185. package/lib/types/backends/codex/session/side-query.js +27 -9
  186. package/lib/types/backends/codex/session/state.d.ts +6 -1
  187. package/lib/types/backends/codex/session/state.d.ts.map +1 -1
  188. package/lib/types/backends/codex/session/subagents.js +5 -5
  189. package/lib/types/backends/codex/session/tasks.js +4 -4
  190. package/lib/types/backends/codex/text.d.ts +933 -0
  191. package/lib/types/backends/codex/text.d.ts.map +1 -0
  192. package/lib/types/backends/codex/text.js +313 -0
  193. package/lib/types/backends/codex/translate/items.d.ts.map +1 -1
  194. package/lib/types/backends/codex/translate/items.js +7 -5
  195. package/lib/types/backends/codex/translate/live.d.ts.map +1 -1
  196. package/lib/types/backends/codex/translate/live.js +11 -8
  197. package/lib/types/backends/codex/translate/notices.js +10 -10
  198. package/lib/types/backends/codex/translate/question-reply.d.ts +11 -0
  199. package/lib/types/backends/codex/translate/question-reply.d.ts.map +1 -0
  200. package/lib/types/backends/codex/translate/question-reply.js +53 -0
  201. package/lib/types/backends/shared/channel-slug.d.ts +4 -0
  202. package/lib/types/backends/shared/channel-slug.d.ts.map +1 -0
  203. package/lib/types/backends/shared/channel-slug.js +25 -0
  204. package/lib/types/backends/shared/channel-tokens.d.ts.map +1 -1
  205. package/lib/types/backends/shared/channel-tokens.js +30 -23
  206. package/lib/types/{channel → backends/shared}/elicitation.d.ts +78 -21
  207. package/lib/types/backends/shared/elicitation.d.ts.map +1 -0
  208. package/lib/types/{channel → backends/shared}/elicitation.js +64 -66
  209. package/lib/types/backends/shared/image-size.d.ts +33 -0
  210. package/lib/types/backends/shared/image-size.d.ts.map +1 -0
  211. package/lib/types/backends/shared/image-size.js +134 -0
  212. package/lib/types/{utils → backends/shared}/jsonl.d.ts +5 -1
  213. package/lib/types/backends/shared/jsonl.d.ts.map +1 -0
  214. package/lib/types/{utils → backends/shared}/jsonl.js +5 -1
  215. package/lib/types/backends/shared/localized-text.d.ts +30 -0
  216. package/lib/types/backends/shared/localized-text.d.ts.map +1 -0
  217. package/lib/types/backends/shared/localized-text.js +24 -0
  218. package/lib/types/backends/shared/platform-text.d.ts +88 -0
  219. package/lib/types/backends/shared/platform-text.d.ts.map +1 -0
  220. package/lib/types/backends/shared/platform-text.js +33 -0
  221. package/lib/types/branding.d.ts +13 -0
  222. package/lib/types/branding.d.ts.map +1 -1
  223. package/lib/types/branding.js +18 -0
  224. package/lib/types/channel/channel-slug.d.ts +3 -1
  225. package/lib/types/channel/channel-slug.d.ts.map +1 -1
  226. package/lib/types/channel/channel-slug.js +3 -1
  227. package/lib/types/channel/projection.d.ts.map +1 -1
  228. package/lib/types/channel/projection.js +10 -0
  229. package/lib/types/channel/sanitize.d.ts +7 -0
  230. package/lib/types/channel/sanitize.d.ts.map +1 -1
  231. package/lib/types/channel/sanitize.js +9 -0
  232. package/lib/types/channel/usage.d.ts.map +1 -1
  233. package/lib/types/channel/usage.js +5 -0
  234. package/lib/types/commands.d.ts +15 -0
  235. package/lib/types/commands.d.ts.map +1 -1
  236. package/lib/types/commands.js +58 -10
  237. package/lib/types/components/AgentMessageComposer.d.ts.map +1 -1
  238. package/lib/types/components/AgentMessageComposer.js +3 -2
  239. package/lib/types/components/BtwPanel.d.ts.map +1 -1
  240. package/lib/types/components/BtwPanel.js +4 -2
  241. package/lib/types/components/Chat/JobCard.js +3 -3
  242. package/lib/types/components/CommandSuggestions.d.ts.map +1 -1
  243. package/lib/types/components/CommandSuggestions.js +24 -7
  244. package/lib/types/components/ContextBarView.d.ts +5 -1
  245. package/lib/types/components/ContextBarView.d.ts.map +1 -1
  246. package/lib/types/components/ContextBarView.js +6 -3
  247. package/lib/types/components/ExtensionDialog.d.ts.map +1 -1
  248. package/lib/types/components/ExtensionDialog.js +2 -3
  249. package/lib/types/components/GoalTodoPanel.d.ts.map +1 -1
  250. package/lib/types/components/GoalTodoPanel.js +14 -3
  251. package/lib/types/components/InlineMathParagraph.js +1 -1
  252. package/lib/types/components/KernelPicker.d.ts.map +1 -1
  253. package/lib/types/components/KernelPicker.js +1 -1
  254. package/lib/types/components/LogoV2.d.ts +4 -1
  255. package/lib/types/components/LogoV2.d.ts.map +1 -1
  256. package/lib/types/components/LogoV2.js +14 -9
  257. package/lib/types/components/MarkdownTable.d.ts.map +1 -1
  258. package/lib/types/components/MarkdownTable.js +4 -3
  259. package/lib/types/components/MessageList.d.ts.map +1 -1
  260. package/lib/types/components/MessageList.js +109 -15
  261. package/lib/types/components/ModelPicker.d.ts +24 -31
  262. package/lib/types/components/ModelPicker.d.ts.map +1 -1
  263. package/lib/types/components/ModelPicker.js +115 -40
  264. package/lib/types/components/PermissionsPicker.d.ts +10 -1
  265. package/lib/types/components/PermissionsPicker.d.ts.map +1 -1
  266. package/lib/types/components/PermissionsPicker.js +24 -16
  267. package/lib/types/components/PluginInstallPane.d.ts +21 -0
  268. package/lib/types/components/PluginInstallPane.d.ts.map +1 -0
  269. package/lib/types/components/PluginInstallPane.js +84 -0
  270. package/lib/types/components/PluginManagePane.d.ts +21 -0
  271. package/lib/types/components/PluginManagePane.d.ts.map +1 -0
  272. package/lib/types/components/PluginManagePane.js +69 -0
  273. package/lib/types/components/PromptEditor.d.ts +3 -3
  274. package/lib/types/components/PromptInput.d.ts +21 -3
  275. package/lib/types/components/PromptInput.d.ts.map +1 -1
  276. package/lib/types/components/PromptInput.js +65 -121
  277. package/lib/types/components/SdkInstallWizard.d.ts +3 -1
  278. package/lib/types/components/SdkInstallWizard.d.ts.map +1 -1
  279. package/lib/types/components/SdkInstallWizard.js +8 -1
  280. package/lib/types/components/SearchBox.d.ts +13 -15
  281. package/lib/types/components/SearchBox.d.ts.map +1 -1
  282. package/lib/types/components/SearchBox.js +58 -27
  283. package/lib/types/components/SubagentCard.d.ts +13 -1
  284. package/lib/types/components/SubagentCard.d.ts.map +1 -1
  285. package/lib/types/components/SubagentCard.js +27 -12
  286. package/lib/types/components/SubagentDashboard.d.ts +8 -1
  287. package/lib/types/components/SubagentDashboard.d.ts.map +1 -1
  288. package/lib/types/components/SubagentDashboard.js +58 -16
  289. package/lib/types/components/ThemePicker.d.ts +1 -1
  290. package/lib/types/components/ThemePicker.d.ts.map +1 -1
  291. package/lib/types/components/ThemePicker.js +14 -11
  292. package/lib/types/components/Tooltip.js +1 -1
  293. package/lib/types/components/WorkingSpinner.js +1 -1
  294. package/lib/types/components/WorkspaceFlowPicker.d.ts.map +1 -1
  295. package/lib/types/components/WorkspaceFlowPicker.js +4 -3
  296. package/lib/types/components/composerImageTokens.d.ts +24 -0
  297. package/lib/types/components/composerImageTokens.d.ts.map +1 -0
  298. package/lib/types/components/composerImageTokens.js +37 -0
  299. package/lib/types/components/design-system/InputCaret.d.ts +7 -0
  300. package/lib/types/components/design-system/InputCaret.d.ts.map +1 -0
  301. package/lib/types/components/design-system/InputCaret.js +9 -0
  302. package/lib/types/components/design-system/ListItem.d.ts +13 -2
  303. package/lib/types/components/design-system/ListItem.d.ts.map +1 -1
  304. package/lib/types/components/design-system/ListItem.js +11 -5
  305. package/lib/types/components/design-system/ThemeProvider.d.ts.map +1 -1
  306. package/lib/types/components/design-system/ThemeProvider.js +6 -8
  307. package/lib/types/components/kernelCatalog.d.ts +55 -11
  308. package/lib/types/components/kernelCatalog.d.ts.map +1 -1
  309. package/lib/types/components/kernelCatalog.js +42 -23
  310. package/lib/types/components/launchpadActions.d.ts +4 -0
  311. package/lib/types/components/launchpadActions.d.ts.map +1 -1
  312. package/lib/types/components/launchpadActions.js +5 -4
  313. package/lib/types/components/launchpadLayout.d.ts +14 -1
  314. package/lib/types/components/launchpadLayout.d.ts.map +1 -1
  315. package/lib/types/components/launchpadLayout.js +38 -19
  316. package/lib/types/components/messages/TeamMessageBubble.d.ts +20 -0
  317. package/lib/types/components/messages/TeamMessageBubble.d.ts.map +1 -0
  318. package/lib/types/components/messages/TeamMessageBubble.js +15 -0
  319. package/lib/types/components/messages/UserPromptMessage.d.ts +4 -3
  320. package/lib/types/components/messages/UserPromptMessage.d.ts.map +1 -1
  321. package/lib/types/components/messages/UserPromptMessage.js +4 -3
  322. package/lib/types/components/questions/AskUserQuestionPanel.d.ts.map +1 -1
  323. package/lib/types/components/questions/AskUserQuestionPanel.js +8 -3
  324. package/lib/types/components/questions/PlanReviewPanel.d.ts.map +1 -1
  325. package/lib/types/components/questions/PlanReviewPanel.js +4 -3
  326. package/lib/types/components/questions/ProviderModelEditor.d.ts.map +1 -1
  327. package/lib/types/components/questions/ProviderModelEditor.js +3 -13
  328. package/lib/types/components/sessions/ForeignSessionRow.d.ts +3 -1
  329. package/lib/types/components/sessions/ForeignSessionRow.d.ts.map +1 -1
  330. package/lib/types/components/sessions/ForeignSessionRow.js +5 -2
  331. package/lib/types/components/sessions/SessionListRow.d.ts +3 -1
  332. package/lib/types/components/sessions/SessionListRow.d.ts.map +1 -1
  333. package/lib/types/components/sessions/SessionListRow.js +5 -2
  334. package/lib/types/components/sidePanel/PanelBar.d.ts +1 -0
  335. package/lib/types/components/sidePanel/PanelBar.d.ts.map +1 -1
  336. package/lib/types/components/sidePanel/PanelBar.js +21 -17
  337. package/lib/types/components/sidePanel/PanelHost.d.ts.map +1 -1
  338. package/lib/types/components/sidePanel/PanelHost.js +5 -1
  339. package/lib/types/components/sidePanel/PanelStore.d.ts +8 -0
  340. package/lib/types/components/sidePanel/PanelStore.d.ts.map +1 -1
  341. package/lib/types/components/sidePanel/PanelStore.js +11 -0
  342. package/lib/types/components/sidePanel/SidePanelColumn.d.ts +1 -1
  343. package/lib/types/components/sidePanel/SidePanelColumn.d.ts.map +1 -1
  344. package/lib/types/components/sidePanel/SidePanelColumn.js +15 -2
  345. package/lib/types/components/sidePanel/SidePanelLayout.d.ts +6 -4
  346. package/lib/types/components/sidePanel/SidePanelLayout.d.ts.map +1 -1
  347. package/lib/types/components/sidePanel/SidePanelLayout.js +33 -7
  348. package/lib/types/components/sidePanel/SidePanelRuntimeContext.d.ts +7 -0
  349. package/lib/types/components/sidePanel/SidePanelRuntimeContext.d.ts.map +1 -1
  350. package/lib/types/components/sidePanel/SidePanelRuntimeContext.js +4 -0
  351. package/lib/types/components/sidePanel/btw/BtwComposer.d.ts +7 -2
  352. package/lib/types/components/sidePanel/btw/BtwComposer.d.ts.map +1 -1
  353. package/lib/types/components/sidePanel/btw/BtwComposer.js +28 -8
  354. package/lib/types/components/sidePanel/btw/BtwPanelAdapter.d.ts +2 -1
  355. package/lib/types/components/sidePanel/btw/BtwPanelAdapter.d.ts.map +1 -1
  356. package/lib/types/components/sidePanel/btw/BtwPanelAdapter.js +156 -21
  357. package/lib/types/components/sidePanel/btw/BtwThreadScene.d.ts +6 -2
  358. package/lib/types/components/sidePanel/btw/BtwThreadScene.d.ts.map +1 -1
  359. package/lib/types/components/sidePanel/btw/BtwThreadScene.js +64 -16
  360. package/lib/types/components/sidePanel/btw/BtwThreadView.d.ts +15 -5
  361. package/lib/types/components/sidePanel/btw/BtwThreadView.d.ts.map +1 -1
  362. package/lib/types/components/sidePanel/btw/BtwThreadView.js +101 -10
  363. package/lib/types/components/sidePanel/btw/threads.d.ts +18 -0
  364. package/lib/types/components/sidePanel/btw/threads.d.ts.map +1 -1
  365. package/lib/types/components/sidePanel/btw/threads.js +51 -0
  366. package/lib/types/components/sidePanel/builtinPanels.d.ts.map +1 -1
  367. package/lib/types/components/sidePanel/builtinPanels.js +5 -1
  368. package/lib/types/components/sidePanel/companion/CompanionPanel.js +2 -2
  369. package/lib/types/components/sidePanel/companion/SplashMascot.d.ts +5 -1
  370. package/lib/types/components/sidePanel/companion/SplashMascot.d.ts.map +1 -1
  371. package/lib/types/components/sidePanel/companion/SplashMascot.js +19 -4
  372. package/lib/types/components/sidePanel/companion/skins.d.ts +8 -0
  373. package/lib/types/components/sidePanel/companion/skins.d.ts.map +1 -1
  374. package/lib/types/components/sidePanel/companion/skins.js +57 -12
  375. package/lib/types/components/sidePanel/types.d.ts +7 -1
  376. package/lib/types/components/sidePanel/types.d.ts.map +1 -1
  377. package/lib/types/components/sidePanel/useSidePanel.d.ts +2 -0
  378. package/lib/types/components/sidePanel/useSidePanel.d.ts.map +1 -1
  379. package/lib/types/components/sidePanel/useSidePanel.js +11 -1
  380. package/lib/types/components/splashArtRows.d.ts +29 -0
  381. package/lib/types/components/splashArtRows.d.ts.map +1 -0
  382. package/lib/types/components/splashArtRows.js +31 -0
  383. package/lib/types/components/splashFonts.d.ts +24 -1
  384. package/lib/types/components/splashFonts.d.ts.map +1 -1
  385. package/lib/types/components/splashFonts.js +40 -5
  386. package/lib/types/components/teamRoster.d.ts +70 -0
  387. package/lib/types/components/teamRoster.d.ts.map +1 -0
  388. package/lib/types/components/teamRoster.js +78 -0
  389. package/lib/types/components/workspaces/HomeWorkspaceRow.d.ts +3 -1
  390. package/lib/types/components/workspaces/HomeWorkspaceRow.d.ts.map +1 -1
  391. package/lib/types/components/workspaces/HomeWorkspaceRow.js +5 -2
  392. package/lib/types/dsh-adapter/admission-loader.d.ts +102 -0
  393. package/lib/types/dsh-adapter/admission-loader.d.ts.map +1 -0
  394. package/lib/types/dsh-adapter/admission-loader.js +301 -0
  395. package/lib/types/dsh-adapter/agent-view.d.ts.map +1 -1
  396. package/lib/types/dsh-adapter/agent-view.js +3 -1
  397. package/lib/types/dsh-adapter/approvals.d.ts +7 -0
  398. package/lib/types/dsh-adapter/approvals.d.ts.map +1 -1
  399. package/lib/types/dsh-adapter/approvals.js +45 -1
  400. package/lib/types/dsh-adapter/backend/translate.d.ts.map +1 -1
  401. package/lib/types/dsh-adapter/backend/translate.js +71 -8
  402. package/lib/types/dsh-adapter/backend-admission.d.ts +64 -0
  403. package/lib/types/dsh-adapter/backend-admission.d.ts.map +1 -0
  404. package/lib/types/dsh-adapter/backend-admission.js +34 -0
  405. package/lib/types/dsh-adapter/backend-assembly.d.ts +31 -0
  406. package/lib/types/dsh-adapter/backend-assembly.d.ts.map +1 -0
  407. package/lib/types/dsh-adapter/backend-assembly.js +225 -0
  408. package/lib/types/dsh-adapter/backend-contribution.d.ts +62 -0
  409. package/lib/types/dsh-adapter/backend-contribution.d.ts.map +1 -0
  410. package/lib/types/dsh-adapter/backend-contribution.js +78 -0
  411. package/lib/types/dsh-adapter/backend-registry.d.ts +136 -0
  412. package/lib/types/dsh-adapter/backend-registry.d.ts.map +1 -0
  413. package/lib/types/dsh-adapter/backend-registry.js +304 -0
  414. package/lib/types/dsh-adapter/backends.d.ts +67 -24
  415. package/lib/types/dsh-adapter/backends.d.ts.map +1 -1
  416. package/lib/types/dsh-adapter/backends.generated.d.ts +12 -0
  417. package/lib/types/dsh-adapter/backends.generated.d.ts.map +1 -0
  418. package/lib/types/dsh-adapter/backends.generated.js +6 -0
  419. package/lib/types/dsh-adapter/backends.js +91 -46
  420. package/lib/types/dsh-adapter/bundled-presets.d.ts.map +1 -1
  421. package/lib/types/dsh-adapter/bundled-presets.js +60 -3
  422. package/lib/types/dsh-adapter/channel/action-readiness.d.ts +2 -0
  423. package/lib/types/dsh-adapter/channel/action-readiness.d.ts.map +1 -1
  424. package/lib/types/dsh-adapter/channel/action-readiness.js +9 -3
  425. package/lib/types/dsh-adapter/channel/agent-view-projection.js +2 -2
  426. package/lib/types/dsh-adapter/channel/background-action.d.ts.map +1 -1
  427. package/lib/types/dsh-adapter/channel/background-action.js +8 -3
  428. package/lib/types/dsh-adapter/channel/binding-events.d.ts +17 -3
  429. package/lib/types/dsh-adapter/channel/binding-events.d.ts.map +1 -1
  430. package/lib/types/dsh-adapter/channel/binding-events.js +19 -46
  431. package/lib/types/dsh-adapter/channel/channel-host.d.ts +45 -0
  432. package/lib/types/dsh-adapter/channel/channel-host.d.ts.map +1 -0
  433. package/lib/types/dsh-adapter/channel/channel-host.js +1 -0
  434. package/lib/types/dsh-adapter/channel/command-completions.d.ts +5 -0
  435. package/lib/types/dsh-adapter/channel/command-completions.d.ts.map +1 -1
  436. package/lib/types/dsh-adapter/channel/command-completions.js +79 -6
  437. package/lib/types/dsh-adapter/channel/compaction.d.ts +7 -2
  438. package/lib/types/dsh-adapter/channel/compaction.d.ts.map +1 -1
  439. package/lib/types/dsh-adapter/channel/compaction.js +100 -26
  440. package/lib/types/dsh-adapter/channel/composer-images.d.ts +4 -2
  441. package/lib/types/dsh-adapter/channel/composer-images.d.ts.map +1 -1
  442. package/lib/types/dsh-adapter/channel/composer-images.js +36 -5
  443. package/lib/types/dsh-adapter/channel/cordis-host.d.ts +14 -0
  444. package/lib/types/dsh-adapter/channel/cordis-host.d.ts.map +1 -0
  445. package/lib/types/dsh-adapter/channel/cordis-host.js +35 -0
  446. package/lib/types/dsh-adapter/channel/core/actions.d.ts +3 -3
  447. package/lib/types/dsh-adapter/channel/core/actions.d.ts.map +1 -1
  448. package/lib/types/dsh-adapter/channel/core/actions.js +15 -6
  449. package/lib/types/dsh-adapter/channel/core/binding-feed.d.ts +10 -3
  450. package/lib/types/dsh-adapter/channel/core/binding-feed.d.ts.map +1 -1
  451. package/lib/types/dsh-adapter/channel/core/binding-feed.js +5 -1
  452. package/lib/types/dsh-adapter/channel/core/compose.d.ts +12 -28
  453. package/lib/types/dsh-adapter/channel/core/compose.d.ts.map +1 -1
  454. package/lib/types/dsh-adapter/channel/core/compose.js +330 -117
  455. package/lib/types/dsh-adapter/channel/core/files.d.ts +7 -2
  456. package/lib/types/dsh-adapter/channel/core/files.d.ts.map +1 -1
  457. package/lib/types/dsh-adapter/channel/core/files.js +1 -0
  458. package/lib/types/dsh-adapter/channel/core/host.d.ts +12 -6
  459. package/lib/types/dsh-adapter/channel/core/host.d.ts.map +1 -1
  460. package/lib/types/dsh-adapter/channel/core/host.js +69 -35
  461. package/lib/types/dsh-adapter/channel/core/local-actions.d.ts +5 -3
  462. package/lib/types/dsh-adapter/channel/core/local-actions.d.ts.map +1 -1
  463. package/lib/types/dsh-adapter/channel/core/local-actions.js +5 -2
  464. package/lib/types/dsh-adapter/channel/core/session-controls.js +2 -2
  465. package/lib/types/dsh-adapter/channel/core/session-switch.d.ts +7 -4
  466. package/lib/types/dsh-adapter/channel/core/session-switch.d.ts.map +1 -1
  467. package/lib/types/dsh-adapter/channel/core/session-switch.js +8 -4
  468. package/lib/types/dsh-adapter/channel/core/sessions.d.ts +1 -1
  469. package/lib/types/dsh-adapter/channel/core/sessions.d.ts.map +1 -1
  470. package/lib/types/dsh-adapter/channel/core/sessions.js +75 -16
  471. package/lib/types/dsh-adapter/channel/extensions.d.ts +4 -3
  472. package/lib/types/dsh-adapter/channel/extensions.d.ts.map +1 -1
  473. package/lib/types/dsh-adapter/channel/extensions.js +109 -30
  474. package/lib/types/dsh-adapter/channel/input-delivery.d.ts +2 -2
  475. package/lib/types/dsh-adapter/channel/input-delivery.d.ts.map +1 -1
  476. package/lib/types/dsh-adapter/channel/input-delivery.js +14 -5
  477. package/lib/types/dsh-adapter/channel/job-projection.d.ts +4 -0
  478. package/lib/types/dsh-adapter/channel/job-projection.d.ts.map +1 -1
  479. package/lib/types/dsh-adapter/channel/job-projection.js +205 -24
  480. package/lib/types/dsh-adapter/channel/mentions.d.ts +3 -3
  481. package/lib/types/dsh-adapter/channel/mentions.d.ts.map +1 -1
  482. package/lib/types/dsh-adapter/channel/mode-permission-actions.d.ts +7 -0
  483. package/lib/types/dsh-adapter/channel/mode-permission-actions.d.ts.map +1 -1
  484. package/lib/types/dsh-adapter/channel/mode-permission-actions.js +235 -13
  485. package/lib/types/dsh-adapter/channel/model-actions.d.ts +5 -1
  486. package/lib/types/dsh-adapter/channel/model-actions.d.ts.map +1 -1
  487. package/lib/types/dsh-adapter/channel/model-actions.js +48 -29
  488. package/lib/types/dsh-adapter/channel/model-selection.d.ts +17 -0
  489. package/lib/types/dsh-adapter/channel/model-selection.d.ts.map +1 -0
  490. package/lib/types/dsh-adapter/channel/model-selection.js +109 -0
  491. package/lib/types/dsh-adapter/channel/model-switch.d.ts +12 -21
  492. package/lib/types/dsh-adapter/channel/model-switch.d.ts.map +1 -1
  493. package/lib/types/dsh-adapter/channel/model-switch.js +39 -102
  494. package/lib/types/dsh-adapter/channel/permissions.d.ts.map +1 -1
  495. package/lib/types/dsh-adapter/channel/permissions.js +4 -1
  496. package/lib/types/dsh-adapter/channel/projection-helpers.d.ts.map +1 -1
  497. package/lib/types/dsh-adapter/channel/projection-helpers.js +2 -0
  498. package/lib/types/dsh-adapter/channel/projection.js +1 -1
  499. package/lib/types/dsh-adapter/channel/reports.d.ts +1 -1
  500. package/lib/types/dsh-adapter/channel/reports.d.ts.map +1 -1
  501. package/lib/types/dsh-adapter/channel/reports.js +11 -3
  502. package/lib/types/dsh-adapter/channel/session-fork.d.ts.map +1 -1
  503. package/lib/types/dsh-adapter/channel/session-fork.js +33 -20
  504. package/lib/types/dsh-adapter/channel/session-listing.d.ts +20 -0
  505. package/lib/types/dsh-adapter/channel/session-listing.d.ts.map +1 -0
  506. package/lib/types/dsh-adapter/channel/session-listing.js +51 -0
  507. package/lib/types/dsh-adapter/channel/session-metadata.d.ts +3 -1
  508. package/lib/types/dsh-adapter/channel/session-metadata.d.ts.map +1 -1
  509. package/lib/types/dsh-adapter/channel/session-metadata.js +60 -30
  510. package/lib/types/dsh-adapter/channel/session-reset.js +2 -2
  511. package/lib/types/dsh-adapter/channel/session-resume.d.ts.map +1 -1
  512. package/lib/types/dsh-adapter/channel/session-resume.js +22 -8
  513. package/lib/types/dsh-adapter/channel/session-rewind.d.ts.map +1 -1
  514. package/lib/types/dsh-adapter/channel/session-rewind.js +38 -24
  515. package/lib/types/dsh-adapter/channel/session-tree-actions.d.ts.map +1 -1
  516. package/lib/types/dsh-adapter/channel/session-tree-actions.js +38 -24
  517. package/lib/types/dsh-adapter/channel/settings-host.d.ts +5 -2
  518. package/lib/types/dsh-adapter/channel/settings-host.d.ts.map +1 -1
  519. package/lib/types/dsh-adapter/channel/settings-host.js +136 -5
  520. package/lib/types/dsh-adapter/channel/state.d.ts +43 -1
  521. package/lib/types/dsh-adapter/channel/state.d.ts.map +1 -1
  522. package/lib/types/dsh-adapter/channel/state.js +14 -1
  523. package/lib/types/dsh-adapter/channel/subagent-projection.d.ts.map +1 -1
  524. package/lib/types/dsh-adapter/channel/subagent-projection.js +84 -12
  525. package/lib/types/dsh-adapter/channel/task-completion.d.ts +6 -0
  526. package/lib/types/dsh-adapter/channel/task-completion.d.ts.map +1 -0
  527. package/lib/types/dsh-adapter/channel/task-completion.js +114 -0
  528. package/lib/types/dsh-adapter/channel/transcript.d.ts +8 -1
  529. package/lib/types/dsh-adapter/channel/transcript.d.ts.map +1 -1
  530. package/lib/types/dsh-adapter/channel/transcript.js +20 -3
  531. package/lib/types/dsh-adapter/channel/upstream-retry.d.ts +81 -0
  532. package/lib/types/dsh-adapter/channel/upstream-retry.d.ts.map +1 -0
  533. package/lib/types/dsh-adapter/channel/upstream-retry.js +138 -0
  534. package/lib/types/dsh-adapter/channel/workspace-actions.d.ts.map +1 -1
  535. package/lib/types/dsh-adapter/channel/workspace-actions.js +9 -8
  536. package/lib/types/dsh-adapter/channel-ui.d.ts +3 -1
  537. package/lib/types/dsh-adapter/channel-ui.d.ts.map +1 -1
  538. package/lib/types/dsh-adapter/channel-ui.js +4 -2
  539. package/lib/types/dsh-adapter/channel.d.ts +2 -2
  540. package/lib/types/dsh-adapter/channel.d.ts.map +1 -1
  541. package/lib/types/dsh-adapter/channel.js +19 -5
  542. package/lib/types/dsh-adapter/compat/agent-team-0.2.0.d.ts +55 -0
  543. package/lib/types/dsh-adapter/compat/agent-team-0.2.0.d.ts.map +1 -0
  544. package/lib/types/dsh-adapter/compat/agent-team-0.2.0.js +96 -0
  545. package/lib/types/dsh-adapter/context-occupancy.d.ts +81 -4
  546. package/lib/types/dsh-adapter/context-occupancy.d.ts.map +1 -1
  547. package/lib/types/dsh-adapter/context-occupancy.js +108 -17
  548. package/lib/types/dsh-adapter/contract.d.ts +4 -4
  549. package/lib/types/dsh-adapter/contract.d.ts.map +1 -1
  550. package/lib/types/dsh-adapter/contract.js +20 -5
  551. package/lib/types/dsh-adapter/effect-ledger.d.ts +7 -0
  552. package/lib/types/dsh-adapter/effect-ledger.d.ts.map +1 -1
  553. package/lib/types/dsh-adapter/effect-ledger.js +8 -1
  554. package/lib/types/dsh-adapter/entry-slot.d.ts +38 -0
  555. package/lib/types/dsh-adapter/entry-slot.d.ts.map +1 -0
  556. package/lib/types/dsh-adapter/entry-slot.js +28 -0
  557. package/lib/types/dsh-adapter/fresh-agent.d.ts +22 -0
  558. package/lib/types/dsh-adapter/fresh-agent.d.ts.map +1 -0
  559. package/lib/types/dsh-adapter/fresh-agent.js +226 -0
  560. package/lib/types/dsh-adapter/host-access.d.ts +16 -1
  561. package/lib/types/dsh-adapter/host-access.d.ts.map +1 -1
  562. package/lib/types/dsh-adapter/host-access.js +148 -2
  563. package/lib/types/dsh-adapter/host-contract.d.ts +103 -0
  564. package/lib/types/dsh-adapter/host-contract.d.ts.map +1 -0
  565. package/lib/types/dsh-adapter/host-contract.js +77 -0
  566. package/lib/types/dsh-adapter/host-dsh.d.ts +112 -0
  567. package/lib/types/dsh-adapter/host-dsh.d.ts.map +1 -0
  568. package/lib/types/dsh-adapter/host-dsh.js +481 -0
  569. package/lib/types/dsh-adapter/host-entry.d.ts +9 -0
  570. package/lib/types/dsh-adapter/host-entry.d.ts.map +1 -0
  571. package/lib/types/dsh-adapter/host-entry.js +253 -0
  572. package/lib/types/dsh-adapter/index.d.ts +53 -17
  573. package/lib/types/dsh-adapter/index.d.ts.map +1 -1
  574. package/lib/types/dsh-adapter/index.js +63 -9
  575. package/lib/types/dsh-adapter/install/executors.d.ts +44 -0
  576. package/lib/types/dsh-adapter/install/executors.d.ts.map +1 -0
  577. package/lib/types/dsh-adapter/install/executors.js +15 -0
  578. package/lib/types/dsh-adapter/install/pnpm-profile-add.d.ts +3 -0
  579. package/lib/types/dsh-adapter/install/pnpm-profile-add.d.ts.map +1 -0
  580. package/lib/types/dsh-adapter/install/pnpm-profile-add.js +150 -0
  581. package/lib/types/dsh-adapter/invariant.d.ts +7 -2
  582. package/lib/types/dsh-adapter/invariant.d.ts.map +1 -1
  583. package/lib/types/dsh-adapter/invariant.js +6 -3
  584. package/lib/types/dsh-adapter/jobs.d.ts +7 -0
  585. package/lib/types/dsh-adapter/jobs.d.ts.map +1 -1
  586. package/lib/types/dsh-adapter/jobs.js +13 -0
  587. package/lib/types/dsh-adapter/lite-profile.d.ts +50 -0
  588. package/lib/types/dsh-adapter/lite-profile.d.ts.map +1 -0
  589. package/lib/types/dsh-adapter/lite-profile.js +49 -0
  590. package/lib/types/dsh-adapter/migrate/index.js +2 -2
  591. package/lib/types/dsh-adapter/migrate/parse/jsonl.d.ts +1 -1
  592. package/lib/types/dsh-adapter/migrate/parse/jsonl.d.ts.map +1 -1
  593. package/lib/types/dsh-adapter/migrate/parse/jsonl.js +4 -3
  594. package/lib/types/dsh-adapter/oauth/profiles.d.ts.map +1 -1
  595. package/lib/types/dsh-adapter/oauth/profiles.js +5 -1
  596. package/lib/types/dsh-adapter/panels.d.ts +7 -0
  597. package/lib/types/dsh-adapter/panels.d.ts.map +1 -1
  598. package/lib/types/dsh-adapter/panels.js +41 -2
  599. package/lib/types/dsh-adapter/plugin-completions.d.ts +32 -0
  600. package/lib/types/dsh-adapter/plugin-completions.d.ts.map +1 -0
  601. package/lib/types/dsh-adapter/plugin-completions.js +80 -0
  602. package/lib/types/dsh-adapter/plugin-declaration.d.ts +119 -0
  603. package/lib/types/dsh-adapter/plugin-declaration.d.ts.map +1 -0
  604. package/lib/types/dsh-adapter/plugin-declaration.js +183 -0
  605. package/lib/types/dsh-adapter/plugin-feed.d.ts +94 -0
  606. package/lib/types/dsh-adapter/plugin-feed.d.ts.map +1 -0
  607. package/lib/types/dsh-adapter/plugin-feed.js +135 -0
  608. package/lib/types/dsh-adapter/plugin-guard.d.ts +115 -0
  609. package/lib/types/dsh-adapter/plugin-guard.d.ts.map +1 -0
  610. package/lib/types/dsh-adapter/plugin-guard.js +108 -0
  611. package/lib/types/dsh-adapter/plugin-host.d.ts +13 -2
  612. package/lib/types/dsh-adapter/plugin-host.d.ts.map +1 -1
  613. package/lib/types/dsh-adapter/plugin-host.js +34 -8
  614. package/lib/types/dsh-adapter/plugin-install.d.ts +160 -0
  615. package/lib/types/dsh-adapter/plugin-install.d.ts.map +1 -0
  616. package/lib/types/dsh-adapter/plugin-install.js +545 -0
  617. package/lib/types/dsh-adapter/plugin-manage.d.ts +178 -0
  618. package/lib/types/dsh-adapter/plugin-manage.d.ts.map +1 -0
  619. package/lib/types/dsh-adapter/plugin-manage.js +468 -0
  620. package/lib/types/dsh-adapter/plugin-manager.d.ts +144 -0
  621. package/lib/types/dsh-adapter/plugin-manager.d.ts.map +1 -0
  622. package/lib/types/dsh-adapter/plugin-manager.js +83 -0
  623. package/lib/types/dsh-adapter/plugin.d.ts +50 -1
  624. package/lib/types/dsh-adapter/plugin.d.ts.map +1 -1
  625. package/lib/types/dsh-adapter/plugin.js +918 -234
  626. package/lib/types/dsh-adapter/plugins-info.d.ts +130 -8
  627. package/lib/types/dsh-adapter/plugins-info.d.ts.map +1 -1
  628. package/lib/types/dsh-adapter/plugins-info.js +469 -44
  629. package/lib/types/dsh-adapter/process-exit.d.ts +43 -0
  630. package/lib/types/dsh-adapter/process-exit.d.ts.map +1 -0
  631. package/lib/types/dsh-adapter/process-exit.js +60 -0
  632. package/lib/types/dsh-adapter/root-dispose.d.ts +18 -0
  633. package/lib/types/dsh-adapter/root-dispose.d.ts.map +1 -0
  634. package/lib/types/dsh-adapter/root-dispose.js +28 -0
  635. package/lib/types/dsh-adapter/session-list-metadata.d.ts +20 -0
  636. package/lib/types/dsh-adapter/session-list-metadata.d.ts.map +1 -0
  637. package/lib/types/dsh-adapter/session-list-metadata.js +56 -0
  638. package/lib/types/dsh-adapter/session-projection-store.d.ts +66 -0
  639. package/lib/types/dsh-adapter/session-projection-store.d.ts.map +1 -0
  640. package/lib/types/dsh-adapter/session-projection-store.js +149 -0
  641. package/lib/types/dsh-adapter/session-seed.d.ts +11 -0
  642. package/lib/types/dsh-adapter/session-seed.d.ts.map +1 -0
  643. package/lib/types/dsh-adapter/session-seed.js +47 -0
  644. package/lib/types/dsh-adapter/sessions/list.d.ts +3 -1
  645. package/lib/types/dsh-adapter/sessions/list.d.ts.map +1 -1
  646. package/lib/types/dsh-adapter/sessions/list.js +11 -5
  647. package/lib/types/dsh-adapter/sessions/snapshot.d.ts +0 -2
  648. package/lib/types/dsh-adapter/sessions/snapshot.d.ts.map +1 -1
  649. package/lib/types/dsh-adapter/sessions/snapshot.js +7 -70
  650. package/lib/types/dsh-adapter/settingsEditor.js +2 -2
  651. package/lib/types/dsh-adapter/sideQuestion.d.ts +21 -0
  652. package/lib/types/dsh-adapter/sideQuestion.d.ts.map +1 -1
  653. package/lib/types/dsh-adapter/sideQuestion.js +53 -0
  654. package/lib/types/dsh-adapter/startup-args.d.ts +2 -0
  655. package/lib/types/dsh-adapter/startup-args.d.ts.map +1 -1
  656. package/lib/types/dsh-adapter/startup-args.js +5 -0
  657. package/lib/types/dsh-adapter/subagents.d.ts +33 -1
  658. package/lib/types/dsh-adapter/subagents.d.ts.map +1 -1
  659. package/lib/types/dsh-adapter/subagents.js +112 -9
  660. package/lib/types/dsh-adapter/team-mode.d.ts +74 -0
  661. package/lib/types/dsh-adapter/team-mode.d.ts.map +1 -0
  662. package/lib/types/dsh-adapter/team-mode.js +188 -0
  663. package/lib/types/dsh-adapter/team-roster.d.ts +67 -0
  664. package/lib/types/dsh-adapter/team-roster.d.ts.map +1 -0
  665. package/lib/types/dsh-adapter/team-roster.js +136 -0
  666. package/lib/types/dsh-adapter/team-tools.d.ts +58 -0
  667. package/lib/types/dsh-adapter/team-tools.d.ts.map +1 -0
  668. package/lib/types/dsh-adapter/team-tools.js +208 -0
  669. package/lib/types/dsh-adapter/tui-settings.d.ts +57 -0
  670. package/lib/types/dsh-adapter/tui-settings.d.ts.map +1 -0
  671. package/lib/types/dsh-adapter/tui-settings.js +199 -0
  672. package/lib/types/dsh-adapter/types.d.ts +1 -1
  673. package/lib/types/dsh-adapter/types.d.ts.map +1 -1
  674. package/lib/types/effortPrefs.d.ts +6 -3
  675. package/lib/types/effortPrefs.d.ts.map +1 -1
  676. package/lib/types/effortPrefs.js +7 -4
  677. package/lib/types/hostEntryRoute.d.ts +18 -0
  678. package/lib/types/hostEntryRoute.d.ts.map +1 -0
  679. package/lib/types/hostEntryRoute.js +57 -0
  680. package/lib/types/i18n.d.ts +961 -1439
  681. package/lib/types/i18n.d.ts.map +1 -1
  682. package/lib/types/i18n.js +443 -387
  683. package/lib/types/ink/components/AlternateScreen.js +2 -2
  684. package/lib/types/ink/components/App.d.ts +1 -0
  685. package/lib/types/ink/components/App.d.ts.map +1 -1
  686. package/lib/types/ink/components/App.js +16 -4
  687. package/lib/types/ink/components/CursorDeclarationContext.d.ts +9 -0
  688. package/lib/types/ink/components/CursorDeclarationContext.d.ts.map +1 -1
  689. package/lib/types/ink/components/CursorDeclarationContext.js +2 -0
  690. package/lib/types/ink/components/ScrollBox.d.ts +9 -0
  691. package/lib/types/ink/components/ScrollBox.d.ts.map +1 -1
  692. package/lib/types/ink/components/ScrollBox.js +23 -0
  693. package/lib/types/ink/dom.d.ts.map +1 -1
  694. package/lib/types/ink/hooks/use-copy-on-select.d.ts +2 -2
  695. package/lib/types/ink/hooks/use-copy-on-select.d.ts.map +1 -1
  696. package/lib/types/ink/hooks/use-copy-on-select.js +13 -7
  697. package/lib/types/ink/hooks/use-declared-cursor.d.ts +11 -3
  698. package/lib/types/ink/hooks/use-declared-cursor.d.ts.map +1 -1
  699. package/lib/types/ink/hooks/use-declared-cursor.js +30 -10
  700. package/lib/types/ink/ink.d.ts +22 -17
  701. package/lib/types/ink/ink.d.ts.map +1 -1
  702. package/lib/types/ink/ink.js +151 -40
  703. package/lib/types/ink/kitty-graphics.d.ts +2 -0
  704. package/lib/types/ink/kitty-graphics.d.ts.map +1 -1
  705. package/lib/types/ink/kitty-graphics.js +6 -1
  706. package/lib/types/ink/node-cache.d.ts +2 -1
  707. package/lib/types/ink/node-cache.d.ts.map +1 -1
  708. package/lib/types/ink/output.d.ts +10 -4
  709. package/lib/types/ink/output.d.ts.map +1 -1
  710. package/lib/types/ink/output.js +14 -10
  711. package/lib/types/ink/render-node-to-output.d.ts +5 -2
  712. package/lib/types/ink/render-node-to-output.d.ts.map +1 -1
  713. package/lib/types/ink/render-node-to-output.js +27 -9
  714. package/lib/types/ink/renderer.d.ts +1 -0
  715. package/lib/types/ink/renderer.d.ts.map +1 -1
  716. package/lib/types/ink/renderer.js +4 -3
  717. package/lib/types/ink/root.d.ts +4 -1
  718. package/lib/types/ink/root.d.ts.map +1 -1
  719. package/lib/types/ink/screen.d.ts +4 -2
  720. package/lib/types/ink/screen.d.ts.map +1 -1
  721. package/lib/types/ink/selection.d.ts +10 -1
  722. package/lib/types/ink/selection.d.ts.map +1 -1
  723. package/lib/types/ink/selection.js +94 -25
  724. package/lib/types/ink/stdin-handoff.d.ts +11 -0
  725. package/lib/types/ink/stdin-handoff.d.ts.map +1 -0
  726. package/lib/types/ink/stdin-handoff.js +20 -0
  727. package/lib/types/ink/styles.d.ts +2 -1
  728. package/lib/types/ink/styles.d.ts.map +1 -1
  729. package/lib/types/ink/terminal-image.d.ts +6 -4
  730. package/lib/types/ink/terminal-image.d.ts.map +1 -1
  731. package/lib/types/ink/terminal-image.js +16 -39
  732. package/lib/types/ink/terminal-notification.d.ts +8 -0
  733. package/lib/types/ink/terminal-notification.d.ts.map +1 -0
  734. package/lib/types/ink/terminal-notification.js +83 -0
  735. package/lib/types/ink/terminal.d.ts +9 -0
  736. package/lib/types/ink/terminal.d.ts.map +1 -1
  737. package/lib/types/ink/terminal.js +34 -1
  738. package/lib/types/ink/termio/csi.d.ts +11 -0
  739. package/lib/types/ink/termio/csi.d.ts.map +1 -1
  740. package/lib/types/ink/termio/csi.js +13 -0
  741. package/lib/types/ink/update-overflow-guard.d.ts +6 -0
  742. package/lib/types/ink/update-overflow-guard.d.ts.map +1 -1
  743. package/lib/types/ink/update-overflow-guard.js +17 -0
  744. package/lib/types/ink/wrap-text.d.ts +6 -0
  745. package/lib/types/ink/wrap-text.d.ts.map +1 -1
  746. package/lib/types/ink/wrap-text.js +17 -0
  747. package/lib/types/kernelPrefs.d.ts +130 -17
  748. package/lib/types/kernelPrefs.d.ts.map +1 -1
  749. package/lib/types/kernelPrefs.js +98 -35
  750. package/lib/types/math/inline-layout.d.ts +2 -0
  751. package/lib/types/math/inline-layout.d.ts.map +1 -1
  752. package/lib/types/math/inline-layout.js +5 -27
  753. package/lib/types/modelGroups.d.ts +15 -27
  754. package/lib/types/modelGroups.d.ts.map +1 -1
  755. package/lib/types/modelGroups.js +17 -31
  756. package/lib/types/modelPrefs.d.ts +5 -4
  757. package/lib/types/modelPrefs.d.ts.map +1 -1
  758. package/lib/types/modelPrefs.js +5 -4
  759. package/lib/types/modelRoute.d.ts +23 -9
  760. package/lib/types/modelRoute.d.ts.map +1 -1
  761. package/lib/types/modelRoute.js +25 -11
  762. package/lib/types/native-ts/yoga-layout/index.d.ts.map +1 -1
  763. package/lib/types/native-ts/yoga-layout/index.js +8 -1
  764. package/lib/types/permissionPrefs.d.ts +34 -0
  765. package/lib/types/permissionPrefs.d.ts.map +1 -0
  766. package/lib/types/permissionPrefs.js +61 -0
  767. package/lib/types/permissionPresetLabels.d.ts +25 -0
  768. package/lib/types/permissionPresetLabels.d.ts.map +1 -0
  769. package/lib/types/permissionPresetLabels.js +33 -0
  770. package/lib/types/plugin-host.d.ts +1 -0
  771. package/lib/types/plugin-host.d.ts.map +1 -1
  772. package/lib/types/preset-patch.d.ts +22 -0
  773. package/lib/types/preset-patch.d.ts.map +1 -0
  774. package/lib/types/preset-patch.js +14 -0
  775. package/lib/types/presetPrefs.d.ts +17 -3
  776. package/lib/types/presetPrefs.d.ts.map +1 -1
  777. package/lib/types/presetPrefs.js +20 -3
  778. package/lib/types/reload.d.ts +6 -10
  779. package/lib/types/reload.d.ts.map +1 -1
  780. package/lib/types/reload.js +14 -14
  781. package/lib/types/screens/Chat.d.ts +55 -16
  782. package/lib/types/screens/Chat.d.ts.map +1 -1
  783. package/lib/types/screens/Chat.js +742 -280
  784. package/lib/types/screens/Launchpad.d.ts +33 -17
  785. package/lib/types/screens/Launchpad.d.ts.map +1 -1
  786. package/lib/types/screens/Launchpad.js +256 -78
  787. package/lib/types/screens/SessionSupervisor.d.ts.map +1 -1
  788. package/lib/types/screens/SessionSupervisor.js +53 -12
  789. package/lib/types/screens/Settings.d.ts.map +1 -1
  790. package/lib/types/screens/Settings.js +7 -0
  791. package/lib/types/screens/StatusLine.d.ts.map +1 -1
  792. package/lib/types/screens/StatusLine.js +24 -7
  793. package/lib/types/screens/StatusMetrics.d.ts +46 -1
  794. package/lib/types/screens/StatusMetrics.d.ts.map +1 -1
  795. package/lib/types/screens/StatusMetrics.js +72 -0
  796. package/lib/types/screens/chat/useKernelPicker.d.ts +8 -4
  797. package/lib/types/screens/chat/useKernelPicker.d.ts.map +1 -1
  798. package/lib/types/screens/chat/useKernelPicker.js +61 -21
  799. package/lib/types/screens/chat/useModelPicker.d.ts +42 -0
  800. package/lib/types/screens/chat/useModelPicker.d.ts.map +1 -0
  801. package/lib/types/screens/chat/useModelPicker.js +182 -0
  802. package/lib/types/screens/chat/usePluginWriteFlow.d.ts +68 -0
  803. package/lib/types/screens/chat/usePluginWriteFlow.d.ts.map +1 -0
  804. package/lib/types/screens/chat/usePluginWriteFlow.js +92 -0
  805. package/lib/types/screens/chatOverlay.d.ts +30 -5
  806. package/lib/types/screens/chatOverlay.d.ts.map +1 -1
  807. package/lib/types/screens/chatOverlay.js +0 -1
  808. package/lib/types/screens/sessionSupervisor/ForeignSessionPanes.d.ts +4 -1
  809. package/lib/types/screens/sessionSupervisor/ForeignSessionPanes.d.ts.map +1 -1
  810. package/lib/types/screens/sessionSupervisor/ForeignSessionPanes.js +26 -5
  811. package/lib/types/screens/sessionSupervisor/useSessionSupervisor.d.ts +1 -1
  812. package/lib/types/screens/sessionSupervisor/useSessionSupervisor.d.ts.map +1 -1
  813. package/lib/types/screens/sessionSupervisor/useSessionSupervisor.js +51 -29
  814. package/lib/types/sessionHistory.d.ts +5 -0
  815. package/lib/types/sessionHistory.d.ts.map +1 -1
  816. package/lib/types/sessionHistory.js +5 -0
  817. package/lib/types/sessionModes.d.ts +5 -3
  818. package/lib/types/sessionModes.d.ts.map +1 -1
  819. package/lib/types/sessionModes.js +9 -3
  820. package/lib/types/sessions/listSnapshot.d.ts +6 -0
  821. package/lib/types/sessions/listSnapshot.d.ts.map +1 -0
  822. package/lib/types/sessions/listSnapshot.js +67 -0
  823. package/lib/types/settings/definitions.d.ts +50 -0
  824. package/lib/types/settings/definitions.d.ts.map +1 -1
  825. package/lib/types/settings/definitions.js +42 -8
  826. package/lib/types/terminal-utils/cjk-emphasis.d.ts +28 -0
  827. package/lib/types/terminal-utils/cjk-emphasis.d.ts.map +1 -0
  828. package/lib/types/terminal-utils/cjk-emphasis.js +31 -0
  829. package/lib/types/terminal-utils/markdown.d.ts +3 -1
  830. package/lib/types/terminal-utils/markdown.d.ts.map +1 -1
  831. package/lib/types/terminal-utils/markdown.js +7 -2
  832. package/lib/types/theme.d.ts +29 -12
  833. package/lib/types/theme.d.ts.map +1 -1
  834. package/lib/types/theme.js +310 -23
  835. package/lib/types/themeCatalog.d.ts.map +1 -1
  836. package/lib/types/themeCatalog.js +21 -2
  837. package/lib/types/tips.js +4 -4
  838. package/lib/types/tuiSettingsFile.d.ts +56 -0
  839. package/lib/types/tuiSettingsFile.d.ts.map +1 -0
  840. package/lib/types/tuiSettingsFile.js +206 -0
  841. package/lib/types/ui.d.ts +2 -0
  842. package/lib/types/ui.d.ts.map +1 -1
  843. package/lib/types/ui.js +2 -0
  844. package/lib/types/update.d.ts +72 -26
  845. package/lib/types/update.d.ts.map +1 -1
  846. package/lib/types/update.js +131 -43
  847. package/lib/types/utils/bmp.d.ts +7 -0
  848. package/lib/types/utils/bmp.d.ts.map +1 -1
  849. package/lib/types/utils/bmp.js +27 -0
  850. package/lib/types/utils/bootTrace.d.ts +2 -0
  851. package/lib/types/utils/bootTrace.d.ts.map +1 -0
  852. package/lib/types/utils/bootTrace.js +20 -0
  853. package/lib/types/utils/clipboard.d.ts.map +1 -1
  854. package/lib/types/utils/clipboard.js +11 -3
  855. package/lib/types/utils/credentials.d.ts +14 -2
  856. package/lib/types/utils/credentials.d.ts.map +1 -1
  857. package/lib/types/utils/credentials.js +34 -11
  858. package/lib/types/utils/imageResize.d.ts +10 -20
  859. package/lib/types/utils/imageResize.d.ts.map +1 -1
  860. package/lib/types/utils/imageResize.js +61 -134
  861. package/lib/types/utils/inputPaste.d.ts +2 -2
  862. package/lib/types/utils/inputPaste.js +2 -2
  863. package/lib/types/utils/pastedImagePath.d.ts +5 -0
  864. package/lib/types/utils/pastedImagePath.d.ts.map +1 -1
  865. package/lib/types/utils/pastedImagePath.js +33 -0
  866. package/lib/types/utils/paths.d.ts +11 -0
  867. package/lib/types/utils/paths.d.ts.map +1 -1
  868. package/lib/types/utils/paths.js +13 -0
  869. package/package.json +150 -114
  870. package/presets/winbash.mjs +716 -0
  871. package/tui-profile/feed/README.md +63 -0
  872. package/tui-profile/feed/first-party.json +10 -0
  873. package/tui-profile/protocols/profile-definitions.d.ts +1 -0
  874. package/tui-profile/protocols/profile-definitions.js +14 -0
  875. package/tui-profile/protocols/tui-contributions.d.ts +55 -0
  876. package/tui-profile/protocols/tui-contributions.js +141 -0
  877. package/tui-profile/registry/contracts/backend-v1alpha1.json +13 -0
  878. package/tui-profile/registry/registry-0.15.json +12 -0
  879. package/lib/types/backends/claude/install.d.ts +0 -15
  880. package/lib/types/backends/claude/install.d.ts.map +0 -1
  881. package/lib/types/backends/claude/install.js +0 -91
  882. package/lib/types/channel/elicitation.d.ts.map +0 -1
  883. package/lib/types/dsh-adapter/channel/session-lineage.d.ts +0 -42
  884. package/lib/types/dsh-adapter/channel/session-lineage.d.ts.map +0 -1
  885. package/lib/types/dsh-adapter/channel/session-lineage.js +0 -51
  886. package/lib/types/utils/jsonl.d.ts.map +0 -1
@@ -0,0 +1,78 @@
1
+ /**
2
+ * A member's shown state. A failed `phase` is durable and wins; provisioning
3
+ * has no run yet. An active member is running only while its row runs: a
4
+ * finished turn leaves the member alive and waiting (a message wakes it),
5
+ * so a completed — or failed, or absent — run reads as idle, never done.
6
+ * @param member - Roster row.
7
+ * @param subagent - The member's subagent row, if any.
8
+ * @param runKnown - Whether the subagent rows are the Lead's (default).
9
+ * @returns the state to render.
10
+ */
11
+ export function teamMemberStatus(member, subagent, runKnown = true) {
12
+ if (member.phase === 'failed')
13
+ return 'failed';
14
+ if (member.phase === 'provisioning')
15
+ return 'provisioning';
16
+ if (!runKnown)
17
+ return 'active';
18
+ return subagent?.status === 'running' || subagent?.status === 'starting' ? 'running' : 'idle';
19
+ }
20
+ /**
21
+ * Join the roster with the subagent rows.
22
+ * @param team - The session's team.
23
+ * @param subagents - The session's subagent rows.
24
+ * @param sessionId - The session on screen; inside a teammate its rows are
25
+ * its own children, never joined with the roster.
26
+ * @returns the Lead, teammates in roster order, and the remaining rows.
27
+ */
28
+ export function teamDashboardModel(team, subagents, sessionId) {
29
+ const viewedFromLead = sessionId === undefined || sessionId === team.leadSessionId;
30
+ const byId = new Map();
31
+ if (viewedFromLead)
32
+ for (const row of subagents)
33
+ byId.set(row.agentId, row);
34
+ const teammates = [];
35
+ const memberIds = new Set();
36
+ for (const member of team.members) {
37
+ if (member.role !== 'teammate')
38
+ continue;
39
+ const subagent = byId.get(member.id);
40
+ if (subagent !== undefined)
41
+ memberIds.add(member.id);
42
+ teammates.push({ member, status: teamMemberStatus(member, subagent, viewedFromLead), ...subagent === undefined ? {} : { subagent } });
43
+ }
44
+ const lead = team.members.find(member => member.role === 'lead');
45
+ return {
46
+ ...lead === undefined ? {} : { lead },
47
+ viewedFromLead,
48
+ teammates,
49
+ others: subagents.filter(row => !memberIds.has(row.agentId)),
50
+ };
51
+ }
52
+ /**
53
+ * Teammates on the roster: those known to be running or provisioning, and
54
+ * those that may be running. Inside a teammate a sibling's run is not
55
+ * visible, so an active sibling is `unseen`; the teammate on screen itself
56
+ * counts in neither.
57
+ * @param team - The session's team.
58
+ * @param subagents - The session's subagent rows.
59
+ * @param sessionId - The session on screen.
60
+ * @returns the three counts.
61
+ */
62
+ export function teamMemberCounts(team, subagents, sessionId) {
63
+ const { teammates } = teamDashboardModel(team, subagents, sessionId);
64
+ const counted = teammates.filter(row => row.member.id !== sessionId);
65
+ return {
66
+ total: teammates.length,
67
+ active: counted.filter(row => row.status === 'running' || row.status === 'provisioning').length,
68
+ unseen: counted.filter(row => row.status === 'active').length,
69
+ };
70
+ }
71
+ /** Completed / total of the task board. */
72
+ export function teamTaskProgress(tasks) {
73
+ return { completed: tasks.filter(task => task.status === 'completed').length, total: tasks.length };
74
+ }
75
+ /** A pending task some blocker still holds back. */
76
+ export function isTeamTaskBlocked(task) {
77
+ return task.status === 'pending' && !task.ready;
78
+ }
@@ -14,7 +14,7 @@ import type { ContextMenuEvent } from '../../ink/events/context-menu-event.js';
14
14
  * session rows resolve them: a row must be exactly two lines at every terminal
15
15
  * width, and a wrapped row destroys the alignment a list is scanned by.
16
16
  */
17
- export declare function HomeWorkspaceRow({ title, path, home, sessionCount, historyOnly, present, selected, focused, width, onSelect, onMenu, }: {
17
+ export declare function HomeWorkspaceRow({ title, path, home, sessionCount, historyOnly, present, selected, focused, declareCursor, width, onSelect, onMenu, }: {
18
18
  title: string;
19
19
  /** Canonical directory path recorded in the ledger. */
20
20
  path: string;
@@ -29,6 +29,8 @@ export declare function HomeWorkspaceRow({ title, path, home, sessionCount, hist
29
29
  selected: boolean;
30
30
  /** Keyboard cursor. */
31
31
  focused: boolean;
32
+ /** Park the native caret on this row while the rail owns it. */
33
+ declareCursor?: boolean;
32
34
  /** Columns available to the row. */
33
35
  width: number;
34
36
  /** Left click: show this workspace's sessions (same path as Enter). */
@@ -1 +1 @@
1
- {"version":3,"file":"HomeWorkspaceRow.d.ts","sourceRoot":"","sources":["../../../../src/components/workspaces/HomeWorkspaceRow.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAmB,MAAM,OAAO,CAAA;AAGvC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iCAAiC,CAAA;AACjE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wCAAwC,CAAA;AAG9E;;;;;;;;;;;;GAYG;AACH,wBAAgB,gBAAgB,CAAC,EAC/B,KAAK,EACL,IAAI,EACJ,IAAI,EACJ,YAAY,EACZ,WAAmB,EACnB,OAAO,EACP,QAAQ,EACR,OAAO,EACP,KAAK,EACL,QAAQ,EACR,MAAM,GACP,EAAE;IACD,KAAK,EAAE,MAAM,CAAA;IACb,uDAAuD;IACvD,IAAI,EAAE,MAAM,CAAA;IACZ,sDAAsD;IACtD,IAAI,EAAE,MAAM,CAAA;IACZ,YAAY,EAAE,MAAM,CAAA;IACpB,sEAAsE;IACtE,WAAW,CAAC,EAAE,OAAO,CAAA;IACrB,0DAA0D;IAC1D,OAAO,EAAE,OAAO,CAAA;IAChB,mEAAmE;IACnE,QAAQ,EAAE,OAAO,CAAA;IACjB,uBAAuB;IACvB,OAAO,EAAE,OAAO,CAAA;IAChB,oCAAoC;IACpC,KAAK,EAAE,MAAM,CAAA;IACb,uEAAuE;IACvE,QAAQ,CAAC,CAAC,KAAK,EAAE,UAAU,GAAG,IAAI,CAAA;IAClC,mDAAmD;IACnD,MAAM,CAAC,CAAC,KAAK,EAAE,gBAAgB,GAAG,IAAI,CAAA;CACvC,GAAG,KAAK,CAAC,SAAS,CAwClB;AAED;;;;;;GAMG;AACH,wBAAgB,mBAAmB,CAAC,EAClC,OAAO,EACP,KAAK,EACL,MAAM,GACP,EAAE;IACD,OAAO,EAAE,OAAO,CAAA;IAChB,KAAK,EAAE,MAAM,CAAA;IACb,MAAM,CAAC,CAAC,KAAK,EAAE,UAAU,GAAG,IAAI,CAAA;CACjC,GAAG,KAAK,CAAC,SAAS,CAoBlB"}
1
+ {"version":3,"file":"HomeWorkspaceRow.d.ts","sourceRoot":"","sources":["../../../../src/components/workspaces/HomeWorkspaceRow.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAmB,MAAM,OAAO,CAAA;AAGvC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iCAAiC,CAAA;AACjE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wCAAwC,CAAA;AAI9E;;;;;;;;;;;;GAYG;AACH,wBAAgB,gBAAgB,CAAC,EAC/B,KAAK,EACL,IAAI,EACJ,IAAI,EACJ,YAAY,EACZ,WAAmB,EACnB,OAAO,EACP,QAAQ,EACR,OAAO,EACP,aAAqB,EACrB,KAAK,EACL,QAAQ,EACR,MAAM,GACP,EAAE;IACD,KAAK,EAAE,MAAM,CAAA;IACb,uDAAuD;IACvD,IAAI,EAAE,MAAM,CAAA;IACZ,sDAAsD;IACtD,IAAI,EAAE,MAAM,CAAA;IACZ,YAAY,EAAE,MAAM,CAAA;IACpB,sEAAsE;IACtE,WAAW,CAAC,EAAE,OAAO,CAAA;IACrB,0DAA0D;IAC1D,OAAO,EAAE,OAAO,CAAA;IAChB,mEAAmE;IACnE,QAAQ,EAAE,OAAO,CAAA;IACjB,uBAAuB;IACvB,OAAO,EAAE,OAAO,CAAA;IAChB,gEAAgE;IAChE,aAAa,CAAC,EAAE,OAAO,CAAA;IACvB,oCAAoC;IACpC,KAAK,EAAE,MAAM,CAAA;IACb,uEAAuE;IACvE,QAAQ,CAAC,CAAC,KAAK,EAAE,UAAU,GAAG,IAAI,CAAA;IAClC,mDAAmD;IACnD,MAAM,CAAC,CAAC,KAAK,EAAE,gBAAgB,GAAG,IAAI,CAAA;CACvC,GAAG,KAAK,CAAC,SAAS,CA0ClB;AAED;;;;;;GAMG;AACH,wBAAgB,mBAAmB,CAAC,EAClC,OAAO,EACP,KAAK,EACL,MAAM,GACP,EAAE;IACD,OAAO,EAAE,OAAO,CAAA;IAChB,KAAK,EAAE,MAAM,CAAA;IACb,MAAM,CAAC,CAAC,KAAK,EAAE,UAAU,GAAG,IAAI,CAAA;CACjC,GAAG,KAAK,CAAC,SAAS,CAoBlB"}
@@ -3,6 +3,7 @@ import { useState } from 'react';
3
3
  import { Box, Text } from '../../ui.js';
4
4
  import { t } from '../../i18n.js';
5
5
  import { formatProject, spreadRow, truncateWidth } from '../../sessions/format.js';
6
+ import { useDeclaredCursor, useNativeCursor } from '../../ink/hooks/use-declared-cursor.js';
6
7
  /**
7
8
  * One workspace in the home screen's left rail.
8
9
  *
@@ -16,8 +17,10 @@ import { formatProject, spreadRow, truncateWidth } from '../../sessions/format.j
16
17
  * session rows resolve them: a row must be exactly two lines at every terminal
17
18
  * width, and a wrapped row destroys the alignment a list is scanned by.
18
19
  */
19
- export function HomeWorkspaceRow({ title, path, home, sessionCount, historyOnly = false, present, selected, focused, width, onSelect, onMenu, }) {
20
+ export function HomeWorkspaceRow({ title, path, home, sessionCount, historyOnly = false, present, selected, focused, declareCursor = false, width, onSelect, onMenu, }) {
20
21
  const [hovered, setHovered] = useState(false);
22
+ const nativeCursor = useNativeCursor();
23
+ const cursorRef = useDeclaredCursor({ line: 0, column: 0, active: focused && declareCursor, visible: nativeCursor, hideOnIdle: true });
21
24
  const body = Math.max(8, width - 4);
22
25
  // The presence marker leads the badge on purpose: `spreadRow` may truncate
23
26
  // the right-hand segment, and "this directory is gone" is the one fact that
@@ -35,7 +38,7 @@ export function HomeWorkspaceRow({ title, path, home, sessionCount, historyOnly
35
38
  // Hover is the BLUE prompt — pointer feedback and nothing else, so it
36
39
  // never marks the focused or the selected row. Selection itself is green
37
40
  // in the text, which is why this row draws no box while selected.
38
- backgroundColor: hovered && !focused ? 'userMessageBackgroundHover' : undefined, children: [_jsxs(Box, { height: 1, flexShrink: 0, overflow: "hidden", children: [_jsx(Text, { color: focused ? 'success' : 'subtle', children: focused ? '❯ ' : ' ' }), _jsx(Text, { color: headingColor, bold: focused || selected, children: heading.left }), _jsx(Text, { dimColor: !focused, children: `${' '.repeat(heading.gap)}${heading.right}` })] }), _jsx(Text, { color: (focused || selected) ? 'success' : undefined, dimColor: !(focused || selected), wrap: "truncate-end", children: ` ${truncateWidth(detail, body - 2)}` })] }));
41
+ backgroundColor: hovered && !focused ? 'userMessageBackgroundHover' : undefined, children: [_jsxs(Box, { ref: cursorRef, height: 1, flexShrink: 0, overflow: "hidden", children: [_jsx(Text, { color: focused ? 'success' : 'subtle', children: focused ? '❯ ' : ' ' }), _jsx(Text, { color: headingColor, bold: focused || selected, children: heading.left }), _jsx(Text, { dimColor: !focused, children: `${' '.repeat(heading.gap)}${heading.right}` })] }), _jsx(Text, { color: (focused || selected) ? 'success' : undefined, dimColor: !(focused || selected), wrap: "truncate-end", children: ` ${truncateWidth(detail, body - 2)}` })] }));
39
42
  }
40
43
  /**
41
44
  * The `+` row that opens the directory picker.
@@ -0,0 +1,102 @@
1
+ /**
2
+ * Admits third-party plugin activations via their package-root
3
+ * `dsh-plugin.json` (`getHostAdmission()`), binding the identity to the
4
+ * plugin's own fiber. A refused activation keeps running (an
5
+ * unload would rewrite the user's profile) but stays outside every mediated
6
+ * capability. Listeners and the retry timer ride the caller's `ctx.effect`.
7
+ */
8
+ import { Context } from '@deepseek-ai/cordis';
9
+ import { type TuiPluginHost } from './plugin-host.js';
10
+ /**
11
+ * The Loader's own ESM resolver (`cordis-plugin-loader`'s Node-internals
12
+ * adapter, or `undefined` when this runtime exposes no internals). Admission
13
+ * must resolve the entry through it: the Loader's active export conditions and
14
+ * custom hooks decide which module actually executes, and that module's
15
+ * manifest owns the identity and permissions.
16
+ *
17
+ * `import` is the same door `EntryTree.import()` uses — the module the Loader
18
+ * would execute for that specifier, out of the Loader's own cache. It is
19
+ * optional because the shape is classified by `resolveSync` alone; a
20
+ * resolution that cannot be executed is still a resolution, and the D-1
21
+ * assembly falls back to importing the URL the resolver returned.
22
+ */
23
+ export type ActiveResolver = {
24
+ readonly version: 'v1';
25
+ resolveSync(specifier: string, parentURL: string, attributes: object): {
26
+ readonly url: string;
27
+ };
28
+ import?(specifier: string, parentURL: string, attributes: object): Promise<unknown>;
29
+ } | {
30
+ readonly version: 'v2';
31
+ resolveSync(parentURL: string, request: {
32
+ specifier: string;
33
+ attributes: object;
34
+ }): {
35
+ readonly url: string;
36
+ };
37
+ import?(specifier: string, parentURL: string, attributes: object): Promise<unknown>;
38
+ };
39
+ /** The Cordis loader entry that owns a fiber (`cordis-plugin-loader`). */
40
+ interface LoaderEntryLike {
41
+ readonly options?: {
42
+ readonly name?: string;
43
+ };
44
+ readonly ctx?: {
45
+ readonly baseUrl?: string;
46
+ };
47
+ readonly fiber?: {
48
+ readonly state?: number;
49
+ } | null;
50
+ }
51
+ /** The part of the Loader's surface this package reads. Exported (D-1) because
52
+ * the backend assembly resolves a bundle's entry through the same resolver. */
53
+ export interface LoaderLike {
54
+ readonly internal?: ActiveResolver;
55
+ locate?(fiber?: object): string | undefined;
56
+ resolve?(id: string): LoaderEntryLike | undefined;
57
+ entries?(): Iterable<LoaderEntryLike>;
58
+ }
59
+ /**
60
+ * Watch `ctx`'s composition and admit every third-party activation that
61
+ * carries a package-root `dsh-plugin.json`. The listeners and the retry
62
+ * timer are bound to `ctx`'s own teardown.
63
+ */
64
+ export declare function armAdmissionLoader(ctx: Context, options?: {
65
+ host?: () => TuiPluginHost | undefined;
66
+ /** @internal retry bound for the regression; production uses RETRY_ATTEMPTS. */
67
+ retryAttempts?: number;
68
+ }): void;
69
+ /** The Loader of `ctx`'s composition, when there is one. One accessor for both
70
+ * readers of it (the admission loader and the D-1 backend assembly), so
71
+ * "which Loader" cannot drift between them. */
72
+ export declare function compositionLoader(ctx: Context): LoaderLike | undefined;
73
+ /**
74
+ * The **URL** an entry `name` resolves to, through the exact resolver owned by
75
+ * the Loader that would execute it: its active conditions and hooks must select
76
+ * the same code and authority.
77
+ *
78
+ * `undefined` is a refusal to guess, not a "not found": a `cordis:` builtin has
79
+ * no module of its own, and a Loader without Node internals leaves the question
80
+ * open (one debug line, then out). Exported for the D-1 backend assembly, which
81
+ * resolves a *package* the same way rather than growing a second path resolver.
82
+ */
83
+ export declare function resolveEntryUrl(loader: LoaderLike, name: string, baseUrl: string | undefined): string | undefined;
84
+ /**
85
+ * Import a module through the Loader's own door (`EntryTree.import`), so the
86
+ * namespace handed back is the one the Loader executed — conditions, hooks and
87
+ * module cache included. Falls back to importing the URL the resolver already
88
+ * returned (still the Loader's answer; no second resolver) for a loader shape
89
+ * that can resolve but not import.
90
+ */
91
+ export declare function loadThroughLoader(loader: LoaderLike, name: string, url: string, baseUrl: string | undefined): Promise<Record<string, unknown>>;
92
+ /** Walk up from the entry module to its package root. A manifest counts only
93
+ * beside the `package.json` that establishes that root: a stray copy deeper
94
+ * in the tree (a build output directory, say) must not claim an outer
95
+ * package's code for its own identity. The walk stops at the first
96
+ * `package.json`, so DSH's own rows (a `package.json` one level up from
97
+ * their entry) cost one lookup instead of a climb to the filesystem root.
98
+ * Exported for the D-1 backend assembly, which reads a bundle's declaration
99
+ * through this same rule. */
100
+ export declare function findManifest(from: string): string | undefined;
101
+ export {};
102
+ //# sourceMappingURL=admission-loader.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"admission-loader.d.ts","sourceRoot":"","sources":["../../../src/dsh-adapter/admission-loader.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAKH,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAA;AAG7C,OAAO,EAAoB,KAAK,aAAa,EAAE,MAAM,kBAAkB,CAAA;AASvE;;;;;;;;;;;;GAYG;AACH,MAAM,MAAM,cAAc,GACtB;IAAE,QAAQ,CAAC,OAAO,EAAE,IAAI,CAAA;IACtB,WAAW,CAAC,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG;QAAE,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAA;KAAE,CAAA;IAC/F,MAAM,CAAC,CAAC,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAA;CAAE,GACvF;IAAE,QAAQ,CAAC,OAAO,EAAE,IAAI,CAAA;IACtB,WAAW,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,UAAU,EAAE,MAAM,CAAA;KAAE,GAAG;QAAE,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAA;KAAE,CAAA;IAC5G,MAAM,CAAC,CAAC,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAA;CAAE,CAAA;AAE3F,0EAA0E;AAC1E,UAAU,eAAe;IACvB,QAAQ,CAAC,OAAO,CAAC,EAAE;QAAE,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,CAAA;IAC7C,QAAQ,CAAC,GAAG,CAAC,EAAE;QAAE,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,CAAA;IAC5C,QAAQ,CAAC,KAAK,CAAC,EAAE;QAAE,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAA;CACpD;AAED;gFACgF;AAChF,MAAM,WAAW,UAAU;IACzB,QAAQ,CAAC,QAAQ,CAAC,EAAE,cAAc,CAAA;IAClC,MAAM,CAAC,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAAA;IAC3C,OAAO,CAAC,CAAC,EAAE,EAAE,MAAM,GAAG,eAAe,GAAG,SAAS,CAAA;IACjD,OAAO,CAAC,IAAI,QAAQ,CAAC,eAAe,CAAC,CAAA;CACtC;AASD;;;;GAIG;AACH,wBAAgB,kBAAkB,CAChC,GAAG,EAAE,OAAO,EACZ,OAAO,GAAE;IACP,IAAI,CAAC,EAAE,MAAM,aAAa,GAAG,SAAS,CAAA;IACtC,gFAAgF;IAChF,aAAa,CAAC,EAAE,MAAM,CAAA;CAClB,GACL,IAAI,CA8JN;AAED;;gDAEgD;AAChD,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,OAAO,GAAG,UAAU,GAAG,SAAS,CAKtE;AAgCD;;;;;;;;;GASG;AACH,wBAAgB,eAAe,CAAC,MAAM,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,GAAG,SAAS,CAgBjH;AAED;;;;;;GAMG;AACH,wBAAsB,iBAAiB,CACrC,MAAM,EAAE,UAAU,EAClB,IAAI,EAAE,MAAM,EACZ,GAAG,EAAE,MAAM,EACX,OAAO,EAAE,MAAM,GAAG,SAAS,GAC1B,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAMlC;AAWD;;;;;;;8BAO8B;AAC9B,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAY7D"}
@@ -0,0 +1,301 @@
1
+ /**
2
+ * Admits third-party plugin activations via their package-root
3
+ * `dsh-plugin.json` (`getHostAdmission()`), binding the identity to the
4
+ * plugin's own fiber. A refused activation keeps running (an
5
+ * unload would rewrite the user's profile) but stays outside every mediated
6
+ * capability. Listeners and the retry timer ride the caller's `ctx.effect`.
7
+ */
8
+ import { existsSync, readFileSync } from 'node:fs';
9
+ import { dirname, join, resolve as resolvePath } from 'node:path';
10
+ import { fileURLToPath, pathToFileURL } from 'node:url';
11
+ import { Context } from '@deepseek-ai/cordis';
12
+ import { componentIdentityOf } from './component-identity.js';
13
+ import { compositionRoot, withHostRootCapability } from './host-access.js';
14
+ import { getHostAdmission } from './plugin-host.js';
15
+ import { logForDebugging } from '../utils/debug.js';
16
+ /** Retry window for an admission not decidable yet (a required contract or
17
+ * the host itself arrives later). Bounded so a host that never arrives
18
+ * (issue #183) settles as `refused` with a diagnostic instead of ticking forever. */
19
+ const RETRY_INTERVAL_MS = 200;
20
+ const RETRY_ATTEMPTS = 100;
21
+ /**
22
+ * Watch `ctx`'s composition and admit every third-party activation that
23
+ * carries a package-root `dsh-plugin.json`. The listeners and the retry
24
+ * timer are bound to `ctx`'s own teardown.
25
+ */
26
+ export function armAdmissionLoader(ctx, options = {}) {
27
+ const root = compositionRoot(ctx);
28
+ const retryAttempts = options.retryAttempts ?? RETRY_ATTEMPTS;
29
+ const loader = compositionLoader(root);
30
+ if (loader === undefined) {
31
+ logForDebugging('dsh-tui: admission loader not armed — this composition has no cordis loader');
32
+ return;
33
+ }
34
+ const state = new WeakMap();
35
+ const manifests = new WeakMap();
36
+ const attempts = new WeakMap();
37
+ const pending = new Set();
38
+ let timer;
39
+ const host = options.host ?? (() => ctx.get('tuiPluginHost', false));
40
+ const stopTimer = () => {
41
+ if (timer !== undefined) {
42
+ clearTimeout(timer);
43
+ timer = undefined;
44
+ }
45
+ };
46
+ const settle = (fiber, next) => {
47
+ state.set(fiber, next);
48
+ pending.delete(fiber);
49
+ };
50
+ const attempt = (fiber) => {
51
+ const pluginCtx = fiber.ctx;
52
+ // LOADING (1), not ACTIVE (2): Cordis emits it before the row's callback
53
+ // runs, so the plugin has its identity while its `apply` registers panels.
54
+ // ACTIVE is the catch-up path for rows that activated before arming.
55
+ if (!Context.is(pluginCtx) || (fiber.state !== 1 && fiber.state !== 2)) {
56
+ settle(fiber, 'skipped');
57
+ return;
58
+ }
59
+ // Already admitted (the row called admission itself, or a previous pass
60
+ // of this loader did): the manifest identity is host-owned and single.
61
+ if (componentIdentityOf(pluginCtx) !== undefined) {
62
+ settle(fiber, 'admitted');
63
+ return;
64
+ }
65
+ // The manifest lookup is one synchronous walk per activation, cached for
66
+ // the fiber's lifetime (a restart reuses it; the package cannot move).
67
+ if (!manifests.has(fiber))
68
+ manifests.set(fiber, manifestPathOf(loader, fiber));
69
+ const resolved = manifests.get(fiber);
70
+ // No manifest at its package root:
71
+ // nothing to admit, and no retry will change that.
72
+ if (resolved === undefined) {
73
+ settle(fiber, 'skipped');
74
+ return;
75
+ }
76
+ const live = host();
77
+ const admission = live === undefined ? undefined : getHostAdmission(live);
78
+ if (admission === undefined) {
79
+ const waited = (attempts.get(fiber) ?? 0) + 1;
80
+ attempts.set(fiber, waited);
81
+ // The host has not arrived (an absent host looks like a late one):
82
+ // bounded wait, then a logged refusal.
83
+ if (waited >= retryAttempts) {
84
+ settle(fiber, 'refused');
85
+ logForDebugging(`dsh-tui: admission loader refused a Component after waiting ${waited} ticks for `
86
+ + `tuiPluginHost / its admission seam (host ${live === undefined ? 'missing' : 'without getHostAdmission'})`, { manifest: resolved });
87
+ }
88
+ return;
89
+ }
90
+ let source;
91
+ try {
92
+ source = readFileSync(resolved, 'utf8');
93
+ }
94
+ catch (error) {
95
+ settle(fiber, 'skipped');
96
+ logForDebugging(`dsh-tui: admission loader could not read ${resolved} (${messageOf(error)})`);
97
+ return;
98
+ }
99
+ const count = (attempts.get(fiber) ?? 0) + 1;
100
+ attempts.set(fiber, count);
101
+ try {
102
+ const identity = admission.admit(pluginCtx, source, { source: resolved });
103
+ settle(fiber, 'admitted');
104
+ logForDebugging('dsh-tui: admission loader admitted a Component', {
105
+ componentId: identity.componentId,
106
+ activationId: identity.activationId,
107
+ manifest: resolved,
108
+ });
109
+ }
110
+ catch (error) {
111
+ if (count >= retryAttempts) {
112
+ settle(fiber, 'refused');
113
+ logForDebugging(`dsh-tui: admission loader refused a Component after ${count} attempts (${messageOf(error)})`, {
114
+ manifest: resolved,
115
+ });
116
+ }
117
+ }
118
+ };
119
+ const consider = (fiber) => {
120
+ if (typeof fiber !== 'object' || fiber === null)
121
+ return;
122
+ const activation = fiber;
123
+ if (activation.state !== 1 && activation.state !== 2)
124
+ return;
125
+ const current = state.get(fiber);
126
+ if (current === 'admitted' || current === 'refused')
127
+ return;
128
+ // Synchronous on purpose: the row's callback runs one microtask after
129
+ // LOADING, so any hop here would let `apply` run before the identity exists.
130
+ pending.add(fiber);
131
+ attempt(activation);
132
+ if (pending.has(fiber) && timer === undefined)
133
+ timer = setTimeout(flush, RETRY_INTERVAL_MS);
134
+ };
135
+ const flush = () => {
136
+ stopTimer();
137
+ for (const fiber of [...pending])
138
+ attempt(fiber);
139
+ if (pending.size > 0)
140
+ timer = setTimeout(flush, RETRY_INTERVAL_MS);
141
+ };
142
+ // Rows that activated before this loader was armed (the profile path
143
+ // applies plugin rows before the TUI row) come from the entry tree; every
144
+ // later activation arrives through the lifecycle event.
145
+ const seed = () => {
146
+ if (typeof loader.entries !== 'function')
147
+ return;
148
+ try {
149
+ for (const entry of loader.entries())
150
+ consider(entry.fiber);
151
+ }
152
+ catch (error) {
153
+ logForDebugging(`dsh-tui: admission loader could not walk the entry tree (${messageOf(error)})`);
154
+ }
155
+ };
156
+ ctx.effect(() => {
157
+ const listener = (fiber) => {
158
+ // A fiber that leaves the running states loses the identity with its
159
+ // own effects (restart): forget the pass so a re-activation is admitted
160
+ // again.
161
+ const fiberState = fiber?.state;
162
+ if (typeof fiber === 'object' && fiber !== null && (fiberState === 5 || fiberState === 4 || fiberState === 3)) {
163
+ state.delete(fiber);
164
+ pending.delete(fiber);
165
+ attempts.delete(fiber);
166
+ return;
167
+ }
168
+ consider(fiber);
169
+ };
170
+ // On the composition root (plugin rows' lifecycle events never travel
171
+ // through the TUI row), `global` so child filters cannot hide them; in the
172
+ // host capability, since the root guard refuses `root.events.on` here.
173
+ const disposer = withHostRootCapability(() => root.on('internal/status', listener, { global: true }));
174
+ return () => {
175
+ if (typeof disposer === 'function') {
176
+ withHostRootCapability(() => disposer());
177
+ }
178
+ };
179
+ });
180
+ ctx.effect(() => stopTimer);
181
+ seed();
182
+ }
183
+ /** The Loader of `ctx`'s composition, when there is one. One accessor for both
184
+ * readers of it (the admission loader and the D-1 backend assembly), so
185
+ * "which Loader" cannot drift between them. */
186
+ export function compositionLoader(ctx) {
187
+ const loader = compositionRoot(ctx).get('loader', false);
188
+ return loader !== undefined && typeof loader.locate === 'function' && typeof loader.resolve === 'function'
189
+ ? loader
190
+ : undefined;
191
+ }
192
+ /** The package-root `dsh-plugin.json` of the entry that owns `fiber`, if any.
193
+ * Both loader calls are fenced: `EntryTree.resolve` throws for nested ids
194
+ * (`include:<group>:<row>`); an uninspectable entry is simply skipped. */
195
+ function manifestPathOf(loader, fiber) {
196
+ let entry;
197
+ try {
198
+ const entryId = loader.locate?.(fiber);
199
+ entry = entryId === undefined ? undefined : loader.resolve?.(entryId);
200
+ }
201
+ catch {
202
+ return undefined;
203
+ }
204
+ const name = entry?.options?.name;
205
+ if (typeof name !== 'string' || name === '')
206
+ return undefined;
207
+ const entryFile = resolveEntryFile(loader, name, entry?.ctx?.baseUrl);
208
+ return entryFile === undefined ? undefined : findManifest(entryFile);
209
+ }
210
+ /** The module an entry `name` resolves to, following the same rules the
211
+ * loader's own import uses (file URL, relative to `baseUrl`, bare
212
+ * specifier relative to the profile). */
213
+ function resolveEntryFile(loader, name, baseUrl) {
214
+ const url = resolveEntryUrl(loader, name, baseUrl);
215
+ if (url === undefined)
216
+ return undefined;
217
+ try {
218
+ return fileURLToPath(url);
219
+ }
220
+ catch {
221
+ return undefined;
222
+ }
223
+ }
224
+ /**
225
+ * The **URL** an entry `name` resolves to, through the exact resolver owned by
226
+ * the Loader that would execute it: its active conditions and hooks must select
227
+ * the same code and authority.
228
+ *
229
+ * `undefined` is a refusal to guess, not a "not found": a `cordis:` builtin has
230
+ * no module of its own, and a Loader without Node internals leaves the question
231
+ * open (one debug line, then out). Exported for the D-1 backend assembly, which
232
+ * resolves a *package* the same way rather than growing a second path resolver.
233
+ */
234
+ export function resolveEntryUrl(loader, name, baseUrl) {
235
+ try {
236
+ if (name.startsWith('cordis:'))
237
+ return undefined;
238
+ const resolver = loader.internal;
239
+ if (resolver === undefined) {
240
+ logForDebugging('dsh-tui: admission skipped — the Loader ESM resolver is unavailable; refusing to guess component identity');
241
+ return undefined;
242
+ }
243
+ const parent = moduleBase(baseUrl).href;
244
+ const resolved = resolver.version === 'v1'
245
+ ? resolver.resolveSync(name, parent, {})
246
+ : resolver.resolveSync(parent, { specifier: name, attributes: {} });
247
+ return resolved.url;
248
+ }
249
+ catch {
250
+ return undefined;
251
+ }
252
+ }
253
+ /**
254
+ * Import a module through the Loader's own door (`EntryTree.import`), so the
255
+ * namespace handed back is the one the Loader executed — conditions, hooks and
256
+ * module cache included. Falls back to importing the URL the resolver already
257
+ * returned (still the Loader's answer; no second resolver) for a loader shape
258
+ * that can resolve but not import.
259
+ */
260
+ export async function loadThroughLoader(loader, name, url, baseUrl) {
261
+ const internal = loader.internal;
262
+ if (internal?.import !== undefined) {
263
+ return await internal.import(name, moduleBase(baseUrl).href, {});
264
+ }
265
+ return await import(/* @vite-ignore */ url);
266
+ }
267
+ function moduleBase(baseUrl) {
268
+ if (baseUrl === undefined || baseUrl === '')
269
+ return pathToFileURL(join(process.cwd(), 'index.js'));
270
+ try {
271
+ return baseUrl.startsWith('file:') ? new URL(baseUrl) : pathToFileURL(join(baseUrl, 'index.js'));
272
+ }
273
+ catch {
274
+ return pathToFileURL(join(process.cwd(), 'index.js'));
275
+ }
276
+ }
277
+ /** Walk up from the entry module to its package root. A manifest counts only
278
+ * beside the `package.json` that establishes that root: a stray copy deeper
279
+ * in the tree (a build output directory, say) must not claim an outer
280
+ * package's code for its own identity. The walk stops at the first
281
+ * `package.json`, so DSH's own rows (a `package.json` one level up from
282
+ * their entry) cost one lookup instead of a climb to the filesystem root.
283
+ * Exported for the D-1 backend assembly, which reads a bundle's declaration
284
+ * through this same rule. */
285
+ export function findManifest(from) {
286
+ let dir = dirname(resolvePath(from));
287
+ for (let depth = 0; depth < 64; depth += 1) {
288
+ if (existsSync(join(dir, 'package.json'))) {
289
+ const candidate = join(dir, 'dsh-plugin.json');
290
+ return existsSync(candidate) ? candidate : undefined;
291
+ }
292
+ const parent = dirname(dir);
293
+ if (parent === dir)
294
+ return undefined;
295
+ dir = parent;
296
+ }
297
+ return undefined;
298
+ }
299
+ function messageOf(error) {
300
+ return error instanceof Error ? error.message : String(error);
301
+ }
@@ -1 +1 @@
1
- {"version":3,"file":"agent-view.d.ts","sourceRoot":"","sources":["../../../src/dsh-adapter/agent-view.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAA;AAC5D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAA;AACvD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,cAAc,CAAA;AAEnD,gEAAgE;AAChE,eAAO,MAAM,uBAAuB,EAAE,SAAS,eAAe,EAE7D,CAAA;AAED,gEAAgE;AAChE,eAAO,MAAM,wBAAwB,MAAM,CAAA;AAE3C;4DAC4D;AAC5D,eAAO,MAAM,qBAAqB,KAAK,CAAA;AAEvC;iEACiE;AACjE,wBAAgB,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAE5C;AAED,0EAA0E;AAC1E,wBAAgB,eAAe,CAAC,OAAO,EAAE,OAAO,GAAG,MAAM,GAAG,SAAS,CAcpE;AAED,2DAA2D;AAC3D,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,SAAS,YAAY,EAAE,GAAG,OAAO,CAE1E;AAED;;;;GAIG;AACH,MAAM,WAAW,aAAa;IAC5B,QAAQ,EAAE,OAAO,CAAA;IACjB,4DAA4D;IAC5D,WAAW,EAAE,MAAM,CAAA;IACnB;kEAC8D;IAC9D,OAAO,EAAE,MAAM,CAAA;IACf;yCACqC;IACrC,WAAW,EAAE,MAAM,GAAG,QAAQ,GAAG,MAAM,GAAG,WAAW,CAAA;IACrD,KAAK,EAAE,MAAM,CAAA;IACb,6DAA6D;IAC7D,SAAS,EAAE,MAAM,CAAA;IACjB,wDAAwD;IACxD,cAAc,EAAE,OAAO,CAAA;CACxB;AAED;;;;;;GAMG;AACH,wBAAgB,mBAAmB,CACjC,MAAM,EAAE,SAAS,YAAY,EAAE,EAC/B,KAAK,EAAE,MAAM,EACb,IAAI,EAAE,aAAa,GAClB,aAAa,CAkDf;AAED,gEAAgE;AAChE,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,SAAS,YAAY,EAAE,EAAE,KAAK,EAAE,MAAM,GAAG,YAAY,EAAE,CAanG;AAED;4DAC4D;AAC5D,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,aAAa,EAAE,GAAG,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,CAUzF;AAED;;;;GAIG;AACH,wBAAgB,iBAAiB,CAC/B,UAAU,EAAE,MAAM,GAAG,SAAS,EAC9B,IAAI,EAAE,aAAa,EACnB,UAAU,EAAE,OAAO,GAClB,eAAe,CAMjB"}
1
+ {"version":3,"file":"agent-view.d.ts","sourceRoot":"","sources":["../../../src/dsh-adapter/agent-view.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAA;AAC5D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAA;AACvD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,cAAc,CAAA;AAGnD,gEAAgE;AAChE,eAAO,MAAM,uBAAuB,EAAE,SAAS,eAAe,EAE7D,CAAA;AAED,gEAAgE;AAChE,eAAO,MAAM,wBAAwB,MAAM,CAAA;AAE3C;4DAC4D;AAC5D,eAAO,MAAM,qBAAqB,KAAK,CAAA;AAEvC;iEACiE;AACjE,wBAAgB,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAE5C;AAED,0EAA0E;AAC1E,wBAAgB,eAAe,CAAC,OAAO,EAAE,OAAO,GAAG,MAAM,GAAG,SAAS,CAcpE;AAED,2DAA2D;AAC3D,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,SAAS,YAAY,EAAE,GAAG,OAAO,CAE1E;AAED;;;;GAIG;AACH,MAAM,WAAW,aAAa;IAC5B,QAAQ,EAAE,OAAO,CAAA;IACjB,4DAA4D;IAC5D,WAAW,EAAE,MAAM,CAAA;IACnB;kEAC8D;IAC9D,OAAO,EAAE,MAAM,CAAA;IACf;yCACqC;IACrC,WAAW,EAAE,MAAM,GAAG,QAAQ,GAAG,MAAM,GAAG,WAAW,CAAA;IACrD,KAAK,EAAE,MAAM,CAAA;IACb,6DAA6D;IAC7D,SAAS,EAAE,MAAM,CAAA;IACjB,wDAAwD;IACxD,cAAc,EAAE,OAAO,CAAA;CACxB;AAED;;;;;;GAMG;AACH,wBAAgB,mBAAmB,CACjC,MAAM,EAAE,SAAS,YAAY,EAAE,EAC/B,KAAK,EAAE,MAAM,EACb,IAAI,EAAE,aAAa,GAClB,aAAa,CAmDf;AAED,gEAAgE;AAChE,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,SAAS,YAAY,EAAE,EAAE,KAAK,EAAE,MAAM,GAAG,YAAY,EAAE,CAanG;AAED;4DAC4D;AAC5D,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,aAAa,EAAE,GAAG,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,CAUzF;AAED;;;;GAIG;AACH,wBAAgB,iBAAiB,CAC/B,UAAU,EAAE,MAAM,GAAG,SAAS,EAC9B,IAAI,EAAE,aAAa,EACnB,UAAU,EAAE,OAAO,GAClB,eAAe,CAMjB"}
@@ -6,6 +6,7 @@
6
6
  *
7
7
  * @module @deepseek-harness-tui/dsh-tui/agent-view
8
8
  */
9
+ import { withoutTeammateReminder } from './compat/agent-team-0.2.0.js';
9
10
  /** Agent-view row ordering: needs-input first, stopped last. */
10
11
  export const AGENT_VIEW_STATUS_ORDER = [
11
12
  'needs-input', 'working', 'failed', 'completed', 'idle', 'stopped',
@@ -59,7 +60,8 @@ export function foldAgentViewEvents(events, start, base) {
59
60
  switch (event.type) {
60
61
  case 'user/message': {
61
62
  fold.hasTurns = true;
62
- const text = agentViewTextOf(event.data.content);
63
+ // compat(dsh 0.2.0, log): a 0.2.0 teammate's first prompt drops its identity block.
64
+ const text = agentViewTextOf(fold.firstPrompt.length === 0 ? withoutTeammateReminder(event.data).content : event.data.content);
63
65
  if (fold.firstPrompt.length === 0 && text !== undefined)
64
66
  fold.firstPrompt = oneLine(text);
65
67
  // The prompt stands in for the summary only until the session
@@ -88,6 +88,9 @@ export declare class ApprovalStore implements PermissionPanelSource {
88
88
  * have flipped — re-checks below this guard are skipped.
89
89
  */
90
90
  private externalCheckedAtEvents;
91
+ /** UI language the parked asks' reasons were resolved in (see
92
+ * {@link refreshReasonLang}). */
93
+ private reasonLang;
91
94
  private notifyQueued;
92
95
  /**
93
96
  * CallIds whose approval ask already settled (decided or cancelled).
@@ -138,6 +141,10 @@ export declare class ApprovalStore implements PermissionPanelSource {
138
141
  /** Notify on a microtask so a re-check triggered inside getSnapshot
139
142
  * (during a React render) never fires listeners synchronously mid-render. */
140
143
  private scheduleNotify;
144
+ /** Re-resolve every parked ask's localized reason after a `/lang` switch;
145
+ * Chat re-renders on the switch, so the read below lands on the new
146
+ * language without a store subscription. */
147
+ private refreshReasonLang;
141
148
  /** Rebuild the cached snapshot after any mutation of active. */
142
149
  private rebuildSnapshot;
143
150
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"approvals.d.ts","sourceRoot":"","sources":["../../../src/dsh-adapter/approvals.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"approvals.d.ts","sourceRoot":"","sources":["../../../src/dsh-adapter/approvals.ts"],"names":[],"mappings":"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"}