@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
@@ -3,10 +3,11 @@
3
3
  * `~/.dsh-tui/model.json` (`provider` + `model` keys) so the choice survives
4
4
  * restarts — same pattern as agent-preset.json. The file is best-effort: a
5
5
  * missing/corrupt file or an incomplete route simply falls back to the
6
- * harness default. Explicit `provider`/`model` keys in cordis.yml win over
7
- * this preference (deployment choice over runtime preference, matching
8
- * activityFrames and agent-preset) — but only as a COMPLETE pair; the
9
- * atomic resolution itself lives in modelRoute.ts (issue #67).
6
+ * deployment default. This preference is the standing user choice and wins
7
+ * over explicit `provider`/`model` keys in cordis.yml, which are the
8
+ * deployment DEFAULT for the first run — but only as a COMPLETE pair, so a
9
+ * config route can never merge with half of this file; the atomic resolution
10
+ * itself lives in modelRoute.ts (issue #67).
10
11
  */
11
12
  import { mkdirSync, readFileSync, writeFileSync } from 'node:fs';
12
13
  import { join } from 'node:path';
@@ -4,8 +4,16 @@
4
4
  * so a cordis.yml `provider`-only pin (the bundle ships
5
5
  * `provider: deepseek-official` without `model`) can never merge with the
6
6
  * model half of the persisted `/model` choice into a route no adapter
7
- * recognizes. Startup, `/new`, resume and the status line all resolve through
8
- * these helpers so the displayed route is the route requests actually take.
7
+ * recognizes.
8
+ *
9
+ * Precedence is the LAST-USED rule: the persisted `/model` choice — the route
10
+ * the previous session actually ran on — wins whole; a complete cordis.yml
11
+ * route is the deployment DEFAULT underneath it (it decides the first run,
12
+ * and a resumed session's own record decides that session), and the harness
13
+ * default closes the chain. A static config route therefore cannot silently
14
+ * freeze the model every later session starts on. Startup, `/new`, resume and
15
+ * the status line all resolve through these helpers so the displayed route is
16
+ * the route requests actually take.
9
17
  */
10
18
  import type { ModelPref } from './modelPrefs.js';
11
19
  /** One complete model route. */
@@ -27,11 +35,16 @@ export declare function explicitModelRoute(configured: {
27
35
  model?: string;
28
36
  }): ModelRoute | undefined;
29
37
  /**
30
- * Resolve the effective route atomically: a complete cordis.yml route wins
31
- * whole; otherwise the persisted `/model` choice wins whole; otherwise the
38
+ * Resolve the effective route atomically: the persisted `/model` choice wins
39
+ * whole; otherwise a complete cordis.yml route wins whole; otherwise the
32
40
  * defaults win whole — a half-pinned config is IGNORED rather than merged
33
41
  * with the defaults' other half, so no source ever contributes just one
34
42
  * half of the final route.
43
+ *
44
+ * The persisted pick leads because it is the standing user choice (`/model`
45
+ * writes it on every switch): a static deployment route is a DEFAULT, not a
46
+ * lock. A deployment that must pin a route states it where the composition
47
+ * reads the environment, not in this config key.
35
48
  * @param configured - Raw `provider`/`model` keys from cordis.yml.
36
49
  * @param pref - The persisted `/model` choice, if any.
37
50
  * @param defaults - Final fallback route (the channel's startup route for
@@ -45,11 +58,12 @@ export declare function resolveModelRoute(configured: {
45
58
  /**
46
59
  * The route a persisted session's own log records (issues #30/#67): the last
47
60
  * `request/header` snapshot carries the call config the agent loop builds its
48
- * requests from, so it IS the route a resume continues on when cordis.yml
49
- * does not pin a complete override. The status line derives the resumed
50
- * session's route from this so the display follows the session, not the
51
- * startup resolution. A log without any header (a session that never started
52
- * a turn) records no route.
61
+ * requests from, so it IS the route a resume continues on — it outranks a
62
+ * static cordis.yml route, which is only the deployment default (the route
63
+ * that session actually ran is the more specific fact). The status line
64
+ * derives the resumed session's route from this so the display follows the
65
+ * session, not the startup resolution. A log without any header (a session
66
+ * that never started a turn) records no route.
53
67
  * @param events - The session's durable event log.
54
68
  * @returns The last recorded route, or undefined when the log has none.
55
69
  */
@@ -1 +1 @@
1
- {"version":3,"file":"modelRoute.d.ts","sourceRoot":"","sources":["../../src/modelRoute.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAEhD,gCAAgC;AAChC,MAAM,WAAW,UAAU;IACzB,QAAQ,EAAE,MAAM,CAAA;IAChB,KAAK,EAAE,MAAM,CAAA;CACd;AAED,wHAAwH;AACxH,eAAO,MAAM,mBAAmB,EAAE,UAGjC,CAAA;AAID;;;;;;GAMG;AACH,wBAAgB,kBAAkB,CAAC,UAAU,EAAE;IAAE,QAAQ,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,UAAU,GAAG,SAAS,CAI5G;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,iBAAiB,CAC/B,UAAU,EAAE;IAAE,QAAQ,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,EACjD,IAAI,EAAE,SAAS,GAAG,SAAS,EAC3B,QAAQ,GAAE,UAAgC,GACzC,UAAU,CAKZ;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,kBAAkB,CAChC,MAAM,EAAE,SAAS;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,OAAO,CAAA;CAAE,EAAE,GAClD,UAAU,GAAG,SAAS,CAWxB;AAyBD;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAsB,kBAAkB,CACtC,GAAG,EAAE;IAAE,UAAU,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS;QAAE,EAAE,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC,CAAA;CAAE,GAAG,SAAS,EACrF,KAAK,EAAE,UAAU,EACjB,QAAQ,GAAE,UAAgC,GACzC,OAAO,CAAC;IAAE,KAAK,EAAE,UAAU,CAAC;IAAC,QAAQ,CAAC,EAAE,UAAU,CAAA;CAAE,CAAC,CAWvD"}
1
+ {"version":3,"file":"modelRoute.d.ts","sourceRoot":"","sources":["../../src/modelRoute.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAEhD,gCAAgC;AAChC,MAAM,WAAW,UAAU;IACzB,QAAQ,EAAE,MAAM,CAAA;IAChB,KAAK,EAAE,MAAM,CAAA;CACd;AAED,wHAAwH;AACxH,eAAO,MAAM,mBAAmB,EAAE,UAGjC,CAAA;AAID;;;;;;GAMG;AACH,wBAAgB,kBAAkB,CAAC,UAAU,EAAE;IAAE,QAAQ,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,UAAU,GAAG,SAAS,CAI5G;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,iBAAiB,CAC/B,UAAU,EAAE;IAAE,QAAQ,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,EACjD,IAAI,EAAE,SAAS,GAAG,SAAS,EAC3B,QAAQ,GAAE,UAAgC,GACzC,UAAU,CAKZ;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,kBAAkB,CAChC,MAAM,EAAE,SAAS;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,OAAO,CAAA;CAAE,EAAE,GAClD,UAAU,GAAG,SAAS,CAWxB;AAyBD;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAsB,kBAAkB,CACtC,GAAG,EAAE;IAAE,UAAU,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS;QAAE,EAAE,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC,CAAA;CAAE,GAAG,SAAS,EACrF,KAAK,EAAE,UAAU,EACjB,QAAQ,GAAE,UAAgC,GACzC,OAAO,CAAC;IAAE,KAAK,EAAE,UAAU,CAAC;IAAC,QAAQ,CAAC,EAAE,UAAU,CAAA;CAAE,CAAC,CAWvD"}
@@ -4,8 +4,16 @@
4
4
  * so a cordis.yml `provider`-only pin (the bundle ships
5
5
  * `provider: deepseek-official` without `model`) can never merge with the
6
6
  * model half of the persisted `/model` choice into a route no adapter
7
- * recognizes. Startup, `/new`, resume and the status line all resolve through
8
- * these helpers so the displayed route is the route requests actually take.
7
+ * recognizes.
8
+ *
9
+ * Precedence is the LAST-USED rule: the persisted `/model` choice — the route
10
+ * the previous session actually ran on — wins whole; a complete cordis.yml
11
+ * route is the deployment DEFAULT underneath it (it decides the first run,
12
+ * and a resumed session's own record decides that session), and the harness
13
+ * default closes the chain. A static config route therefore cannot silently
14
+ * freeze the model every later session starts on. Startup, `/new`, resume and
15
+ * the status line all resolve through these helpers so the displayed route is
16
+ * the route requests actually take.
9
17
  */
10
18
  /** Harness default route: the final fallback when neither cordis.yml nor the persisted `/model` choice supplies one. */
11
19
  export const DEFAULT_MODEL_ROUTE = {
@@ -26,11 +34,16 @@ export function explicitModelRoute(configured) {
26
34
  : undefined;
27
35
  }
28
36
  /**
29
- * Resolve the effective route atomically: a complete cordis.yml route wins
30
- * whole; otherwise the persisted `/model` choice wins whole; otherwise the
37
+ * Resolve the effective route atomically: the persisted `/model` choice wins
38
+ * whole; otherwise a complete cordis.yml route wins whole; otherwise the
31
39
  * defaults win whole — a half-pinned config is IGNORED rather than merged
32
40
  * with the defaults' other half, so no source ever contributes just one
33
41
  * half of the final route.
42
+ *
43
+ * The persisted pick leads because it is the standing user choice (`/model`
44
+ * writes it on every switch): a static deployment route is a DEFAULT, not a
45
+ * lock. A deployment that must pin a route states it where the composition
46
+ * reads the environment, not in this config key.
34
47
  * @param configured - Raw `provider`/`model` keys from cordis.yml.
35
48
  * @param pref - The persisted `/model` choice, if any.
36
49
  * @param defaults - Final fallback route (the channel's startup route for
@@ -38,21 +51,22 @@ export function explicitModelRoute(configured) {
38
51
  * @returns The resolved route.
39
52
  */
40
53
  export function resolveModelRoute(configured, pref, defaults = DEFAULT_MODEL_ROUTE) {
54
+ if (pref !== undefined)
55
+ return { provider: pref.provider, model: pref.model };
41
56
  const explicit = explicitModelRoute(configured);
42
57
  if (explicit !== undefined)
43
58
  return explicit;
44
- if (pref !== undefined)
45
- return { provider: pref.provider, model: pref.model };
46
59
  return { provider: defaults.provider, model: defaults.model };
47
60
  }
48
61
  /**
49
62
  * The route a persisted session's own log records (issues #30/#67): the last
50
63
  * `request/header` snapshot carries the call config the agent loop builds its
51
- * requests from, so it IS the route a resume continues on when cordis.yml
52
- * does not pin a complete override. The status line derives the resumed
53
- * session's route from this so the display follows the session, not the
54
- * startup resolution. A log without any header (a session that never started
55
- * a turn) records no route.
64
+ * requests from, so it IS the route a resume continues on — it outranks a
65
+ * static cordis.yml route, which is only the deployment default (the route
66
+ * that session actually ran is the more specific fact). The status line
67
+ * derives the resumed session's route from this so the display follows the
68
+ * session, not the startup resolution. A log without any header (a session
69
+ * that never started a turn) records no route.
56
70
  * @param events - The session's durable event log.
57
71
  * @returns The last recorded route, or undefined when the log has none.
58
72
  */
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/native-ts/yoga-layout/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/native-ts/yoga-layout/index.ts"],"names":[],"mappings":"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"}
@@ -2189,7 +2189,14 @@ function computeFlexBasis(child, mainAxis, availableMain, availableCross, crossM
2189
2189
  ? MeasureMode.Exactly
2190
2190
  : MeasureMode.Undefined;
2191
2191
  if (!isDefined(crossConstraint) && isDefined(availableCross)) {
2192
- crossConstraint = availableCross;
2192
+ // 交叉轴空间要减掉子节点自己的交叉轴 margin——布局趟就是这么发的
2193
+ // (`childCrossSize = Math.max(0, innerCrossSize - cMarginCross)`,见本文件
2194
+ // 的 :1998/:2001)。少这一减,列容器里的折行文本会拿「容器内容宽」量出的
2195
+ // 高度当 flex-basis,而它的最终宽度是 content − margin:两者折行行数差 1
2196
+ // 时盒子矮一行,多出的末行被绘制到下一个兄弟(btw 的 ┈ 分割线)那一行再
2197
+ // 被覆盖——就是「分割线吃掉了答案末行」(issue #1526;btw 答案的
2198
+ // marginLeft=2、AutoRecapRow 的 marginLeft=1 都中过)。
2199
+ crossConstraint = Math.max(0, availableCross - childMarginForAxis(child, crossAxis(mainAxis), ownerWidth));
2193
2200
  crossConstraintMode =
2194
2201
  crossMode === MeasureMode.Exactly && isStretchAlign(child)
2195
2202
  ? MeasureMode.Exactly
@@ -0,0 +1,34 @@
1
+ /**
2
+ * Persisted DSH permission-preset preference (`~/.dsh-tui/permission.json`,
3
+ * `{ "permission": "danger-full-access" }`): the last permission preset the
4
+ * user switched to through `/permission` (picker or typed) or the Shift+Tab
5
+ * mode cycle, so the next session STARTS where the last one ended instead of
6
+ * the composition default. The Claude and Codex backends keep the same
7
+ * memory inside their own `~/.dsh-tui/backends/<id>/prefs.json`; this file
8
+ * is the DSH twin, consumed on the channel's first bind per session.
9
+ *
10
+ * Only the identity is stored — never sandbox/approval atoms — and it is
11
+ * re-applied exclusively through the official `/permission` switch path
12
+ * (mode-permission.ts), so the durable session log remains the source of
13
+ * truth. A value the running preset roster no longer offers is skipped, and
14
+ * an explicit `DSH_PERMISSION_MODE` deployment pin outranks the file.
15
+ *
16
+ * Best effort like the other ~/.dsh-tui preferences: a missing or corrupt
17
+ * file reads as no preference; a failed write is silent (debug log).
18
+ */
19
+ /**
20
+ * The persisted permission-preset identity, or undefined when unset or
21
+ * invalid. Only safe command tokens survive (the value is re-driven through
22
+ * the official `/permission <preset>` path, which requires one).
23
+ * @param dir - Prefs directory (injectable for tests).
24
+ * @returns The persisted preset id, if any.
25
+ */
26
+ export declare function readPermissionPref(dir?: string): string | undefined;
27
+ /**
28
+ * Persist the chosen permission-preset identity (best effort).
29
+ * @param permission - Preset id to persist (already validated by the caller).
30
+ * @param dir - Prefs directory (injectable for tests).
31
+ * @returns True when the file was written, false on failure.
32
+ */
33
+ export declare function writePermissionPref(permission: string, dir?: string): boolean;
34
+ //# sourceMappingURL=permissionPrefs.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"permissionPrefs.d.ts","sourceRoot":"","sources":["../../src/permissionPrefs.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AASH;;;;;;GAMG;AACH,wBAAgB,kBAAkB,CAAC,GAAG,GAAE,MAAkB,GAAG,MAAM,GAAG,SAAS,CAW9E;AAED;;;;;GAKG;AACH,wBAAgB,mBAAmB,CAAC,UAAU,EAAE,MAAM,EAAE,GAAG,GAAE,MAAkB,GAAG,OAAO,CAQxF"}
@@ -0,0 +1,61 @@
1
+ /**
2
+ * Persisted DSH permission-preset preference (`~/.dsh-tui/permission.json`,
3
+ * `{ "permission": "danger-full-access" }`): the last permission preset the
4
+ * user switched to through `/permission` (picker or typed) or the Shift+Tab
5
+ * mode cycle, so the next session STARTS where the last one ended instead of
6
+ * the composition default. The Claude and Codex backends keep the same
7
+ * memory inside their own `~/.dsh-tui/backends/<id>/prefs.json`; this file
8
+ * is the DSH twin, consumed on the channel's first bind per session.
9
+ *
10
+ * Only the identity is stored — never sandbox/approval atoms — and it is
11
+ * re-applied exclusively through the official `/permission` switch path
12
+ * (mode-permission.ts), so the durable session log remains the source of
13
+ * truth. A value the running preset roster no longer offers is skipped, and
14
+ * an explicit `DSH_PERMISSION_MODE` deployment pin outranks the file.
15
+ *
16
+ * Best effort like the other ~/.dsh-tui preferences: a missing or corrupt
17
+ * file reads as no preference; a failed write is silent (debug log).
18
+ */
19
+ import { mkdirSync, readFileSync, writeFileSync } from 'node:fs';
20
+ import { join } from 'node:path';
21
+ import { isCommandCompletionToken } from './commands.js';
22
+ import { DATA_DIR } from './utils/paths.js';
23
+ const PREFS_DIR = DATA_DIR;
24
+ /**
25
+ * The persisted permission-preset identity, or undefined when unset or
26
+ * invalid. Only safe command tokens survive (the value is re-driven through
27
+ * the official `/permission <preset>` path, which requires one).
28
+ * @param dir - Prefs directory (injectable for tests).
29
+ * @returns The persisted preset id, if any.
30
+ */
31
+ export function readPermissionPref(dir = PREFS_DIR) {
32
+ try {
33
+ const parsed = JSON.parse(readFileSync(join(dir, 'permission.json'), 'utf8'));
34
+ if (parsed === null || typeof parsed !== 'object' || Array.isArray(parsed))
35
+ return undefined;
36
+ const permission = parsed.permission;
37
+ if (typeof permission !== 'string')
38
+ return undefined;
39
+ const id = permission.trim();
40
+ return id !== '' && isCommandCompletionToken(id) ? id : undefined;
41
+ }
42
+ catch {
43
+ return undefined;
44
+ }
45
+ }
46
+ /**
47
+ * Persist the chosen permission-preset identity (best effort).
48
+ * @param permission - Preset id to persist (already validated by the caller).
49
+ * @param dir - Prefs directory (injectable for tests).
50
+ * @returns True when the file was written, false on failure.
51
+ */
52
+ export function writePermissionPref(permission, dir = PREFS_DIR) {
53
+ try {
54
+ mkdirSync(dir, { recursive: true });
55
+ writeFileSync(join(dir, 'permission.json'), JSON.stringify({ permission }, null, 2));
56
+ return true;
57
+ }
58
+ catch {
59
+ return false;
60
+ }
61
+ }
@@ -0,0 +1,25 @@
1
+ /**
2
+ * Display text for permission preset roster entries. The three stock presets
3
+ * and DSH's experimental `auto` preset are localized here; the registry hands
4
+ * `auto` out under its bare reserved name with no description, so the TUI
5
+ * owns its label the same way it owns the stock ones. Every other preset keeps
6
+ * the registry's own name/description. Backend-neutral: i18n only.
7
+ */
8
+ import { type I18nKey } from './i18n.js';
9
+ /** DSH's reserved, session-only experimental preset (dsh-experimental-auto-review). */
10
+ export declare const PERMISSION_PRESET_AUTO = "auto";
11
+ interface PresetOptionLike {
12
+ readonly value: string;
13
+ readonly name: string;
14
+ readonly description?: string;
15
+ }
16
+ /** The i18n keys for one option, or undefined when the registry's text stands.
17
+ * `auto` is localized only while the registry still names it bare. */
18
+ export declare function permissionPresetKeys(option: PresetOptionLike): {
19
+ label: I18nKey;
20
+ description: I18nKey;
21
+ } | undefined;
22
+ export declare function permissionPresetLabel(option: PresetOptionLike): string;
23
+ export declare function permissionPresetDescription(option: PresetOptionLike): string;
24
+ export {};
25
+ //# sourceMappingURL=permissionPresetLabels.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"permissionPresetLabels.d.ts","sourceRoot":"","sources":["../../src/permissionPresetLabels.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,OAAO,EAAK,KAAK,OAAO,EAAE,MAAM,WAAW,CAAA;AAE3C,uFAAuF;AACvF,eAAO,MAAM,sBAAsB,SAAS,CAAA;AAE5C,UAAU,gBAAgB;IACxB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;IACtB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAA;CAC9B;AASD;uEACuE;AACvE,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,gBAAgB,GAAG;IAAE,KAAK,EAAE,OAAO,CAAC;IAAC,WAAW,EAAE,OAAO,CAAA;CAAE,GAAG,SAAS,CAInH;AAED,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,gBAAgB,GAAG,MAAM,CAGtE;AAED,wBAAgB,2BAA2B,CAAC,MAAM,EAAE,gBAAgB,GAAG,MAAM,CAG5E"}
@@ -0,0 +1,33 @@
1
+ /**
2
+ * Display text for permission preset roster entries. The three stock presets
3
+ * and DSH's experimental `auto` preset are localized here; the registry hands
4
+ * `auto` out under its bare reserved name with no description, so the TUI
5
+ * owns its label the same way it owns the stock ones. Every other preset keeps
6
+ * the registry's own name/description. Backend-neutral: i18n only.
7
+ */
8
+ import { t } from './i18n.js';
9
+ /** DSH's reserved, session-only experimental preset (dsh-experimental-auto-review). */
10
+ export const PERMISSION_PRESET_AUTO = 'auto';
11
+ const LOCALIZED = {
12
+ 'read-only': { label: 'permission-preset-readonly', description: 'permission-preset-readonly-desc' },
13
+ 'workspace-write': { label: 'permission-preset-workspace-write', description: 'permission-preset-workspace-write-desc' },
14
+ 'danger-full-access': { label: 'permission-preset-full-access', description: 'permission-preset-full-access-desc' },
15
+ [PERMISSION_PRESET_AUTO]: { label: 'permission-preset-auto', description: 'permission-preset-auto-desc' },
16
+ };
17
+ /** The i18n keys for one option, or undefined when the registry's text stands.
18
+ * `auto` is localized only while the registry still names it bare. */
19
+ export function permissionPresetKeys(option) {
20
+ if (!Object.hasOwn(LOCALIZED, option.value))
21
+ return undefined;
22
+ if (option.value === PERMISSION_PRESET_AUTO && option.name !== PERMISSION_PRESET_AUTO)
23
+ return undefined;
24
+ return LOCALIZED[option.value];
25
+ }
26
+ export function permissionPresetLabel(option) {
27
+ const keys = permissionPresetKeys(option);
28
+ return keys === undefined ? option.name : t(keys.label);
29
+ }
30
+ export function permissionPresetDescription(option) {
31
+ const keys = permissionPresetKeys(option);
32
+ return keys === undefined ? option.description ?? option.name : t(keys.description);
33
+ }
@@ -1,5 +1,6 @@
1
1
  export { name, apply } from './dsh-adapter/plugin-host.js';
2
2
  export type { TuiPluginHost, HostGrantFacade } from './dsh-adapter/plugin-host.js';
3
+ export type { BackendAdmissionProbe } from './dsh-adapter/backend-registry.js';
3
4
  export type { HostContract, HostDescriptor, ContractCoordinate, ContractRef, NegotiationDecision, PermissionEntry, PermissionRegistry } from './adapter/standard/types.js';
4
5
  export type { TuiPluginStorage, PluginStorageErrorCode, TuiPluginStorageRuntime } from './dsh-adapter/plugin-storage.js';
5
6
  export { PluginStorageError, STORAGE_KEY_MAX_LENGTH, STORAGE_MAX_BYTES, STORAGE_MAX_KEYS } from './dsh-adapter/plugin-storage.js';
@@ -1 +1 @@
1
- {"version":3,"file":"plugin-host.d.ts","sourceRoot":"","sources":["../../src/plugin-host.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,8BAA8B,CAAA;AAC1D,YAAY,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAA;AAClF,YAAY,EAAE,YAAY,EAAE,cAAc,EAAE,kBAAkB,EAAE,WAAW,EAAE,mBAAmB,EAAE,eAAe,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAA;AAC1K,YAAY,EAAE,gBAAgB,EAAE,sBAAsB,EAAE,uBAAuB,EAAE,MAAM,iCAAiC,CAAA;AACxH,OAAO,EAAE,kBAAkB,EAAE,sBAAsB,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAA;AAIjI,OAAO,EACL,4BAA4B,EAC5B,2BAA2B,EAC3B,yBAAyB,EACzB,oBAAoB,EACpB,8BAA8B,EAC9B,uBAAuB,EACvB,uBAAuB,EACvB,qBAAqB,GACtB,MAAM,mCAAmC,CAAA;AAC1C,YAAY,EACV,2BAA2B,EAC3B,uBAAuB,EACvB,uBAAuB,EACvB,sBAAsB,EACtB,yBAAyB,GAC1B,MAAM,mCAAmC,CAAA;AAE1C,YAAY,EAAE,WAAW,EAAE,eAAe,EAAE,YAAY,EAAE,sBAAsB,EAAE,MAAM,gCAAgC,CAAA;AACxH,OAAO,EACL,mBAAmB,EACnB,mBAAmB,EACnB,eAAe,EACf,uBAAuB,GACxB,MAAM,iCAAiC,CAAA;AACxC,YAAY,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAA;AAK1F,OAAO,EACL,0BAA0B,GAC3B,MAAM,iCAAiC,CAAA;AACxC,OAAO,EACL,2BAA2B,EAC3B,yBAAyB,GAC1B,MAAM,mCAAmC,CAAA;AAC1C,OAAO,EACL,0BAA0B,EAC1B,yBAAyB,EACzB,wBAAwB,EACxB,8BAA8B,GAC/B,MAAM,qCAAqC,CAAA"}
1
+ {"version":3,"file":"plugin-host.d.ts","sourceRoot":"","sources":["../../src/plugin-host.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,8BAA8B,CAAA;AAC1D,YAAY,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAA;AAClF,YAAY,EAAE,qBAAqB,EAAE,MAAM,mCAAmC,CAAA;AAC9E,YAAY,EAAE,YAAY,EAAE,cAAc,EAAE,kBAAkB,EAAE,WAAW,EAAE,mBAAmB,EAAE,eAAe,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAA;AAC1K,YAAY,EAAE,gBAAgB,EAAE,sBAAsB,EAAE,uBAAuB,EAAE,MAAM,iCAAiC,CAAA;AACxH,OAAO,EAAE,kBAAkB,EAAE,sBAAsB,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAA;AAIjI,OAAO,EACL,4BAA4B,EAC5B,2BAA2B,EAC3B,yBAAyB,EACzB,oBAAoB,EACpB,8BAA8B,EAC9B,uBAAuB,EACvB,uBAAuB,EACvB,qBAAqB,GACtB,MAAM,mCAAmC,CAAA;AAC1C,YAAY,EACV,2BAA2B,EAC3B,uBAAuB,EACvB,uBAAuB,EACvB,sBAAsB,EACtB,yBAAyB,GAC1B,MAAM,mCAAmC,CAAA;AAE1C,YAAY,EAAE,WAAW,EAAE,eAAe,EAAE,YAAY,EAAE,sBAAsB,EAAE,MAAM,gCAAgC,CAAA;AACxH,OAAO,EACL,mBAAmB,EACnB,mBAAmB,EACnB,eAAe,EACf,uBAAuB,GACxB,MAAM,iCAAiC,CAAA;AACxC,YAAY,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAA;AAK1F,OAAO,EACL,0BAA0B,GAC3B,MAAM,iCAAiC,CAAA;AACxC,OAAO,EACL,2BAA2B,EAC3B,yBAAyB,GAC1B,MAAM,mCAAmC,CAAA;AAC1C,OAAO,EACL,0BAA0B,EAC1B,yBAAyB,EACzB,wBAAwB,EACxB,8BAA8B,GAC/B,MAAM,qCAAqC,CAAA"}
@@ -0,0 +1,22 @@
1
+ /**
2
+ * Declarative row config for the agent presets dsh-tui registers
3
+ * (`standard`, `ptc`, `minimal`, `cordis`, `liangshen`). Rows inside a preset
4
+ * live in its own realm, out of reach of an id-targeted cordis patch; a row
5
+ * naming this module replaces their `config` by id instead. The row itself
6
+ * does nothing when it activates. Usage: seam VII of
7
+ * tui-profile/docs/plugin-admission-and-development.md.
8
+ *
9
+ * @module
10
+ */
11
+ export declare const name = "dsh-tui-preset-patch";
12
+ /** Module name a preset-patch row uses. */
13
+ export declare const PRESET_PATCH_MODULE = "@deepseek-harness-tui/dsh-tui/preset-patch";
14
+ /** The config of one preset-patch row. */
15
+ export interface PresetPatchConfig {
16
+ /** Preset id, e.g. `standard`. */
17
+ preset: string;
18
+ /** Row id inside the preset → replacement `config` for that row. */
19
+ config: Record<string, unknown>;
20
+ }
21
+ export declare function apply(): void;
22
+ //# sourceMappingURL=preset-patch.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"preset-patch.d.ts","sourceRoot":"","sources":["../../src/preset-patch.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,eAAO,MAAM,IAAI,yBAAyB,CAAA;AAE1C,2CAA2C;AAC3C,eAAO,MAAM,mBAAmB,+CAA+C,CAAA;AAE/E,0CAA0C;AAC1C,MAAM,WAAW,iBAAiB;IAChC,kCAAkC;IAClC,MAAM,EAAE,MAAM,CAAA;IACd,oEAAoE;IACpE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CAChC;AAED,wBAAgB,KAAK,IAAI,IAAI,CAAG"}
@@ -0,0 +1,14 @@
1
+ /**
2
+ * Declarative row config for the agent presets dsh-tui registers
3
+ * (`standard`, `ptc`, `minimal`, `cordis`, `liangshen`). Rows inside a preset
4
+ * live in its own realm, out of reach of an id-targeted cordis patch; a row
5
+ * naming this module replaces their `config` by id instead. The row itself
6
+ * does nothing when it activates. Usage: seam VII of
7
+ * tui-profile/docs/plugin-admission-and-development.md.
8
+ *
9
+ * @module
10
+ */
11
+ export const name = 'dsh-tui-preset-patch';
12
+ /** Module name a preset-patch row uses. */
13
+ export const PRESET_PATCH_MODULE = '@deepseek-harness-tui/dsh-tui/preset-patch';
14
+ export function apply() { }
@@ -3,10 +3,24 @@
3
3
  * `~/.dsh-tui/agent-preset.json` (`preset` key) so the choice survives
4
4
  * restarts — same pattern as working-activity.json. The file is best-effort:
5
5
  * a missing/corrupt file or an id the roster no longer supplies simply falls
6
- * back to the roster default (`standard`). An explicit `preset` key in
7
- * cordis.yml wins over this preference (deployment choice over runtime
8
- * preference, matching activityFrames).
6
+ * back to the roster default (`standard`). The persisted choice is the
7
+ * standing user default and outranks a static `preset` key in cordis.yml
8
+ * (the deployment default); only the `DSH_TUI_PRESET` launch instruction of
9
+ * the current run leads it (see {@link presetOverrideFromEnv}).
9
10
  */
11
+ /**
12
+ * The `DSH_TUI_PRESET` launch instruction of THIS run, when set: the
13
+ * composition folds the variable into its `preset` config (both cordis.yml and
14
+ * the bundle patch read it), and an explicit per-invocation instruction
15
+ * outranks the persisted choice exactly like the other `DSH_TUI_*`/permission
16
+ * environment pins. The value is NOT validated against PRESET_ID here, so an
17
+ * unknown id surfaces through preset composition (a warning, and the session
18
+ * composes without a preset) instead of silently falling back to the
19
+ * remembered preset.
20
+ * @param env - Environment to read (injectable for tests).
21
+ * @returns The requested preset id, if any.
22
+ */
23
+ export declare function presetOverrideFromEnv(env?: NodeJS.ProcessEnv): string | undefined;
10
24
  /** Parse the value exactly as stored. Preset aliases are roster-dependent:
11
25
  * legacy rc.2 ships `code`, while the 0.1.2 line ships `ptc`, so this file
12
26
  * cannot safely canonicalize either name before the active roster has been queried. */
@@ -1 +1 @@
1
- {"version":3,"file":"presetPrefs.d.ts","sourceRoot":"","sources":["../../src/presetPrefs.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAWH;;uFAEuF;AACvF,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAShE;AAED;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,GAAG,GAAE,MAAkB,GAAG,MAAM,GAAG,SAAS,CAM1E;AAED;;;;;GAKG;AACH,wBAAgB,eAAe,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,GAAE,MAAkB,GAAG,OAAO,CAQhF;AAED;gFACgF;AAChF,wBAAgB,iBAAiB,CAC/B,SAAS,EAAE,MAAM,GAAG,SAAS,EAC7B,QAAQ,EAAE,MAAM,GAAG,SAAS,EAC5B,GAAG,GAAE,MAAkB,GACtB,OAAO,CAIT"}
1
+ {"version":3,"file":"presetPrefs.d.ts","sourceRoot":"","sources":["../../src/presetPrefs.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAWH;;;;;;;;;;;GAWG;AACH,wBAAgB,qBAAqB,CAAC,GAAG,GAAE,MAAM,CAAC,UAAwB,GAAG,MAAM,GAAG,SAAS,CAG9F;AAED;;uFAEuF;AACvF,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAShE;AAED;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,GAAG,GAAE,MAAkB,GAAG,MAAM,GAAG,SAAS,CAM1E;AAED;;;;;GAKG;AACH,wBAAgB,eAAe,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,GAAE,MAAkB,GAAG,OAAO,CAQhF;AAED;gFACgF;AAChF,wBAAgB,iBAAiB,CAC/B,SAAS,EAAE,MAAM,GAAG,SAAS,EAC7B,QAAQ,EAAE,MAAM,GAAG,SAAS,EAC5B,GAAG,GAAE,MAAkB,GACtB,OAAO,CAIT"}
@@ -3,9 +3,10 @@
3
3
  * `~/.dsh-tui/agent-preset.json` (`preset` key) so the choice survives
4
4
  * restarts — same pattern as working-activity.json. The file is best-effort:
5
5
  * a missing/corrupt file or an id the roster no longer supplies simply falls
6
- * back to the roster default (`standard`). An explicit `preset` key in
7
- * cordis.yml wins over this preference (deployment choice over runtime
8
- * preference, matching activityFrames).
6
+ * back to the roster default (`standard`). The persisted choice is the
7
+ * standing user default and outranks a static `preset` key in cordis.yml
8
+ * (the deployment default); only the `DSH_TUI_PRESET` launch instruction of
9
+ * the current run leads it (see {@link presetOverrideFromEnv}).
9
10
  */
10
11
  import { mkdirSync, readFileSync, writeFileSync } from 'node:fs';
11
12
  import { join } from 'node:path';
@@ -13,6 +14,22 @@ import { DATA_DIR } from './utils/paths.js';
13
14
  const PREFS_DIR = DATA_DIR;
14
15
  /** Ids a preset directory may use (dsh-agent-presets' own boundary). */
15
16
  const PRESET_ID = /^[a-z0-9][a-z0-9-]*$/;
17
+ /**
18
+ * The `DSH_TUI_PRESET` launch instruction of THIS run, when set: the
19
+ * composition folds the variable into its `preset` config (both cordis.yml and
20
+ * the bundle patch read it), and an explicit per-invocation instruction
21
+ * outranks the persisted choice exactly like the other `DSH_TUI_*`/permission
22
+ * environment pins. The value is NOT validated against PRESET_ID here, so an
23
+ * unknown id surfaces through preset composition (a warning, and the session
24
+ * composes without a preset) instead of silently falling back to the
25
+ * remembered preset.
26
+ * @param env - Environment to read (injectable for tests).
27
+ * @returns The requested preset id, if any.
28
+ */
29
+ export function presetOverrideFromEnv(env = process.env) {
30
+ const value = env.DSH_TUI_PRESET?.trim();
31
+ return value === undefined || value === '' ? undefined : value;
32
+ }
16
33
  /** Parse the value exactly as stored. Preset aliases are roster-dependent:
17
34
  * legacy rc.2 ships `code`, while the 0.1.2 line ships `ptc`, so this file
18
35
  * cannot safely canonicalize either name before the active roster has been queried. */
@@ -8,9 +8,10 @@
8
8
  * - lang: DSH_TUI_LANG > settings `dsh-tui.lang` (folded in by the
9
9
  * caller as `langOverriddenBySettings`) > cordis.yml `lang`
10
10
  * > lang.json.
11
- * - preset: cordis.yml `preset` wins; else agent-preset.json.
12
- * - model: a COMPLETE cordis.yml provider/model pair wins whole
13
- * (issue #67 — never merge halves); else model.json.
11
+ * - preset: DSH_TUI_PRESET wins; else agent-preset.json (the cordis.yml
12
+ * `preset` is only the deployment default).
13
+ * - model: model.json whole (issue #67 — a cordis.yml pair is only the
14
+ * deployment default); nothing to apply without it.
14
15
  * - activity: cordis.yml `activityFrames` wins; else
15
16
  * working-activity.json.
16
17
  *
@@ -78,17 +79,12 @@ export interface ReloadInput {
78
79
  langOverriddenBySettings: boolean;
79
80
  /** cordis.yml's raw `lang` key, when set. */
80
81
  configuredLang?: string;
81
- /** cordis.yml's explicit `preset` key, when set. */
82
- configuredPreset?: string;
82
+ /** A `DSH_TUI_PRESET` launch instruction, when set (pins this run). */
83
+ envPreset?: string;
83
84
  /** Fresh readPresetPref(). */
84
85
  presetPref?: string;
85
86
  /** The live preset id (channel.agentPreset; undefined = roster default). */
86
87
  currentPreset?: string;
87
- /** cordis.yml's raw `provider`/`model` keys, when set. */
88
- configuredModel?: {
89
- provider?: string;
90
- model?: string;
91
- };
92
88
  /** Fresh readModelPref(). */
93
89
  modelPref?: ModelPref;
94
90
  /** The live route (channel provider/model). */
@@ -1 +1 @@
1
- {"version":3,"file":"reload.d.ts","sourceRoot":"","sources":["../../src/reload.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AAEH,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AACrC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAChD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAA;AAGjD,+DAA+D;AAC/D,MAAM,MAAM,UAAU,GAAG,OAAO,GAAG,MAAM,GAAG,QAAQ,GAAG,OAAO,GAAG,UAAU,CAAA;AAE3E,MAAM,MAAM,gBAAgB;AAC1B,wFAAwF;AACtF,UAAU;AACZ,2FAA2F;GACzF,aAAa;AACf,8CAA8C;GAC5C,SAAS,CAAA;AAEb,8EAA8E;AAC9E,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,UAAU,CAAA;IAChB,yCAAyC;IACzC,IAAI,EAAE,MAAM,CAAA;IACZ,yCAAyC;IACzC,EAAE,EAAE,MAAM,CAAA;IACV,oEAAoE;IACpE,KAAK,CAAC,EAAE,UAAU,CAAA;CACnB;AAED,6CAA6C;AAC7C,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,UAAU,CAAA;IAChB,MAAM,EAAE,gBAAgB,CAAA;CACzB;AAED,6DAA6D;AAC7D,MAAM,WAAW,UAAU;IACzB,uEAAuE;IACvE,KAAK,EAAE,WAAW,EAAE,CAAA;IACpB,6DAA6D;IAC7D,SAAS,EAAE,UAAU,EAAE,CAAA;IACvB,uCAAuC;IACvC,OAAO,EAAE,UAAU,EAAE,CAAA;CACtB;AAED,6EAA6E;AAC7E,MAAM,WAAW,WAAW;IAC1B,uDAAuD;IACvD,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,oDAAoD;IACpD,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,6BAA6B;IAC7B,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,iDAAiD;IACjD,YAAY,EAAE,MAAM,CAAA;IACpB,4BAA4B;IAC5B,QAAQ,CAAC,EAAE,IAAI,CAAA;IACf,4BAA4B;IAC5B,WAAW,EAAE,IAAI,CAAA;IACjB,wFAAwF;IACxF,wBAAwB,EAAE,OAAO,CAAA;IACjC,6CAA6C;IAC7C,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,oDAAoD;IACpD,gBAAgB,CAAC,EAAE,MAAM,CAAA;IACzB,8BAA8B;IAC9B,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,4EAA4E;IAC5E,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,0DAA0D;IAC1D,eAAe,CAAC,EAAE;QAAE,QAAQ,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,CAAA;IACvD,6BAA6B;IAC7B,SAAS,CAAC,EAAE,SAAS,CAAA;IACrB,+CAA+C;IAC/C,YAAY,CAAC,EAAE,UAAU,CAAA;IACzB,4DAA4D;IAC5D,kBAAkB,CAAC,EAAE,MAAM,CAAA;IAC3B,kCAAkC;IAClC,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,yDAAyD;IACzD,eAAe,CAAC,EAAE,MAAM,CAAA;CACzB;AAED;;;;GAIG;AACH,wBAAgB,UAAU,CAAC,KAAK,EAAE,WAAW,GAAG,UAAU,CA6EzD"}
1
+ {"version":3,"file":"reload.d.ts","sourceRoot":"","sources":["../../src/reload.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AAEH,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AACrC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAChD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAA;AAEjD,+DAA+D;AAC/D,MAAM,MAAM,UAAU,GAAG,OAAO,GAAG,MAAM,GAAG,QAAQ,GAAG,OAAO,GAAG,UAAU,CAAA;AAE3E,MAAM,MAAM,gBAAgB;AAC1B,wFAAwF;AACtF,UAAU;AACZ,2FAA2F;GACzF,aAAa;AACf,8CAA8C;GAC5C,SAAS,CAAA;AAEb,8EAA8E;AAC9E,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,UAAU,CAAA;IAChB,yCAAyC;IACzC,IAAI,EAAE,MAAM,CAAA;IACZ,yCAAyC;IACzC,EAAE,EAAE,MAAM,CAAA;IACV,oEAAoE;IACpE,KAAK,CAAC,EAAE,UAAU,CAAA;CACnB;AAED,6CAA6C;AAC7C,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,UAAU,CAAA;IAChB,MAAM,EAAE,gBAAgB,CAAA;CACzB;AAED,6DAA6D;AAC7D,MAAM,WAAW,UAAU;IACzB,uEAAuE;IACvE,KAAK,EAAE,WAAW,EAAE,CAAA;IACpB,6DAA6D;IAC7D,SAAS,EAAE,UAAU,EAAE,CAAA;IACvB,uCAAuC;IACvC,OAAO,EAAE,UAAU,EAAE,CAAA;CACtB;AAED,6EAA6E;AAC7E,MAAM,WAAW,WAAW;IAC1B,uDAAuD;IACvD,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,oDAAoD;IACpD,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,6BAA6B;IAC7B,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,iDAAiD;IACjD,YAAY,EAAE,MAAM,CAAA;IACpB,4BAA4B;IAC5B,QAAQ,CAAC,EAAE,IAAI,CAAA;IACf,4BAA4B;IAC5B,WAAW,EAAE,IAAI,CAAA;IACjB,wFAAwF;IACxF,wBAAwB,EAAE,OAAO,CAAA;IACjC,6CAA6C;IAC7C,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,uEAAuE;IACvE,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,8BAA8B;IAC9B,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,4EAA4E;IAC5E,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,6BAA6B;IAC7B,SAAS,CAAC,EAAE,SAAS,CAAA;IACrB,+CAA+C;IAC/C,YAAY,CAAC,EAAE,UAAU,CAAA;IACzB,4DAA4D;IAC5D,kBAAkB,CAAC,EAAE,MAAM,CAAA;IAC3B,kCAAkC;IAClC,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,yDAAyD;IACzD,eAAe,CAAC,EAAE,MAAM,CAAA;CACzB;AAED;;;;GAIG;AACH,wBAAgB,UAAU,CAAC,KAAK,EAAE,WAAW,GAAG,UAAU,CA8EzD"}
@@ -8,9 +8,10 @@
8
8
  * - lang: DSH_TUI_LANG > settings `dsh-tui.lang` (folded in by the
9
9
  * caller as `langOverriddenBySettings`) > cordis.yml `lang`
10
10
  * > lang.json.
11
- * - preset: cordis.yml `preset` wins; else agent-preset.json.
12
- * - model: a COMPLETE cordis.yml provider/model pair wins whole
13
- * (issue #67 — never merge halves); else model.json.
11
+ * - preset: DSH_TUI_PRESET wins; else agent-preset.json (the cordis.yml
12
+ * `preset` is only the deployment default).
13
+ * - model: model.json whole (issue #67 — a cordis.yml pair is only the
14
+ * deployment default); nothing to apply without it.
14
15
  * - activity: cordis.yml `activityFrames` wins; else
15
16
  * working-activity.json.
16
17
  *
@@ -24,7 +25,6 @@
24
25
  * Pure and injectable so scripts/verify-reload.ts can exercise every branch
25
26
  * without a UI or a file system.
26
27
  */
27
- import { explicitModelRoute } from './modelRoute.js';
28
28
  /**
29
29
  * Decide what one /reload applies. Pure: returns the plan, never touches
30
30
  * the UI or the channel. The caller executes `apply` in order and renders
@@ -64,9 +64,11 @@ export function planReload(input) {
64
64
  else {
65
65
  apply.push({ kind: 'lang', from: input.currentLang, to: input.langPref });
66
66
  }
67
- // Preset: cordis.yml's static choice wins; else the persisted one.
68
- if (input.configuredPreset !== undefined) {
69
- skipped.push({ kind: 'preset', reason: 'config-wins' });
67
+ // Preset: a DSH_TUI_PRESET launch instruction pins this run; else the
68
+ // persisted choice. A static cordis.yml `preset` is only the deployment
69
+ // default, so it never blocks a reload.
70
+ if (input.envPreset !== undefined) {
71
+ skipped.push({ kind: 'preset', reason: 'env-wins' });
70
72
  }
71
73
  else if (input.presetPref === undefined) {
72
74
  skipped.push({ kind: 'preset', reason: 'invalid' });
@@ -77,13 +79,11 @@ export function planReload(input) {
77
79
  else {
78
80
  apply.push({ kind: 'preset', from: input.currentPreset ?? '—', to: input.presetPref });
79
81
  }
80
- // Model route: the atomic rule (issue #67) — a complete cordis.yml pair
81
- // wins whole; a half-pinned config never merges with the pref's other half.
82
- // (Normalize to an object: callers may pass undefined when no route is pinned.)
83
- if (explicitModelRoute(input.configuredModel ?? {}) !== undefined) {
84
- skipped.push({ kind: 'model', reason: 'config-wins' });
85
- }
86
- else if (input.modelPref === undefined) {
82
+ // Model route: the persisted choice is the standing one (the atomic rule of
83
+ // issue #67 — a cordis.yml pair is only the deployment default and can
84
+ // never merge with half the pref). A route the file does not hold reads as
85
+ // invalid here; the config default only takes over on the next boot.
86
+ if (input.modelPref === undefined) {
87
87
  skipped.push({ kind: 'model', reason: 'invalid' });
88
88
  }
89
89
  else if (input.currentModel !== undefined