@chatcode/chatcode-cli 3.0.3 → 3.0.4-rc.1

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 (174) hide show
  1. package/README.i18n.yaml +10 -10
  2. package/README.md +16 -1
  3. package/README.zh.md +16 -1
  4. package/lib/bin.js +62 -11
  5. package/lib/{command-errors-CBJRI2gy.js → command-errors-BkCHTQHj.js} +12 -12
  6. package/lib/{command-trees-Dvq4C7a4.js → command-trees-5HFyC5sI.js} +2 -2
  7. package/lib/{component-identity-DPdJglJO.js → component-identity-De91VHwW.js} +3 -3
  8. package/lib/{dist-w_sIm4VD.js → dist-CsDWUvQ4.js} +231 -231
  9. package/lib/{dump-config-CauO75nE.js → dump-config-BcH-VYuv.js} +5 -5
  10. package/lib/dump-config-CyopmD85.js +2 -0
  11. package/lib/{dump-config-schema-CObLWWaW.js → dump-config-schema-DM0fb6Ns.js} +2 -2
  12. package/lib/{extension-events-Be9LWvHD.js → extension-events-CdYCRP0o.js} +26 -26
  13. package/lib/{frames-7PAg0Q9b.js → frames-DOX-Jgk8.js} +4 -4
  14. package/lib/headless-compat.js +2 -2
  15. package/lib/{host-access-DeCjoRQP.js → host-access-Bk4xps5E.js} +1 -1
  16. package/lib/{keymap-CRUxM_qn.js → keymap-CJ1kvLR2.js} +17 -16
  17. package/lib/{plugin-CDFSDE_y.js → plugin-XR7ncbnW.js} +2928 -2240
  18. package/lib/{plugin-Cn-hyYY8.js → plugin-eJjD6r12.js} +1 -1
  19. package/lib/{profile-boot-SJGbpLgN.js → profile-boot-BNQry1NM.js} +97 -14
  20. package/lib/profile-boot.js +2 -2
  21. package/lib/{scenes-D6jV1EEi.js → scenes-CAmWncZD.js} +3 -3
  22. package/lib/{settings-sections-DJQRNBo9.js → settings-sections-CakcvBv9.js} +7 -3
  23. package/lib/statusBarSettings-BPPS_Usm.js +382 -0
  24. package/lib/{supports-color-CcW-FGjr.js → supports-color-DyChQwlI.js} +2 -2
  25. package/lib/{themes-BCly4_y9.js → themes-OjcUpZzw.js} +13 -13
  26. package/lib/tui-compat-command-trees.js +1 -1
  27. package/lib/tui-compat-extensions.js +3 -3
  28. package/lib/tui-compat-plugin-host.js +5 -5
  29. package/lib/tui-compat-scenes.js +1 -1
  30. package/lib/tui-compat-settings-sections.js +1 -1
  31. package/lib/tui-compat-working-activity.js +4 -4
  32. package/lib/tui-compat-workspaces.js +1 -1
  33. package/lib/tui-compat.js +9 -26
  34. package/lib/types/args.d.ts +2 -0
  35. package/lib/types/permission-bypass.d.ts +16 -0
  36. package/lib/types/profile-boot.d.ts +12 -0
  37. package/lib/types/tui-compat.d.ts +4 -0
  38. package/lib/types/web-browser.d.ts +6 -0
  39. package/lib/types/web-instance.d.ts +42 -0
  40. package/lib/web-browser-Vcgfdsv_.js +46 -0
  41. package/lib/web-instance-B0jec7cq.js +2 -0
  42. package/lib/web-instance-DbP7IHPv.js +280 -0
  43. package/lib/{workspaces-Bb3kCAFb.js → workspaces-XY7UdfXp.js} +2 -2
  44. package/package.json +34 -32
  45. package/runtime/manifest.json +4 -2
  46. package/runtime/node_modules/@deepseek-ai/dsh-agent-default-model/lib/index.js +34 -4
  47. package/runtime/node_modules/@deepseek-ai/dsh-agent-default-model/lib/types/index.d.ts +9 -0
  48. package/runtime/node_modules/@deepseek-ai/dsh-agent-preset/skills/cordis-composition-reference/references/packages.md +2 -1
  49. package/runtime/node_modules/@deepseek-ai/dsh-api-gateway/lib/client.js +2 -0
  50. package/runtime/node_modules/@deepseek-ai/dsh-api-gateway/lib/types/client/remote-stream.js +4 -0
  51. package/runtime/node_modules/@deepseek-ai/dsh-api-remotes/lib/client.js +39 -0
  52. package/runtime/node_modules/@deepseek-ai/dsh-api-session-controller/lib/index.js +6 -1
  53. package/runtime/node_modules/@deepseek-ai/dsh-api-session-controller/lib/typert.host.js +10 -3
  54. package/runtime/node_modules/@deepseek-ai/dsh-api-session-controller/lib/typert.remote-client.js +7 -0
  55. package/runtime/node_modules/@deepseek-ai/dsh-api-session-controller/lib/types/catalog.js +8 -1
  56. package/runtime/node_modules/@deepseek-ai/dsh-api-session-controller/lib/types/types.d.ts +10 -0
  57. package/runtime/node_modules/@deepseek-ai/dsh-api-settings-controller/lib/index.js +28 -1
  58. package/runtime/node_modules/@deepseek-ai/dsh-api-settings-controller/lib/typert.host.js +39 -0
  59. package/runtime/node_modules/@deepseek-ai/dsh-api-settings-controller/lib/typert.remote-client.d.ts +2 -0
  60. package/runtime/node_modules/@deepseek-ai/dsh-api-settings-controller/lib/typert.remote-client.js +32 -0
  61. package/runtime/node_modules/@deepseek-ai/dsh-api-settings-controller/lib/types/index.d.ts +8 -0
  62. package/runtime/node_modules/@deepseek-ai/dsh-api-settings-controller/lib/types/index.js +19 -1
  63. package/runtime/node_modules/@deepseek-ai/dsh-api-workspace-controller/lib/index.js +28 -0
  64. package/runtime/node_modules/@deepseek-ai/dsh-api-workspace-controller/lib/types/feed.js +17 -0
  65. package/runtime/node_modules/@deepseek-ai/dsh-app-boot/lib/index.js +67 -19
  66. package/runtime/node_modules/@deepseek-ai/dsh-app-boot/lib/types/index.d.ts +1 -1
  67. package/runtime/node_modules/@deepseek-ai/dsh-app-boot/lib/types/profile-context.d.ts +11 -1
  68. package/runtime/node_modules/@deepseek-ai/dsh-app-boot/lib/worker/profile-resolution-bootstrap.js +22 -3
  69. package/runtime/node_modules/@deepseek-ai/dsh-base/cordis.patch.yml +9 -3
  70. package/runtime/node_modules/@deepseek-ai/dsh-base/package.json +2 -1
  71. package/runtime/node_modules/@deepseek-ai/dsh-client-ui-chat/lib/client.js +3 -2
  72. package/runtime/node_modules/@deepseek-ai/dsh-client-ui-chat/lib/types/index.d.ts +2 -2
  73. package/runtime/node_modules/@deepseek-ai/dsh-client-ui-conversation/lib/client.js +1 -1
  74. package/runtime/node_modules/@deepseek-ai/dsh-client-ui-goal/lib/client.js +1 -1
  75. package/runtime/node_modules/@deepseek-ai/dsh-client-ui-model-selection/lib/client.js +60 -12
  76. package/runtime/node_modules/@deepseek-ai/dsh-client-ui-model-selection/lib/types/client/directory.d.ts +3 -1
  77. package/runtime/node_modules/@deepseek-ai/dsh-client-ui-model-selection/lib/types/client/locales.d.ts +6 -0
  78. package/runtime/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/markdown/CodeBlock.module.css +3 -5
  79. package/runtime/node_modules/@deepseek-ai/dsh-client-ui-primitives/lib/markdown/MarkdownText.module.css +23 -27
  80. package/runtime/node_modules/@deepseek-ai/dsh-client-ui-settings/lib/types/client/contract/slots.d.ts +3 -1
  81. package/runtime/node_modules/@deepseek-ai/dsh-client-ui-settings-account/lib/client.js +2 -2
  82. package/runtime/node_modules/@deepseek-ai/dsh-client-ui-settings-account/lib/types/index.d.ts +2 -2
  83. package/runtime/node_modules/@deepseek-ai/dsh-client-ui-settings-general/lib/client.js +8 -7
  84. package/runtime/node_modules/@deepseek-ai/dsh-client-ui-settings-general/lib/types/client/SettingsDocumentAction.d.ts +1 -1
  85. package/runtime/node_modules/@deepseek-ai/dsh-client-ui-settings-general/lib/types/client/settings-document-store.d.ts +2 -1
  86. package/runtime/node_modules/@deepseek-ai/dsh-client-ui-settings-models/lib/client.js +33 -12
  87. package/runtime/node_modules/@deepseek-ai/dsh-client-ui-settings-models/lib/types/client/locales.d.ts +2 -0
  88. package/runtime/node_modules/@deepseek-ai/dsh-client-ui-settings-plugin-inventory/lib/client.js +1 -1
  89. package/runtime/node_modules/@deepseek-ai/dsh-client-ui-sidebar/lib/client.js +1 -1
  90. package/runtime/node_modules/@deepseek-ai/dsh-client-ui-theme/lib/client.js +1 -1
  91. package/runtime/node_modules/@deepseek-ai/dsh-client-ui-workspace/lib/client.js +8 -1
  92. package/runtime/node_modules/@deepseek-ai/dsh-client-ui-workspace/lib/types/client/locales.d.ts +2 -0
  93. package/runtime/node_modules/@deepseek-ai/dsh-computer-use/lib/index.js +35 -0
  94. package/runtime/node_modules/@deepseek-ai/dsh-computer-use/lib/types/brand.d.ts +11 -0
  95. package/runtime/node_modules/@deepseek-ai/dsh-computer-use/lib/types/brand.js +10 -0
  96. package/runtime/node_modules/@deepseek-ai/dsh-computer-use/lib/types/index.d.ts +28 -0
  97. package/runtime/node_modules/@deepseek-ai/dsh-computer-use/lib/types/index.js +36 -0
  98. package/runtime/node_modules/@deepseek-ai/dsh-computer-use/package.json +42 -0
  99. package/runtime/node_modules/@deepseek-ai/dsh-config-editor/lib/index.js +102 -14
  100. package/runtime/node_modules/@deepseek-ai/dsh-config-editor/lib/types/index.d.ts +34 -4
  101. package/runtime/node_modules/@deepseek-ai/dsh-config-editor/package.json +1 -0
  102. package/runtime/node_modules/@deepseek-ai/dsh-host-webserver/lib/index.js +2 -1
  103. package/runtime/node_modules/@deepseek-ai/dsh-native-command/lib/index.js +21 -8
  104. package/runtime/node_modules/@deepseek-ai/dsh-native-command/lib/types/path-opener.d.ts +4 -6
  105. package/runtime/node_modules/@deepseek-ai/dsh-native-command/lib/types/path-opener.js +18 -7
  106. package/runtime/node_modules/@deepseek-ai/dsh-settings/lib/index.js +5 -4
  107. package/runtime/node_modules/@deepseek-ai/dsh-settings/lib/types/index.d.ts +4 -3
  108. package/runtime/node_modules/@deepseek-ai/dsh-settings/lib/types/index.js +4 -3
  109. package/runtime/node_modules/@deepseek-ai/dsh-storage/lib/types/backend.d.ts +4 -0
  110. package/runtime/node_modules/@deepseek-ai/dsh-storage-domain/lib/index.js +60 -0
  111. package/runtime/node_modules/@deepseek-ai/dsh-storage-domain/lib/types/domain.d.ts +15 -0
  112. package/runtime/node_modules/@deepseek-ai/dsh-storage-json/lib/index.js +25 -0
  113. package/runtime/node_modules/@deepseek-ai/dsh-storage-json/package.json +1 -0
  114. package/runtime/node_modules/@deepseek-ai/dsh-tianti/lib/index.js +5472 -0
  115. package/runtime/node_modules/@deepseek-ai/dsh-tianti/lib/types/command-args.d.ts +17 -0
  116. package/runtime/node_modules/@deepseek-ai/dsh-tianti/lib/types/commands/tianti/cicd.d.ts +8 -0
  117. package/runtime/node_modules/@deepseek-ai/dsh-tianti/lib/types/commands/tianti/tianti.d.ts +7 -0
  118. package/runtime/node_modules/@deepseek-ai/dsh-tianti/lib/types/commands/tianti-deliver/tianti-deliver.d.ts +8 -0
  119. package/runtime/node_modules/@deepseek-ai/dsh-tianti/lib/types/config.d.ts +27 -0
  120. package/runtime/node_modules/@deepseek-ai/dsh-tianti/lib/types/index.d.ts +12 -0
  121. package/runtime/node_modules/@deepseek-ai/dsh-tianti/lib/types/memory-config.d.ts +10 -0
  122. package/runtime/node_modules/@deepseek-ai/dsh-tianti/lib/types/runtime.d.ts +105 -0
  123. package/runtime/node_modules/@deepseek-ai/dsh-tianti/lib/types/services/tianti/aliases.d.ts +11 -0
  124. package/runtime/node_modules/@deepseek-ai/dsh-tianti/lib/types/services/tianti/auth.d.ts +20 -0
  125. package/runtime/node_modules/@deepseek-ai/dsh-tianti/lib/types/services/tianti/client.d.ts +206 -0
  126. package/runtime/node_modules/@deepseek-ai/dsh-tianti/lib/types/services/tianti/config.d.ts +20 -0
  127. package/runtime/node_modules/@deepseek-ai/dsh-tianti/lib/types/services/tianti/index.d.ts +6 -0
  128. package/runtime/node_modules/@deepseek-ai/dsh-tianti/lib/types/services/tianti/log.d.ts +16 -0
  129. package/runtime/node_modules/@deepseek-ai/dsh-tianti/lib/types/services/tianti/types.d.ts +136 -0
  130. package/runtime/node_modules/@deepseek-ai/dsh-tianti/lib/types/services/wanmaDevelopmentWorkflow/codebase.d.ts +19 -0
  131. package/runtime/node_modules/@deepseek-ai/dsh-tianti/lib/types/services/wanmaDevelopmentWorkflow/dynamicWorkflow.d.ts +10 -0
  132. package/runtime/node_modules/@deepseek-ai/dsh-tianti/lib/types/services/wanmaDevelopmentWorkflow/engine.d.ts +8 -0
  133. package/runtime/node_modules/@deepseek-ai/dsh-tianti/lib/types/services/wanmaDevelopmentWorkflow/executor.d.ts +11 -0
  134. package/runtime/node_modules/@deepseek-ai/dsh-tianti/lib/types/services/wanmaDevelopmentWorkflow/executors.d.ts +15 -0
  135. package/runtime/node_modules/@deepseek-ai/dsh-tianti/lib/types/services/wanmaDevelopmentWorkflow/index.d.ts +23 -0
  136. package/runtime/node_modules/@deepseek-ai/dsh-tianti/lib/types/services/wanmaDevelopmentWorkflow/memorySuggestions.d.ts +12 -0
  137. package/runtime/node_modules/@deepseek-ai/dsh-tianti/lib/types/services/wanmaDevelopmentWorkflow/openspec.d.ts +31 -0
  138. package/runtime/node_modules/@deepseek-ai/dsh-tianti/lib/types/services/wanmaDevelopmentWorkflow/recommend.d.ts +8 -0
  139. package/runtime/node_modules/@deepseek-ai/dsh-tianti/lib/types/services/wanmaDevelopmentWorkflow/render.d.ts +8 -0
  140. package/runtime/node_modules/@deepseek-ai/dsh-tianti/lib/types/services/wanmaDevelopmentWorkflow/requirementContext.d.ts +12 -0
  141. package/runtime/node_modules/@deepseek-ai/dsh-tianti/lib/types/services/wanmaDevelopmentWorkflow/scenarioUpgrade.d.ts +24 -0
  142. package/runtime/node_modules/@deepseek-ai/dsh-tianti/lib/types/services/wanmaDevelopmentWorkflow/state.d.ts +16 -0
  143. package/runtime/node_modules/@deepseek-ai/dsh-tianti/lib/types/services/wanmaDevelopmentWorkflow/store.d.ts +33 -0
  144. package/runtime/node_modules/@deepseek-ai/dsh-tianti/lib/types/services/wanmaDevelopmentWorkflow/templates.d.ts +8 -0
  145. package/runtime/node_modules/@deepseek-ai/dsh-tianti/lib/types/services/wanmaDevelopmentWorkflow/types.d.ts +385 -0
  146. package/runtime/node_modules/@deepseek-ai/dsh-tianti/lib/types/services/wanmaDevelopmentWorkflow/writeReviewSync.d.ts +6 -0
  147. package/runtime/node_modules/@deepseek-ai/dsh-tianti/lib/types/services/writeReview/index.d.ts +29 -0
  148. package/runtime/node_modules/@deepseek-ai/dsh-tianti/lib/types/services/writeReview/store.d.ts +20 -0
  149. package/runtime/node_modules/@deepseek-ai/dsh-tianti/lib/types/services/writeReview/types.d.ts +49 -0
  150. package/runtime/node_modules/@deepseek-ai/dsh-tianti/lib/types/tools.d.ts +12 -0
  151. package/runtime/node_modules/@deepseek-ai/dsh-tianti/package.json +55 -0
  152. package/runtime/node_modules/@deepseek-ai/dsh-tool-cordis/lib/types/api-catalog.js +57 -13
  153. package/runtime/node_modules/@deepseek-ai/dsh-web-frontend/dist/assets/index-D5kpKf--.css +1 -0
  154. package/runtime/node_modules/@deepseek-ai/dsh-web-frontend/dist/assets/index-Dz_cDcce.js +133 -0
  155. package/runtime/node_modules/@deepseek-ai/dsh-web-frontend/dist/assets/index-Dz_cDcce.js.map +1 -0
  156. package/runtime/node_modules/@deepseek-ai/dsh-web-frontend/dist/chatcode-apple-touch-icon.png +0 -0
  157. package/runtime/node_modules/@deepseek-ai/dsh-web-frontend/dist/chatcode-icon-32.png +0 -0
  158. package/runtime/node_modules/@deepseek-ai/dsh-web-frontend/dist/chatcode-mask-icon.svg +1 -0
  159. package/runtime/node_modules/@deepseek-ai/dsh-web-frontend/dist/favicon-dark.svg +1 -3
  160. package/runtime/node_modules/@deepseek-ai/dsh-web-frontend/dist/favicon.ico +0 -0
  161. package/runtime/node_modules/@deepseek-ai/dsh-web-frontend/dist/favicon.svg +1 -3
  162. package/runtime/node_modules/@deepseek-ai/dsh-web-frontend/dist/index.html +8 -4
  163. package/runtime/node_modules/@deepseek-ai/dsh-web-frontend/dist/preview.html +8 -4
  164. package/runtime/node_modules/@deepseek-ai/dsh-web-frontend/package.json +2 -1
  165. package/runtime/node_modules/@deepseek-ai/dsh-workspace/lib/index.js +110 -33
  166. package/runtime/node_modules/@deepseek-ai/dsh-workspace/lib/types/entity.d.ts +6 -0
  167. package/runtime/node_modules/@deepseek-ai/dsh-workspace/lib/types/entity.js +23 -17
  168. package/runtime/node_modules/@deepseek-ai/dsh-workspace/lib/types/index.d.ts +10 -0
  169. package/runtime/node_modules/@deepseek-ai/dsh-workspace/lib/types/index.js +95 -21
  170. package/lib/dump-config-CijLv_kn.js +0 -2
  171. package/lib/tuiDisplayPrefs-Dm_fULiR.js +0 -204
  172. package/runtime/node_modules/@deepseek-ai/dsh-web-frontend/dist/assets/index-DUvMhLle.css +0 -1
  173. package/runtime/node_modules/@deepseek-ai/dsh-web-frontend/dist/assets/index-Q6zc2uHV.js +0 -127
  174. package/runtime/node_modules/@deepseek-ai/dsh-web-frontend/dist/assets/index-Q6zc2uHV.js.map +0 -1
@@ -55,7 +55,7 @@ window.__ModuleLoader__.load({
55
55
  }
56
56
  //#endregion
57
57
  //#region \0dsh-css:/Users/shiguifeng/IdeaProjects/chonggou/deepseek-harness/packages/client/ui-settings-models/src/client/ModelsSection.module.css.mjs
58
- const css$3 = "._1OLooa_section{max-width:720px;color:var(--dsw-alias-label-primary);flex-direction:column;gap:12px;display:flex}._1OLooa_title{color:var(--dsw-alias-label-primary);margin:0;font-size:16px;font-weight:500;line-height:24px}._1OLooa_intro{color:var(--dsw-alias-label-tertiary);margin:0;font-size:14px;line-height:22px}._1OLooa_notice{color:var(--dsw-alias-state-warn-label);margin:0;font-size:12px;line-height:18px}._1OLooa_savedNotice{color:var(--dsw-alias-state-success-primary);margin:0;font-size:12px;line-height:18px}._1OLooa_rows{flex-direction:column;gap:8px;margin:12px 0 0;padding:0;list-style:none;display:flex}._1OLooa_rowCard{border:.5px solid var(--dsw-alias-settings-card-stroke);background:var(--dsw-alias-settings-card-fill);border-radius:var(--dsw-radius-xl);flex-direction:column;gap:12px;padding:12px 14px;display:flex}._1OLooa_rowHead{align-items:center;gap:10px;display:flex}._1OLooa_rowIdentity{align-items:center;gap:6px;min-width:0;display:inline-flex}._1OLooa_rowName{color:var(--dsw-alias-label-primary);font-size:14px;font-weight:500;line-height:22px}._1OLooa_rowTag{border:.5px solid var(--dsw-alias-border-l3);border-radius:var(--dsw-radius-xs);color:var(--dsw-alias-label-secondary);flex:none;padding:1px 6px;font-size:11px;line-height:16px}._1OLooa_credentialDot{box-sizing:border-box;corner-shape:round;border-radius:50%;flex:none;width:8px;height:8px;display:inline-block}._1OLooa_credentialDotConfigured{background:var(--dsw-alias-state-success-primary)}._1OLooa_credentialDotMissing{background:var(--dsw-alias-state-error-primary)}._1OLooa_rowActions{align-items:center;gap:4px;margin-left:auto;display:inline-flex}._1OLooa_primaryButton,._1OLooa_secondaryButton,._1OLooa_addButton{box-sizing:border-box;border-radius:var(--dsw-radius-md);height:36px;font:inherit;cursor:pointer;border:none;justify-content:center;align-items:center;gap:4px;padding:0 14px;font-size:14px;line-height:22px;display:inline-flex}._1OLooa_primaryButton{background:var(--dsw-alias-button-primary-fill);color:var(--dsw-alias-label-primary-foreground)}._1OLooa_primaryButton:hover:not(:disabled){background:var(--dsw-alias-button-primary-hover)}._1OLooa_secondaryButton,._1OLooa_addButton{border:.5px solid var(--dsw-alias-border-l3);color:var(--dsw-alias-label-primary);background:0 0}._1OLooa_secondaryButton:hover:not(:disabled),._1OLooa_addButton:hover:not(:disabled){background:var(--dsw-alias-interactive-bg-hover)}._1OLooa_secondaryButton:hover:not(:disabled){background:var(--dsw-alias-interactive-bg-hover-solid)}._1OLooa_dangerButton{box-sizing:border-box;border-radius:var(--dsw-radius-md);height:36px;color:var(--dsw-alias-state-error-primary);font:inherit;cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;padding:0 14px;font-size:14px;line-height:22px;display:inline-flex}._1OLooa_dangerButton:hover:not(:disabled){background:var(--dsw-alias-interactive-bg-hover-danger)}._1OLooa_rowActions ._1OLooa_secondaryButton,._1OLooa_rowActions ._1OLooa_dangerButton{border-radius:var(--dsw-radius-sm);height:28px;padding:0 10px;font-size:12px;line-height:18px}._1OLooa_primaryButton:disabled,._1OLooa_secondaryButton:disabled,._1OLooa_dangerButton:disabled,._1OLooa_addButton:disabled,._1OLooa_linkButton:disabled,._1OLooa_addModelButton:disabled{opacity:.4;cursor:default}._1OLooa_primaryButton:focus-visible,._1OLooa_secondaryButton:focus-visible,._1OLooa_dangerButton:focus-visible,._1OLooa_addButton:focus-visible,._1OLooa_linkButton:focus-visible,._1OLooa_addModelButton:focus-visible,._1OLooa_iconButton:focus-visible,._1OLooa_customizedSummary:focus-visible{box-shadow:0 0 0 2px var(--dsw-focus-ring-color,var(--dsw-alias-state-business-primary));outline:none}._1OLooa_editor{border-radius:var(--dsw-radius-lg);background:var(--dsw-alias-bg-module-platform);flex-direction:column;gap:14px;padding:14px 16px;display:flex}._1OLooa_editorHeader{align-items:baseline;gap:8px;display:flex}._1OLooa_editorTitle{color:var(--dsw-alias-label-primary);font-size:14px;font-weight:500;line-height:22px}._1OLooa_editorRoute{color:var(--dsw-alias-label-tertiary);font-size:12px;line-height:18px}._1OLooa_field{flex-direction:column;gap:6px;display:flex}._1OLooa_fieldLabel{color:var(--dsw-alias-label-secondary);align-items:center;gap:10px;font-size:12px;font-weight:500;line-height:18px;display:inline-flex}._1OLooa_linkButton{box-sizing:border-box;border-radius:var(--dsw-radius-sm);height:28px;color:var(--dsw-alias-label-tertiary);font:inherit;cursor:pointer;background:0 0;border:none;align-items:center;padding:0 10px;font-size:12px;line-height:18px;display:inline-flex}._1OLooa_linkButton:hover:not(:disabled){background:var(--dsw-alias-interactive-bg-hover);color:var(--dsw-alias-label-secondary)}._1OLooa_advancedHint{color:var(--dsw-alias-label-tertiary);margin:0;font-size:12px;line-height:18px}._1OLooa_editorActions{justify-content:flex-end;gap:8px;display:flex}._1OLooa_addBlock{flex-direction:column;gap:12px;display:flex}._1OLooa_addActions{display:flex}._1OLooa_addButton{border:1px dashed var(--dsw-alias-border-l3);border-radius:var(--dsw-radius-lg);flex:1 1 0;gap:6px;min-width:180px;height:44px}._1OLooa_addModes{flex-direction:column;align-items:flex-start;gap:8px;display:flex}._1OLooa_addPanel{flex-direction:column;gap:14px;display:flex}._1OLooa_addPanel[hidden]{display:none}._1OLooa_addCard,._1OLooa_setupCard{border-radius:var(--dsw-radius-lg);background:var(--dsw-alias-bg-module-platform);flex-direction:column;gap:14px;padding:14px 16px;list-style:none;display:flex}._1OLooa_addCard ._1OLooa_editor,._1OLooa_setupCard ._1OLooa_editor{background:0 0;padding:0}._1OLooa_customized{border-top:.5px solid var(--dsw-alias-border-l2);padding-top:10px}._1OLooa_customizedSummary{border-radius:var(--dsw-radius-sm);cursor:pointer;width:fit-content;color:var(--dsw-alias-label-secondary);align-items:center;gap:6px;margin-left:-4px;padding:2px 4px;font-size:12px;font-weight:500;line-height:18px;list-style:none;display:flex}._1OLooa_customizedSummary::-webkit-details-marker{display:none}._1OLooa_customizedSummary:before{content:\"\";border-bottom:1.5px solid;border-right:1.5px solid;width:5px;height:5px;transition:transform .12s;transform:rotate(-45deg)translate(-1px,-1px)}._1OLooa_customized[open]>._1OLooa_customizedSummary:before{transform:rotate(45deg)translate(-1px,-1px)}._1OLooa_customizedSummary:hover{color:var(--dsw-alias-label-primary)}._1OLooa_customizedBody{flex-direction:column;gap:12px;padding-top:12px;display:flex}._1OLooa_modelCatalog{border-top:.5px solid var(--dsw-alias-border-l2);flex-direction:column;gap:10px;padding-top:12px;display:flex}._1OLooa_modelCatalogHeading{flex-direction:column;gap:2px;display:flex}._1OLooa_modelCatalogTitle{color:var(--dsw-alias-label-secondary);font-size:12px;font-weight:500;line-height:18px}._1OLooa_modelCatalogMeta,._1OLooa_modelEmpty{color:var(--dsw-alias-label-tertiary);margin:0;font-size:12px;line-height:18px}._1OLooa_modelList{flex-direction:column;gap:8px;display:flex}._1OLooa_modelListHead{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}._1OLooa_modelEntry{border:.5px solid var(--dsw-alias-border-l4);border-radius:var(--dsw-radius-lg);padding:6px}._1OLooa_modelRow{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr) auto auto;align-items:center;gap:6px;display:grid}._1OLooa_iconButton{box-sizing:border-box;border-radius:var(--dsw-radius-sm);width:28px;height:28px;color:var(--dsw-alias-label-tertiary);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;display:inline-flex}._1OLooa_iconButton:hover:not(:disabled){background:var(--dsw-alias-interactive-bg-hover);color:var(--dsw-alias-label-primary)}._1OLooa_iconButton:disabled{cursor:default;opacity:.4}._1OLooa_iconButtonDanger:hover:not(:disabled){background:var(--dsw-alias-interactive-bg-hover-danger);color:var(--dsw-alias-state-error-primary)}._1OLooa_modelAdvanced{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:8px 4px 2px;display:grid}._1OLooa_modelField{flex-direction:column;gap:4px;min-width:0;display:flex}._1OLooa_modelInputTypes{border:none;grid-column:1/-1;min-width:0;margin:0;padding:0}._1OLooa_modelInputTypes legend{margin-bottom:4px;padding:0}._1OLooa_modelInputChoices{flex-wrap:wrap;align-items:center;gap:16px;min-height:32px;display:flex}._1OLooa_modelFieldLabel{color:var(--dsw-alias-label-tertiary);font-size:12px;line-height:18px}._1OLooa_modelEmpty{border:1px dashed var(--dsw-alias-border-l3);border-radius:var(--dsw-radius-lg);text-align:center;padding:12px}._1OLooa_addModelButton{box-sizing:border-box;border:.5px solid var(--dsw-alias-border-l3);border-radius:var(--dsw-radius-sm);height:28px;color:var(--dsw-alias-label-primary);font:inherit;cursor:pointer;background:0 0;align-self:flex-start;align-items:center;gap:4px;padding:0 10px;font-size:12px;line-height:18px;display:inline-flex}._1OLooa_addModelButton:hover:not(:disabled){background:var(--dsw-alias-interactive-bg-hover)}._1OLooa_input{box-sizing:border-box;border:.5px solid var(--dsw-alias-border-l4);border-radius:var(--dsw-radius-md);width:100%;height:32px;font:inherit;background:var(--dsw-alias-bg-layer-1);color:var(--dsw-alias-label-primary);padding:0 10px;font-size:14px;line-height:22px}select._1OLooa_input{cursor:pointer;max-width:240px}._1OLooa_input:focus{border-color:var(--dsw-alias-state-business-primary);outline:none}._1OLooa_input::placeholder{color:var(--dsw-alias-label-dimmed)}._1OLooa_input:disabled{opacity:.6;cursor:default}._1OLooa_selectInput{appearance:none;background-image:url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12' fill='none'%3E%3Cpath d='M3 4.5L6 7.5L9 4.5' stroke='%2381858C' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E\");background-position:right 12px center;background-repeat:no-repeat;background-size:12px 12px;padding-right:32px}._1OLooa_error{color:var(--dsw-alias-state-error-primary);margin:0;font-size:12px;line-height:18px}._1OLooa_deleteDialog{width:min(480px,100%)}._1OLooa_deleteConfirm:not(:disabled){border-color:var(--dsw-alias-state-error-primary);color:var(--dsw-alias-state-error-primary)}._1OLooa_deleteConfirm:hover:not(:disabled){background:var(--dsw-alias-interactive-bg-hover-danger)}._1OLooa_hiddenLabel{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}@media (prefers-reduced-motion:reduce){._1OLooa_customizedSummary:before,._1OLooa_switchThumb{transition:none}}._1OLooa_fetchDialog{--dsh-scrollbar-thumb:var(--dsw-alias-scrollbar-bg-l2);--dsh-scrollbar-thumb-hover:var(--dsw-alias-scrollbar-hover-l2);max-width:520px}._1OLooa_candidateToolbar{align-items:center;gap:8px;margin-bottom:6px;display:flex}._1OLooa_candidateSearch{flex:240px;min-width:0}._1OLooa_candidateList{flex-direction:column;gap:2px;max-height:320px;margin:0;padding:0;list-style:none;display:flex;overflow-y:auto}._1OLooa_candidate{border-radius:var(--dsw-radius-md)}._1OLooa_candidateLabel{cursor:pointer;align-items:center;gap:8px;padding:6px 8px;display:flex}._1OLooa_candidateId{min-width:0;font-family:var(--ds-font-family-code);text-overflow:ellipsis;white-space:nowrap;flex:auto;font-size:13px;overflow:hidden}._1OLooa_candidateEmpty{color:var(--dsw-alias-label-secondary);text-align:center;margin:24px 0;font-size:13px;line-height:20px}";
58
+ const css$3 = "._1OLooa_section{max-width:720px;color:var(--dsw-alias-label-primary);flex-direction:column;gap:12px;display:flex}._1OLooa_title{color:var(--dsw-alias-label-primary);margin:0;font-size:16px;font-weight:500;line-height:24px}._1OLooa_intro{color:var(--dsw-alias-label-tertiary);margin:0;font-size:14px;line-height:22px}._1OLooa_notice{color:var(--dsw-alias-state-warn-label);margin:0;font-size:12px;line-height:18px}._1OLooa_savedNotice{color:var(--dsw-alias-state-success-primary);margin:0;font-size:12px;line-height:18px}._1OLooa_rows{flex-direction:column;gap:8px;margin:12px 0 0;padding:0;list-style:none;display:flex}._1OLooa_rowCard{border:.5px solid var(--dsw-alias-settings-card-stroke);background:var(--dsw-alias-settings-card-fill);border-radius:var(--dsw-radius-xl);flex-direction:column;gap:12px;padding:12px 14px;display:flex}._1OLooa_rowHead{align-items:center;gap:10px;display:flex}._1OLooa_rowIdentity{align-items:center;gap:6px;min-width:0;display:inline-flex}._1OLooa_rowName{color:var(--dsw-alias-label-primary);font-size:14px;font-weight:500;line-height:22px}._1OLooa_modelSummary{overflow-wrap:anywhere;color:var(--dsw-alias-label-secondary);margin:0;font-size:13px;line-height:20px}._1OLooa_rowTag{border:.5px solid var(--dsw-alias-border-l3);border-radius:var(--dsw-radius-xs);color:var(--dsw-alias-label-secondary);flex:none;padding:1px 6px;font-size:11px;line-height:16px}._1OLooa_credentialDot{box-sizing:border-box;corner-shape:round;border-radius:50%;flex:none;width:8px;height:8px;display:inline-block}._1OLooa_credentialDotConfigured{background:var(--dsw-alias-state-success-primary)}._1OLooa_credentialDotMissing{background:var(--dsw-alias-state-error-primary)}._1OLooa_rowActions{align-items:center;gap:4px;margin-left:auto;display:inline-flex}._1OLooa_primaryButton,._1OLooa_secondaryButton,._1OLooa_addButton{box-sizing:border-box;border-radius:var(--dsw-radius-md);height:36px;font:inherit;cursor:pointer;border:none;justify-content:center;align-items:center;gap:4px;padding:0 14px;font-size:14px;line-height:22px;display:inline-flex}._1OLooa_primaryButton{background:var(--dsw-alias-button-primary-fill);color:var(--dsw-alias-label-primary-foreground)}._1OLooa_primaryButton:hover:not(:disabled){background:var(--dsw-alias-button-primary-hover)}._1OLooa_secondaryButton,._1OLooa_addButton{border:.5px solid var(--dsw-alias-border-l3);color:var(--dsw-alias-label-primary);background:0 0}._1OLooa_secondaryButton:hover:not(:disabled),._1OLooa_addButton:hover:not(:disabled){background:var(--dsw-alias-interactive-bg-hover)}._1OLooa_secondaryButton:hover:not(:disabled){background:var(--dsw-alias-interactive-bg-hover-solid)}._1OLooa_dangerButton{box-sizing:border-box;border-radius:var(--dsw-radius-md);height:36px;color:var(--dsw-alias-state-error-primary);font:inherit;cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;padding:0 14px;font-size:14px;line-height:22px;display:inline-flex}._1OLooa_dangerButton:hover:not(:disabled){background:var(--dsw-alias-interactive-bg-hover-danger)}._1OLooa_rowActions ._1OLooa_secondaryButton,._1OLooa_rowActions ._1OLooa_dangerButton{border-radius:var(--dsw-radius-sm);height:28px;padding:0 10px;font-size:12px;line-height:18px}._1OLooa_primaryButton:disabled,._1OLooa_secondaryButton:disabled,._1OLooa_dangerButton:disabled,._1OLooa_addButton:disabled,._1OLooa_linkButton:disabled,._1OLooa_addModelButton:disabled{opacity:.4;cursor:default}._1OLooa_primaryButton:focus-visible,._1OLooa_secondaryButton:focus-visible,._1OLooa_dangerButton:focus-visible,._1OLooa_addButton:focus-visible,._1OLooa_linkButton:focus-visible,._1OLooa_addModelButton:focus-visible,._1OLooa_iconButton:focus-visible,._1OLooa_customizedSummary:focus-visible{box-shadow:0 0 0 2px var(--dsw-focus-ring-color,var(--dsw-alias-state-business-primary));outline:none}._1OLooa_editor{border-radius:var(--dsw-radius-lg);background:var(--dsw-alias-bg-module-platform);flex-direction:column;gap:14px;padding:14px 16px;display:flex}._1OLooa_editorHeader{align-items:baseline;gap:8px;display:flex}._1OLooa_editorTitle{color:var(--dsw-alias-label-primary);font-size:14px;font-weight:500;line-height:22px}._1OLooa_editorRoute{color:var(--dsw-alias-label-tertiary);font-size:12px;line-height:18px}._1OLooa_field{flex-direction:column;gap:6px;display:flex}._1OLooa_fieldLabel{color:var(--dsw-alias-label-secondary);align-items:center;gap:10px;font-size:12px;font-weight:500;line-height:18px;display:inline-flex}._1OLooa_linkButton{box-sizing:border-box;border-radius:var(--dsw-radius-sm);height:28px;color:var(--dsw-alias-label-tertiary);font:inherit;cursor:pointer;background:0 0;border:none;align-items:center;padding:0 10px;font-size:12px;line-height:18px;display:inline-flex}._1OLooa_linkButton:hover:not(:disabled){background:var(--dsw-alias-interactive-bg-hover);color:var(--dsw-alias-label-secondary)}._1OLooa_advancedHint{color:var(--dsw-alias-label-tertiary);margin:0;font-size:12px;line-height:18px}._1OLooa_editorActions{justify-content:flex-end;gap:8px;display:flex}._1OLooa_addBlock{flex-direction:column;gap:12px;display:flex}._1OLooa_addActions{display:flex}._1OLooa_addButton{border:1px dashed var(--dsw-alias-border-l3);border-radius:var(--dsw-radius-lg);flex:1 1 0;gap:6px;min-width:180px;height:44px}._1OLooa_addModes{flex-direction:column;align-items:flex-start;gap:8px;display:flex}._1OLooa_addPanel{flex-direction:column;gap:14px;display:flex}._1OLooa_addPanel[hidden]{display:none}._1OLooa_addCard,._1OLooa_setupCard{border-radius:var(--dsw-radius-lg);background:var(--dsw-alias-bg-module-platform);flex-direction:column;gap:14px;padding:14px 16px;list-style:none;display:flex}._1OLooa_addCard ._1OLooa_editor,._1OLooa_setupCard ._1OLooa_editor{background:0 0;padding:0}._1OLooa_customized{border-top:.5px solid var(--dsw-alias-border-l2);padding-top:10px}._1OLooa_customizedSummary{border-radius:var(--dsw-radius-sm);cursor:pointer;width:fit-content;color:var(--dsw-alias-label-secondary);align-items:center;gap:6px;margin-left:-4px;padding:2px 4px;font-size:12px;font-weight:500;line-height:18px;list-style:none;display:flex}._1OLooa_customizedSummary::-webkit-details-marker{display:none}._1OLooa_customizedSummary:before{content:\"\";border-bottom:1.5px solid;border-right:1.5px solid;width:5px;height:5px;transition:transform .12s;transform:rotate(-45deg)translate(-1px,-1px)}._1OLooa_customized[open]>._1OLooa_customizedSummary:before{transform:rotate(45deg)translate(-1px,-1px)}._1OLooa_customizedSummary:hover{color:var(--dsw-alias-label-primary)}._1OLooa_customizedBody{flex-direction:column;gap:12px;padding-top:12px;display:flex}._1OLooa_modelCatalog{border-top:.5px solid var(--dsw-alias-border-l2);flex-direction:column;gap:10px;padding-top:12px;display:flex}._1OLooa_modelCatalogHeading{flex-direction:column;gap:2px;display:flex}._1OLooa_modelCatalogTitle{color:var(--dsw-alias-label-secondary);font-size:12px;font-weight:500;line-height:18px}._1OLooa_modelCatalogMeta,._1OLooa_modelEmpty{color:var(--dsw-alias-label-tertiary);margin:0;font-size:12px;line-height:18px}._1OLooa_modelList{flex-direction:column;gap:8px;display:flex}._1OLooa_modelListHead{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}._1OLooa_modelEntry{border:.5px solid var(--dsw-alias-border-l4);border-radius:var(--dsw-radius-lg);padding:6px}._1OLooa_modelRow{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr) auto auto;align-items:center;gap:6px;display:grid}._1OLooa_iconButton{box-sizing:border-box;border-radius:var(--dsw-radius-sm);width:28px;height:28px;color:var(--dsw-alias-label-tertiary);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;display:inline-flex}._1OLooa_iconButton:hover:not(:disabled){background:var(--dsw-alias-interactive-bg-hover);color:var(--dsw-alias-label-primary)}._1OLooa_iconButton:disabled{cursor:default;opacity:.4}._1OLooa_iconButtonDanger:hover:not(:disabled){background:var(--dsw-alias-interactive-bg-hover-danger);color:var(--dsw-alias-state-error-primary)}._1OLooa_modelAdvanced{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:8px 4px 2px;display:grid}._1OLooa_modelField{flex-direction:column;gap:4px;min-width:0;display:flex}._1OLooa_modelInputTypes{border:none;grid-column:1/-1;min-width:0;margin:0;padding:0}._1OLooa_modelInputTypes legend{margin-bottom:4px;padding:0}._1OLooa_modelInputChoices{flex-wrap:wrap;align-items:center;gap:16px;min-height:32px;display:flex}._1OLooa_modelFieldLabel{color:var(--dsw-alias-label-tertiary);font-size:12px;line-height:18px}._1OLooa_modelEmpty{border:1px dashed var(--dsw-alias-border-l3);border-radius:var(--dsw-radius-lg);text-align:center;padding:12px}._1OLooa_addModelButton{box-sizing:border-box;border:.5px solid var(--dsw-alias-border-l3);border-radius:var(--dsw-radius-sm);height:28px;color:var(--dsw-alias-label-primary);font:inherit;cursor:pointer;background:0 0;align-self:flex-start;align-items:center;gap:4px;padding:0 10px;font-size:12px;line-height:18px;display:inline-flex}._1OLooa_addModelButton:hover:not(:disabled){background:var(--dsw-alias-interactive-bg-hover)}._1OLooa_input{box-sizing:border-box;border:.5px solid var(--dsw-alias-border-l4);border-radius:var(--dsw-radius-md);width:100%;height:32px;font:inherit;background:var(--dsw-alias-bg-layer-1);color:var(--dsw-alias-label-primary);padding:0 10px;font-size:14px;line-height:22px}select._1OLooa_input{cursor:pointer;max-width:240px}._1OLooa_input:focus{border-color:var(--dsw-alias-state-business-primary);outline:none}._1OLooa_input::placeholder{color:var(--dsw-alias-label-dimmed)}._1OLooa_input:disabled{opacity:.6;cursor:default}._1OLooa_selectInput{appearance:none;background-image:url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12' fill='none'%3E%3Cpath d='M3 4.5L6 7.5L9 4.5' stroke='%2381858C' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E\");background-position:right 12px center;background-repeat:no-repeat;background-size:12px 12px;padding-right:32px}._1OLooa_error{color:var(--dsw-alias-state-error-primary);margin:0;font-size:12px;line-height:18px}._1OLooa_deleteDialog{width:min(480px,100%)}._1OLooa_deleteConfirm:not(:disabled){border-color:var(--dsw-alias-state-error-primary);color:var(--dsw-alias-state-error-primary)}._1OLooa_deleteConfirm:hover:not(:disabled){background:var(--dsw-alias-interactive-bg-hover-danger)}._1OLooa_hiddenLabel{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}@media (prefers-reduced-motion:reduce){._1OLooa_customizedSummary:before,._1OLooa_switchThumb{transition:none}}._1OLooa_fetchDialog{--dsh-scrollbar-thumb:var(--dsw-alias-scrollbar-bg-l2);--dsh-scrollbar-thumb-hover:var(--dsw-alias-scrollbar-hover-l2);max-width:520px}._1OLooa_candidateToolbar{align-items:center;gap:8px;margin-bottom:6px;display:flex}._1OLooa_candidateSearch{flex:240px;min-width:0}._1OLooa_candidateList{flex-direction:column;gap:2px;max-height:320px;margin:0;padding:0;list-style:none;display:flex;overflow-y:auto}._1OLooa_candidate{border-radius:var(--dsw-radius-md)}._1OLooa_candidateLabel{cursor:pointer;align-items:center;gap:8px;padding:6px 8px;display:flex}._1OLooa_candidateId{min-width:0;font-family:var(--ds-font-family-code);text-overflow:ellipsis;white-space:nowrap;flex:auto;font-size:13px;overflow:hidden}._1OLooa_candidateEmpty{color:var(--dsw-alias-label-secondary);text-align:center;margin:24px 0;font-size:13px;line-height:20px}";
59
59
  const tagId$3 = "@deepseek-ai/dsh-client-ui-settings-models/ModelsSection.module.css";
60
60
  if (typeof document !== "undefined" && document.querySelector("style[data-plugin-css=" + JSON.stringify(tagId$3) + "]") === null) {
61
61
  const tag = document.createElement("style");
@@ -118,6 +118,7 @@ window.__ModuleLoader__.load({
118
118
  "modelList": "_1OLooa_modelList",
119
119
  "modelListHead": "_1OLooa_modelListHead",
120
120
  "modelRow": "_1OLooa_modelRow",
121
+ "modelSummary": "_1OLooa_modelSummary",
121
122
  "notice": "_1OLooa_notice",
122
123
  "primaryButton": "_1OLooa_primaryButton",
123
124
  "rowActions": "_1OLooa_rowActions",
@@ -1024,11 +1025,15 @@ window.__ModuleLoader__.load({
1024
1025
  this.failLoad(generation, mirrored.error ?? "settings are unavailable in this browser");
1025
1026
  return;
1026
1027
  }
1027
- const providers = joinProviderDirectory(registered.value, declared.value);
1028
1028
  const writable = mirrored.view.writable;
1029
1029
  const views = mirrored.view.namespaces;
1030
1030
  const namespaces = new Map(views.map((view) => [view.ns, view]));
1031
- const rows = providers.map((entry) => {
1031
+ const rows = joinProviderDirectory(registered.value, declared.value).filter((entry) => {
1032
+ if (entry.provider !== "deepseek-official" || entry.settingsNs !== "llm-deepseek") return true;
1033
+ const namespace = namespaces.get(entry.settingsNs);
1034
+ const models = this.schema.getPath(namespace?.value, ["models"]);
1035
+ return !Array.isArray(models) || models.length > 0;
1036
+ }).map((entry) => {
1032
1037
  const namespace = namespaces.get(entry.settingsNs);
1033
1038
  return {
1034
1039
  entry,
@@ -1863,10 +1868,6 @@ window.__ModuleLoader__.load({
1863
1868
  * confirmation; the page re-renders from pushed invalidations or the
1864
1869
  * post-apply reload.
1865
1870
  */
1866
- /** ChatCode product policy keeps custom-provider authoring out of the settings UI. */
1867
- function customProviderSettingsEnabled() {
1868
- return false;
1869
- }
1870
1871
  /** Render an editor for either the setup posture or an expanded provider row. */
1871
1872
  function renderProviderEditor({ target, ...props }) {
1872
1873
  return (0, react_jsx_runtime.jsx)(ProviderEditor, {
@@ -1936,6 +1937,17 @@ window.__ModuleLoader__.load({
1936
1937
  ...row.entry.declared === true ? { declared: true } : {}
1937
1938
  };
1938
1939
  }
1940
+ /** Model labels for declared provider cards; route identity and provider names remain unchanged. */
1941
+ function modelLabelsOf(row, namespace, schema) {
1942
+ if (row.entry.declared !== true || row.entry.settingsNs !== "llm-pi-ai") return [];
1943
+ const models = schema.getPath(namespace.value, [...row.entry.settingsPath, "models"]);
1944
+ if (!Array.isArray(models)) return [];
1945
+ return models.flatMap((model) => {
1946
+ if (typeof model !== "object" || model === null) return [];
1947
+ if ("name" in model && typeof model.name === "string" && model.name.trim() !== "") return [model.name];
1948
+ return "id" in model && typeof model.id === "string" ? [model.id] : [];
1949
+ });
1950
+ }
1939
1951
  /** Stable visible and accessible identity for one provider target. */
1940
1952
  function providerTargetLabel(target) {
1941
1953
  return target.provider === target.displayName ? target.provider : `${target.displayName} (${target.provider})`;
@@ -2069,7 +2081,7 @@ window.__ModuleLoader__.load({
2069
2081
  displayName: savedRow.entry.displayName
2070
2082
  };
2071
2083
  const anyUsable = state.rows.some(providerUsable);
2072
- const configured = state.rows.filter((row) => row.configured && row.entry.declared !== true);
2084
+ const configured = state.rows.filter((row) => row.configured);
2073
2085
  const configurable = state.rows.filter((row) => row.entry.declared !== true && state.namespaces.has(row.entry.settingsNs));
2074
2086
  const addable = state.rows.flatMap((row) => {
2075
2087
  const namespace = state.namespaces.get(row.entry.settingsNs);
@@ -2082,7 +2094,7 @@ window.__ModuleLoader__.load({
2082
2094
  const protocols = protocolChoices(piAi, schema);
2083
2095
  const catalogOffered = configurable.length > 0;
2084
2096
  const catalogEnabled = addable.length > 0;
2085
- const customOffered = customProviderSettingsEnabled() && piAi !== void 0;
2097
+ const customOffered = piAi !== void 0;
2086
2098
  const customEnabled = customOffered && protocols.length > 0;
2087
2099
  const bothOffered = catalogOffered && customOffered;
2088
2100
  const mode = bothOffered ? addMode : customOffered ? "custom" : "catalog";
@@ -2130,6 +2142,7 @@ window.__ModuleLoader__.load({
2130
2142
  const namespace = state.namespaces.get(target.settingsNs);
2131
2143
  /* v8 ignore next -- the join marks a row configured only when its namespace resolved */
2132
2144
  if (namespace === void 0) return null;
2145
+ const modelLabels = modelLabelsOf(row, namespace, schema);
2133
2146
  const error = row.entry.error === void 0 ? null : (0, react_jsx_runtime.jsx)("p", {
2134
2147
  role: "alert",
2135
2148
  className: ModelsSection_module_css_default["error"],
@@ -2170,7 +2183,7 @@ window.__ModuleLoader__.load({
2170
2183
  children: [
2171
2184
  (0, react_jsx_runtime.jsx)("span", {
2172
2185
  className: ModelsSection_module_css_default["rowName"],
2173
- children: row.entry.displayName
2186
+ children: modelLabels.length === 1 ? modelLabels[0] : row.entry.displayName
2174
2187
  }),
2175
2188
  row.entry.declared === true ? (0, react_jsx_runtime.jsx)("span", {
2176
2189
  className: ModelsSection_module_css_default["rowTag"],
@@ -2214,6 +2227,10 @@ window.__ModuleLoader__.load({
2214
2227
  }) : null]
2215
2228
  })]
2216
2229
  }),
2230
+ modelLabels.length > 1 ? (0, react_jsx_runtime.jsx)("p", {
2231
+ className: ModelsSection_module_css_default["modelSummary"],
2232
+ children: t("providerModels").replace("{models}", () => modelLabels.join(t("modelNameSeparator")))
2233
+ }) : null,
2217
2234
  error,
2218
2235
  renderSlot("settings.models.provider-card", {
2219
2236
  provider: row.entry,
@@ -2866,11 +2883,13 @@ window.__ModuleLoader__.load({
2866
2883
  addMode: "How to add",
2867
2884
  addCatalog: "Third-party model provider",
2868
2885
  addCustom: "Custom model API",
2869
- addCatalogHint: "Pick OpenAI, Anthropic, Kimi, or another provider from the built-in catalog and enter its API key.",
2886
+ addCatalogHint: "Pick DeepSeek, OpenAI, Anthropic, Kimi, or another provider from the built-in catalog and enter its API key.",
2870
2887
  addCustomHint: "Connect a relay, a self-hosted server, or any other OpenAI- or Anthropic-compatible endpoint by its base URL, protocol, and models.",
2871
2888
  addCatalogExhausted: "Every catalog provider is already configured.",
2872
2889
  addCustomUnavailable: "No API protocol is available to declare.",
2873
2890
  provider: "Provider",
2891
+ providerModels: "Models: {models}",
2892
+ modelNameSeparator: ", ",
2874
2893
  close: "Close",
2875
2894
  cancel: "Cancel",
2876
2895
  apply: "Apply",
@@ -2982,11 +3001,13 @@ window.__ModuleLoader__.load({
2982
3001
  addMode: "添加方式",
2983
3002
  addCatalog: "第三方模型提供商",
2984
3003
  addCustom: "自定义模型 API",
2985
- addCatalogHint: "从内置目录中选择 OpenAI、Anthropic、Kimi 等提供商,填入其 API 密钥即可使用。",
3004
+ addCatalogHint: "从内置目录中选择 DeepSeek、OpenAI、Anthropic、Kimi 等提供商,填入其 API 密钥即可使用。",
2986
3005
  addCustomHint: "连接中转站、自部署服务或其他兼容 OpenAI / Anthropic 协议的接口,需填写 API 地址、协议和模型。",
2987
3006
  addCatalogExhausted: "目录中的提供商都已添加。",
2988
3007
  addCustomUnavailable: "没有可用的 API 协议。",
2989
3008
  provider: "提供商",
3009
+ providerModels: "模型:{models}",
3010
+ modelNameSeparator: "、",
2990
3011
  close: "关闭",
2991
3012
  cancel: "取消",
2992
3013
  apply: "保存",
@@ -23,6 +23,8 @@ export declare const en: {
23
23
  addCatalogExhausted: string;
24
24
  addCustomUnavailable: string;
25
25
  provider: string;
26
+ providerModels: string;
27
+ modelNameSeparator: string;
26
28
  close: string;
27
29
  cancel: string;
28
30
  apply: string;
@@ -54,7 +54,7 @@ window.__ModuleLoader__.load({
54
54
  }
55
55
  //#endregion
56
56
  //#region \0dsh-css:/Users/shiguifeng/IdeaProjects/chonggou/deepseek-harness/packages/client/ui-settings-plugin-inventory/src/client/PluginInventorySettingsTab.module.css.mjs
57
- const css = ".dPDnWG_section{width:100%;max-width:760px;color:var(--dsw-alias-label-primary);flex-direction:column;gap:14px;display:flex}.dPDnWG_catalogHeading h3,.dPDnWG_status,.dPDnWG_failure p{margin:0}.dPDnWG_status,.dPDnWG_failure{color:var(--dsw-alias-label-tertiary);font-size:13px;line-height:20px}.dPDnWG_failure{color:var(--dsw-alias-state-error-primary);align-items:center;gap:10px;display:flex}.dPDnWG_statusWithDot{align-items:center;gap:6px;display:inline-flex}.dPDnWG_failure button{border:.5px solid var(--dsw-alias-border-l3);border-radius:var(--dsw-radius-sm);color:var(--dsw-alias-label-primary);font:inherit;cursor:pointer;background:0 0;padding:4px 10px}.dPDnWG_catalog{flex-direction:column;gap:12px;display:flex}.dPDnWG_search{width:100%;color:var(--dsw-alias-label-tertiary);align-items:center;display:flex;position:relative}.dPDnWG_search>svg{pointer-events:none;position:absolute;left:12px}.dPDnWG_search input{border:.5px solid var(--dsw-alias-border-l4);border-radius:var(--dsw-radius-md);background:var(--dsw-alias-bg-layer-1);width:100%;height:36px;color:var(--dsw-alias-label-primary);font:inherit;outline:none;padding:0 34px 0 36px;font-size:13px}.dPDnWG_search input::placeholder{color:var(--dsw-alias-label-tertiary)}.dPDnWG_search input:focus-visible{border-color:var(--dsw-focus-ring-color,var(--dsw-alias-state-business-primary));box-shadow:0 0 0 2px color-mix(in srgb, var(--dsw-focus-ring-color,var(--dsw-alias-state-business-primary)) 18%, transparent)}.dPDnWG_catalogHeading{align-items:baseline;gap:7px;padding:0 2px;display:flex}.dPDnWG_catalogHeading h3{font-size:13px;font-weight:600;line-height:20px}.dPDnWG_catalogHeading span{color:var(--dsw-alias-label-tertiary);font-variant-numeric:tabular-nums;font-size:12px;line-height:18px}.dPDnWG_cards{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:10px;margin:0;padding:0;list-style:none;display:grid}.dPDnWG_card{border:.5px solid var(--dsw-alias-settings-card-stroke);border-radius:var(--dsw-radius-xl);background:var(--dsw-alias-settings-card-fill);min-width:0;overflow:hidden}.dPDnWG_card[data-open=true]{border-color:var(--dsw-alias-border-l3)}.dPDnWG_cardContent{box-sizing:border-box;width:100%;min-height:52px;color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;flex-direction:column;align-items:stretch;padding:12px 14px;display:flex}.dPDnWG_cardContent:hover,.dPDnWG_card[data-open=true]>.dPDnWG_cardContent{background:var(--dsw-alias-interactive-bg-hover)}.dPDnWG_cardContent:focus-visible{outline:var(--dsw-focus-ring-width) solid var(--dsw-focus-ring-color,var(--dsw-alias-state-business-primary));outline-offset:-2px}.dPDnWG_cardMainRow{justify-content:space-between;align-items:center;gap:12px;min-width:0;display:flex}.dPDnWG_cardTitle,.dPDnWG_cardIdentity{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.dPDnWG_cardTitle{flex:1;min-width:0;font-size:14px;font-weight:600;line-height:20px}.dPDnWG_cardIdentity,.dPDnWG_entryValue{font-family:var(--ds-font-family-code);font-size:12px;line-height:18px}.dPDnWG_cardIdentity{width:100%;color:var(--dsw-alias-label-tertiary);display:block}.dPDnWG_cardTrailing{color:var(--dsw-alias-label-tertiary);flex:none;align-items:center;gap:7px;display:inline-flex}.dPDnWG_phaseDot{flex:none;display:inline-flex}.dPDnWG_group{flex-direction:column;gap:10px;display:flex}.dPDnWG_groupTitleRow{align-items:center;gap:8px;min-height:32px;display:flex}.dPDnWG_group+.dPDnWG_group{border-top:.5px solid var(--dsw-alias-border-l2);padding-top:14px}.dPDnWG_headerEnd{margin-left:auto}.dPDnWG_groupToggle{color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;flex:none;align-items:center;gap:8px;padding:0;display:flex}.dPDnWG_groupToggle:focus-visible{outline:var(--dsw-focus-ring-width) solid var(--dsw-focus-ring-color,var(--dsw-alias-state-business-primary));outline-offset:2px}.dPDnWG_groupToggle>.dPDnWG_chevron{transform:rotate(-90deg)}.dPDnWG_groupToggle[aria-expanded=true]>.dPDnWG_chevron{transform:none}.dPDnWG_groupTitle{color:var(--dsw-alias-label-primary);font-size:14px;font-weight:400;line-height:22px}.dPDnWG_groupSub{color:var(--dsw-alias-label-tertiary);font-variant-numeric:tabular-nums;flex-wrap:wrap;gap:4px 8px;margin:-6px 0 0 20px;font-size:12px;line-height:18px;display:flex}.dPDnWG_failedCount{color:var(--dsw-alias-state-error-primary)}.dPDnWG_switcher{white-space:nowrap;border-radius:var(--dsw-radius-md);background:var(--dsw-alias-bg-module-platform);height:36px;color:var(--dsw-alias-label-primary);font:inherit;cursor:pointer;border:none;flex:none;align-items:center;gap:12px;padding:0 14px;font-size:14px;line-height:22px;display:inline-flex}.dPDnWG_switcher:hover{background:var(--dsw-alias-interactive-bg-hover)}.dPDnWG_switcher:focus-visible{outline:var(--dsw-focus-ring-width) solid var(--dsw-focus-ring-color,var(--dsw-alias-state-business-primary));outline-offset:2px}.dPDnWG_switcher>.dPDnWG_chevron{flex:none}.dPDnWG_switcherLabel{text-overflow:ellipsis;max-width:240px;overflow:hidden}.dPDnWG_groupBody{flex-direction:column;gap:10px;display:flex}.dPDnWG_brokenNote{border-radius:var(--dsw-radius-lg);background:color-mix(in srgb, var(--dsw-alias-state-error-primary) 8%, transparent);color:var(--dsw-alias-state-error-primary);overflow-wrap:anywhere;white-space:pre-line;margin:0;padding:8px 10px;font-size:12.5px;line-height:18px}.dPDnWG_hint{color:var(--dsw-alias-label-tertiary);flex-wrap:wrap;align-items:baseline;gap:4px 8px;margin:0;font-size:12.5px;line-height:18px;display:flex}.dPDnWG_jumpLink{color:var(--dsw-alias-state-business-primary);font:inherit;cursor:pointer;background:0 0;border:0;padding:0;font-size:12.5px}.dPDnWG_enabledIn{flex-wrap:wrap;align-items:baseline;gap:4px 10px;display:flex}.dPDnWG_card[data-failed=true]{border-color:color-mix(in srgb, var(--dsw-alias-state-error-primary) 45%, transparent)}.dPDnWG_chevron{color:var(--dsw-alias-label-tertiary);flex:none}.dPDnWG_card[data-open=true] .dPDnWG_chevron{transform:rotate(180deg)}.dPDnWG_cardDetails{border-top:.5px solid var(--dsw-alias-border-l2);background:var(--dsw-alias-bg-module-platform);padding:10px 14px 12px}.dPDnWG_entryValue{overflow-wrap:anywhere;color:var(--dsw-alias-label-primary);display:block}.dPDnWG_details{grid-template-columns:76px minmax(0,1fr);gap:6px 10px;margin:8px 0 0;display:grid}.dPDnWG_details div{display:contents}.dPDnWG_details dt{color:var(--dsw-alias-label-tertiary);font-size:11px;line-height:17px}.dPDnWG_details dd{overflow-wrap:anywhere;min-width:0;color:var(--dsw-alias-label-secondary);margin:0;font-size:12px;line-height:17px}.dPDnWG_visuallyHidden{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}@media (prefers-reduced-motion:no-preference){.dPDnWG_chevron{transition:transform .14s var(--ds-ease-in-out)}}@media (width<=680px){.dPDnWG_cards{grid-template-columns:minmax(0,1fr)}}";
57
+ const css = ".dPDnWG_section{width:100%;color:var(--dsw-alias-label-primary);flex-direction:column;gap:14px;display:flex}.dPDnWG_catalogHeading h3,.dPDnWG_status,.dPDnWG_failure p{margin:0}.dPDnWG_status,.dPDnWG_failure{color:var(--dsw-alias-label-tertiary);font-size:13px;line-height:20px}.dPDnWG_failure{color:var(--dsw-alias-state-error-primary);align-items:center;gap:10px;display:flex}.dPDnWG_statusWithDot{align-items:center;gap:6px;display:inline-flex}.dPDnWG_failure button{border:.5px solid var(--dsw-alias-border-l3);border-radius:var(--dsw-radius-sm);color:var(--dsw-alias-label-primary);font:inherit;cursor:pointer;background:0 0;padding:4px 10px}.dPDnWG_catalog{flex-direction:column;gap:12px;display:flex}.dPDnWG_search{width:100%;color:var(--dsw-alias-label-tertiary);align-items:center;display:flex;position:relative}.dPDnWG_search>svg{pointer-events:none;position:absolute;left:12px}.dPDnWG_search input{border:.5px solid var(--dsw-alias-border-l4);border-radius:var(--dsw-radius-md);background:var(--dsw-alias-bg-layer-1);width:100%;height:36px;color:var(--dsw-alias-label-primary);font:inherit;outline:none;padding:0 34px 0 36px;font-size:13px}.dPDnWG_search input::placeholder{color:var(--dsw-alias-label-tertiary)}.dPDnWG_search input:focus-visible{border-color:var(--dsw-focus-ring-color,var(--dsw-alias-state-business-primary));box-shadow:0 0 0 2px color-mix(in srgb, var(--dsw-focus-ring-color,var(--dsw-alias-state-business-primary)) 18%, transparent)}.dPDnWG_catalogHeading{align-items:baseline;gap:7px;padding:0 2px;display:flex}.dPDnWG_catalogHeading h3{font-size:13px;font-weight:600;line-height:20px}.dPDnWG_catalogHeading span{color:var(--dsw-alias-label-tertiary);font-variant-numeric:tabular-nums;font-size:12px;line-height:18px}.dPDnWG_cards{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:10px;margin:0;padding:0;list-style:none;display:grid}.dPDnWG_card{border:.5px solid var(--dsw-alias-settings-card-stroke);border-radius:var(--dsw-radius-xl);background:var(--dsw-alias-settings-card-fill);min-width:0;overflow:hidden}.dPDnWG_card[data-open=true]{border-color:var(--dsw-alias-border-l3)}.dPDnWG_cardContent{box-sizing:border-box;width:100%;min-height:52px;color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;flex-direction:column;align-items:stretch;padding:12px 14px;display:flex}.dPDnWG_cardContent:hover,.dPDnWG_card[data-open=true]>.dPDnWG_cardContent{background:var(--dsw-alias-interactive-bg-hover)}.dPDnWG_cardContent:focus-visible{outline:var(--dsw-focus-ring-width) solid var(--dsw-focus-ring-color,var(--dsw-alias-state-business-primary));outline-offset:-2px}.dPDnWG_cardMainRow{justify-content:space-between;align-items:center;gap:12px;min-width:0;display:flex}.dPDnWG_cardTitle,.dPDnWG_cardIdentity{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.dPDnWG_cardTitle{flex:1;min-width:0;font-size:14px;font-weight:600;line-height:20px}.dPDnWG_cardIdentity,.dPDnWG_entryValue{font-family:var(--ds-font-family-code);font-size:12px;line-height:18px}.dPDnWG_cardIdentity{width:100%;color:var(--dsw-alias-label-tertiary);display:block}.dPDnWG_cardTrailing{color:var(--dsw-alias-label-tertiary);flex:none;align-items:center;gap:7px;display:inline-flex}.dPDnWG_phaseDot{flex:none;display:inline-flex}.dPDnWG_group{flex-direction:column;gap:10px;display:flex}.dPDnWG_groupTitleRow{align-items:center;gap:8px;min-height:32px;display:flex}.dPDnWG_group+.dPDnWG_group{border-top:.5px solid var(--dsw-alias-border-l2);padding-top:14px}.dPDnWG_headerEnd{margin-left:auto}.dPDnWG_groupToggle{color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;flex:none;align-items:center;gap:8px;padding:0;display:flex}.dPDnWG_groupToggle:focus-visible{outline:var(--dsw-focus-ring-width) solid var(--dsw-focus-ring-color,var(--dsw-alias-state-business-primary));outline-offset:2px}.dPDnWG_groupToggle>.dPDnWG_chevron{transform:rotate(-90deg)}.dPDnWG_groupToggle[aria-expanded=true]>.dPDnWG_chevron{transform:none}.dPDnWG_groupTitle{color:var(--dsw-alias-label-primary);font-size:14px;font-weight:400;line-height:22px}.dPDnWG_groupSub{color:var(--dsw-alias-label-tertiary);font-variant-numeric:tabular-nums;flex-wrap:wrap;gap:4px 8px;margin:-6px 0 0 20px;font-size:12px;line-height:18px;display:flex}.dPDnWG_failedCount{color:var(--dsw-alias-state-error-primary)}.dPDnWG_switcher{white-space:nowrap;border-radius:var(--dsw-radius-md);background:var(--dsw-alias-bg-module-platform);height:36px;color:var(--dsw-alias-label-primary);font:inherit;cursor:pointer;border:none;flex:none;align-items:center;gap:12px;padding:0 14px;font-size:14px;line-height:22px;display:inline-flex}.dPDnWG_switcher:hover{background:var(--dsw-alias-interactive-bg-hover)}.dPDnWG_switcher:focus-visible{outline:var(--dsw-focus-ring-width) solid var(--dsw-focus-ring-color,var(--dsw-alias-state-business-primary));outline-offset:2px}.dPDnWG_switcher>.dPDnWG_chevron{flex:none}.dPDnWG_switcherLabel{text-overflow:ellipsis;max-width:240px;overflow:hidden}.dPDnWG_groupBody{flex-direction:column;gap:10px;display:flex}.dPDnWG_brokenNote{border-radius:var(--dsw-radius-lg);background:color-mix(in srgb, var(--dsw-alias-state-error-primary) 8%, transparent);color:var(--dsw-alias-state-error-primary);overflow-wrap:anywhere;white-space:pre-line;margin:0;padding:8px 10px;font-size:12.5px;line-height:18px}.dPDnWG_hint{color:var(--dsw-alias-label-tertiary);flex-wrap:wrap;align-items:baseline;gap:4px 8px;margin:0;font-size:12.5px;line-height:18px;display:flex}.dPDnWG_jumpLink{color:var(--dsw-alias-state-business-primary);font:inherit;cursor:pointer;background:0 0;border:0;padding:0;font-size:12.5px}.dPDnWG_enabledIn{flex-wrap:wrap;align-items:baseline;gap:4px 10px;display:flex}.dPDnWG_card[data-failed=true]{border-color:color-mix(in srgb, var(--dsw-alias-state-error-primary) 45%, transparent)}.dPDnWG_chevron{color:var(--dsw-alias-label-tertiary);flex:none}.dPDnWG_card[data-open=true] .dPDnWG_chevron{transform:rotate(180deg)}.dPDnWG_cardDetails{border-top:.5px solid var(--dsw-alias-border-l2);background:var(--dsw-alias-bg-module-platform);padding:10px 14px 12px}.dPDnWG_entryValue{overflow-wrap:anywhere;color:var(--dsw-alias-label-primary);display:block}.dPDnWG_details{grid-template-columns:76px minmax(0,1fr);gap:6px 10px;margin:8px 0 0;display:grid}.dPDnWG_details div{display:contents}.dPDnWG_details dt{color:var(--dsw-alias-label-tertiary);font-size:11px;line-height:17px}.dPDnWG_details dd{overflow-wrap:anywhere;min-width:0;color:var(--dsw-alias-label-secondary);margin:0;font-size:12px;line-height:17px}.dPDnWG_visuallyHidden{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}@media (prefers-reduced-motion:no-preference){.dPDnWG_chevron{transition:transform .14s var(--ds-ease-in-out)}}@media (width<=680px){.dPDnWG_cards{grid-template-columns:minmax(0,1fr)}}";
58
58
  const tagId = "@deepseek-ai/dsh-client-ui-settings-plugin-inventory/PluginInventorySettingsTab.module.css";
59
59
  if (typeof document !== "undefined" && document.querySelector("style[data-plugin-css=" + JSON.stringify(tagId) + "]") === null) {
60
60
  const tag = document.createElement("style");
@@ -167,7 +167,7 @@ window.__ModuleLoader__.load({
167
167
  const SCROLLBAR_LINGER_MS = 2e3;
168
168
  /** Format complete-build metadata for the local brand badge. */
169
169
  function localBuildVersion() {
170
- return `3.0.3-212a731-dirty`;
170
+ return `3.0.4-rc.1-4c599c2-dirty`;
171
171
  }
172
172
  /** Each panel row subscribes only to its own selection state. */
173
173
  function PanelRow({ id, label, wide, usePanelInfo, selectPanel, renderSlot }) {
@@ -1157,7 +1157,7 @@ window.__ModuleLoader__.load({
1157
1157
  var scrollbar_css_default = "body{--dsh-scrollbar-thumb:var(--dsw-alias-scrollbar-bg-l1);--dsh-scrollbar-thumb-hover:var(--dsw-alias-scrollbar-hover-l1);--dsh-scrollbar-thumb-border:0px;--dsh-scrollbar-track-margin:0px;--dsh-scrollbar-width:5px}@supports not selector(::-webkit-scrollbar){body,body *{scrollbar-width:thin;scrollbar-color:var(--dsh-scrollbar-thumb) transparent}}::-webkit-scrollbar{width:var(--dsh-scrollbar-width);height:var(--dsh-scrollbar-width)}::-webkit-scrollbar-track{margin-block:var(--dsh-scrollbar-track-margin);background:0 0}::-webkit-scrollbar-thumb{border:var(--dsh-scrollbar-thumb-border) solid transparent;corner-shape:round;background:var(--dsh-scrollbar-thumb);background-clip:content-box;border-radius:999px}::-webkit-scrollbar-thumb:hover{background-color:var(--dsh-scrollbar-thumb-hover)}::-webkit-scrollbar-corner{background:0 0}";
1158
1158
  //#endregion
1159
1159
  //#region \0dsh-inline-css:/Users/shiguifeng/IdeaProjects/chonggou/deepseek-harness/packages/client/ui-theme/src/styles/gradient-shadow-text.css.mjs
1160
- var gradient_shadow_text_css_default = "body{--dsw-linear-gradient-think:linear-gradient(180deg, #fff 20.19%, #fff0 100%);--dsw-linear-think-select:linear-gradient(180deg, #f5f6f7 20.19%, #f5f6f700 100%);--dsw-shadow-lv1:0 2px 4px 0 #0000000d;--dsw-shadow-lv1-blur:0 4px 12px 0 #00000005;--dsw-shadow-lv2:0 4px 12px 0 #00000005, 0 2px 8px 0 #0000000a;--dsw-shadow-lv3:0 0 1px 0 #0003, 0 0 4px 0 #00000005, 0 12px 32px 0 #00000014;--dsw-elevation-stroke-color:var(--dsw-alias-border-l4);--dsw-mask-blur:none;--dsw-menu-backdrop-filter:blur(40px) saturate(150%)}body[data-ds-dark-theme] [data-menu-material]{--dsw-elevation-stroke-color:var(--dsw-alias-border-l3)}body,body *{--dsw-elevation-stroke:0 0 0 .5px var(--dsw-elevation-stroke-color);--dsw-elevation-panel:var(--dsw-elevation-stroke), 0 3px 8px 0 #00000008, 0 0 16px 0 #00000005;--dsw-elevation-prominent:var(--dsw-elevation-stroke), 0 3px 8px 0 #0000000a, 0 0 20px 0 #0000000d;--dsw-elevation-soft:var(--dsw-elevation-stroke), 0 4px 16px 0 #00000008, 0 0 24px 0 #00000008}body[data-ds-dark-theme]{--dsw-linear-gradient-think:linear-gradient(180deg, #151517 20.19%, #15151700 100%);--dsw-linear-think-select:linear-gradient(180deg, #232325 20.19%, #23232500 100%)}body{--dsh-content-font-delta:calc(var(--dsh-content-font-size,14px) - 14px);--dsh-content-font-size-secondary:min(calc(var(--dsh-content-font-size,14px) - 1px), max(13px, calc(var(--dsh-content-font-size,14px) - 2px)));--dsh-content-font-delta-secondary:calc(var(--dsh-content-font-size-secondary) - 13px);--dsw-font-markdown-h1:700 calc(21px + var(--dsh-content-font-delta)) / calc(30px + var(--dsh-content-font-delta)) var(--dsw-font-family);--dsw-font-markdown-h1-font-family:var(--dsw-font-family);--dsw-font-markdown-h1-font-weight:700;--dsw-font-markdown-h1-line-height:calc(30px + var(--dsh-content-font-delta));--dsw-font-markdown-h1-font-size:calc(21px + var(--dsh-content-font-delta));--dsw-font-markdown-h1-font-style:normal;--dsw-font-markdown-h2:700 calc(19px + var(--dsh-content-font-delta)) / calc(28px + var(--dsh-content-font-delta)) var(--dsw-font-family);--dsw-font-markdown-h2-font-family:var(--dsw-font-family);--dsw-font-markdown-h2-font-weight:700;--dsw-font-markdown-h2-line-height:calc(28px + var(--dsh-content-font-delta));--dsw-font-markdown-h2-font-size:calc(19px + var(--dsh-content-font-delta));--dsw-font-markdown-h2-font-style:normal;--dsw-font-markdown-h3:700 calc(18px + var(--dsh-content-font-delta)) / calc(26px + var(--dsh-content-font-delta)) var(--dsw-font-family);--dsw-font-markdown-h3-font-family:var(--dsw-font-family);--dsw-font-markdown-h3-font-weight:700;--dsw-font-markdown-h3-line-height:calc(26px + var(--dsh-content-font-delta));--dsw-font-markdown-h3-font-size:calc(18px + var(--dsh-content-font-delta));--dsw-font-markdown-h3-font-style:normal;--dsw-font-markdown-h4:600 var(--dsh-content-font-size,14px) / calc(24px + var(--dsh-content-font-delta)) var(--dsw-font-family);--dsw-font-markdown-h4-font-family:var(--dsw-font-family);--dsw-font-markdown-h4-font-weight:600;--dsw-font-markdown-h4-line-height:calc(24px + var(--dsh-content-font-delta));--dsw-font-markdown-h4-font-size:var(--dsh-content-font-size,14px);--dsw-font-markdown-h4-font-style:normal;--dsw-font-markdown-base:var(--dsh-content-font-size,14px) / calc(24px + var(--dsh-content-font-delta)) var(--dsw-font-family);--dsw-font-markdown-base-font-family:var(--dsw-font-family);--dsw-font-markdown-base-font-weight:400;--dsw-font-markdown-base-line-height:calc(24px + var(--dsh-content-font-delta));--dsw-font-markdown-base-font-size:var(--dsh-content-font-size,14px);--dsw-font-markdown-base-font-style:normal;--dsw-font-markdown-base-strong:600 var(--dsh-content-font-size,14px) / calc(24px + var(--dsh-content-font-delta)) var(--dsw-font-family);--dsw-font-markdown-base-strong-font-family:var(--dsw-font-family);--dsw-font-markdown-base-strong-font-weight:600;--dsw-font-markdown-base-strong-line-height:calc(24px + var(--dsh-content-font-delta));--dsw-font-markdown-base-strong-font-size:var(--dsh-content-font-size,14px);--dsw-font-markdown-base-strong-font-style:normal;--dsw-font-markdown-base-italic:italic var(--dsh-content-font-size,14px) / calc(24px + var(--dsh-content-font-delta)) var(--dsw-font-family);--dsw-font-markdown-base-italic-font-family:var(--dsw-font-family);--dsw-font-markdown-base-italic-font-weight:400;--dsw-font-markdown-base-italic-line-height:calc(24px + var(--dsh-content-font-delta));--dsw-font-markdown-base-italic-font-size:var(--dsh-content-font-size,14px);--dsw-font-markdown-base-italic-font-style:italic;--dsw-font-markdown-base-strong-italic:italic 600 var(--dsh-content-font-size,14px) / calc(24px + var(--dsh-content-font-delta)) var(--dsw-font-family);--dsw-font-markdown-base-strong-italic-font-family:var(--dsw-font-family);--dsw-font-markdown-base-strong-italic-font-weight:600;--dsw-font-markdown-base-strong-italic-line-height:calc(24px + var(--dsh-content-font-delta));--dsw-font-markdown-base-strong-italic-font-size:var(--dsh-content-font-size,14px);--dsw-font-markdown-base-strong-italic-font-style:italic;--dsw-font-markdown-table:var(--dsh-content-font-size-secondary,13px)/calc(22px + var(--dsh-content-font-delta-secondary,0px)) var(--dsw-font-family);--dsw-font-markdown-table-font-family:var(--dsw-font-family);--dsw-font-markdown-table-font-weight:400;--dsw-font-markdown-table-line-height:calc(22px + var(--dsh-content-font-delta-secondary,0px));--dsw-font-markdown-table-font-size:var(--dsh-content-font-size-secondary,13px);--dsw-font-markdown-table-font-style:normal;--dsw-font-markdown-table-head:500 var(--dsh-content-font-size-secondary,13px)/calc(22px + var(--dsh-content-font-delta-secondary,0px)) var(--dsw-font-family);--dsw-font-markdown-table-head-font-family:var(--dsw-font-family);--dsw-font-markdown-table-head-font-weight:500;--dsw-font-markdown-table-head-line-height:calc(22px + var(--dsh-content-font-delta-secondary,0px));--dsw-font-markdown-table-head-font-size:var(--dsh-content-font-size-secondary,13px);--dsw-font-markdown-table-head-font-style:normal;--dsw-font-markdown-small:12px/20px var(--dsw-font-family);--dsw-font-markdown-small-font-family:var(--dsw-font-family);--dsw-font-markdown-small-font-weight:400;--dsw-font-markdown-small-line-height:20px;--dsw-font-markdown-small-font-size:12px;--dsw-font-markdown-small-font-style:normal;--dsw-font-markdown-small-strong:600 12px/20px var(--dsw-font-family);--dsw-font-markdown-small-strong-font-family:var(--dsw-font-family);--dsw-font-markdown-small-strong-font-weight:600;--dsw-font-markdown-small-strong-line-height:20px;--dsw-font-markdown-small-strong-font-size:12px;--dsw-font-markdown-small-strong-font-style:normal;--dsw-font-markdown-small-italic:italic 12px/20px var(--dsw-font-family);--dsw-font-markdown-small-italic-font-family:var(--dsw-font-family);--dsw-font-markdown-small-italic-font-weight:400;--dsw-font-markdown-small-italic-line-height:20px;--dsw-font-markdown-small-italic-font-size:12px;--dsw-font-markdown-small-italic-font-style:italic;--dsw-font-markdown-small-strong-italic:italic 600 12px/20px var(--dsw-font-family);--dsw-font-markdown-small-strong-italic-font-family:var(--dsw-font-family);--dsw-font-markdown-small-strong-italic-font-weight:600;--dsw-font-markdown-small-strong-italic-line-height:20px;--dsw-font-markdown-small-strong-italic-font-size:12px;--dsw-font-markdown-small-strong-italic-font-style:italic;--dsw-font-markdown-code:12px/19px var(--ds-font-family-code);--dsw-font-markdown-code-font-family:var(--ds-font-family-code);--dsw-font-markdown-code-font-weight:400;--dsw-font-markdown-code-line-height:19px;--dsw-font-markdown-code-font-size:12px;--dsw-font-markdown-code-font-style:normal;--dsw-font-markdown-code-block:11px/19px var(--ds-font-family-code);--dsw-font-markdown-code-block-font-family:var(--ds-font-family-code);--dsw-font-markdown-code-block-font-weight:400;--dsw-font-markdown-code-block-line-height:19px;--dsw-font-markdown-code-block-font-size:11px;--dsw-font-markdown-code-block-font-style:normal;--dsw-font-markdown-code-block-small:11px/16px var(--ds-font-family-code);--dsw-font-markdown-code-block-small-font-family:var(--ds-font-family-code);--dsw-font-markdown-code-block-small-font-weight:400;--dsw-font-markdown-code-block-small-line-height:16px;--dsw-font-markdown-code-block-small-font-size:11px;--dsw-font-markdown-code-block-small-font-style:normal;--dsw-font-xl-24:600 24px/32px var(--dsw-font-family);--dsw-font-xl-24-font-family:var(--dsw-font-family);--dsw-font-xl-24-font-weight:600;--dsw-font-xl-24-line-height:32px;--dsw-font-xl-24-font-size:24px;--dsw-font-xl-24-font-style:normal;--dsw-font-l-20:500 20px/28px var(--dsw-font-family);--dsw-font-l-20-font-family:var(--dsw-font-family);--dsw-font-l-20-font-weight:500;--dsw-font-l-20-line-height:28px;--dsw-font-l-20-font-size:20px;--dsw-font-l-20-font-style:normal;--dsw-font-m-18:500 16px/28px var(--dsw-font-family);--dsw-font-m-18-font-family:var(--dsw-font-family);--dsw-font-m-18-font-weight:500;--dsw-font-m-18-line-height:28px;--dsw-font-m-18-font-size:16px;--dsw-font-m-18-font-style:normal;--dsw-font-base-16:16px/24px var(--dsw-font-family);--dsw-font-base-16-font-family:var(--dsw-font-family);--dsw-font-base-16-font-weight:400;--dsw-font-base-16-line-height:24px;--dsw-font-base-16-font-size:16px;--dsw-font-base-16-font-style:normal;--dsw-font-base-strong-16:500 16px/24px var(--dsw-font-family);--dsw-font-base-strong-16-font-family:var(--dsw-font-family);--dsw-font-base-strong-16-font-weight:500;--dsw-font-base-strong-16-line-height:24px;--dsw-font-base-strong-16-font-size:16px;--dsw-font-base-strong-16-font-style:normal;--dsw-font-s-14:14px/22px var(--dsw-font-family);--dsw-font-s-14-font-family:var(--dsw-font-family);--dsw-font-s-14-font-weight:400;--dsw-font-s-14-line-height:22px;--dsw-font-s-14-font-size:14px;--dsw-font-s-14-font-style:normal;--dsw-font-s-strong-14:500 14px/22px var(--dsw-font-family);--dsw-font-s-strong-14-font-family:var(--dsw-font-family);--dsw-font-s-strong-14-font-weight:500;--dsw-font-s-strong-14-line-height:22px;--dsw-font-s-strong-14-font-size:14px;--dsw-font-s-strong-14-font-style:normal;--dsw-font-xs-13:13px/20px var(--dsw-font-family);--dsw-font-xs-13-font-family:var(--dsw-font-family);--dsw-font-xs-13-font-weight:400;--dsw-font-xs-13-line-height:20px;--dsw-font-xs-13-font-size:13px;--dsw-font-xs-13-font-style:normal;--dsw-font-xs-strong-13:500 13px/20px var(--dsw-font-family);--dsw-font-xs-strong-13-font-family:var(--dsw-font-family);--dsw-font-xs-strong-13-font-weight:500;--dsw-font-xs-strong-13-line-height:20px;--dsw-font-xs-strong-13-font-size:13px;--dsw-font-xs-strong-13-font-style:normal;--dsw-font-xxs-12:12px/18px var(--dsw-font-family);--dsw-font-xxs-12-font-family:var(--dsw-font-family);--dsw-font-xxs-12-font-weight:400;--dsw-font-xxs-12-line-height:18px;--dsw-font-xxs-12-font-size:12px;--dsw-font-xxs-12-font-style:normal;--dsw-font-xxs-strong-12:500 12px/18px var(--dsw-font-family);--dsw-font-xxs-strong-12-font-family:var(--dsw-font-family);--dsw-font-xxs-strong-12-font-weight:500;--dsw-font-xxs-strong-12-line-height:18px;--dsw-font-xxs-strong-12-font-size:12px;--dsw-font-xxs-strong-12-font-style:normal;--dsw-font-xxxs-11:11px/14px var(--dsw-font-family);--dsw-font-xxxs-11-font-family:var(--dsw-font-family);--dsw-font-xxxs-11-font-weight:400;--dsw-font-xxxs-11-line-height:14px;--dsw-font-xxxs-11-font-size:11px;--dsw-font-xxxs-11-font-style:normal;--dsw-font-xxxs-strong-11:500 11px/14px var(--dsw-font-family);--dsw-font-xxxs-strong-11-font-family:var(--dsw-font-family);--dsw-font-xxxs-strong-11-font-weight:500;--dsw-font-xxxs-strong-11-line-height:14px;--dsw-font-xxxs-strong-11-font-size:11px;--dsw-font-xxxs-strong-11-font-style:normal}";
1160
+ var gradient_shadow_text_css_default = "body{--dsw-linear-gradient-think:linear-gradient(180deg, #fff 20.19%, #fff0 100%);--dsw-linear-think-select:linear-gradient(180deg, #f5f6f7 20.19%, #f5f6f700 100%);--dsw-shadow-lv1:0 2px 4px 0 #0000000d;--dsw-shadow-lv1-blur:0 4px 12px 0 #00000005;--dsw-shadow-lv2:0 4px 12px 0 #00000005, 0 2px 8px 0 #0000000a;--dsw-shadow-lv3:0 0 1px 0 #0003, 0 0 4px 0 #00000005, 0 12px 32px 0 #00000014;--dsw-elevation-stroke-color:var(--dsw-alias-border-l4);--dsw-mask-blur:none;--dsw-menu-backdrop-filter:blur(40px) saturate(150%)}body[data-ds-dark-theme] [data-menu-material]{--dsw-elevation-stroke-color:var(--dsw-alias-border-l3)}body,body *{--dsw-elevation-stroke:0 0 0 .5px var(--dsw-elevation-stroke-color);--dsw-elevation-panel:var(--dsw-elevation-stroke), 0 3px 8px 0 #00000008, 0 0 16px 0 #00000005;--dsw-elevation-prominent:var(--dsw-elevation-stroke), 0 3px 8px 0 #0000000a, 0 0 20px 0 #0000000d;--dsw-elevation-soft:var(--dsw-elevation-stroke), 0 4px 16px 0 #00000008, 0 0 24px 0 #00000008}body[data-ds-dark-theme]{--dsw-linear-gradient-think:linear-gradient(180deg, #151517 20.19%, #15151700 100%);--dsw-linear-think-select:linear-gradient(180deg, #232325 20.19%, #23232500 100%)}body{--dsh-content-font-delta:calc(var(--dsh-content-font-size,14px) - 14px);--dsh-content-font-size-secondary:min(calc(var(--dsh-content-font-size,14px) - 1px), max(13px, calc(var(--dsh-content-font-size,14px) - 2px)));--dsh-content-font-delta-secondary:calc(var(--dsh-content-font-size-secondary) - 13px);--dsw-font-markdown-h1:600 calc(18px + var(--dsh-content-font-delta)) / calc(28px + var(--dsh-content-font-delta)) var(--dsw-font-family);--dsw-font-markdown-h1-font-family:var(--dsw-font-family);--dsw-font-markdown-h1-font-weight:600;--dsw-font-markdown-h1-line-height:calc(28px + var(--dsh-content-font-delta));--dsw-font-markdown-h1-font-size:calc(18px + var(--dsh-content-font-delta));--dsw-font-markdown-h1-font-style:normal;--dsw-font-markdown-h2:600 calc(16px + var(--dsh-content-font-delta)) / calc(26px + var(--dsh-content-font-delta)) var(--dsw-font-family);--dsw-font-markdown-h2-font-family:var(--dsw-font-family);--dsw-font-markdown-h2-font-weight:600;--dsw-font-markdown-h2-line-height:calc(26px + var(--dsh-content-font-delta));--dsw-font-markdown-h2-font-size:calc(16px + var(--dsh-content-font-delta));--dsw-font-markdown-h2-font-style:normal;--dsw-font-markdown-h3:600 calc(15px + var(--dsh-content-font-delta)) / calc(25px + var(--dsh-content-font-delta)) var(--dsw-font-family);--dsw-font-markdown-h3-font-family:var(--dsw-font-family);--dsw-font-markdown-h3-font-weight:600;--dsw-font-markdown-h3-line-height:calc(25px + var(--dsh-content-font-delta));--dsw-font-markdown-h3-font-size:calc(15px + var(--dsh-content-font-delta));--dsw-font-markdown-h3-font-style:normal;--dsw-font-markdown-h4:600 var(--dsh-content-font-size,14px) / calc(24px + var(--dsh-content-font-delta)) var(--dsw-font-family);--dsw-font-markdown-h4-font-family:var(--dsw-font-family);--dsw-font-markdown-h4-font-weight:600;--dsw-font-markdown-h4-line-height:calc(24px + var(--dsh-content-font-delta));--dsw-font-markdown-h4-font-size:var(--dsh-content-font-size,14px);--dsw-font-markdown-h4-font-style:normal;--dsw-font-markdown-base:var(--dsh-content-font-size,14px) / calc(24px + var(--dsh-content-font-delta)) var(--dsw-font-family);--dsw-font-markdown-base-font-family:var(--dsw-font-family);--dsw-font-markdown-base-font-weight:400;--dsw-font-markdown-base-line-height:calc(24px + var(--dsh-content-font-delta));--dsw-font-markdown-base-font-size:var(--dsh-content-font-size,14px);--dsw-font-markdown-base-font-style:normal;--dsw-font-markdown-base-strong:600 var(--dsh-content-font-size,14px) / calc(24px + var(--dsh-content-font-delta)) var(--dsw-font-family);--dsw-font-markdown-base-strong-font-family:var(--dsw-font-family);--dsw-font-markdown-base-strong-font-weight:600;--dsw-font-markdown-base-strong-line-height:calc(24px + var(--dsh-content-font-delta));--dsw-font-markdown-base-strong-font-size:var(--dsh-content-font-size,14px);--dsw-font-markdown-base-strong-font-style:normal;--dsw-font-markdown-base-italic:italic var(--dsh-content-font-size,14px) / calc(24px + var(--dsh-content-font-delta)) var(--dsw-font-family);--dsw-font-markdown-base-italic-font-family:var(--dsw-font-family);--dsw-font-markdown-base-italic-font-weight:400;--dsw-font-markdown-base-italic-line-height:calc(24px + var(--dsh-content-font-delta));--dsw-font-markdown-base-italic-font-size:var(--dsh-content-font-size,14px);--dsw-font-markdown-base-italic-font-style:italic;--dsw-font-markdown-base-strong-italic:italic 600 var(--dsh-content-font-size,14px) / calc(24px + var(--dsh-content-font-delta)) var(--dsw-font-family);--dsw-font-markdown-base-strong-italic-font-family:var(--dsw-font-family);--dsw-font-markdown-base-strong-italic-font-weight:600;--dsw-font-markdown-base-strong-italic-line-height:calc(24px + var(--dsh-content-font-delta));--dsw-font-markdown-base-strong-italic-font-size:var(--dsh-content-font-size,14px);--dsw-font-markdown-base-strong-italic-font-style:italic;--dsw-font-markdown-table:var(--dsw-font-markdown-base);--dsw-font-markdown-table-font-family:var(--dsw-font-family);--dsw-font-markdown-table-font-weight:400;--dsw-font-markdown-table-line-height:var(--dsw-font-markdown-base-line-height);--dsw-font-markdown-table-font-size:var(--dsw-font-markdown-base-font-size);--dsw-font-markdown-table-font-style:normal;--dsw-font-markdown-table-head:500 var(--dsw-font-markdown-base-font-size)/var(--dsw-font-markdown-base-line-height) var(--dsw-font-family);--dsw-font-markdown-table-head-font-family:var(--dsw-font-family);--dsw-font-markdown-table-head-font-weight:500;--dsw-font-markdown-table-head-line-height:var(--dsw-font-markdown-base-line-height);--dsw-font-markdown-table-head-font-size:var(--dsw-font-markdown-base-font-size);--dsw-font-markdown-table-head-font-style:normal;--dsw-font-markdown-small:12px/20px var(--dsw-font-family);--dsw-font-markdown-small-font-family:var(--dsw-font-family);--dsw-font-markdown-small-font-weight:400;--dsw-font-markdown-small-line-height:20px;--dsw-font-markdown-small-font-size:12px;--dsw-font-markdown-small-font-style:normal;--dsw-font-markdown-small-strong:600 12px/20px var(--dsw-font-family);--dsw-font-markdown-small-strong-font-family:var(--dsw-font-family);--dsw-font-markdown-small-strong-font-weight:600;--dsw-font-markdown-small-strong-line-height:20px;--dsw-font-markdown-small-strong-font-size:12px;--dsw-font-markdown-small-strong-font-style:normal;--dsw-font-markdown-small-italic:italic 12px/20px var(--dsw-font-family);--dsw-font-markdown-small-italic-font-family:var(--dsw-font-family);--dsw-font-markdown-small-italic-font-weight:400;--dsw-font-markdown-small-italic-line-height:20px;--dsw-font-markdown-small-italic-font-size:12px;--dsw-font-markdown-small-italic-font-style:italic;--dsw-font-markdown-small-strong-italic:italic 600 12px/20px var(--dsw-font-family);--dsw-font-markdown-small-strong-italic-font-family:var(--dsw-font-family);--dsw-font-markdown-small-strong-italic-font-weight:600;--dsw-font-markdown-small-strong-italic-line-height:20px;--dsw-font-markdown-small-strong-italic-font-size:12px;--dsw-font-markdown-small-strong-italic-font-style:italic;--dsw-font-markdown-code:12px/19px var(--ds-font-family-code);--dsw-font-markdown-code-font-family:var(--ds-font-family-code);--dsw-font-markdown-code-font-weight:400;--dsw-font-markdown-code-line-height:19px;--dsw-font-markdown-code-font-size:12px;--dsw-font-markdown-code-font-style:normal;--dsw-font-markdown-code-block:calc(13px + var(--dsh-content-font-delta))/calc(20px + var(--dsh-content-font-delta)) var(--ds-font-family-code);--dsw-font-markdown-code-block-font-family:var(--ds-font-family-code);--dsw-font-markdown-code-block-font-weight:400;--dsw-font-markdown-code-block-line-height:calc(20px + var(--dsh-content-font-delta));--dsw-font-markdown-code-block-font-size:calc(13px + var(--dsh-content-font-delta));--dsw-font-markdown-code-block-font-style:normal;--dsw-font-markdown-code-block-small:11px/16px var(--ds-font-family-code);--dsw-font-markdown-code-block-small-font-family:var(--ds-font-family-code);--dsw-font-markdown-code-block-small-font-weight:400;--dsw-font-markdown-code-block-small-line-height:16px;--dsw-font-markdown-code-block-small-font-size:11px;--dsw-font-markdown-code-block-small-font-style:normal;--dsw-font-xl-24:600 24px/32px var(--dsw-font-family);--dsw-font-xl-24-font-family:var(--dsw-font-family);--dsw-font-xl-24-font-weight:600;--dsw-font-xl-24-line-height:32px;--dsw-font-xl-24-font-size:24px;--dsw-font-xl-24-font-style:normal;--dsw-font-l-20:500 20px/28px var(--dsw-font-family);--dsw-font-l-20-font-family:var(--dsw-font-family);--dsw-font-l-20-font-weight:500;--dsw-font-l-20-line-height:28px;--dsw-font-l-20-font-size:20px;--dsw-font-l-20-font-style:normal;--dsw-font-m-18:500 16px/28px var(--dsw-font-family);--dsw-font-m-18-font-family:var(--dsw-font-family);--dsw-font-m-18-font-weight:500;--dsw-font-m-18-line-height:28px;--dsw-font-m-18-font-size:16px;--dsw-font-m-18-font-style:normal;--dsw-font-base-16:16px/24px var(--dsw-font-family);--dsw-font-base-16-font-family:var(--dsw-font-family);--dsw-font-base-16-font-weight:400;--dsw-font-base-16-line-height:24px;--dsw-font-base-16-font-size:16px;--dsw-font-base-16-font-style:normal;--dsw-font-base-strong-16:500 16px/24px var(--dsw-font-family);--dsw-font-base-strong-16-font-family:var(--dsw-font-family);--dsw-font-base-strong-16-font-weight:500;--dsw-font-base-strong-16-line-height:24px;--dsw-font-base-strong-16-font-size:16px;--dsw-font-base-strong-16-font-style:normal;--dsw-font-s-14:14px/22px var(--dsw-font-family);--dsw-font-s-14-font-family:var(--dsw-font-family);--dsw-font-s-14-font-weight:400;--dsw-font-s-14-line-height:22px;--dsw-font-s-14-font-size:14px;--dsw-font-s-14-font-style:normal;--dsw-font-s-strong-14:500 14px/22px var(--dsw-font-family);--dsw-font-s-strong-14-font-family:var(--dsw-font-family);--dsw-font-s-strong-14-font-weight:500;--dsw-font-s-strong-14-line-height:22px;--dsw-font-s-strong-14-font-size:14px;--dsw-font-s-strong-14-font-style:normal;--dsw-font-xs-13:13px/20px var(--dsw-font-family);--dsw-font-xs-13-font-family:var(--dsw-font-family);--dsw-font-xs-13-font-weight:400;--dsw-font-xs-13-line-height:20px;--dsw-font-xs-13-font-size:13px;--dsw-font-xs-13-font-style:normal;--dsw-font-xs-strong-13:500 13px/20px var(--dsw-font-family);--dsw-font-xs-strong-13-font-family:var(--dsw-font-family);--dsw-font-xs-strong-13-font-weight:500;--dsw-font-xs-strong-13-line-height:20px;--dsw-font-xs-strong-13-font-size:13px;--dsw-font-xs-strong-13-font-style:normal;--dsw-font-xxs-12:12px/18px var(--dsw-font-family);--dsw-font-xxs-12-font-family:var(--dsw-font-family);--dsw-font-xxs-12-font-weight:400;--dsw-font-xxs-12-line-height:18px;--dsw-font-xxs-12-font-size:12px;--dsw-font-xxs-12-font-style:normal;--dsw-font-xxs-strong-12:500 12px/18px var(--dsw-font-family);--dsw-font-xxs-strong-12-font-family:var(--dsw-font-family);--dsw-font-xxs-strong-12-font-weight:500;--dsw-font-xxs-strong-12-line-height:18px;--dsw-font-xxs-strong-12-font-size:12px;--dsw-font-xxs-strong-12-font-style:normal;--dsw-font-xxxs-11:11px/14px var(--dsw-font-family);--dsw-font-xxxs-11-font-family:var(--dsw-font-family);--dsw-font-xxxs-11-font-weight:400;--dsw-font-xxxs-11-line-height:14px;--dsw-font-xxxs-11-font-size:11px;--dsw-font-xxxs-11-font-style:normal;--dsw-font-xxxs-strong-11:500 11px/14px var(--dsw-font-family);--dsw-font-xxxs-strong-11-font-family:var(--dsw-font-family);--dsw-font-xxxs-strong-11-font-weight:500;--dsw-font-xxxs-strong-11-line-height:14px;--dsw-font-xxxs-strong-11-font-size:11px;--dsw-font-xxxs-strong-11-font-style:normal}";
1161
1161
  //#endregion
1162
1162
  //#region \0dsh-inline-css:/Users/shiguifeng/IdeaProjects/chonggou/deepseek-harness/packages/client/ui-theme/src/styles/shiki.css.mjs
1163
1163
  var shiki_css_default = ":root{--shiki-foreground:var(--dsw-alias-label-primary);--shiki-background:var(--dsw-alias-markdown-code-block);--shiki-token-constant:#1c7ed6;--shiki-token-string:#2f9e44;--shiki-token-comment:#868e96;--shiki-token-keyword:#d6336c;--shiki-token-parameter:#e8590c;--shiki-token-function:#6741d9;--shiki-token-string-expression:#2b8a3e;--shiki-token-punctuation:#495057;--shiki-token-link:#1971c2}body[data-ds-dark-theme]{--shiki-token-constant:#4dabf7;--shiki-token-string:#69db7c;--shiki-token-comment:#adb5bd;--shiki-token-keyword:#faa2c1;--shiki-token-parameter:#ffa94d;--shiki-token-function:#b197fc;--shiki-token-string-expression:#8ce99a;--shiki-token-punctuation:#ced4da;--shiki-token-link:#74c0fc}";
@@ -1977,7 +1977,12 @@ window.__ModuleLoader__.load({
1977
1977
  portal: true,
1978
1978
  getAnchorRect
1979
1979
  }),
1980
- open && !addIsTheOnlyEntry && !menuIsEmpty && workspaceSnapshot.phase === "pending" && (0, react_jsx_runtime.jsx)("div", {
1980
+ open && !addIsTheOnlyEntry && !menuIsEmpty && workspaceSnapshot.state === "error" && (0, react_jsx_runtime.jsx)("div", {
1981
+ className: WorkspacePicker_module_css_default.menuStatus,
1982
+ role: "alert",
1983
+ children: t("picker.failed", { message: workspaceSnapshot.error?.message ?? "" })
1984
+ }),
1985
+ open && !addIsTheOnlyEntry && !menuIsEmpty && workspaceSnapshot.phase === "pending" && workspaceSnapshot.state !== "error" && (0, react_jsx_runtime.jsx)("div", {
1981
1986
  className: WorkspacePicker_module_css_default.menuStatus,
1982
1987
  role: "status",
1983
1988
  children: t("picker.loading")
@@ -3900,6 +3905,7 @@ window.__ModuleLoader__.load({
3900
3905
  "search.hasMore": "仅显示前 {n} 条结果,请缩小搜索范围。",
3901
3906
  "menu.addWorkspace": "添加工作区…",
3902
3907
  "picker.loading": "正在加载工作区…",
3908
+ "picker.failed": "工作区同步失败:{message}。请重新加载页面。",
3903
3909
  "conflict.named": "已存在名为“{name}”的工作区。",
3904
3910
  "folderError.title": "无法打开文件夹",
3905
3911
  "folderError.retry": "重新选择",
@@ -4014,6 +4020,7 @@ window.__ModuleLoader__.load({
4014
4020
  "search.hasMore": "Showing the first {n} results. Narrow your search.",
4015
4021
  "menu.addWorkspace": "Add workspace…",
4016
4022
  "picker.loading": "Loading workspaces…",
4023
+ "picker.failed": "Workspace sync failed: {message}. Reload the page to reconnect.",
4017
4024
  "conflict.named": "A workspace named “{name}” already exists.",
4018
4025
  "folderError.title": "Couldn’t open folder",
4019
4026
  "folderError.retry": "Choose again",
@@ -43,6 +43,7 @@ export declare const zh: {
43
43
  'search.hasMore': string;
44
44
  'menu.addWorkspace': string;
45
45
  'picker.loading': string;
46
+ 'picker.failed': string;
46
47
  'conflict.named': string;
47
48
  'folderError.title': string;
48
49
  'folderError.retry': string;
@@ -159,6 +160,7 @@ export declare const en: {
159
160
  'search.hasMore': string;
160
161
  'menu.addWorkspace': string;
161
162
  'picker.loading': string;
163
+ 'picker.failed': string;
162
164
  'conflict.named': string;
163
165
  'folderError.title': string;
164
166
  'folderError.retry': string;
@@ -0,0 +1,35 @@
1
+ import { Service } from "@deepseek-ai/cordis";
2
+ //#region lib/types/index.js
3
+ /**
4
+ * Exclusive named registration for the computer-use capability.
5
+ * @module @deepseek-ai/dsh-computer-use
6
+ */
7
+ /** Owns one optional provider registration in the shared computer-use service. */
8
+ var ComputerUseRegistry = class extends Service {
9
+ registration;
10
+ constructor(ctx) {
11
+ super(ctx, "computerUse");
12
+ }
13
+ /** Name of the registered provider, including while its resources are closing. */
14
+ get providerName() {
15
+ return this.registration;
16
+ }
17
+ /**
18
+ * Reserve the sole provider slot until the contribution is disposed.
19
+ * A second registration fails even when it repeats the current name. Providers
20
+ * must stop their tools and await owned work before releasing this registration.
21
+ * @param name - provider-owned name used in registration diagnostics.
22
+ * @returns the effect disposer for this exact registration.
23
+ */
24
+ register(name) {
25
+ if (this.registration !== void 0) throw new Error(`computer use provider "${this.registration}" is already registered`);
26
+ return this.ctx.effect(() => {
27
+ this.registration = name;
28
+ return () => {
29
+ this.registration = void 0;
30
+ };
31
+ }, "computerUse.register()");
32
+ }
33
+ };
34
+ //#endregion
35
+ export { ComputerUseRegistry, ComputerUseRegistry as default };
@@ -0,0 +1,11 @@
1
+ /** Computer-use provider identities. @module @deepseek-ai/dsh-computer-use/brand */
2
+ import type { Branded } from '@deepseek-ai/dsh-brand';
3
+ /** Provider-owned name identifying a computer-use registration. */
4
+ export type ComputerUseProviderName = Branded<'ComputerUseProviderName'>;
5
+ /**
6
+ * Brand a provider-owned name without changing or validating it.
7
+ * @param name - name chosen by the provider implementation.
8
+ * @returns the same name with its computer-use provider brand.
9
+ */
10
+ export declare function ComputerUseProviderName(name: string): ComputerUseProviderName;
11
+ //# sourceMappingURL=brand.d.ts.map
@@ -0,0 +1,10 @@
1
+ /** Computer-use provider identities. @module @deepseek-ai/dsh-computer-use/brand */
2
+ /**
3
+ * Brand a provider-owned name without changing or validating it.
4
+ * @param name - name chosen by the provider implementation.
5
+ * @returns the same name with its computer-use provider brand.
6
+ */
7
+ export function ComputerUseProviderName(name) {
8
+ return name;
9
+ }
10
+ //# sourceMappingURL=brand.js.map
@@ -0,0 +1,28 @@
1
+ /**
2
+ * Exclusive named registration for the computer-use capability.
3
+ * @module @deepseek-ai/dsh-computer-use
4
+ */
5
+ import { Context, Service } from '@deepseek-ai/cordis';
6
+ import type { ComputerUseProviderName } from './brand.ts';
7
+ declare module '@deepseek-ai/cordis' {
8
+ interface Context {
9
+ computerUse: ComputerUseRegistry;
10
+ }
11
+ }
12
+ /** Owns one optional provider registration in the shared computer-use service. */
13
+ export declare class ComputerUseRegistry extends Service {
14
+ private registration;
15
+ constructor(ctx: Context);
16
+ /** Name of the registered provider, including while its resources are closing. */
17
+ get providerName(): ComputerUseProviderName | undefined;
18
+ /**
19
+ * Reserve the sole provider slot until the contribution is disposed.
20
+ * A second registration fails even when it repeats the current name. Providers
21
+ * must stop their tools and await owned work before releasing this registration.
22
+ * @param name - provider-owned name used in registration diagnostics.
23
+ * @returns the effect disposer for this exact registration.
24
+ */
25
+ register(name: ComputerUseProviderName): () => Promise<void>;
26
+ }
27
+ export default ComputerUseRegistry;
28
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1,36 @@
1
+ /**
2
+ * Exclusive named registration for the computer-use capability.
3
+ * @module @deepseek-ai/dsh-computer-use
4
+ */
5
+ import { Service } from '@deepseek-ai/cordis';
6
+ /** Owns one optional provider registration in the shared computer-use service. */
7
+ export class ComputerUseRegistry extends Service {
8
+ registration;
9
+ constructor(ctx) {
10
+ super(ctx, 'computerUse');
11
+ }
12
+ /** Name of the registered provider, including while its resources are closing. */
13
+ get providerName() {
14
+ return this.registration;
15
+ }
16
+ /**
17
+ * Reserve the sole provider slot until the contribution is disposed.
18
+ * A second registration fails even when it repeats the current name. Providers
19
+ * must stop their tools and await owned work before releasing this registration.
20
+ * @param name - provider-owned name used in registration diagnostics.
21
+ * @returns the effect disposer for this exact registration.
22
+ */
23
+ register(name) {
24
+ if (this.registration !== undefined) {
25
+ throw new Error(`computer use provider "${this.registration}" is already registered`);
26
+ }
27
+ return this.ctx.effect(() => {
28
+ this.registration = name;
29
+ return () => {
30
+ this.registration = undefined;
31
+ };
32
+ }, 'computerUse.register()');
33
+ }
34
+ }
35
+ export default ComputerUseRegistry;
36
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1,42 @@
1
+ {
2
+ "name": "@deepseek-ai/dsh-computer-use",
3
+ "description": "Exclusive named computer-use provider registration",
4
+ "version": "0.1.7-rc.2",
5
+ "publishConfig": {
6
+ "access": "public"
7
+ },
8
+ "repository": {
9
+ "type": "git",
10
+ "url": "git+https://github.com/deepseek-ai/deepseek-harness.git",
11
+ "directory": "packages/computer-use/computer-use"
12
+ },
13
+ "type": "module",
14
+ "main": "lib/index.js",
15
+ "types": "lib/types/index.d.ts",
16
+ "exports": {
17
+ ".": {
18
+ "types": "./lib/types/index.d.ts",
19
+ "default": "./lib/index.js"
20
+ },
21
+ "./src/*": "./src/*",
22
+ "./package.json": "./package.json",
23
+ "./brand": {
24
+ "types": "./lib/types/brand.d.ts",
25
+ "default": "./lib/types/brand.js"
26
+ }
27
+ },
28
+ "files": [
29
+ "lib/index.js",
30
+ "lib/types/**/*.js",
31
+ "lib/types/**/*.d.ts"
32
+ ],
33
+ "license": "MIT",
34
+ "peerDependencies": {
35
+ "@deepseek-ai/cordis": "workspace:~",
36
+ "@deepseek-ai/dsh-brand": "workspace:*"
37
+ },
38
+ "devDependencies": {
39
+ "@deepseek-ai/cordis": "workspace:~",
40
+ "@deepseek-ai/dsh-brand": "workspace:*"
41
+ }
42
+ }