@yadsh/dsh-qa-surface 0.17.0 → 0.18.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (185) hide show
  1. package/README.md +15 -3
  2. package/compatibility.json +1 -1
  3. package/lib/account-remotes.js +4 -0
  4. package/lib/account-remotes.js.map +1 -1
  5. package/lib/accounts/database.js +86 -1
  6. package/lib/accounts/database.js.map +1 -1
  7. package/lib/accounts/file.js.map +1 -1
  8. package/lib/accounts/store.js +111 -5
  9. package/lib/accounts/store.js.map +1 -1
  10. package/lib/accounts/token.js +8 -2
  11. package/lib/accounts/token.js.map +1 -1
  12. package/lib/admin/metrics.js +15 -2
  13. package/lib/admin/metrics.js.map +1 -1
  14. package/lib/admin/read-budget.js +28 -0
  15. package/lib/admin/read-budget.js.map +1 -0
  16. package/lib/admin/service.js +135 -40
  17. package/lib/admin/service.js.map +1 -1
  18. package/lib/admin/session-log.js +63 -4
  19. package/lib/admin/session-log.js.map +1 -1
  20. package/lib/chat-sharing/native-fence.js +20 -0
  21. package/lib/chat-sharing/native-fence.js.map +1 -1
  22. package/lib/chat-sharing/transport.js +8 -2
  23. package/lib/chat-sharing/transport.js.map +1 -1
  24. package/lib/chat-sharing/uploads.js +79 -6
  25. package/lib/chat-sharing/uploads.js.map +1 -1
  26. package/lib/cli.js +13 -0
  27. package/lib/cli.js.map +1 -1
  28. package/lib/client/QaAccountsController.js +61 -0
  29. package/lib/client/QaAccountsController.js.map +1 -1
  30. package/lib/client/QaRouteController.js +3 -1
  31. package/lib/client/QaRouteController.js.map +1 -1
  32. package/lib/client/QaSessionController.js +90 -26
  33. package/lib/client/QaSessionController.js.map +1 -1
  34. package/lib/client/QaSurface.js +40 -11
  35. package/lib/client/QaSurface.js.map +1 -1
  36. package/lib/client/account-sessions.js +74 -8
  37. package/lib/client/account-sessions.js.map +1 -1
  38. package/lib/client/admin/CapabilityPicker.js +50 -0
  39. package/lib/client/admin/CapabilityPicker.js.map +1 -0
  40. package/lib/client/admin/CoverageNotice.js +9 -0
  41. package/lib/client/admin/CoverageNotice.js.map +1 -0
  42. package/lib/client/admin/QaAdmin.js +3 -150
  43. package/lib/client/admin/QaAdmin.js.map +1 -1
  44. package/lib/client/admin/RoleEditor.js +46 -0
  45. package/lib/client/admin/RoleEditor.js.map +1 -0
  46. package/lib/client/admin/capability-selection.js +63 -0
  47. package/lib/client/admin/capability-selection.js.map +1 -0
  48. package/lib/client/admin/pages/Conversations.js +35 -17
  49. package/lib/client/admin/pages/Conversations.js.map +1 -1
  50. package/lib/client/admin/pages/Overview.js +3 -2
  51. package/lib/client/admin/pages/Overview.js.map +1 -1
  52. package/lib/client/admin/pages/Quality.js +77 -20
  53. package/lib/client/admin/pages/Quality.js.map +1 -1
  54. package/lib/client/admin/pages/SkillFiles.js +14 -3
  55. package/lib/client/admin/pages/SkillFiles.js.map +1 -1
  56. package/lib/client/admin/shared.js +68 -3
  57. package/lib/client/admin/shared.js.map +1 -1
  58. package/lib/client/components/QaAuthGate.js +31 -28
  59. package/lib/client/components/QaAuthGate.js.map +1 -1
  60. package/lib/client/components/QaChangelog.js +44 -0
  61. package/lib/client/components/QaChangelog.js.map +1 -1
  62. package/lib/client/components/QaComposer.js +27 -4
  63. package/lib/client/components/QaComposer.js.map +1 -1
  64. package/lib/client/components/QaFormItem.js +63 -0
  65. package/lib/client/components/QaFormItem.js.map +1 -0
  66. package/lib/client/components/QaInputForm.js +281 -0
  67. package/lib/client/components/QaInputForm.js.map +1 -0
  68. package/lib/client/components/QaModal.js +17 -4
  69. package/lib/client/components/QaModal.js.map +1 -1
  70. package/lib/client/forms-styles.js +14 -0
  71. package/lib/client/forms-styles.js.map +1 -0
  72. package/lib/client/forms.js +40 -0
  73. package/lib/client/forms.js.map +1 -0
  74. package/lib/client/index.js +15 -1
  75. package/lib/client/index.js.map +1 -1
  76. package/lib/client/oidc-browser.js +39 -0
  77. package/lib/client/oidc-browser.js.map +1 -0
  78. package/lib/client/panels/PanelHost.js +23 -1
  79. package/lib/client/panels/PanelHost.js.map +1 -1
  80. package/lib/client/settings/sections/interface.js +2 -1
  81. package/lib/client/settings/sections/interface.js.map +1 -1
  82. package/lib/client/settings/sections/status.js +3 -1
  83. package/lib/client/settings/sections/status.js.map +1 -1
  84. package/lib/client/styles.js +3 -3
  85. package/lib/client/types.js.map +1 -1
  86. package/lib/client.js +465 -72918
  87. package/lib/client.js.map +1 -1
  88. package/lib/config-resolvers/accounts.js +5 -4
  89. package/lib/config-resolvers/accounts.js.map +1 -1
  90. package/lib/config-resolvers/defaults.js +16 -0
  91. package/lib/config-resolvers/defaults.js.map +1 -1
  92. package/lib/config-resolvers/oidc.js +53 -0
  93. package/lib/config-resolvers/oidc.js.map +1 -0
  94. package/lib/config.js +71 -0
  95. package/lib/config.js.map +1 -1
  96. package/lib/forms/attachments.js +214 -0
  97. package/lib/forms/attachments.js.map +1 -0
  98. package/lib/forms/errors.js +37 -0
  99. package/lib/forms/errors.js.map +1 -0
  100. package/lib/forms/fingerprint.js +21 -0
  101. package/lib/forms/fingerprint.js.map +1 -0
  102. package/lib/forms/gate.js +125 -0
  103. package/lib/forms/gate.js.map +1 -0
  104. package/lib/forms/schema.js +182 -0
  105. package/lib/forms/schema.js.map +1 -0
  106. package/lib/forms/service.js +220 -0
  107. package/lib/forms/service.js.map +1 -0
  108. package/lib/forms/store.js +194 -0
  109. package/lib/forms/store.js.map +1 -0
  110. package/lib/forms/types.js +2 -0
  111. package/lib/forms/types.js.map +1 -0
  112. package/lib/forms/validation.js +113 -0
  113. package/lib/forms/validation.js.map +1 -0
  114. package/lib/index.js +227 -3
  115. package/lib/index.js.map +1 -1
  116. package/lib/oidc/http.js +30 -0
  117. package/lib/oidc/http.js.map +1 -0
  118. package/lib/oidc/service.js +250 -0
  119. package/lib/oidc/service.js.map +1 -0
  120. package/lib/qa-tools/activation-manager.js +24 -2
  121. package/lib/qa-tools/activation-manager.js.map +1 -1
  122. package/lib/qa-tools/catalog.js +11 -1
  123. package/lib/qa-tools/catalog.js.map +1 -1
  124. package/lib/qa-tools/index.js +27 -0
  125. package/lib/qa-tools/index.js.map +1 -1
  126. package/lib/qa-tools/request-user-form.js +121 -0
  127. package/lib/qa-tools/request-user-form.js.map +1 -0
  128. package/lib/resolve-config.js +2 -0
  129. package/lib/resolve-config.js.map +1 -1
  130. package/lib/secure-session.js +14 -8
  131. package/lib/secure-session.js.map +1 -1
  132. package/lib/typert.host.js +4587 -1101
  133. package/lib/typert.remote-client.d.ts +133 -3
  134. package/lib/typert.remote-client.js +4463 -1103
  135. package/lib/types/accounts/database.d.ts +8 -0
  136. package/lib/types/accounts/file.d.ts +2 -0
  137. package/lib/types/accounts/store.d.ts +17 -0
  138. package/lib/types/accounts/token.d.ts +3 -1
  139. package/lib/types/admin/metrics.d.ts +5 -1
  140. package/lib/types/admin/read-budget.d.ts +8 -0
  141. package/lib/types/admin/service.d.ts +17 -0
  142. package/lib/types/admin/session-log.d.ts +30 -1
  143. package/lib/types/chat-sharing/uploads.d.ts +2 -1
  144. package/lib/types/client/QaAccountsController.d.ts +4 -0
  145. package/lib/types/client/QaRouteController.d.ts +1 -0
  146. package/lib/types/client/QaSessionController.d.ts +12 -3
  147. package/lib/types/client/QaSurface.d.ts +2 -0
  148. package/lib/types/client/admin/CapabilityPicker.d.ts +14 -0
  149. package/lib/types/client/admin/CoverageNotice.d.ts +6 -0
  150. package/lib/types/client/admin/RoleEditor.d.ts +15 -0
  151. package/lib/types/client/admin/capability-selection.d.ts +27 -0
  152. package/lib/types/client/admin/shared.d.ts +39 -1
  153. package/lib/types/client/components/QaAuthGate.d.ts +2 -0
  154. package/lib/types/client/components/QaFormItem.d.ts +20 -0
  155. package/lib/types/client/components/QaInputForm.d.ts +18 -0
  156. package/lib/types/client/forms-styles.d.ts +2 -0
  157. package/lib/types/client/forms.d.ts +23 -0
  158. package/lib/types/client/oidc-browser.d.ts +12 -0
  159. package/lib/types/client/types.d.ts +7 -1
  160. package/lib/types/config-resolvers/oidc.d.ts +3 -0
  161. package/lib/types/forms/attachments.d.ts +48 -0
  162. package/lib/types/forms/errors.d.ts +11 -0
  163. package/lib/types/forms/fingerprint.d.ts +9 -0
  164. package/lib/types/forms/gate.d.ts +33 -0
  165. package/lib/types/forms/schema.d.ts +72 -0
  166. package/lib/types/forms/service.d.ts +15 -0
  167. package/lib/types/forms/store.d.ts +25 -0
  168. package/lib/types/forms/types.d.ts +215 -0
  169. package/lib/types/forms/validation.d.ts +20 -0
  170. package/lib/types/index.d.ts +28 -0
  171. package/lib/types/oidc/http.d.ts +5 -0
  172. package/lib/types/oidc/service.d.ts +30 -0
  173. package/lib/types/oidc.js +2 -0
  174. package/lib/types/oidc.js.map +1 -0
  175. package/lib/types/qa-tools/activation-manager.d.ts +5 -0
  176. package/lib/types/qa-tools/catalog.d.ts +4 -1
  177. package/lib/types/qa-tools/index.d.ts +5 -1
  178. package/lib/types/qa-tools/request-user-form.d.ts +5 -0
  179. package/lib/types/secure-session.d.ts +1 -0
  180. package/lib/types/types/accounts.d.ts +2 -0
  181. package/lib/types/types/admin.d.ts +6 -0
  182. package/lib/types/types/config.d.ts +6 -0
  183. package/lib/types/types/oidc.d.ts +36 -0
  184. package/lib/types/types.d.ts +2 -0
  185. package/package.json +57 -55
@@ -0,0 +1,36 @@
1
+ /** Server OIDC configuration. Secrets are referenced by environment name only. */
2
+ export interface QaOidcConfig {
3
+ readonly enabled?: boolean;
4
+ readonly issuer?: string;
5
+ readonly clientId?: string;
6
+ readonly clientSecretEnv?: string;
7
+ /** Exact public HTTPS callback URL, including any reverse proxy prefix. */
8
+ readonly redirectUri?: string;
9
+ readonly buttonLabel?: string;
10
+ readonly autoProvision?: boolean;
11
+ /** Client roles included in the signed ID token's resource_access claim. */
12
+ readonly requiredRole?: string;
13
+ readonly adminRole?: string;
14
+ readonly reviewerRole?: string;
15
+ /** Upper bound on QA access before another OIDC authentication. */
16
+ readonly sessionTtlSeconds?: number;
17
+ }
18
+ export interface ResolvedQaOidcConfig {
19
+ readonly enabled: boolean;
20
+ readonly issuer: string;
21
+ readonly clientId: string;
22
+ readonly clientSecretEnv: string;
23
+ readonly redirectUri: string;
24
+ readonly buttonLabel: string;
25
+ readonly autoProvision: boolean;
26
+ readonly requiredRole: string;
27
+ readonly adminRole: string;
28
+ readonly reviewerRole: string;
29
+ readonly sessionTtlSeconds: number;
30
+ }
31
+ /** The browser retains completionKey in sessionStorage before leaving QA. */
32
+ export interface QaOidcStart {
33
+ readonly authorizationUrl: string;
34
+ readonly completionKey: string;
35
+ }
36
+ //# sourceMappingURL=oidc.d.ts.map
@@ -1,7 +1,9 @@
1
1
  export type * from "./types/policy.js";
2
+ export type * from "./forms/types.js";
2
3
  export type * from "./types/capability.js";
3
4
  export type * from "./types/access.js";
4
5
  export type * from "./types/accounts.js";
6
+ export type * from "./types/oidc.js";
5
7
  export type * from "./types/skills.js";
6
8
  export type * from "./types/expert-memory.js";
7
9
  export type * from "./types/config.js";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@yadsh/dsh-qa-surface",
3
- "version": "0.17.0",
3
+ "version": "0.18.0",
4
4
  "description": "A focused end-user QA surface backed by native DeepSeek Harness sessions",
5
5
  "repository": {
6
6
  "type": "git",
@@ -104,73 +104,75 @@
104
104
  },
105
105
  "peerDependencies": {
106
106
  "@deepseek-ai/cordis": "^4.0.4",
107
- "@deepseek-ai/dsh-agent": ">=0.1.7-rc.2 <0.2.0",
108
- "@deepseek-ai/dsh-agent-preset-registry": ">=0.1.7-rc.2 <0.2.0",
109
- "@deepseek-ai/dsh-api-gateway": ">=0.1.7-rc.2 <0.2.0",
110
- "@deepseek-ai/dsh-api-session-controller": ">=0.1.7-rc.2 <0.2.0",
111
- "@deepseek-ai/dsh-api-workspace-controller": ">=0.1.7-rc.2 <0.2.0",
112
- "@deepseek-ai/dsh-client-connection": ">=0.1.7-rc.2 <0.2.0",
113
- "@deepseek-ai/dsh-client-ui-chat": ">=0.1.7-rc.2 <0.2.0",
114
- "@deepseek-ai/dsh-client-ui-conversation": ">=0.1.7-rc.2 <0.2.0",
115
- "@deepseek-ai/dsh-client-ui-layout": ">=0.1.7-rc.2 <0.2.0",
116
- "@deepseek-ai/dsh-client-ui-plugin-manager": ">=0.1.7-rc.2 <0.2.0",
117
- "@deepseek-ai/dsh-client-ui-renderer": ">=0.1.7-rc.2 <0.2.0",
118
- "@deepseek-ai/dsh-client-ui-settings": ">=0.1.7-rc.2 <0.2.0",
119
- "@deepseek-ai/dsh-client-ui-slots": ">=0.1.7-rc.2 <0.2.0",
120
- "@deepseek-ai/dsh-client-ui-theme": ">=0.1.7-rc.2 <0.2.0",
121
- "@deepseek-ai/dsh-host-webserver": ">=0.1.7-rc.2 <0.2.0",
122
- "@deepseek-ai/dsh-llm": ">=0.1.7-rc.2 <0.2.0",
123
- "@deepseek-ai/dsh-permission-presets": ">=0.1.7-rc.2 <0.2.0",
124
- "@deepseek-ai/dsh-session": ">=0.1.7-rc.2 <0.2.0",
125
- "@deepseek-ai/dsh-scope": ">=0.1.7-rc.2 <0.2.0",
126
- "@deepseek-ai/dsh-settings": ">=0.1.7-rc.2 <0.2.0",
127
- "@deepseek-ai/dsh-skill": ">=0.1.7-rc.2 <0.2.0",
128
- "@deepseek-ai/dsh-system-prompt": ">=0.1.7-rc.2 <0.2.0",
129
- "@deepseek-ai/dsh-tools": ">=0.1.7-rc.2 <0.2.0",
130
- "@deepseek-ai/dsh-typert-protocol": ">=0.1.7-rc.2 <0.2.0",
131
- "@deepseek-ai/dsh-workspace": ">=0.1.7-rc.2 <0.2.0",
107
+ "@deepseek-ai/dsh-agent": ">=0.1.7-rc.2 <0.3.0-0",
108
+ "@deepseek-ai/dsh-agent-preset-registry": ">=0.1.7-rc.2 <0.3.0-0",
109
+ "@deepseek-ai/dsh-api-gateway": ">=0.1.7-rc.2 <0.3.0-0",
110
+ "@deepseek-ai/dsh-api-session-controller": ">=0.1.7-rc.2 <0.3.0-0",
111
+ "@deepseek-ai/dsh-api-workspace-controller": ">=0.1.7-rc.2 <0.3.0-0",
112
+ "@deepseek-ai/dsh-client-connection": ">=0.1.7-rc.2 <0.3.0-0",
113
+ "@deepseek-ai/dsh-client-ui-chat": ">=0.1.7-rc.2 <0.3.0-0",
114
+ "@deepseek-ai/dsh-client-ui-conversation": ">=0.1.7-rc.2 <0.3.0-0",
115
+ "@deepseek-ai/dsh-client-ui-layout": ">=0.1.7-rc.2 <0.3.0-0",
116
+ "@deepseek-ai/dsh-client-ui-plugin-manager": ">=0.1.7-rc.2 <0.3.0-0",
117
+ "@deepseek-ai/dsh-client-ui-renderer": ">=0.1.7-rc.2 <0.3.0-0",
118
+ "@deepseek-ai/dsh-client-ui-settings": ">=0.1.7-rc.2 <0.3.0-0",
119
+ "@deepseek-ai/dsh-client-ui-slots": ">=0.1.7-rc.2 <0.3.0-0",
120
+ "@deepseek-ai/dsh-client-ui-theme": ">=0.1.7-rc.2 <0.3.0-0",
121
+ "@deepseek-ai/dsh-host-webserver": ">=0.1.7-rc.2 <0.3.0-0",
122
+ "@deepseek-ai/dsh-llm": ">=0.1.7-rc.2 <0.3.0-0",
123
+ "@deepseek-ai/dsh-permission-presets": ">=0.1.7-rc.2 <0.3.0-0",
124
+ "@deepseek-ai/dsh-scope": ">=0.1.7-rc.2 <0.3.0-0",
125
+ "@deepseek-ai/dsh-session": ">=0.1.7-rc.2 <0.3.0-0",
126
+ "@deepseek-ai/dsh-settings": ">=0.1.7-rc.2 <0.3.0-0",
127
+ "@deepseek-ai/dsh-skill": ">=0.1.7-rc.2 <0.3.0-0",
128
+ "@deepseek-ai/dsh-system-prompt": ">=0.1.7-rc.2 <0.3.0-0",
129
+ "@deepseek-ai/dsh-tools": ">=0.1.7-rc.2 <0.3.0-0",
130
+ "@deepseek-ai/dsh-typert-protocol": ">=0.1.7-rc.2 <0.3.0-0",
131
+ "@deepseek-ai/dsh-workspace": ">=0.1.7-rc.2 <0.3.0-0",
132
132
  "@deepseek-ai/schemastery": "^3.18.4",
133
133
  "react": "^18.2.0",
134
134
  "react-dom": "^18.2.0"
135
135
  },
136
136
  "dependencies": {
137
+ "openid-client": "6.8.8",
137
138
  "yaml": "^2.9.0",
138
139
  "zod": "^4.4.3",
139
140
  "@yadsh/dsh-audit-core": "^0.1.2",
140
141
  "@yadsh/dsh-audit-ui": "^0.1.3",
141
- "@yadsh/dsh-documents": "^0.8.0",
142
+ "@yadsh/dsh-documents": "^0.8.1",
142
143
  "@yadsh/dsh-plugin-kit": "^0.6.0",
143
144
  "@yadsh/dsh-plugin-log": "^0.4.2"
144
145
  },
145
146
  "devDependencies": {
146
- "@deepseek-ai/cordis": "4.0.4",
147
- "@deepseek-ai/dsh-agent": "0.1.7-rc.2",
148
- "@deepseek-ai/dsh-agent-preset-registry": "0.1.7-rc.2",
149
- "@deepseek-ai/dsh-api-gateway": "0.1.7-rc.2",
150
- "@deepseek-ai/dsh-api-session-controller": "0.1.7-rc.2",
151
- "@deepseek-ai/dsh-api-workspace-controller": "0.1.7-rc.2",
152
- "@deepseek-ai/dsh-client-connection": "0.1.7-rc.2",
153
- "@deepseek-ai/dsh-client-ui-chat": "0.1.7-rc.2",
154
- "@deepseek-ai/dsh-client-ui-conversation": "0.1.7-rc.2",
155
- "@deepseek-ai/dsh-client-ui-layout": "0.1.7-rc.2",
156
- "@deepseek-ai/dsh-client-ui-plugin-manager": "0.1.7-rc.2",
157
- "@deepseek-ai/dsh-client-ui-renderer": "0.1.7-rc.2",
158
- "@deepseek-ai/dsh-client-ui-settings": "0.1.7-rc.2",
159
- "@deepseek-ai/dsh-client-ui-slots": "0.1.7-rc.2",
160
- "@deepseek-ai/dsh-client-ui-theme": "0.1.7-rc.2",
161
- "@deepseek-ai/dsh-host-webserver": "0.1.7-rc.2",
162
- "@deepseek-ai/dsh-llm": "0.1.7-rc.2",
163
- "@deepseek-ai/dsh-permission-presets": "0.1.7-rc.2",
164
- "@deepseek-ai/dsh-scope": "0.1.7-rc.2",
165
- "@deepseek-ai/dsh-session": "0.1.7-rc.2",
166
- "@deepseek-ai/dsh-settings": "0.1.7-rc.2",
167
- "@deepseek-ai/dsh-skill": "0.1.7-rc.2",
168
- "@deepseek-ai/dsh-system-prompt": "0.1.7-rc.2",
169
- "@deepseek-ai/dsh-tools": "0.1.7-rc.2",
170
- "@deepseek-ai/dsh-typert-generator": "0.1.7-rc.2",
171
- "@deepseek-ai/dsh-typert-protocol": "0.1.7-rc.2",
172
- "@deepseek-ai/dsh-workspace": "0.1.7-rc.2",
173
- "@deepseek-ai/schemastery": "3.18.4",
147
+ "@deepseek-ai/cordis": "4.0.5",
148
+ "@deepseek-ai/dsh-agent": "0.2.1-rc.3",
149
+ "@deepseek-ai/dsh-agent-preset-registry": "0.2.1-rc.3",
150
+ "@deepseek-ai/dsh-api-gateway": "0.2.1-rc.3",
151
+ "@deepseek-ai/dsh-api-session-controller": "0.2.1-rc.3",
152
+ "@deepseek-ai/dsh-api-workspace-controller": "0.2.1-rc.3",
153
+ "@deepseek-ai/dsh-client-connection": "0.2.1-rc.3",
154
+ "@deepseek-ai/dsh-client-ui-chat": "0.2.1-rc.3",
155
+ "@deepseek-ai/dsh-client-ui-conversation": "0.2.1-rc.3",
156
+ "@deepseek-ai/dsh-client-ui-layout": "0.2.1-rc.3",
157
+ "@deepseek-ai/dsh-client-ui-plugin-manager": "0.2.1-rc.3",
158
+ "@deepseek-ai/dsh-client-ui-renderer": "0.2.1-rc.3",
159
+ "@deepseek-ai/dsh-client-ui-settings": "0.2.1-rc.3",
160
+ "@deepseek-ai/dsh-client-ui-slots": "0.2.1-rc.3",
161
+ "@deepseek-ai/dsh-client-ui-theme": "0.2.1-rc.3",
162
+ "@deepseek-ai/dsh-host-webserver": "0.2.1-rc.3",
163
+ "@deepseek-ai/dsh-llm": "0.2.1-rc.3",
164
+ "@deepseek-ai/dsh-permission-presets": "0.2.1-rc.3",
165
+ "@deepseek-ai/dsh-scope": "0.2.1-rc.3",
166
+ "@deepseek-ai/dsh-session": "0.2.1-rc.3",
167
+ "@deepseek-ai/dsh-settings": "0.2.1-rc.3",
168
+ "@deepseek-ai/dsh-skill": "0.2.1-rc.3",
169
+ "@deepseek-ai/dsh-system-prompt": "0.2.1-rc.3",
170
+ "@deepseek-ai/dsh-tools": "0.2.1-rc.3",
171
+ "@deepseek-ai/dsh-typert-generator": "0.2.1-rc.3",
172
+ "@deepseek-ai/dsh-typert-protocol": "0.2.1-rc.3",
173
+ "@deepseek-ai/dsh-util-values": "0.2.1-rc.3",
174
+ "@deepseek-ai/dsh-workspace": "0.2.1-rc.3",
175
+ "@deepseek-ai/schemastery": "3.18.5",
174
176
  "@testing-library/react": "^16.3.0",
175
177
  "@types/node": "^26.4.0",
176
178
  "@types/react": "18.3.28",