@deepseek-harness-tui/dsh-tui 0.14.0 → 0.15.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 (735) hide show
  1. package/README.md +73 -14
  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 +34 -7
  8. package/guide/dsh-tui-guide/codex-backend.md +17 -2
  9. package/guide/dsh-tui-guide/configuration.en.md +129 -16
  10. package/guide/dsh-tui-guide/configuration.md +110 -14
  11. package/guide/dsh-tui-guide/interaction.en.md +57 -24
  12. package/guide/dsh-tui-guide/interaction.md +42 -19
  13. package/guide/dsh-tui-guide/plugins.en.md +36 -3
  14. package/guide/dsh-tui-guide/plugins.md +21 -2
  15. package/guide/dsh-tui-guide/themes.en.md +23 -14
  16. package/guide/dsh-tui-guide/themes.md +19 -12
  17. package/guide/dsh-tui-guide/user-guide.en.md +51 -20
  18. package/guide/dsh-tui-guide/user-guide.md +41 -21
  19. package/lib/settings.json +103 -9
  20. package/lib/types/adapter/channel/ui-policy.d.ts +1 -1
  21. package/lib/types/adapter/channel/ui-policy.d.ts.map +1 -1
  22. package/lib/types/adapter/channel/ui-policy.js +3 -0
  23. package/lib/types/adapter/channel/ui.d.ts +2 -0
  24. package/lib/types/adapter/channel/ui.d.ts.map +1 -1
  25. package/lib/types/adapter/channel/ui.js +6 -2
  26. package/lib/types/adapter/kernel/runtime.d.ts.map +1 -1
  27. package/lib/types/adapter/kernel/runtime.js +2 -0
  28. package/lib/types/adapter/ports/channel-settings.d.ts +9 -0
  29. package/lib/types/adapter/ports/channel-settings.d.ts.map +1 -1
  30. package/lib/types/adapter/ports/channel-ui.d.ts +50 -12
  31. package/lib/types/adapter/ports/channel-ui.d.ts.map +1 -1
  32. package/lib/types/adapter/ports/channel-view.d.ts +21 -0
  33. package/lib/types/adapter/ports/channel-view.d.ts.map +1 -1
  34. package/lib/types/adapter/spec/backend-capabilities.d.ts +22 -0
  35. package/lib/types/adapter/spec/backend-capabilities.d.ts.map +1 -0
  36. package/lib/types/adapter/spec/backend-capabilities.js +49 -0
  37. package/lib/types/adapter/spec/protocol-constants.d.ts.map +1 -1
  38. package/lib/types/adapter/spec/protocol-constants.js +10 -3
  39. package/lib/types/adapter/spec/tui-contributions.d.ts +3 -0
  40. package/lib/types/adapter/spec/tui-contributions.d.ts.map +1 -1
  41. package/lib/types/adapter/spec/tui-contributions.js +7 -0
  42. package/lib/types/adapter/standard/registry.d.ts +6 -0
  43. package/lib/types/adapter/standard/registry.d.ts.map +1 -1
  44. package/lib/types/adapter/standard/registry.js +65 -15
  45. package/lib/types/adapter/standard/tui-extension.d.ts.map +1 -1
  46. package/lib/types/adapter/standard/tui-extension.js +7 -1
  47. package/lib/types/adapter/standard/types.d.ts +10 -1
  48. package/lib/types/adapter/standard/types.d.ts.map +1 -1
  49. package/lib/types/adapter/upstream/host-descriptor-driver.d.ts.map +1 -1
  50. package/lib/types/adapter/upstream/host-descriptor-driver.js +52 -0
  51. package/lib/types/agent/backend-manifest.d.ts +152 -0
  52. package/lib/types/agent/backend-manifest.d.ts.map +1 -0
  53. package/lib/types/agent/backend-manifest.js +14 -0
  54. package/lib/types/agent/backend.d.ts +71 -5
  55. package/lib/types/agent/backend.d.ts.map +1 -1
  56. package/lib/types/agent/capabilities.d.ts +6 -0
  57. package/lib/types/agent/capabilities.d.ts.map +1 -1
  58. package/lib/types/agent/index.d.ts +2 -0
  59. package/lib/types/agent/index.d.ts.map +1 -1
  60. package/lib/types/agent/refs.d.ts +11 -1
  61. package/lib/types/agent/refs.d.ts.map +1 -1
  62. package/lib/types/agent/starting-session.d.ts +4 -0
  63. package/lib/types/agent/starting-session.d.ts.map +1 -0
  64. package/lib/types/agent/starting-session.js +19 -0
  65. package/lib/types/backends/claude/activity.d.ts +1 -1
  66. package/lib/types/backends/claude/activity.d.ts.map +1 -1
  67. package/lib/types/backends/claude/activity.js +5 -5
  68. package/lib/types/backends/claude/auth.d.ts.map +1 -1
  69. package/lib/types/backends/claude/auth.js +10 -3
  70. package/lib/types/backends/claude/backend.d.ts.map +1 -1
  71. package/lib/types/backends/claude/backend.js +103 -29
  72. package/lib/types/backends/claude/catalog.d.ts +2 -1
  73. package/lib/types/backends/claude/catalog.d.ts.map +1 -1
  74. package/lib/types/backends/claude/catalog.js +15 -5
  75. package/lib/types/backends/claude/channels.d.ts +5 -3
  76. package/lib/types/backends/claude/channels.d.ts.map +1 -1
  77. package/lib/types/backends/claude/channels.js +5 -4
  78. package/lib/types/backends/claude/contract.d.ts +4 -0
  79. package/lib/types/backends/claude/contract.d.ts.map +1 -1
  80. package/lib/types/backends/claude/contract.js +4 -0
  81. package/lib/types/backends/claude/controls.d.ts +4 -0
  82. package/lib/types/backends/claude/controls.d.ts.map +1 -1
  83. package/lib/types/backends/claude/controls.js +34 -42
  84. package/lib/types/backends/claude/dialogs.d.ts +8 -2
  85. package/lib/types/backends/claude/dialogs.d.ts.map +1 -1
  86. package/lib/types/backends/claude/dialogs.js +24 -16
  87. package/lib/types/backends/claude/images.d.ts +1 -1
  88. package/lib/types/backends/claude/images.d.ts.map +1 -1
  89. package/lib/types/backends/claude/images.js +7 -7
  90. package/lib/types/backends/claude/manifest.d.ts +21 -0
  91. package/lib/types/backends/claude/manifest.d.ts.map +1 -0
  92. package/lib/types/backends/claude/manifest.js +29 -0
  93. package/lib/types/backends/claude/older-history.js +2 -2
  94. package/lib/types/backends/claude/permissions.js +11 -11
  95. package/lib/types/backends/claude/prefs.d.ts +4 -2
  96. package/lib/types/backends/claude/prefs.d.ts.map +1 -1
  97. package/lib/types/backends/claude/prefs.js +4 -3
  98. package/lib/types/backends/claude/process.d.ts +16 -4
  99. package/lib/types/backends/claude/process.d.ts.map +1 -1
  100. package/lib/types/backends/claude/process.js +100 -37
  101. package/lib/types/backends/claude/send-message.d.ts +1 -1
  102. package/lib/types/backends/claude/send-message.d.ts.map +1 -1
  103. package/lib/types/backends/claude/session/auth.js +22 -22
  104. package/lib/types/backends/claude/session/channels.d.ts +4 -0
  105. package/lib/types/backends/claude/session/channels.d.ts.map +1 -1
  106. package/lib/types/backends/claude/session/channels.js +5 -3
  107. package/lib/types/backends/claude/session/lifecycle.d.ts.map +1 -1
  108. package/lib/types/backends/claude/session/lifecycle.js +31 -23
  109. package/lib/types/backends/claude/session/store.js +8 -8
  110. package/lib/types/backends/claude/session/subagents.js +2 -2
  111. package/lib/types/backends/claude/session/types.d.ts +7 -0
  112. package/lib/types/backends/claude/session/types.d.ts.map +1 -1
  113. package/lib/types/backends/claude/side-query.js +3 -3
  114. package/lib/types/backends/claude/task-output.js +5 -5
  115. package/lib/types/backends/claude/text.d.ts +778 -0
  116. package/lib/types/backends/claude/text.d.ts.map +1 -0
  117. package/lib/types/backends/claude/text.js +298 -0
  118. package/lib/types/backends/claude/transcript-file.d.ts +1 -1
  119. package/lib/types/backends/claude/transcript-file.d.ts.map +1 -1
  120. package/lib/types/backends/claude/transcript-file.js +4 -4
  121. package/lib/types/backends/claude/translate/attempts.js +2 -2
  122. package/lib/types/backends/claude/translate/core.js +3 -3
  123. package/lib/types/backends/claude/translate/messages.js +4 -4
  124. package/lib/types/backends/claude/translate/system.js +14 -14
  125. package/lib/types/backends/claude/translate/tasks.js +2 -2
  126. package/lib/types/backends/claude/translate/types.d.ts +1 -1
  127. package/lib/types/backends/claude/translate/types.d.ts.map +1 -1
  128. package/lib/types/backends/codex/auth/external-tokens.js +16 -16
  129. package/lib/types/backends/codex/auth/status.js +14 -14
  130. package/lib/types/backends/codex/backend.d.ts +4 -19
  131. package/lib/types/backends/codex/backend.d.ts.map +1 -1
  132. package/lib/types/backends/codex/backend.js +118 -25
  133. package/lib/types/backends/codex/catalog.d.ts +2 -1
  134. package/lib/types/backends/codex/catalog.d.ts.map +1 -1
  135. package/lib/types/backends/codex/catalog.js +63 -18
  136. package/lib/types/backends/codex/channels.d.ts +6 -3
  137. package/lib/types/backends/codex/channels.d.ts.map +1 -1
  138. package/lib/types/backends/codex/channels.js +15 -13
  139. package/lib/types/backends/codex/detect.d.ts.map +1 -1
  140. package/lib/types/backends/codex/detect.js +9 -6
  141. package/lib/types/backends/codex/manifest.d.ts +30 -0
  142. package/lib/types/backends/codex/manifest.d.ts.map +1 -0
  143. package/lib/types/backends/codex/manifest.js +23 -0
  144. package/lib/types/backends/codex/prefs.d.ts +4 -2
  145. package/lib/types/backends/codex/prefs.d.ts.map +1 -1
  146. package/lib/types/backends/codex/prefs.js +4 -3
  147. package/lib/types/backends/codex/rpc/hub.js +2 -2
  148. package/lib/types/backends/codex/session/activity.d.ts +1 -1
  149. package/lib/types/backends/codex/session/activity.d.ts.map +1 -1
  150. package/lib/types/backends/codex/session/activity.js +13 -13
  151. package/lib/types/backends/codex/session/approvals.js +30 -30
  152. package/lib/types/backends/codex/session/commands.d.ts +8 -2
  153. package/lib/types/backends/codex/session/commands.d.ts.map +1 -1
  154. package/lib/types/backends/codex/session/commands.js +71 -23
  155. package/lib/types/backends/codex/session/controls.d.ts +1 -1
  156. package/lib/types/backends/codex/session/controls.d.ts.map +1 -1
  157. package/lib/types/backends/codex/session/controls.js +21 -16
  158. package/lib/types/backends/codex/session/goals.d.ts.map +1 -1
  159. package/lib/types/backends/codex/session/goals.js +3 -3
  160. package/lib/types/backends/codex/session/history.js +2 -2
  161. package/lib/types/backends/codex/session/images.js +8 -8
  162. package/lib/types/backends/codex/session/input.d.ts +6 -2
  163. package/lib/types/backends/codex/session/input.d.ts.map +1 -1
  164. package/lib/types/backends/codex/session/input.js +55 -13
  165. package/lib/types/backends/codex/session/plan-review.js +6 -6
  166. package/lib/types/backends/codex/session/session.d.ts.map +1 -1
  167. package/lib/types/backends/codex/session/session.js +66 -34
  168. package/lib/types/backends/codex/session/side-query.d.ts.map +1 -1
  169. package/lib/types/backends/codex/session/side-query.js +27 -9
  170. package/lib/types/backends/codex/session/state.d.ts +6 -1
  171. package/lib/types/backends/codex/session/state.d.ts.map +1 -1
  172. package/lib/types/backends/codex/session/subagents.js +5 -5
  173. package/lib/types/backends/codex/session/tasks.js +4 -4
  174. package/lib/types/backends/codex/text.d.ts +933 -0
  175. package/lib/types/backends/codex/text.d.ts.map +1 -0
  176. package/lib/types/backends/codex/text.js +313 -0
  177. package/lib/types/backends/codex/translate/items.js +4 -4
  178. package/lib/types/backends/codex/translate/live.d.ts.map +1 -1
  179. package/lib/types/backends/codex/translate/live.js +11 -8
  180. package/lib/types/backends/codex/translate/notices.js +10 -10
  181. package/lib/types/backends/shared/channel-slug.d.ts +4 -0
  182. package/lib/types/backends/shared/channel-slug.d.ts.map +1 -0
  183. package/lib/types/backends/shared/channel-slug.js +25 -0
  184. package/lib/types/backends/shared/channel-tokens.d.ts.map +1 -1
  185. package/lib/types/backends/shared/channel-tokens.js +30 -23
  186. package/lib/types/{channel → backends/shared}/elicitation.d.ts +78 -21
  187. package/lib/types/backends/shared/elicitation.d.ts.map +1 -0
  188. package/lib/types/{channel → backends/shared}/elicitation.js +64 -66
  189. package/lib/types/backends/shared/image-size.d.ts +33 -0
  190. package/lib/types/backends/shared/image-size.d.ts.map +1 -0
  191. package/lib/types/backends/shared/image-size.js +134 -0
  192. package/lib/types/{utils → backends/shared}/jsonl.d.ts +5 -1
  193. package/lib/types/backends/shared/jsonl.d.ts.map +1 -0
  194. package/lib/types/{utils → backends/shared}/jsonl.js +5 -1
  195. package/lib/types/backends/shared/localized-text.d.ts +30 -0
  196. package/lib/types/backends/shared/localized-text.d.ts.map +1 -0
  197. package/lib/types/backends/shared/localized-text.js +24 -0
  198. package/lib/types/backends/shared/platform-text.d.ts +88 -0
  199. package/lib/types/backends/shared/platform-text.d.ts.map +1 -0
  200. package/lib/types/backends/shared/platform-text.js +33 -0
  201. package/lib/types/branding.d.ts +13 -0
  202. package/lib/types/branding.d.ts.map +1 -1
  203. package/lib/types/branding.js +18 -0
  204. package/lib/types/channel/channel-slug.d.ts +3 -1
  205. package/lib/types/channel/channel-slug.d.ts.map +1 -1
  206. package/lib/types/channel/channel-slug.js +3 -1
  207. package/lib/types/channel/sanitize.d.ts +7 -0
  208. package/lib/types/channel/sanitize.d.ts.map +1 -1
  209. package/lib/types/channel/sanitize.js +9 -0
  210. package/lib/types/channel/usage.d.ts.map +1 -1
  211. package/lib/types/channel/usage.js +5 -0
  212. package/lib/types/commands.d.ts +5 -0
  213. package/lib/types/commands.d.ts.map +1 -1
  214. package/lib/types/commands.js +47 -8
  215. package/lib/types/components/AgentMessageComposer.d.ts.map +1 -1
  216. package/lib/types/components/AgentMessageComposer.js +3 -2
  217. package/lib/types/components/BtwPanel.d.ts.map +1 -1
  218. package/lib/types/components/BtwPanel.js +4 -2
  219. package/lib/types/components/Chat/JobCard.js +3 -3
  220. package/lib/types/components/CommandSuggestions.d.ts.map +1 -1
  221. package/lib/types/components/CommandSuggestions.js +20 -6
  222. package/lib/types/components/ContextBarView.d.ts +5 -1
  223. package/lib/types/components/ContextBarView.d.ts.map +1 -1
  224. package/lib/types/components/ContextBarView.js +6 -3
  225. package/lib/types/components/ExtensionDialog.d.ts.map +1 -1
  226. package/lib/types/components/ExtensionDialog.js +2 -3
  227. package/lib/types/components/GoalTodoPanel.d.ts.map +1 -1
  228. package/lib/types/components/GoalTodoPanel.js +14 -3
  229. package/lib/types/components/InlineMathParagraph.js +1 -1
  230. package/lib/types/components/KernelPicker.d.ts.map +1 -1
  231. package/lib/types/components/KernelPicker.js +1 -1
  232. package/lib/types/components/LogoV2.d.ts.map +1 -1
  233. package/lib/types/components/LogoV2.js +9 -6
  234. package/lib/types/components/MarkdownTable.d.ts.map +1 -1
  235. package/lib/types/components/MarkdownTable.js +4 -3
  236. package/lib/types/components/MessageList.d.ts.map +1 -1
  237. package/lib/types/components/MessageList.js +18 -5
  238. package/lib/types/components/ModelPicker.d.ts +24 -31
  239. package/lib/types/components/ModelPicker.d.ts.map +1 -1
  240. package/lib/types/components/ModelPicker.js +115 -40
  241. package/lib/types/components/PromptEditor.d.ts +3 -3
  242. package/lib/types/components/PromptInput.d.ts +21 -3
  243. package/lib/types/components/PromptInput.d.ts.map +1 -1
  244. package/lib/types/components/PromptInput.js +58 -118
  245. package/lib/types/components/SdkInstallWizard.d.ts +3 -1
  246. package/lib/types/components/SdkInstallWizard.d.ts.map +1 -1
  247. package/lib/types/components/SdkInstallWizard.js +8 -1
  248. package/lib/types/components/SearchBox.d.ts +13 -15
  249. package/lib/types/components/SearchBox.d.ts.map +1 -1
  250. package/lib/types/components/SearchBox.js +58 -27
  251. package/lib/types/components/ThemePicker.d.ts +1 -1
  252. package/lib/types/components/ThemePicker.d.ts.map +1 -1
  253. package/lib/types/components/ThemePicker.js +14 -11
  254. package/lib/types/components/Tooltip.js +1 -1
  255. package/lib/types/components/WorkingSpinner.js +1 -1
  256. package/lib/types/components/WorkspaceFlowPicker.d.ts.map +1 -1
  257. package/lib/types/components/WorkspaceFlowPicker.js +4 -3
  258. package/lib/types/components/composerImageTokens.d.ts +24 -0
  259. package/lib/types/components/composerImageTokens.d.ts.map +1 -0
  260. package/lib/types/components/composerImageTokens.js +37 -0
  261. package/lib/types/components/design-system/InputCaret.d.ts +7 -0
  262. package/lib/types/components/design-system/InputCaret.d.ts.map +1 -0
  263. package/lib/types/components/design-system/InputCaret.js +9 -0
  264. package/lib/types/components/design-system/ListItem.d.ts +13 -2
  265. package/lib/types/components/design-system/ListItem.d.ts.map +1 -1
  266. package/lib/types/components/design-system/ListItem.js +11 -5
  267. package/lib/types/components/design-system/ThemeProvider.d.ts.map +1 -1
  268. package/lib/types/components/design-system/ThemeProvider.js +6 -8
  269. package/lib/types/components/kernelCatalog.d.ts +55 -11
  270. package/lib/types/components/kernelCatalog.d.ts.map +1 -1
  271. package/lib/types/components/kernelCatalog.js +42 -23
  272. package/lib/types/components/launchpadActions.d.ts +4 -0
  273. package/lib/types/components/launchpadActions.d.ts.map +1 -1
  274. package/lib/types/components/launchpadActions.js +5 -4
  275. package/lib/types/components/launchpadLayout.d.ts.map +1 -1
  276. package/lib/types/components/launchpadLayout.js +2 -2
  277. package/lib/types/components/messages/UserPromptMessage.d.ts +4 -3
  278. package/lib/types/components/messages/UserPromptMessage.d.ts.map +1 -1
  279. package/lib/types/components/messages/UserPromptMessage.js +4 -3
  280. package/lib/types/components/questions/AskUserQuestionPanel.d.ts.map +1 -1
  281. package/lib/types/components/questions/AskUserQuestionPanel.js +8 -3
  282. package/lib/types/components/questions/PlanReviewPanel.d.ts.map +1 -1
  283. package/lib/types/components/questions/PlanReviewPanel.js +4 -3
  284. package/lib/types/components/questions/ProviderModelEditor.d.ts.map +1 -1
  285. package/lib/types/components/questions/ProviderModelEditor.js +3 -13
  286. package/lib/types/components/sessions/ForeignSessionRow.d.ts +3 -1
  287. package/lib/types/components/sessions/ForeignSessionRow.d.ts.map +1 -1
  288. package/lib/types/components/sessions/ForeignSessionRow.js +5 -2
  289. package/lib/types/components/sessions/SessionListRow.d.ts +3 -1
  290. package/lib/types/components/sessions/SessionListRow.d.ts.map +1 -1
  291. package/lib/types/components/sessions/SessionListRow.js +5 -2
  292. package/lib/types/components/sidePanel/PanelBar.d.ts +1 -0
  293. package/lib/types/components/sidePanel/PanelBar.d.ts.map +1 -1
  294. package/lib/types/components/sidePanel/PanelBar.js +21 -17
  295. package/lib/types/components/sidePanel/SidePanelColumn.d.ts +1 -1
  296. package/lib/types/components/sidePanel/SidePanelColumn.d.ts.map +1 -1
  297. package/lib/types/components/sidePanel/SidePanelColumn.js +2 -1
  298. package/lib/types/components/sidePanel/SidePanelLayout.d.ts +6 -4
  299. package/lib/types/components/sidePanel/SidePanelLayout.d.ts.map +1 -1
  300. package/lib/types/components/sidePanel/SidePanelLayout.js +33 -7
  301. package/lib/types/components/sidePanel/btw/BtwComposer.d.ts +4 -2
  302. package/lib/types/components/sidePanel/btw/BtwComposer.d.ts.map +1 -1
  303. package/lib/types/components/sidePanel/btw/BtwComposer.js +12 -4
  304. package/lib/types/components/sidePanel/btw/BtwPanelAdapter.d.ts.map +1 -1
  305. package/lib/types/components/sidePanel/btw/BtwPanelAdapter.js +59 -15
  306. package/lib/types/components/sidePanel/btw/BtwThreadScene.d.ts.map +1 -1
  307. package/lib/types/components/sidePanel/btw/BtwThreadScene.js +4 -2
  308. package/lib/types/components/sidePanel/btw/BtwThreadView.d.ts +1 -1
  309. package/lib/types/components/sidePanel/btw/BtwThreadView.d.ts.map +1 -1
  310. package/lib/types/components/sidePanel/btw/BtwThreadView.js +12 -6
  311. package/lib/types/components/sidePanel/companion/CompanionPanel.js +2 -2
  312. package/lib/types/components/sidePanel/types.d.ts +1 -1
  313. package/lib/types/components/sidePanel/types.d.ts.map +1 -1
  314. package/lib/types/components/sidePanel/useSidePanel.d.ts +2 -0
  315. package/lib/types/components/sidePanel/useSidePanel.d.ts.map +1 -1
  316. package/lib/types/components/sidePanel/useSidePanel.js +11 -1
  317. package/lib/types/components/splashFonts.d.ts +24 -1
  318. package/lib/types/components/splashFonts.d.ts.map +1 -1
  319. package/lib/types/components/splashFonts.js +40 -5
  320. package/lib/types/components/workspaces/HomeWorkspaceRow.d.ts +3 -1
  321. package/lib/types/components/workspaces/HomeWorkspaceRow.d.ts.map +1 -1
  322. package/lib/types/components/workspaces/HomeWorkspaceRow.js +5 -2
  323. package/lib/types/dsh-adapter/admission-loader.d.ts +20 -0
  324. package/lib/types/dsh-adapter/admission-loader.d.ts.map +1 -0
  325. package/lib/types/dsh-adapter/admission-loader.js +256 -0
  326. package/lib/types/dsh-adapter/backend/translate.d.ts.map +1 -1
  327. package/lib/types/dsh-adapter/backend/translate.js +3 -0
  328. package/lib/types/dsh-adapter/backend-admission.d.ts +64 -0
  329. package/lib/types/dsh-adapter/backend-admission.d.ts.map +1 -0
  330. package/lib/types/dsh-adapter/backend-admission.js +34 -0
  331. package/lib/types/dsh-adapter/backend-contribution.d.ts +26 -0
  332. package/lib/types/dsh-adapter/backend-contribution.d.ts.map +1 -0
  333. package/lib/types/dsh-adapter/backend-contribution.js +37 -0
  334. package/lib/types/dsh-adapter/backend-registry.d.ts +136 -0
  335. package/lib/types/dsh-adapter/backend-registry.d.ts.map +1 -0
  336. package/lib/types/dsh-adapter/backend-registry.js +285 -0
  337. package/lib/types/dsh-adapter/backends.d.ts +67 -24
  338. package/lib/types/dsh-adapter/backends.d.ts.map +1 -1
  339. package/lib/types/dsh-adapter/backends.generated.d.ts +12 -0
  340. package/lib/types/dsh-adapter/backends.generated.d.ts.map +1 -0
  341. package/lib/types/dsh-adapter/backends.generated.js +6 -0
  342. package/lib/types/dsh-adapter/backends.js +92 -46
  343. package/lib/types/dsh-adapter/channel/action-readiness.d.ts +2 -0
  344. package/lib/types/dsh-adapter/channel/action-readiness.d.ts.map +1 -1
  345. package/lib/types/dsh-adapter/channel/action-readiness.js +9 -3
  346. package/lib/types/dsh-adapter/channel/agent-view-projection.js +2 -2
  347. package/lib/types/dsh-adapter/channel/background-action.d.ts.map +1 -1
  348. package/lib/types/dsh-adapter/channel/background-action.js +8 -3
  349. package/lib/types/dsh-adapter/channel/binding-events.d.ts +16 -3
  350. package/lib/types/dsh-adapter/channel/binding-events.d.ts.map +1 -1
  351. package/lib/types/dsh-adapter/channel/binding-events.js +18 -46
  352. package/lib/types/dsh-adapter/channel/channel-host.d.ts +45 -0
  353. package/lib/types/dsh-adapter/channel/channel-host.d.ts.map +1 -0
  354. package/lib/types/dsh-adapter/channel/channel-host.js +1 -0
  355. package/lib/types/dsh-adapter/channel/command-completions.d.ts +5 -0
  356. package/lib/types/dsh-adapter/channel/command-completions.d.ts.map +1 -1
  357. package/lib/types/dsh-adapter/channel/command-completions.js +16 -0
  358. package/lib/types/dsh-adapter/channel/composer-images.d.ts +4 -2
  359. package/lib/types/dsh-adapter/channel/composer-images.d.ts.map +1 -1
  360. package/lib/types/dsh-adapter/channel/composer-images.js +36 -5
  361. package/lib/types/dsh-adapter/channel/cordis-host.d.ts +14 -0
  362. package/lib/types/dsh-adapter/channel/cordis-host.d.ts.map +1 -0
  363. package/lib/types/dsh-adapter/channel/cordis-host.js +35 -0
  364. package/lib/types/dsh-adapter/channel/core/actions.d.ts +3 -3
  365. package/lib/types/dsh-adapter/channel/core/actions.d.ts.map +1 -1
  366. package/lib/types/dsh-adapter/channel/core/actions.js +15 -6
  367. package/lib/types/dsh-adapter/channel/core/binding-feed.d.ts +7 -3
  368. package/lib/types/dsh-adapter/channel/core/binding-feed.d.ts.map +1 -1
  369. package/lib/types/dsh-adapter/channel/core/binding-feed.js +3 -0
  370. package/lib/types/dsh-adapter/channel/core/compose.d.ts +12 -28
  371. package/lib/types/dsh-adapter/channel/core/compose.d.ts.map +1 -1
  372. package/lib/types/dsh-adapter/channel/core/compose.js +318 -117
  373. package/lib/types/dsh-adapter/channel/core/files.d.ts +7 -2
  374. package/lib/types/dsh-adapter/channel/core/files.d.ts.map +1 -1
  375. package/lib/types/dsh-adapter/channel/core/files.js +1 -0
  376. package/lib/types/dsh-adapter/channel/core/host.d.ts +12 -6
  377. package/lib/types/dsh-adapter/channel/core/host.d.ts.map +1 -1
  378. package/lib/types/dsh-adapter/channel/core/host.js +69 -35
  379. package/lib/types/dsh-adapter/channel/core/local-actions.d.ts +5 -3
  380. package/lib/types/dsh-adapter/channel/core/local-actions.d.ts.map +1 -1
  381. package/lib/types/dsh-adapter/channel/core/local-actions.js +5 -2
  382. package/lib/types/dsh-adapter/channel/core/session-controls.js +2 -2
  383. package/lib/types/dsh-adapter/channel/core/session-switch.d.ts +7 -4
  384. package/lib/types/dsh-adapter/channel/core/session-switch.d.ts.map +1 -1
  385. package/lib/types/dsh-adapter/channel/core/session-switch.js +8 -4
  386. package/lib/types/dsh-adapter/channel/core/sessions.d.ts +1 -1
  387. package/lib/types/dsh-adapter/channel/core/sessions.d.ts.map +1 -1
  388. package/lib/types/dsh-adapter/channel/core/sessions.js +75 -16
  389. package/lib/types/dsh-adapter/channel/extensions.d.ts +4 -3
  390. package/lib/types/dsh-adapter/channel/extensions.d.ts.map +1 -1
  391. package/lib/types/dsh-adapter/channel/extensions.js +41 -22
  392. package/lib/types/dsh-adapter/channel/input-delivery.d.ts +2 -2
  393. package/lib/types/dsh-adapter/channel/input-delivery.d.ts.map +1 -1
  394. package/lib/types/dsh-adapter/channel/input-delivery.js +14 -5
  395. package/lib/types/dsh-adapter/channel/job-projection.d.ts +4 -0
  396. package/lib/types/dsh-adapter/channel/job-projection.d.ts.map +1 -1
  397. package/lib/types/dsh-adapter/channel/job-projection.js +205 -24
  398. package/lib/types/dsh-adapter/channel/mentions.d.ts +3 -3
  399. package/lib/types/dsh-adapter/channel/mentions.d.ts.map +1 -1
  400. package/lib/types/dsh-adapter/channel/mode-permission-actions.d.ts +1 -0
  401. package/lib/types/dsh-adapter/channel/mode-permission-actions.d.ts.map +1 -1
  402. package/lib/types/dsh-adapter/channel/mode-permission-actions.js +138 -8
  403. package/lib/types/dsh-adapter/channel/model-actions.d.ts +5 -1
  404. package/lib/types/dsh-adapter/channel/model-actions.d.ts.map +1 -1
  405. package/lib/types/dsh-adapter/channel/model-actions.js +40 -28
  406. package/lib/types/dsh-adapter/channel/model-selection.d.ts +17 -0
  407. package/lib/types/dsh-adapter/channel/model-selection.d.ts.map +1 -0
  408. package/lib/types/dsh-adapter/channel/model-selection.js +109 -0
  409. package/lib/types/dsh-adapter/channel/model-switch.d.ts +12 -21
  410. package/lib/types/dsh-adapter/channel/model-switch.d.ts.map +1 -1
  411. package/lib/types/dsh-adapter/channel/model-switch.js +39 -102
  412. package/lib/types/dsh-adapter/channel/projection.js +1 -1
  413. package/lib/types/dsh-adapter/channel/reports.d.ts +1 -1
  414. package/lib/types/dsh-adapter/channel/reports.d.ts.map +1 -1
  415. package/lib/types/dsh-adapter/channel/reports.js +11 -3
  416. package/lib/types/dsh-adapter/channel/session-fork.d.ts.map +1 -1
  417. package/lib/types/dsh-adapter/channel/session-fork.js +33 -20
  418. package/lib/types/dsh-adapter/channel/session-listing.d.ts +20 -0
  419. package/lib/types/dsh-adapter/channel/session-listing.d.ts.map +1 -0
  420. package/lib/types/dsh-adapter/channel/session-listing.js +51 -0
  421. package/lib/types/dsh-adapter/channel/session-metadata.d.ts +3 -1
  422. package/lib/types/dsh-adapter/channel/session-metadata.d.ts.map +1 -1
  423. package/lib/types/dsh-adapter/channel/session-metadata.js +56 -27
  424. package/lib/types/dsh-adapter/channel/session-resume.d.ts.map +1 -1
  425. package/lib/types/dsh-adapter/channel/session-resume.js +15 -8
  426. package/lib/types/dsh-adapter/channel/session-rewind.d.ts.map +1 -1
  427. package/lib/types/dsh-adapter/channel/session-rewind.js +38 -24
  428. package/lib/types/dsh-adapter/channel/session-tree-actions.d.ts.map +1 -1
  429. package/lib/types/dsh-adapter/channel/session-tree-actions.js +38 -24
  430. package/lib/types/dsh-adapter/channel/settings-host.d.ts +2 -2
  431. package/lib/types/dsh-adapter/channel/settings-host.d.ts.map +1 -1
  432. package/lib/types/dsh-adapter/channel/settings-host.js +1 -0
  433. package/lib/types/dsh-adapter/channel/state.d.ts +37 -1
  434. package/lib/types/dsh-adapter/channel/state.d.ts.map +1 -1
  435. package/lib/types/dsh-adapter/channel/state.js +14 -1
  436. package/lib/types/dsh-adapter/channel/subagent-projection.d.ts.map +1 -1
  437. package/lib/types/dsh-adapter/channel/subagent-projection.js +66 -6
  438. package/lib/types/dsh-adapter/channel/task-completion.d.ts +6 -0
  439. package/lib/types/dsh-adapter/channel/task-completion.d.ts.map +1 -0
  440. package/lib/types/dsh-adapter/channel/task-completion.js +114 -0
  441. package/lib/types/dsh-adapter/channel/transcript.d.ts +1 -1
  442. package/lib/types/dsh-adapter/channel/transcript.js +1 -1
  443. package/lib/types/dsh-adapter/channel/upstream-retry.d.ts +81 -0
  444. package/lib/types/dsh-adapter/channel/upstream-retry.d.ts.map +1 -0
  445. package/lib/types/dsh-adapter/channel/upstream-retry.js +138 -0
  446. package/lib/types/dsh-adapter/channel/workspace-actions.d.ts.map +1 -1
  447. package/lib/types/dsh-adapter/channel/workspace-actions.js +9 -8
  448. package/lib/types/dsh-adapter/channel-ui.d.ts +3 -1
  449. package/lib/types/dsh-adapter/channel-ui.d.ts.map +1 -1
  450. package/lib/types/dsh-adapter/channel-ui.js +4 -2
  451. package/lib/types/dsh-adapter/channel.d.ts +2 -2
  452. package/lib/types/dsh-adapter/channel.d.ts.map +1 -1
  453. package/lib/types/dsh-adapter/channel.js +19 -5
  454. package/lib/types/dsh-adapter/context-occupancy.d.ts +81 -4
  455. package/lib/types/dsh-adapter/context-occupancy.d.ts.map +1 -1
  456. package/lib/types/dsh-adapter/context-occupancy.js +108 -17
  457. package/lib/types/dsh-adapter/contract.d.ts +1 -1
  458. package/lib/types/dsh-adapter/contract.d.ts.map +1 -1
  459. package/lib/types/dsh-adapter/contract.js +15 -0
  460. package/lib/types/dsh-adapter/entry-slot.d.ts +36 -0
  461. package/lib/types/dsh-adapter/entry-slot.d.ts.map +1 -0
  462. package/lib/types/dsh-adapter/entry-slot.js +28 -0
  463. package/lib/types/dsh-adapter/fresh-agent.d.ts +22 -0
  464. package/lib/types/dsh-adapter/fresh-agent.d.ts.map +1 -0
  465. package/lib/types/dsh-adapter/fresh-agent.js +221 -0
  466. package/lib/types/dsh-adapter/host-access.d.ts +16 -1
  467. package/lib/types/dsh-adapter/host-access.d.ts.map +1 -1
  468. package/lib/types/dsh-adapter/host-access.js +53 -2
  469. package/lib/types/dsh-adapter/host-contract.d.ts +103 -0
  470. package/lib/types/dsh-adapter/host-contract.d.ts.map +1 -0
  471. package/lib/types/dsh-adapter/host-contract.js +76 -0
  472. package/lib/types/dsh-adapter/host-dsh.d.ts +106 -0
  473. package/lib/types/dsh-adapter/host-dsh.d.ts.map +1 -0
  474. package/lib/types/dsh-adapter/host-dsh.js +466 -0
  475. package/lib/types/dsh-adapter/host-entry.d.ts +9 -0
  476. package/lib/types/dsh-adapter/host-entry.d.ts.map +1 -0
  477. package/lib/types/dsh-adapter/host-entry.js +228 -0
  478. package/lib/types/dsh-adapter/index.d.ts +55 -18
  479. package/lib/types/dsh-adapter/index.d.ts.map +1 -1
  480. package/lib/types/dsh-adapter/index.js +59 -7
  481. package/lib/types/dsh-adapter/install/executors.d.ts +44 -0
  482. package/lib/types/dsh-adapter/install/executors.d.ts.map +1 -0
  483. package/lib/types/dsh-adapter/install/executors.js +15 -0
  484. package/lib/types/dsh-adapter/install/pnpm-profile-add.d.ts +3 -0
  485. package/lib/types/dsh-adapter/install/pnpm-profile-add.d.ts.map +1 -0
  486. package/lib/types/dsh-adapter/install/pnpm-profile-add.js +150 -0
  487. package/lib/types/dsh-adapter/jobs.d.ts +7 -0
  488. package/lib/types/dsh-adapter/jobs.d.ts.map +1 -1
  489. package/lib/types/dsh-adapter/jobs.js +13 -0
  490. package/lib/types/dsh-adapter/lite-profile.d.ts +50 -0
  491. package/lib/types/dsh-adapter/lite-profile.d.ts.map +1 -0
  492. package/lib/types/dsh-adapter/lite-profile.js +49 -0
  493. package/lib/types/dsh-adapter/migrate/parse/jsonl.d.ts +1 -1
  494. package/lib/types/dsh-adapter/migrate/parse/jsonl.d.ts.map +1 -1
  495. package/lib/types/dsh-adapter/migrate/parse/jsonl.js +4 -3
  496. package/lib/types/dsh-adapter/oauth/profiles.d.ts.map +1 -1
  497. package/lib/types/dsh-adapter/oauth/profiles.js +5 -1
  498. package/lib/types/dsh-adapter/panels.d.ts +7 -0
  499. package/lib/types/dsh-adapter/panels.d.ts.map +1 -1
  500. package/lib/types/dsh-adapter/panels.js +35 -2
  501. package/lib/types/dsh-adapter/plugin-completions.d.ts +32 -0
  502. package/lib/types/dsh-adapter/plugin-completions.d.ts.map +1 -0
  503. package/lib/types/dsh-adapter/plugin-completions.js +80 -0
  504. package/lib/types/dsh-adapter/plugin-declaration.d.ts +21 -0
  505. package/lib/types/dsh-adapter/plugin-declaration.d.ts.map +1 -0
  506. package/lib/types/dsh-adapter/plugin-declaration.js +53 -0
  507. package/lib/types/dsh-adapter/plugin-host.d.ts +13 -2
  508. package/lib/types/dsh-adapter/plugin-host.d.ts.map +1 -1
  509. package/lib/types/dsh-adapter/plugin-host.js +34 -8
  510. package/lib/types/dsh-adapter/plugin-manager.d.ts +68 -0
  511. package/lib/types/dsh-adapter/plugin-manager.d.ts.map +1 -0
  512. package/lib/types/dsh-adapter/plugin-manager.js +51 -0
  513. package/lib/types/dsh-adapter/plugin.d.ts +50 -1
  514. package/lib/types/dsh-adapter/plugin.d.ts.map +1 -1
  515. package/lib/types/dsh-adapter/plugin.js +870 -233
  516. package/lib/types/dsh-adapter/plugins-info.d.ts +44 -8
  517. package/lib/types/dsh-adapter/plugins-info.d.ts.map +1 -1
  518. package/lib/types/dsh-adapter/plugins-info.js +354 -34
  519. package/lib/types/dsh-adapter/process-exit.d.ts +43 -0
  520. package/lib/types/dsh-adapter/process-exit.d.ts.map +1 -0
  521. package/lib/types/dsh-adapter/process-exit.js +60 -0
  522. package/lib/types/dsh-adapter/root-dispose.d.ts +18 -0
  523. package/lib/types/dsh-adapter/root-dispose.d.ts.map +1 -0
  524. package/lib/types/dsh-adapter/root-dispose.js +28 -0
  525. package/lib/types/dsh-adapter/session-list-metadata.d.ts +20 -0
  526. package/lib/types/dsh-adapter/session-list-metadata.d.ts.map +1 -0
  527. package/lib/types/dsh-adapter/session-list-metadata.js +56 -0
  528. package/lib/types/dsh-adapter/session-seed.d.ts +11 -0
  529. package/lib/types/dsh-adapter/session-seed.d.ts.map +1 -0
  530. package/lib/types/dsh-adapter/session-seed.js +47 -0
  531. package/lib/types/dsh-adapter/sessions/list.d.ts +3 -1
  532. package/lib/types/dsh-adapter/sessions/list.d.ts.map +1 -1
  533. package/lib/types/dsh-adapter/sessions/list.js +11 -5
  534. package/lib/types/dsh-adapter/sessions/snapshot.d.ts +0 -2
  535. package/lib/types/dsh-adapter/sessions/snapshot.d.ts.map +1 -1
  536. package/lib/types/dsh-adapter/sessions/snapshot.js +7 -70
  537. package/lib/types/dsh-adapter/startup-args.d.ts +2 -0
  538. package/lib/types/dsh-adapter/startup-args.d.ts.map +1 -1
  539. package/lib/types/dsh-adapter/startup-args.js +5 -0
  540. package/lib/types/dsh-adapter/subagents.d.ts +33 -1
  541. package/lib/types/dsh-adapter/subagents.d.ts.map +1 -1
  542. package/lib/types/dsh-adapter/subagents.js +110 -8
  543. package/lib/types/dsh-adapter/tui-settings.d.ts +57 -0
  544. package/lib/types/dsh-adapter/tui-settings.d.ts.map +1 -0
  545. package/lib/types/dsh-adapter/tui-settings.js +199 -0
  546. package/lib/types/effortPrefs.d.ts +6 -3
  547. package/lib/types/effortPrefs.d.ts.map +1 -1
  548. package/lib/types/effortPrefs.js +7 -4
  549. package/lib/types/hostEntryRoute.d.ts +18 -0
  550. package/lib/types/hostEntryRoute.d.ts.map +1 -0
  551. package/lib/types/hostEntryRoute.js +57 -0
  552. package/lib/types/i18n.d.ts +363 -1432
  553. package/lib/types/i18n.d.ts.map +1 -1
  554. package/lib/types/i18n.js +155 -385
  555. package/lib/types/ink/components/AlternateScreen.js +2 -2
  556. package/lib/types/ink/components/App.d.ts +1 -0
  557. package/lib/types/ink/components/App.d.ts.map +1 -1
  558. package/lib/types/ink/components/App.js +16 -4
  559. package/lib/types/ink/components/CursorDeclarationContext.d.ts +9 -0
  560. package/lib/types/ink/components/CursorDeclarationContext.d.ts.map +1 -1
  561. package/lib/types/ink/components/CursorDeclarationContext.js +2 -0
  562. package/lib/types/ink/hooks/use-copy-on-select.d.ts +2 -2
  563. package/lib/types/ink/hooks/use-copy-on-select.d.ts.map +1 -1
  564. package/lib/types/ink/hooks/use-copy-on-select.js +13 -7
  565. package/lib/types/ink/hooks/use-declared-cursor.d.ts +11 -3
  566. package/lib/types/ink/hooks/use-declared-cursor.d.ts.map +1 -1
  567. package/lib/types/ink/hooks/use-declared-cursor.js +30 -10
  568. package/lib/types/ink/ink.d.ts +22 -17
  569. package/lib/types/ink/ink.d.ts.map +1 -1
  570. package/lib/types/ink/ink.js +151 -40
  571. package/lib/types/ink/kitty-graphics.d.ts +2 -0
  572. package/lib/types/ink/kitty-graphics.d.ts.map +1 -1
  573. package/lib/types/ink/kitty-graphics.js +6 -1
  574. package/lib/types/ink/node-cache.d.ts +2 -1
  575. package/lib/types/ink/node-cache.d.ts.map +1 -1
  576. package/lib/types/ink/output.d.ts +10 -4
  577. package/lib/types/ink/output.d.ts.map +1 -1
  578. package/lib/types/ink/output.js +14 -10
  579. package/lib/types/ink/render-node-to-output.d.ts +5 -2
  580. package/lib/types/ink/render-node-to-output.d.ts.map +1 -1
  581. package/lib/types/ink/render-node-to-output.js +27 -9
  582. package/lib/types/ink/renderer.d.ts +1 -0
  583. package/lib/types/ink/renderer.d.ts.map +1 -1
  584. package/lib/types/ink/renderer.js +4 -3
  585. package/lib/types/ink/root.d.ts +4 -1
  586. package/lib/types/ink/root.d.ts.map +1 -1
  587. package/lib/types/ink/screen.d.ts +4 -2
  588. package/lib/types/ink/screen.d.ts.map +1 -1
  589. package/lib/types/ink/selection.d.ts +10 -1
  590. package/lib/types/ink/selection.d.ts.map +1 -1
  591. package/lib/types/ink/selection.js +94 -25
  592. package/lib/types/ink/stdin-handoff.d.ts +11 -0
  593. package/lib/types/ink/stdin-handoff.d.ts.map +1 -0
  594. package/lib/types/ink/stdin-handoff.js +20 -0
  595. package/lib/types/ink/styles.d.ts +2 -1
  596. package/lib/types/ink/styles.d.ts.map +1 -1
  597. package/lib/types/ink/terminal-image.d.ts +6 -4
  598. package/lib/types/ink/terminal-image.d.ts.map +1 -1
  599. package/lib/types/ink/terminal-image.js +16 -39
  600. package/lib/types/ink/terminal-notification.d.ts +8 -0
  601. package/lib/types/ink/terminal-notification.d.ts.map +1 -0
  602. package/lib/types/ink/terminal-notification.js +83 -0
  603. package/lib/types/ink/terminal.d.ts +9 -0
  604. package/lib/types/ink/terminal.d.ts.map +1 -1
  605. package/lib/types/ink/terminal.js +34 -1
  606. package/lib/types/ink/termio/csi.d.ts +11 -0
  607. package/lib/types/ink/termio/csi.d.ts.map +1 -1
  608. package/lib/types/ink/termio/csi.js +13 -0
  609. package/lib/types/ink/update-overflow-guard.d.ts +6 -0
  610. package/lib/types/ink/update-overflow-guard.d.ts.map +1 -1
  611. package/lib/types/ink/update-overflow-guard.js +17 -0
  612. package/lib/types/ink/wrap-text.d.ts +6 -0
  613. package/lib/types/ink/wrap-text.d.ts.map +1 -1
  614. package/lib/types/ink/wrap-text.js +17 -0
  615. package/lib/types/kernelPrefs.d.ts +129 -16
  616. package/lib/types/kernelPrefs.d.ts.map +1 -1
  617. package/lib/types/kernelPrefs.js +98 -35
  618. package/lib/types/math/inline-layout.d.ts +2 -0
  619. package/lib/types/math/inline-layout.d.ts.map +1 -1
  620. package/lib/types/math/inline-layout.js +5 -27
  621. package/lib/types/modelGroups.d.ts +15 -27
  622. package/lib/types/modelGroups.d.ts.map +1 -1
  623. package/lib/types/modelGroups.js +17 -31
  624. package/lib/types/modelPrefs.d.ts +5 -4
  625. package/lib/types/modelPrefs.d.ts.map +1 -1
  626. package/lib/types/modelPrefs.js +5 -4
  627. package/lib/types/modelRoute.d.ts +23 -9
  628. package/lib/types/modelRoute.d.ts.map +1 -1
  629. package/lib/types/modelRoute.js +25 -11
  630. package/lib/types/permissionPrefs.d.ts +34 -0
  631. package/lib/types/permissionPrefs.d.ts.map +1 -0
  632. package/lib/types/permissionPrefs.js +61 -0
  633. package/lib/types/plugin-host.d.ts +1 -0
  634. package/lib/types/plugin-host.d.ts.map +1 -1
  635. package/lib/types/presetPrefs.d.ts +17 -3
  636. package/lib/types/presetPrefs.d.ts.map +1 -1
  637. package/lib/types/presetPrefs.js +20 -3
  638. package/lib/types/reload.d.ts +6 -10
  639. package/lib/types/reload.d.ts.map +1 -1
  640. package/lib/types/reload.js +14 -14
  641. package/lib/types/screens/Chat.d.ts +22 -15
  642. package/lib/types/screens/Chat.d.ts.map +1 -1
  643. package/lib/types/screens/Chat.js +442 -272
  644. package/lib/types/screens/Launchpad.d.ts +27 -17
  645. package/lib/types/screens/Launchpad.d.ts.map +1 -1
  646. package/lib/types/screens/Launchpad.js +241 -78
  647. package/lib/types/screens/SessionSupervisor.d.ts.map +1 -1
  648. package/lib/types/screens/SessionSupervisor.js +53 -12
  649. package/lib/types/screens/Settings.d.ts.map +1 -1
  650. package/lib/types/screens/Settings.js +6 -0
  651. package/lib/types/screens/StatusLine.d.ts.map +1 -1
  652. package/lib/types/screens/StatusLine.js +24 -7
  653. package/lib/types/screens/StatusMetrics.d.ts +46 -1
  654. package/lib/types/screens/StatusMetrics.d.ts.map +1 -1
  655. package/lib/types/screens/StatusMetrics.js +72 -0
  656. package/lib/types/screens/chat/useKernelPicker.d.ts +8 -4
  657. package/lib/types/screens/chat/useKernelPicker.d.ts.map +1 -1
  658. package/lib/types/screens/chat/useKernelPicker.js +61 -21
  659. package/lib/types/screens/chat/useModelPicker.d.ts +42 -0
  660. package/lib/types/screens/chat/useModelPicker.d.ts.map +1 -0
  661. package/lib/types/screens/chat/useModelPicker.js +182 -0
  662. package/lib/types/screens/chatOverlay.d.ts +11 -4
  663. package/lib/types/screens/chatOverlay.d.ts.map +1 -1
  664. package/lib/types/screens/chatOverlay.js +0 -1
  665. package/lib/types/screens/sessionSupervisor/ForeignSessionPanes.d.ts +4 -1
  666. package/lib/types/screens/sessionSupervisor/ForeignSessionPanes.d.ts.map +1 -1
  667. package/lib/types/screens/sessionSupervisor/ForeignSessionPanes.js +26 -5
  668. package/lib/types/screens/sessionSupervisor/useSessionSupervisor.d.ts +1 -1
  669. package/lib/types/screens/sessionSupervisor/useSessionSupervisor.d.ts.map +1 -1
  670. package/lib/types/screens/sessionSupervisor/useSessionSupervisor.js +51 -29
  671. package/lib/types/sessionHistory.d.ts +5 -0
  672. package/lib/types/sessionHistory.d.ts.map +1 -1
  673. package/lib/types/sessionHistory.js +5 -0
  674. package/lib/types/sessions/listSnapshot.d.ts +6 -0
  675. package/lib/types/sessions/listSnapshot.d.ts.map +1 -0
  676. package/lib/types/sessions/listSnapshot.js +67 -0
  677. package/lib/types/settings/definitions.d.ts +50 -0
  678. package/lib/types/settings/definitions.d.ts.map +1 -1
  679. package/lib/types/settings/definitions.js +42 -8
  680. package/lib/types/terminal-utils/cjk-emphasis.d.ts +28 -0
  681. package/lib/types/terminal-utils/cjk-emphasis.d.ts.map +1 -0
  682. package/lib/types/terminal-utils/cjk-emphasis.js +31 -0
  683. package/lib/types/terminal-utils/markdown.d.ts +3 -1
  684. package/lib/types/terminal-utils/markdown.d.ts.map +1 -1
  685. package/lib/types/terminal-utils/markdown.js +7 -2
  686. package/lib/types/theme.d.ts +29 -12
  687. package/lib/types/theme.d.ts.map +1 -1
  688. package/lib/types/theme.js +310 -23
  689. package/lib/types/themeCatalog.d.ts.map +1 -1
  690. package/lib/types/themeCatalog.js +21 -2
  691. package/lib/types/tips.js +4 -4
  692. package/lib/types/tuiSettingsFile.d.ts +56 -0
  693. package/lib/types/tuiSettingsFile.d.ts.map +1 -0
  694. package/lib/types/tuiSettingsFile.js +206 -0
  695. package/lib/types/ui.d.ts +2 -0
  696. package/lib/types/ui.d.ts.map +1 -1
  697. package/lib/types/ui.js +2 -0
  698. package/lib/types/update.d.ts +72 -26
  699. package/lib/types/update.d.ts.map +1 -1
  700. package/lib/types/update.js +131 -43
  701. package/lib/types/utils/bmp.d.ts +7 -0
  702. package/lib/types/utils/bmp.d.ts.map +1 -1
  703. package/lib/types/utils/bmp.js +27 -0
  704. package/lib/types/utils/bootTrace.d.ts +2 -0
  705. package/lib/types/utils/bootTrace.d.ts.map +1 -0
  706. package/lib/types/utils/bootTrace.js +20 -0
  707. package/lib/types/utils/clipboard.d.ts.map +1 -1
  708. package/lib/types/utils/clipboard.js +11 -3
  709. package/lib/types/utils/credentials.d.ts +14 -2
  710. package/lib/types/utils/credentials.d.ts.map +1 -1
  711. package/lib/types/utils/credentials.js +34 -11
  712. package/lib/types/utils/imageResize.d.ts +10 -20
  713. package/lib/types/utils/imageResize.d.ts.map +1 -1
  714. package/lib/types/utils/imageResize.js +61 -134
  715. package/lib/types/utils/inputPaste.d.ts +2 -2
  716. package/lib/types/utils/inputPaste.js +2 -2
  717. package/lib/types/utils/pastedImagePath.d.ts +5 -0
  718. package/lib/types/utils/pastedImagePath.d.ts.map +1 -1
  719. package/lib/types/utils/pastedImagePath.js +33 -0
  720. package/package.json +36 -6
  721. package/presets/winbash.mjs +716 -0
  722. package/tui-profile/protocols/profile-definitions.d.ts +1 -0
  723. package/tui-profile/protocols/profile-definitions.js +14 -0
  724. package/tui-profile/protocols/tui-contributions.d.ts +55 -0
  725. package/tui-profile/protocols/tui-contributions.js +141 -0
  726. package/tui-profile/registry/contracts/backend-v1alpha1.json +13 -0
  727. package/tui-profile/registry/registry-0.15.json +12 -0
  728. package/lib/types/backends/claude/install.d.ts +0 -15
  729. package/lib/types/backends/claude/install.d.ts.map +0 -1
  730. package/lib/types/backends/claude/install.js +0 -91
  731. package/lib/types/channel/elicitation.d.ts.map +0 -1
  732. package/lib/types/dsh-adapter/channel/session-lineage.d.ts +0 -42
  733. package/lib/types/dsh-adapter/channel/session-lineage.d.ts.map +0 -1
  734. package/lib/types/dsh-adapter/channel/session-lineage.js +0 -51
  735. package/lib/types/utils/jsonl.d.ts.map +0 -1
@@ -1,12 +1,22 @@
1
1
  /**
2
- * dsh-tui color themes — Gentle Mist Blue (雾蓝) family, plus the Claude
3
- * Code orange adaptation.
2
+ * dsh-tui color themes — Gentle Mist Blue (雾蓝), Sakura Pink (樱), and the
3
+ * Claude Code brand adaptation.
4
4
  *
5
- * Two truecolor palettes share one identity: mist blues carry brand, focus,
6
- * and interaction; body text stays neutral. `light` uses white panel surfaces
7
- * (#FFFFFF) and ink text (#343945) for light terminals; `dark` is its
8
- * dark-terminal adaptation (warm off-white text, accent-soft blues).
9
- * `dark-ansi` is the 16-color fallback for terminals without truecolor.
5
+ * Gentle Mist Blue (雾蓝) is the default family. Two truecolor palettes share
6
+ * one identity: mist blues carry brand, focus, and interaction; body text
7
+ * stays neutral. `light` uses white panel surfaces (#FFFFFF) and ink text
8
+ * (#343945) for light terminals; `dark` is its dark-terminal adaptation (warm
9
+ * off-white text, accent-soft blues). `dark-ansi` is the 16-color fallback for
10
+ * terminals without truecolor.
11
+ *
12
+ * Sakura Pink (樱) is the optional second family. Sakura pink carries brand,
13
+ * focus and interaction, and the surfaces stay warm so the palette reads soft
14
+ * rather than neon: `pink-day` for light terminals, `pink-night` for dark
15
+ * ones, `pink-ansi` as the 16-color fallback. The three keep the same role
16
+ * split as the mist family, so switching families changes hue, not the
17
+ * contrast structure every component relies on. `mascotBody` has no upstream
18
+ * consumer, so all three keep the mist family's orange rather than a pink that
19
+ * never renders.
10
20
  *
11
21
  * The active palette is chosen at startup by querying the terminal background
12
22
  * (OSC 11) — see ThemeProvider.
@@ -22,7 +32,8 @@
22
32
  * from the terminal background detected via OSC 11 (which tracks the system
23
33
  * theme in terminals that follow it). ThemeProvider re-runs detection every
24
34
  * time `auto` is selected and pushes the result through setAutoThemeBase(),
25
- * so getTheme('auto') always serves the currently detected palette.
35
+ * so getTheme('auto') always serves the currently detected palette. `auto`
36
+ * spans the mist family only; the sakura family is selected explicitly.
26
37
  */
27
38
  const RETIRED_THEME_KEYS = [
28
39
  "briefLabelClaude",
@@ -76,8 +87,25 @@ export function normalizeThemeKey(value) {
76
87
  export function isThemeColorKey(value) {
77
88
  return typeof value === 'string' && normalizeThemeKey(value) !== undefined;
78
89
  }
79
- /** The built-in theme names, in display order. */
80
- export const THEME_NAMES = ['dark', 'dark-ansi', 'light', 'claude-dark', 'claude-paper', 'codex-lavender', 'codex-paper'];
90
+ /**
91
+ * The built-in theme names, in display order. The sakura family repeats the
92
+ * mist family's own ordering (dark, ansi, light) so the picker reads as two
93
+ * parallel groups rather than an appended list; the brand pairs (claude,
94
+ * codex) land last — they are served as brand defaults, not picked as a
95
+ * family.
96
+ */
97
+ export const THEME_NAMES = [
98
+ 'dark',
99
+ 'dark-ansi',
100
+ 'light',
101
+ 'pink-night',
102
+ 'pink-ansi',
103
+ 'pink-day',
104
+ 'claude-dark',
105
+ 'claude-paper',
106
+ 'codex-lavender',
107
+ 'codex-paper',
108
+ ];
81
109
  /**
82
110
  * Whether a name is a built-in palette (THEME_NAMES membership, never the base
83
111
  * roles a theme file may overlay).
@@ -199,8 +227,8 @@ const darkTheme = {
199
227
  cursor: '',
200
228
  mascotBody: rgb('#D98A63'), // Warm mascot orange
201
229
  inputBackground: rgb('#000000'),
202
- userMessageBackground: '', // user turn: no fill, gold bold text only (Kimi style)
203
- userMessageBackgroundHover: rgb('#3B5BDB'), // hover/expand: blue block with gold text
230
+ userMessageBackground: '', // user turn: no fill, bold tinted text only (Kimi style)
231
+ userMessageBackgroundHover: rgb('#3B5BDB'), // hover/expand: blue block with tinted text
204
232
  messageActionsBackground: rgb('#2E333D'),
205
233
  selectionBg: rgb('#3B4A66'), // Mist-blue tint on dark
206
234
  bashMessageBackgroundColor: rgb('#2C3038'),
@@ -209,7 +237,8 @@ const darkTheme = {
209
237
  rate_limit_empty: rgb('#3C414B'),
210
238
  fastMode: rgb('#E09A58'),
211
239
  fastModeShimmer: rgb('#EAB478'),
212
- userPromptLabel: rgb('#FFDF80'),
240
+ // 用户消息披 Claude 档陶土红(跨内核轮换:每家内核的用户消息用另一家的招牌色)
241
+ userPromptLabel: rgb('#D77757'),
213
242
  subagentBullet: rgb('#D194AE'),
214
243
  subagentDescription: rgb('#E8E6E0'),
215
244
  subagentModel: rgb('#8D95A6'),
@@ -270,7 +299,8 @@ const claudeDarkTheme = {
270
299
  inactive: rgb('#B8B2A8'),
271
300
  inactiveShimmer: rgb('#D5CFC5'),
272
301
  subtle: rgb('#817C74'),
273
- userPromptLabel: rgb('#D77757'),
302
+ // 用户消息披 DeepSeek 档雾蓝(跨内核轮换,见 darkTheme.userPromptLabel)
303
+ userPromptLabel: rgb('#7DA1DE'),
274
304
  fastMode: rgb('#D77757'),
275
305
  fastModeShimmer: rgb('#E68A69'),
276
306
  chromeYellow: rgb('#DFA25B'),
@@ -377,7 +407,7 @@ const lightTheme = {
377
407
  cursor: '',
378
408
  mascotBody: rgb('#D98A63'), // Warm mascot orange
379
409
  inputBackground: rgb('#F6F3ED'),
380
- userMessageBackground: '', // user turn: no fill in light mode, gold text only
410
+ userMessageBackground: '', // user turn: no fill in light mode, tinted text only
381
411
  userMessageBackgroundHover: rgb('#DCE4FB'), // subtle blue tint on hover/expand
382
412
  messageActionsBackground: rgb('#E4D9E5'),
383
413
  selectionBg: rgb('#D5DEF2'), // Mist-blue tint on warm white
@@ -387,7 +417,8 @@ const lightTheme = {
387
417
  rate_limit_empty: rgb('#DDD5C7'),
388
418
  fastMode: rgb('#D98E4A'),
389
419
  fastModeShimmer: rgb('#E2A465'),
390
- userPromptLabel: rgb('#A67600'),
420
+ // 用户消息披 Claude 档深化陶土红(浅底对应档,跨内核轮换)
421
+ userPromptLabel: rgb('#C96442'),
391
422
  subagentBullet: rgb('#C07A93'),
392
423
  subagentDescription: rgb('#343945'),
393
424
  subagentModel: rgb('#8991A0'),
@@ -447,7 +478,8 @@ const claudePaperTheme = {
447
478
  inactive: rgb('#67625B'),
448
479
  inactiveShimmer: rgb('#4E4943'),
449
480
  subtle: rgb('#969087'),
450
- userPromptLabel: rgb('#C96442'),
481
+ // 用户消息披 DeepSeek 档主蓝(浅底对应档,跨内核轮换)
482
+ userPromptLabel: rgb('#3F6CC4'),
451
483
  fastMode: rgb('#C96442'),
452
484
  fastModeShimmer: rgb('#B85738'),
453
485
  chromeYellow: rgb('#B97929'),
@@ -539,7 +571,8 @@ const codexLavenderTheme = {
539
571
  inactive: rgb('#B8B8C4'),
540
572
  inactiveShimmer: rgb('#D5D5DE'),
541
573
  subtle: rgb('#7D7D8A'),
542
- userPromptLabel: rgb('#A69BE8'),
574
+ // 用户消息披 DeepSeek 档亮金(跨内核轮换:Codex 用户消息用旧 dsh 金)
575
+ userPromptLabel: rgb('#FFDF80'),
543
576
  fastMode: rgb('#A69BE8'),
544
577
  fastModeShimmer: rgb('#C5BFEE'),
545
578
  chromeYellow: rgb('#D8AE62'),
@@ -628,7 +661,8 @@ const codexPaperTheme = {
628
661
  inactive: rgb('#5F5F6C'),
629
662
  inactiveShimmer: rgb('#4E4E58'),
630
663
  subtle: rgb('#8D8D98'),
631
- userPromptLabel: rgb('#8A7ED9'),
664
+ // 用户消息披 DeepSeek 档深金(浅底对应档,跨内核轮换)
665
+ userPromptLabel: rgb('#A67600'),
632
666
  fastMode: rgb('#8A7ED9'),
633
667
  fastModeShimmer: rgb('#6B5CC8'),
634
668
  chromeYellow: rgb('#AF7B2E'),
@@ -754,7 +788,9 @@ const darkAnsiTheme = {
754
788
  rate_limit_empty: 'ansi:white',
755
789
  fastMode: 'ansi:redBright',
756
790
  fastModeShimmer: 'ansi:redBright',
757
- userPromptLabel: 'ansi:yellowBright',
791
+ // 陶土红的 16 色近似(DSH 用户消息跨内核轮换;与 error/fastMode 同用
792
+ // redBright,靠粗体和行首 ❯ 区分——ANSI 底盘没有更近的暖橙槽)
793
+ userPromptLabel: 'ansi:redBright',
758
794
  subagentBullet: 'ansi:magentaBright',
759
795
  subagentDescription: 'ansi:whiteBright',
760
796
  subagentModel: 'ansi:white',
@@ -764,6 +800,242 @@ const darkAnsiTheme = {
764
800
  subagentStatusCompleted: 'ansi:greenBright',
765
801
  subagentStatusFailed: 'ansi:redBright',
766
802
  };
803
+ /**
804
+ * Sakura Pink's context-bar ramp: the bloom deepens from plum to the pale petal
805
+ * tip. Night and day share the first four steps; `pink-day` steps only the tip
806
+ * back (see its `contextBarTools`).
807
+ */
808
+ const PINK_BAR_RAMP = {
809
+ contextBarSystem: rgb('#6E1B3C'), // plum
810
+ contextBarPrompt: rgb('#9B2C55'),
811
+ contextBarAssistant: rgb('#C24D78'),
812
+ contextBarThinking: rgb('#E879A0'),
813
+ contextBarTools: rgb('#F7B7CC'), // pale petal tip
814
+ };
815
+ /**
816
+ * Sakura Pink dark adaptation. Pinks come from the bloom (#F27BA6–#F8AFC6);
817
+ * neutrals are warm (derived from #F0E4E9/#2B1E25) so the palette reads soft
818
+ * rather than neon on a dark terminal. Role base: `dark`.
819
+ */
820
+ const pinkNightTheme = {
821
+ autoAccept: rgb('#B598D9'),
822
+ bashBorder: rgb('#E08CA8'),
823
+ accent: rgb('#F27BA6'),
824
+ toolNameMutate: rgb('#E5C07B'),
825
+ toolNameExec: rgb('#72C4CF'),
826
+ accentShimmer: rgb('#F8AFC6'),
827
+ activity: rgb('#F27BA6'),
828
+ activityShimmer: rgb('#F8AFC6'),
829
+ permission: rgb('#F2A0BF'),
830
+ permissionShimmer: rgb('#F8C1D6'),
831
+ planMode: rgb('#7FB596'),
832
+ ide: rgb('#E0709A'),
833
+ promptBorder: rgb('#6E4A58'),
834
+ promptBorderShimmer: rgb('#E08CA8'),
835
+ text: rgb('#F0E4E9'),
836
+ inverseText: rgb('#2B1E25'),
837
+ inactive: rgb('#A8929C'),
838
+ inactiveShimmer: rgb('#C4B0B9'),
839
+ subtle: rgb('#77646D'),
840
+ suggestion: rgb('#F2A0BF'),
841
+ remember: rgb('#F2A0BF'),
842
+ background: rgb('#D9648F'),
843
+ success: rgb('#8FC9A4'),
844
+ error: rgb('#E66A6A'),
845
+ warning: rgb('#E3B56C'),
846
+ merged: rgb('#B598D9'),
847
+ warningShimmer: rgb('#F0CB8E'),
848
+ diffAdded: rgb('#2E3A2F'),
849
+ diffRemoved: rgb('#402A31'),
850
+ diffAddedDimmed: rgb('#2F3630'),
851
+ diffRemovedDimmed: rgb('#392830'),
852
+ diffAddedWord: rgb('#5E9B72'),
853
+ diffRemovedWord: rgb('#C96B7B'),
854
+ toolCardBackground: rgb('#2E2229'),
855
+ toolCardBackgroundDim: rgb('#241A20'),
856
+ toolDotExec: rgb('#7FB596'),
857
+ toolDotRead: rgb('#7FB6C9'),
858
+ toolDotWrite: rgb('#C29BDF'),
859
+ toolDotWeb: rgb('#F27BA6'),
860
+ toolDotTask: rgb('#E0A0AE'),
861
+ syntaxKeyword: rgb('#E08CA8'),
862
+ syntaxString: rgb('#8FC9A4'),
863
+ syntaxComment: rgb('#857481'),
864
+ syntaxNumber: rgb('#E3B56C'),
865
+ syntaxFunction: rgb('#7FC4CE'),
866
+ syntaxType: rgb('#C29BDF'),
867
+ syntaxVariable: rgb('#DDD2D8'),
868
+ syntaxOperator: rgb('#A8929C'),
869
+ syntaxPunctuation: rgb('#8A7680'),
870
+ syntaxConstant: rgb('#E0709A'),
871
+ professionalBlue: rgb('#E08CA8'),
872
+ chromeYellow: rgb('#E3B56C'),
873
+ mascotBody: rgb('#D98A63'),
874
+ inputBackground: rgb('#000000'),
875
+ userMessageBackground: '',
876
+ userMessageBackgroundHover: rgb('#7E3A55'),
877
+ messageActionsBackground: rgb('#362A31'),
878
+ selectionBg: rgb('#55303E'),
879
+ bashMessageBackgroundColor: rgb('#2E242A'),
880
+ memoryBackgroundColor: rgb('#322630'),
881
+ rate_limit_fill: rgb('#F27BA6'),
882
+ rate_limit_empty: rgb('#43333B'),
883
+ fastMode: rgb('#E09A58'),
884
+ fastModeShimmer: rgb('#ECB478'),
885
+ userPromptLabel: rgb('#FFDF80'),
886
+ subagentBullet: rgb('#E0A0BE'),
887
+ subagentDescription: rgb('#F0E4E9'),
888
+ subagentModel: rgb('#A8929C'),
889
+ subagentElapsed: rgb('#A8929C'),
890
+ subagentToolName: rgb('#F27BA6'),
891
+ subagentStatusRunning: rgb('#F27BA6'),
892
+ subagentStatusCompleted: rgb('#8FC9A4'),
893
+ subagentStatusFailed: rgb('#E66A6A'),
894
+ // The family's bar ramp and crest. `ignition` carries the brand pink rather
895
+ // than the neon #FF2D6F it started at — the crest reads as a glow, and a
896
+ // fully saturated magenta made it the loudest thing on a dark terminal (the
897
+ // softer crest also clears more contrast on the band: 6.56:1 against
898
+ // `ignitionDim`, up from 4.71:1).
899
+ ...PINK_BAR_RAMP,
900
+ ignition: rgb('#F27BA6'),
901
+ ignitionDim: rgb('#241A20'),
902
+ cursor: '',
903
+ };
904
+ /**
905
+ * Sakura Pink light adaptation. Warm off-white panels (#FBF3F0) under ink text
906
+ * (#3D2B33), with the same bloom pinks carrying brand and focus. Role base:
907
+ * `light`.
908
+ */
909
+ const pinkDayTheme = {
910
+ autoAccept: rgb('#8F6BAC'),
911
+ bashBorder: rgb('#C05C7E'),
912
+ accent: rgb('#DE6E96'),
913
+ toolNameMutate: rgb('#8A6A00'),
914
+ toolNameExec: rgb('#0E7A8A'),
915
+ accentShimmer: rgb('#F2A0BF'),
916
+ activity: rgb('#E879A0'),
917
+ activityShimmer: rgb('#F2A0BF'),
918
+ permission: rgb('#D5517F'),
919
+ permissionShimmer: rgb('#E879A0'),
920
+ planMode: rgb('#43916B'),
921
+ ide: rgb('#C43D6C'),
922
+ promptBorder: rgb('#EFC4D4'),
923
+ promptBorderShimmer: rgb('#D988A9'),
924
+ text: rgb('#3D2B33'),
925
+ inverseText: rgb('#FBF3F0'),
926
+ inactive: rgb('#9A8790'),
927
+ inactiveShimmer: rgb('#9E6E82'),
928
+ subtle: rgb('#B3A3AC'),
929
+ suggestion: rgb('#D5517F'),
930
+ remember: rgb('#B03A63'),
931
+ background: rgb('#D5517F'),
932
+ success: rgb('#3E9468'),
933
+ error: rgb('#C24D5C'),
934
+ warning: rgb('#B97F2E'),
935
+ merged: rgb('#8F6BAC'),
936
+ warningShimmer: rgb('#CE9840'),
937
+ diffAdded: rgb('#DFF0E2'),
938
+ diffRemoved: rgb('#F7E0E4'),
939
+ diffAddedDimmed: rgb('#E8F3EA'),
940
+ diffRemovedDimmed: rgb('#F9E9EC'),
941
+ diffAddedWord: rgb('#8CCFA4'),
942
+ diffRemovedWord: rgb('#E6A3B0'),
943
+ toolCardBackground: rgb('#F9ECF1'),
944
+ toolCardBackgroundDim: rgb('#F2E0E9'),
945
+ toolDotExec: rgb('#4E7A5A'),
946
+ toolDotRead: rgb('#3F7E8F'),
947
+ toolDotWrite: rgb('#7A5CA8'),
948
+ toolDotWeb: rgb('#C24D78'),
949
+ toolDotTask: rgb('#B04A5A'),
950
+ syntaxKeyword: rgb('#C24470'),
951
+ syntaxString: rgb('#3F805F'),
952
+ syntaxComment: rgb('#8B7F88'),
953
+ syntaxNumber: rgb('#A6602B'),
954
+ syntaxFunction: rgb('#2E7E8A'),
955
+ syntaxType: rgb('#7E55A4'),
956
+ syntaxVariable: rgb('#3D2B33'),
957
+ syntaxOperator: rgb('#5F5260'),
958
+ syntaxPunctuation: rgb('#A3959E'),
959
+ syntaxConstant: rgb('#A84472'),
960
+ professionalBlue: rgb('#CE5A80'),
961
+ chromeYellow: rgb('#C99A3F'),
962
+ mascotBody: rgb('#D98A63'),
963
+ inputBackground: rgb('#FBF3F0'),
964
+ userMessageBackground: '',
965
+ userMessageBackgroundHover: rgb('#F0DCE6'),
966
+ messageActionsBackground: rgb('#F3E4EB'),
967
+ selectionBg: rgb('#F3D7E0'),
968
+ bashMessageBackgroundColor: rgb('#F5EAE0'),
969
+ memoryBackgroundColor: rgb('#F3E4EB'),
970
+ rate_limit_fill: rgb('#D988A9'),
971
+ rate_limit_empty: rgb('#E8DAD2'),
972
+ fastMode: rgb('#D98E4A'),
973
+ fastModeShimmer: rgb('#E2A465'),
974
+ userPromptLabel: rgb('#A67600'),
975
+ subagentBullet: rgb('#C05C7E'),
976
+ subagentDescription: rgb('#3D2B33'),
977
+ subagentModel: rgb('#9A8790'),
978
+ subagentElapsed: rgb('#9A8790'),
979
+ subagentToolName: rgb('#D5517F'),
980
+ subagentStatusRunning: rgb('#D5517F'),
981
+ subagentStatusCompleted: rgb('#3E9468'),
982
+ subagentStatusFailed: rgb('#C24D5C'),
983
+ // The night preset's ramp, with only the pale tip stepped back: the night's
984
+ // #F7B7CC sits at 1.36:1 against the #E8E8E8 free fill, the day tip #EE8FB0
985
+ // at 1.86:1. The crest cannot follow the night's either — #F27BA6 is 2.14:1
986
+ // on this palette's blush, so the wave deepens for the same reason the
987
+ // built-in light pair does. `ignitionDim` is the near-white blush the wave
988
+ // rides on, mirroring the mist light preset's #F0F0F2.
989
+ ...PINK_BAR_RAMP,
990
+ contextBarTools: rgb('#EE8FB0'),
991
+ ignition: rgb('#B03A63'),
992
+ ignitionDim: rgb('#FFE3EC'),
993
+ cursor: '',
994
+ };
995
+ /**
996
+ * Sakura Pink in the 16 standard ANSI colors, for terminals without truecolor.
997
+ * Magenta carries brand, matching the truecolor variants. Role base:
998
+ * `dark-ansi`, deliberately: the 16-color space has no pink slots, so 56 of
999
+ * the 81 keys are the base's own values and only the ones listed here shift.
1000
+ * `cursor` stays empty like every other built-in (the inverse-video caret).
1001
+ */
1002
+ const pinkAnsiTheme = {
1003
+ ...darkAnsiTheme,
1004
+ // Brand, focus and activity: the magenta pair replaces the base's blue pair.
1005
+ accent: 'ansi:magentaBright',
1006
+ accentShimmer: 'ansi:magentaBright',
1007
+ activity: 'ansi:magentaBright',
1008
+ activityShimmer: 'ansi:magentaBright',
1009
+ permission: 'ansi:magentaBright',
1010
+ permissionShimmer: 'ansi:magentaBright',
1011
+ ide: 'ansi:magenta',
1012
+ suggestion: 'ansi:magentaBright',
1013
+ remember: 'ansi:magentaBright',
1014
+ background: 'ansi:magentaBright',
1015
+ toolDotWeb: 'ansi:magenta',
1016
+ syntaxKeyword: 'ansi:magentaBright',
1017
+ // A real override, not a leftover: the base's `syntaxType` is magenta too
1018
+ // (like `syntaxKeyword` here), so deleting this line would collide the two.
1019
+ syntaxType: 'ansi:blueBright',
1020
+ professionalBlue: 'ansi:magentaBright',
1021
+ // Tinted surfaces.
1022
+ userMessageBackgroundHover: 'ansi:magenta',
1023
+ selectionBg: 'ansi:magenta',
1024
+ rate_limit_fill: 'ansi:magentaBright',
1025
+ subagentStatusRunning: 'ansi:magentaBright',
1026
+ // The 16-color bar ladder: the base's dark anchor, the two magentas that
1027
+ // carry the sakura brand, then white/whiteBright as the pale tip (the
1028
+ // 16-color space has no paler pink). The ignition wave is drawn column by
1029
+ // column in truecolor, so its pair stays hex — an `ansi:*` value there falls
1030
+ // back to the blue pair instead of rendering — and its crest matches the
1031
+ // truecolor night preset rather than the neon #FF2D6F.
1032
+ contextBarPrompt: 'ansi:magenta',
1033
+ contextBarAssistant: 'ansi:magentaBright',
1034
+ contextBarThinking: 'ansi:white',
1035
+ contextBarTools: 'ansi:whiteBright',
1036
+ ignition: rgb('#F27BA6'),
1037
+ ignitionDim: rgb('#241A20'),
1038
+ };
767
1039
  const normalizedThemeCache = new WeakMap();
768
1040
  /** Include every own value so a mutable legacy resolver cannot serve stale data. */
769
1041
  function themeObjectSignature(raw) {
@@ -824,7 +1096,8 @@ export function getTheme(themeName) {
824
1096
  case 'dark-ansi':
825
1097
  return darkAnsiTheme;
826
1098
  // Built-in bases must resolve without touching the custom-theme resolver
827
- // (same reasoning as `dark` above).
1099
+ // (same reasoning as `dark` above); the sakura family and the brand pairs
1100
+ // follow the same rule.
828
1101
  case 'claude-dark':
829
1102
  return claudeDarkTheme;
830
1103
  case 'claude-paper':
@@ -833,6 +1106,12 @@ export function getTheme(themeName) {
833
1106
  return codexLavenderTheme;
834
1107
  case 'codex-paper':
835
1108
  return codexPaperTheme;
1109
+ case 'pink-night':
1110
+ return pinkNightTheme;
1111
+ case 'pink-ansi':
1112
+ return pinkAnsiTheme;
1113
+ case 'pink-day':
1114
+ return pinkDayTheme;
836
1115
  case AUTO_THEME_NAME:
837
1116
  return autoBase === 'light' ? lightTheme : darkTheme;
838
1117
  default: {
@@ -869,9 +1148,17 @@ export function isLightThemeActive(themeName) {
869
1148
  // Built-ins answer by palette identity, never by luminance. An ANSI palette
870
1149
  // has no parseable ink at all, and a future truecolor tweak must not silently
871
1150
  // flip a whole family's contrast direction.
872
- if (theme === lightTheme || theme === claudePaperTheme || theme === codexPaperTheme)
1151
+ if (theme === lightTheme ||
1152
+ theme === pinkDayTheme ||
1153
+ theme === claudePaperTheme ||
1154
+ theme === codexPaperTheme)
873
1155
  return true;
874
- if (theme === darkTheme || theme === darkAnsiTheme || theme === claudeDarkTheme || theme === codexLavenderTheme)
1156
+ if (theme === darkTheme ||
1157
+ theme === darkAnsiTheme ||
1158
+ theme === pinkNightTheme ||
1159
+ theme === pinkAnsiTheme ||
1160
+ theme === claudeDarkTheme ||
1161
+ theme === codexLavenderTheme)
875
1162
  return false;
876
1163
  // 自定义或运行时主题:按文本墨色亮度判定——浅底配深墨(ink)、深底配亮墨。
877
1164
  // 调色板的 background 字段是徽标填充色而非终端背景,不能作判据。墨色走
@@ -1 +1 @@
1
- {"version":3,"file":"themeCatalog.d.ts","sourceRoot":"","sources":["../../src/themeCatalog.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAKL,KAAK,KAAK,EACX,MAAM,YAAY,CAAA;AACnB,OAAO,EAIL,KAAK,SAAS,EACf,MAAM,kBAAkB,CAAA;AACzB,OAAO,KAAK,EAAE,YAAY,EAAwB,MAAM,yBAAyB,CAAA;AAEjF,mCAAmC;AACnC,MAAM,MAAM,kBAAkB,GAAG,MAAM,GAAG,SAAS,GAAG,QAAQ,GAAG,SAAS,CAAA;AAE1E,2DAA2D;AAC3D,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAA;IAC5B,QAAQ,CAAC,MAAM,EAAE,kBAAkB,CAAA;IACnC,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAA;IACrB,QAAQ,CAAC,IAAI,CAAC,EAAE,SAAS,CAAA;IACzB,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAA;CACvB;AAwGD,0EAA0E;AAC1E,wBAAgB,gBAAgB,CAAC,IAAI,CAAC,EAAE,YAAY,GAAG,SAAS,iBAAiB,EAAE,CAMlF;AAED,iDAAiD;AACjD,eAAO,MAAM,UAAU,yBAAmB,CAAA;AAU1C,8EAA8E;AAC9E,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,YAAY,GAAG,iBAAiB,GAAG,SAAS,CA6BlG;AAED,sEAAsE;AACtE,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,YAAY,GAAG,KAAK,GAAG,SAAS,CAExF;AAED,kEAAkE;AAClE,eAAO,MAAM,YAAY,0BAAoB,CAAA;AAE7C,2EAA2E;AAC3E,wBAAgB,UAAU,CAAC,IAAI,CAAC,EAAE,YAAY,GAAG,SAAS,MAAM,EAAE,CAEjE;AAED,iEAAiE;AACjE,eAAO,MAAM,cAAc,mBAAa,CAAA"}
1
+ {"version":3,"file":"themeCatalog.d.ts","sourceRoot":"","sources":["../../src/themeCatalog.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAKL,KAAK,KAAK,EACX,MAAM,YAAY,CAAA;AACnB,OAAO,EAIL,KAAK,SAAS,EACf,MAAM,kBAAkB,CAAA;AACzB,OAAO,KAAK,EAAE,YAAY,EAAwB,MAAM,yBAAyB,CAAA;AAEjF,mCAAmC;AACnC,MAAM,MAAM,kBAAkB,GAAG,MAAM,GAAG,SAAS,GAAG,QAAQ,GAAG,SAAS,CAAA;AAE1E,2DAA2D;AAC3D,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;IACrB,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAA;IAC5B,QAAQ,CAAC,MAAM,EAAE,kBAAkB,CAAA;IACnC,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAA;IACrB,QAAQ,CAAC,IAAI,CAAC,EAAE,SAAS,CAAA;IACzB,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAA;CACvB;AA4HD,0EAA0E;AAC1E,wBAAgB,gBAAgB,CAAC,IAAI,CAAC,EAAE,YAAY,GAAG,SAAS,iBAAiB,EAAE,CAMlF;AAED,iDAAiD;AACjD,eAAO,MAAM,UAAU,yBAAmB,CAAA;AAU1C,8EAA8E;AAC9E,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,YAAY,GAAG,iBAAiB,GAAG,SAAS,CA6BlG;AAED,sEAAsE;AACtE,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,YAAY,GAAG,KAAK,GAAG,SAAS,CAExF;AAED,kEAAkE;AAClE,eAAO,MAAM,YAAY,0BAAoB,CAAA;AAE7C,2EAA2E;AAC3E,wBAAgB,UAAU,CAAC,IAAI,CAAC,EAAE,YAAY,GAAG,SAAS,MAAM,EAAE,CAEjE;AAED,iEAAiE;AACjE,eAAO,MAAM,cAAc,mBAAa,CAAA"}
@@ -20,10 +20,29 @@ function entry(name, displayName, source, theme, base, file) {
20
20
  ...(file === undefined ? {} : { file }),
21
21
  });
22
22
  }
23
+ /**
24
+ * The role each built-in plays as a `base`. The mist and sakura rows play one
25
+ * of the three classic roles (their own names are not bases); the brand pairs
26
+ * play the dark/light role of their brand family — the brand adaptation of
27
+ * `dark`/`light` (their own names are bases too, see THEME_BASE_NAMES).
28
+ * Total over THEME_NAMES, so a new built-in must decide a role to compile.
29
+ */
30
+ const BUILT_IN_BASE = {
31
+ dark: 'dark',
32
+ 'dark-ansi': 'dark-ansi',
33
+ light: 'light',
34
+ 'pink-night': 'dark',
35
+ 'pink-ansi': 'dark-ansi',
36
+ 'pink-day': 'light',
37
+ 'claude-dark': 'dark',
38
+ 'claude-paper': 'light',
39
+ 'codex-lavender': 'dark',
40
+ 'codex-paper': 'light',
41
+ };
23
42
  function builtInEntries() {
24
43
  return [
25
44
  entry(AUTO_THEME_NAME, AUTO_THEME_NAME, 'auto', getTheme(AUTO_THEME_NAME)),
26
- ...THEME_NAMES.map(name => entry(name, name, 'builtin', getTheme(name), name)),
45
+ ...THEME_NAMES.map(name => entry(name, name, 'builtin', getTheme(name), BUILT_IN_BASE[name])),
27
46
  ];
28
47
  }
29
48
  function staticEntries(specs, seen) {
@@ -118,7 +137,7 @@ export function resolveThemeEntry(name, host) {
118
137
  return entry(name, name, 'auto', getTheme(AUTO_THEME_NAME));
119
138
  const builtIn = THEME_NAMES.find(candidate => candidate === name);
120
139
  if (builtIn !== undefined)
121
- return entry(builtIn, builtIn, 'builtin', getTheme(builtIn), builtIn);
140
+ return entry(builtIn, builtIn, 'builtin', getTheme(builtIn), BUILT_IN_BASE[builtIn]);
122
141
  const spec = findStaticSpec(name);
123
142
  if (spec !== undefined)
124
143
  return entry(spec.name, spec.displayName, 'static', buildTheme(spec), spec.base, spec.file);
package/lib/types/tips.js CHANGED
@@ -315,8 +315,8 @@ export const TIPS = [
315
315
  {
316
316
  id: 'cmd-model',
317
317
  group: 'commands',
318
- zh: '/model 换模型会 fork 续聊,历史不丢',
319
- en: '/model forks to continue: history is preserved',
318
+ zh: '/model 同会话换模型,历史不丢',
319
+ en: '/model switches in place: session and history are preserved',
320
320
  },
321
321
  {
322
322
  id: 'cmd-effort',
@@ -405,8 +405,8 @@ export const TIPS = [
405
405
  {
406
406
  id: 'cmd-plugins',
407
407
  group: 'commands',
408
- zh: '/plugins check <清单路径> 诊断插件兼容性',
409
- en: '/plugins check <manifest> diagnoses plugin compatibility',
408
+ zh: '/plugin check <清单路径> 诊断插件兼容性',
409
+ en: '/plugin check <manifest> diagnoses plugin compatibility',
410
410
  },
411
411
  {
412
412
  id: 'cmd-update',
@@ -0,0 +1,56 @@
1
+ export interface TuiSettingsDocument {
2
+ readonly version: 1;
3
+ /** The sparse user layer: only what the user set. */
4
+ readonly values: Readonly<Record<string, unknown>>;
5
+ /** The one-time import from the DSH profile patch (absent = never ran). */
6
+ readonly imported?: {
7
+ readonly from: string;
8
+ readonly at: number;
9
+ };
10
+ }
11
+ export declare const TUI_SETTINGS_FILE: string;
12
+ /** The document, or undefined when there is none yet. A broken file reads as
13
+ * an empty layer (and is not re-imported over). Never throws. */
14
+ export declare function readTuiSettings(file?: string): TuiSettingsDocument | undefined;
15
+ /**
16
+ * Before the first write over a document `readTuiSettings` could not parse,
17
+ * keep its original bytes beside it as `<file>.corrupt-<timestamp>` (mode
18
+ * 0600). Returns the backup path; throws when the bytes cannot be preserved
19
+ * — the caller must then not replace the file.
20
+ */
21
+ export declare function backupUnreadableTuiSettings(file?: string): string;
22
+ /** Write the document atomically; throws when it cannot be written. */
23
+ export declare function writeTuiSettings(document: TuiSettingsDocument, file?: string): void;
24
+ /**
25
+ * Write the document only when there is none yet; false when another process
26
+ * created it first. The complete file appears at once (a hard link of the
27
+ * temporary, which fails on an existing name); a filesystem without hard links
28
+ * falls back to an exclusive create, which never replaces a document either.
29
+ * Throws when it cannot be written.
30
+ */
31
+ export declare function createTuiSettings(document: TuiSettingsDocument, file?: string): boolean;
32
+ /** The DSH profile's own patch layer, where DSH persisted the `/settings` layer. */
33
+ export declare function profilePatchPath(profile: string): string;
34
+ /**
35
+ * The `dsh-tui` row's `config` in a DSH profile patch, restricted to `keys`
36
+ * (the editable fields; deployment fields such as the provider route stay in
37
+ * the profile). Undefined when the file or the row is missing or unreadable.
38
+ * `!!js` expressions are not evaluated: such a field is skipped (a top-level
39
+ * one's source is recorded in `expressions`, when given).
40
+ */
41
+ export declare function readProfileTuiSettings(path: string, keys: readonly string[], expressions?: Map<string, string>): Record<string, unknown> | undefined;
42
+ /**
43
+ * The `ns` section of the `/settings` user layer older DSH hosts kept in
44
+ * `<DSH home>/settings.yaml` (dsh-settings-file), restricted to `keys`. A DSH
45
+ * that has since moved the document into the profile patch leaves it as
46
+ * `settings.yaml.imported`; `pending` tells the two apart (a pending document
47
+ * still overrides the patch, an imported one is already beneath it).
48
+ */
49
+ export declare function readLegacyTuiSettings(ns: string, keys: readonly string[]): {
50
+ readonly from: string;
51
+ readonly pending: boolean;
52
+ readonly values: Record<string, unknown>;
53
+ } | undefined;
54
+ /** `over` laid on `under`: nested records merge, anything else replaces. */
55
+ export declare function mergeSettingsLayers(under: Readonly<Record<string, unknown>>, over: Readonly<Record<string, unknown>>): Record<string, unknown>;
56
+ //# sourceMappingURL=tuiSettingsFile.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tuiSettingsFile.d.ts","sourceRoot":"","sources":["../../src/tuiSettingsFile.ts"],"names":[],"mappings":"AAgBA,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,OAAO,EAAE,CAAC,CAAA;IACnB,qDAAqD;IACrD,QAAQ,CAAC,MAAM,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAA;IAClD,2EAA2E;IAC3E,QAAQ,CAAC,QAAQ,CAAC,EAAE;QAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAA;KAAE,CAAA;CACnE;AAED,eAAO,MAAM,iBAAiB,QAAkC,CAAA;AAEhE;kEACkE;AAClE,wBAAgB,eAAe,CAAC,IAAI,GAAE,MAA0B,GAAG,mBAAmB,GAAG,SAAS,CAiBjG;AAED;;;;;GAKG;AACH,wBAAgB,2BAA2B,CAAC,IAAI,GAAE,MAA0B,GAAG,MAAM,CAIpF;AAID,uEAAuE;AACvE,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,mBAAmB,EAAE,IAAI,GAAE,MAA0B,GAAG,IAAI,CAUtG;AAED;;;;;;GAMG;AACH,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,mBAAmB,EAAE,IAAI,GAAE,MAA0B,GAAG,OAAO,CAsB1G;AAED,oFAAoF;AACpF,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAExD;AAED;;;;;;GAMG;AACH,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,MAAM,EAAE,EAAE,WAAW,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,CAqBpJ;AAED;;;;;;GAMG;AACH,wBAAgB,qBAAqB,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,MAAM,EAAE,GAAG;IAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CAAE,GAAG,SAAS,CAerL;AAED,4EAA4E;AAC5E,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,EAAE,IAAI,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAO9I"}