dsh-agent-plugins-market 0.9.0 → 0.9.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 (356) hide show
  1. package/README.md +31 -19
  2. package/README.zh.md +31 -19
  3. package/assets/dsh-agent-plugins.png +0 -0
  4. package/client/client.js +5371 -1085
  5. package/client/client.js.map +1 -1
  6. package/lib/index.js +2 -257
  7. package/lib/{application → packages/market-bundle/src/application}/catalog.js +207 -41
  8. package/lib/{application → packages/market-bundle/src/application}/details.js +73 -29
  9. package/lib/packages/market-bundle/src/application/extension-inventory.js +408 -0
  10. package/lib/packages/market-bundle/src/application/extension-project.js +64 -0
  11. package/lib/packages/market-bundle/src/application/resource-inventory.js +96 -0
  12. package/lib/packages/market-bundle/src/application/server-config.js +9 -0
  13. package/lib/packages/market-bundle/src/application/suite-queries.js +86 -0
  14. package/lib/packages/market-bundle/src/index.js +372 -0
  15. package/lib/{runtime/host → packages/market-bundle/src/platform}/feedback-tool.js +2 -2
  16. package/lib/{runtime/host → packages/market-bundle/src/platform}/settings-namespace.js +55 -7
  17. package/lib/packages/market-bundle/src/platform/settings-schema.js +25 -0
  18. package/lib/packages/market-bundle/src/routes-extension-presets.js +161 -0
  19. package/lib/packages/market-bundle/src/routes-resources.js +127 -0
  20. package/lib/{routes.js → packages/market-bundle/src/routes.js} +225 -21
  21. package/lib/packages/market-bundle/src/runtime-adapters.js +57 -0
  22. package/lib/packages/market-bundle/src/session-extension.js +330 -0
  23. package/lib/{application → packages/market-catalog/src/application}/catalog-context.js +7 -4
  24. package/lib/{application → packages/market-catalog/src/application}/install-store.js +3 -3
  25. package/lib/{application → packages/market-catalog/src/application}/snapshot-cache.js +100 -11
  26. package/lib/{application → packages/market-catalog/src/application}/source-store.js +24 -11
  27. package/lib/{application → packages/market-catalog/src/application}/state/state-store.js +1 -1
  28. package/lib/{application → packages/market-catalog/src/application}/state/storage-migration.js +1 -1
  29. package/lib/packages/market-catalog/src/index.js +19 -0
  30. package/lib/{catalog → packages/market-catalog/src/scanning}/archive.js +1 -1
  31. package/lib/{catalog → packages/market-catalog/src/scanning}/codex-mcp.js +1 -1
  32. package/lib/{catalog → packages/market-catalog/src/scanning}/component-files.js +2 -2
  33. package/lib/{catalog → packages/market-catalog/src/scanning}/manifests.js +2 -2
  34. package/lib/{catalog → packages/market-catalog/src/scanning}/native-project.js +1 -1
  35. package/lib/{catalog → packages/market-catalog/src/scanning}/paths.js +1 -1
  36. package/lib/{catalog → packages/market-catalog/src/scanning}/plugin-variables.js +21 -1
  37. package/lib/{catalog → packages/market-catalog/src/scanning}/scan-resolvers.js +35 -2
  38. package/lib/{catalog → packages/market-catalog/src/scanning}/skills-parse.js +40 -10
  39. package/lib/{catalog → packages/market-catalog/src/scanning}/validate.js +15 -2
  40. package/lib/packages/market-contracts/src/contracts/extension-presets.js +125 -0
  41. package/lib/{contracts → packages/market-contracts/src/contracts}/market.js +33 -5
  42. package/lib/packages/market-contracts/src/contracts/mcp-overrides.js +2 -0
  43. package/lib/packages/market-contracts/src/contracts/resource-window.js +29 -0
  44. package/lib/packages/market-contracts/src/contracts/settings.js +130 -0
  45. package/lib/packages/market-contracts/src/contracts/surface-toggles.js +29 -0
  46. package/lib/packages/market-contracts/src/contracts/translation.js +28 -0
  47. package/lib/packages/market-contracts/src/index.js +4 -0
  48. package/lib/{model → packages/market-contracts/src/model}/layouts.js +11 -0
  49. package/lib/{application → packages/market-contracts/src/ports}/ports.js +3 -0
  50. package/lib/{application/mcp/mcp-redaction.js → packages/market-contracts/src/redaction.js} +17 -1
  51. package/lib/{application → packages/market-lsp/src/application}/lsp/lsp-direct-config.js +2 -2
  52. package/lib/{application → packages/market-lsp/src/application}/lsp/lsp-server-state.js +1 -1
  53. package/lib/{application → packages/market-lsp/src/application}/lsp/lsp-status.js +20 -3
  54. package/lib/{application → packages/market-lsp/src/application}/lsp/profile-seam.js +1 -1
  55. package/lib/packages/market-lsp/src/application/lsp/validation.js +46 -0
  56. package/lib/{application → packages/market-lsp/src/application}/lsp-service.js +61 -3
  57. package/lib/packages/market-lsp/src/index.js +8 -0
  58. package/lib/{runtime → packages/market-lsp/src/runtime}/lsp/lsp-mounts.js +79 -40
  59. package/lib/{application → packages/market-mcp/src/application}/mcp/mcp-backend.js +0 -16
  60. package/lib/{application → packages/market-mcp/src/application}/mcp/mcp-config.js +104 -21
  61. package/lib/{application → packages/market-mcp/src/application}/mcp/mcp-direct-config.js +12 -4
  62. package/lib/{application → packages/market-mcp/src/application}/mcp/mcp-overrides.js +4 -4
  63. package/lib/{application → packages/market-mcp/src/application}/mcp/mcp-status.js +49 -10
  64. package/lib/packages/market-mcp/src/application/mcp/validation.js +63 -0
  65. package/lib/{application → packages/market-mcp/src/application}/mcp-service.js +111 -91
  66. package/lib/packages/market-mcp/src/index.js +10 -0
  67. package/lib/{runtime → packages/market-mcp/src/runtime}/mcp/bridge/bridge.js +12 -9
  68. package/lib/{runtime → packages/market-mcp/src/runtime}/mcp/bridge/connection.js +1 -1
  69. package/lib/{runtime → packages/market-mcp/src/runtime}/mcp/bridge/oauth.js +1 -1
  70. package/lib/packages/market-mcp/src/runtime/mcp/bridge/tool-ownership.js +26 -0
  71. package/lib/{runtime → packages/market-mcp/src/runtime}/mcp/bridge/tools.js +1 -1
  72. package/lib/{runtime → packages/market-mcp/src/runtime}/mcp/mcp-auth-record.js +35 -4
  73. package/lib/{runtime → packages/market-mcp/src/runtime}/mcp/mcp-mounts.js +35 -4
  74. package/lib/packages/market-runtime/src/adapter-contracts.js +1 -0
  75. package/lib/packages/market-runtime/src/application/command-resources.js +74 -0
  76. package/lib/packages/market-runtime/src/application/extension-authorization.js +27 -0
  77. package/lib/packages/market-runtime/src/application/extension-hook-selection.js +56 -0
  78. package/lib/packages/market-runtime/src/application/extension-suite-declarations.js +57 -0
  79. package/lib/packages/market-runtime/src/application/extension-suite-selection.js +84 -0
  80. package/lib/packages/market-runtime/src/application/panel-resources.js +369 -0
  81. package/lib/{application → packages/market-runtime/src/application}/panels/user-hooks.js +2 -2
  82. package/lib/{application → packages/market-runtime/src/application}/panels/user-store.js +1 -1
  83. package/lib/{application → packages/market-runtime/src/application}/project-agent-roles.js +16 -10
  84. package/lib/packages/market-runtime/src/application/state/extension-presets.js +144 -0
  85. package/lib/packages/market-runtime/src/application/state/resource-favorites.js +90 -0
  86. package/lib/packages/market-runtime/src/application/state/resource-filters.js +2 -0
  87. package/lib/packages/market-runtime/src/application/state/surface-toggles.js +10 -0
  88. package/lib/packages/market-runtime/src/application/state/workspace-policy.js +56 -0
  89. package/lib/packages/market-runtime/src/catalog-port.js +1 -0
  90. package/lib/packages/market-runtime/src/extension-service.js +1 -0
  91. package/lib/packages/market-runtime/src/index.js +31 -0
  92. package/lib/{runtime → packages/market-runtime/src/runtime}/agents/agent-role-router.js +57 -68
  93. package/lib/packages/market-runtime/src/runtime/agents/agent-teams-seat.js +58 -0
  94. package/lib/{runtime → packages/market-runtime/src/runtime}/agents/subagent-catalog.js +70 -18
  95. package/lib/packages/market-runtime/src/runtime/agents/team-coordination.js +51 -0
  96. package/lib/packages/market-runtime/src/runtime/agents/teammate-role-runtime.js +241 -0
  97. package/lib/packages/market-runtime/src/runtime/agents/teammate-role-tool.js +123 -0
  98. package/lib/{runtime → packages/market-runtime/src/runtime}/core/reconcile-scheduler.js +2 -2
  99. package/lib/packages/market-runtime/src/runtime/core/reconciler.js +457 -0
  100. package/lib/packages/market-runtime/src/runtime/host/command-name-allocator.js +168 -0
  101. package/lib/packages/market-runtime/src/runtime/host/extension-progress.js +120 -0
  102. package/lib/packages/market-runtime/src/runtime/host/extension-runtime.js +405 -0
  103. package/lib/packages/market-runtime/src/runtime/host/extension-session-state.js +839 -0
  104. package/lib/packages/market-runtime/src/runtime/host/extension-tool-gates.js +96 -0
  105. package/lib/{runtime → packages/market-runtime/src/runtime}/host/failure-detail.js +1 -1
  106. package/lib/{runtime → packages/market-runtime/src/runtime}/host/host-locale.js +2 -0
  107. package/lib/packages/market-runtime/src/runtime/host/menu-row-identities.js +38 -0
  108. package/lib/packages/market-runtime/src/runtime/host/resource-filter-service.js +81 -0
  109. package/lib/packages/market-runtime/src/runtime/host/scoped-contributors.js +304 -0
  110. package/lib/packages/market-runtime/src/runtime/host/surface-toggle-service.js +15 -0
  111. package/lib/packages/market-runtime/src/runtime/panels/user-commands.js +211 -0
  112. package/lib/{runtime → packages/market-runtime/src/runtime}/panels/user-panels.js +34 -14
  113. package/lib/packages/market-runtime/src/runtime/surfaces/commands-mounts.js +256 -0
  114. package/lib/packages/market-runtime/src/runtime/surfaces/extension-hooks.js +294 -0
  115. package/lib/packages/market-runtime/src/runtime/surfaces/hook-dry-run.js +122 -0
  116. package/lib/{runtime → packages/market-runtime/src/runtime}/surfaces/hooks-mounts.js +1 -1
  117. package/lib/{runtime → packages/market-runtime/src/runtime}/surfaces/project-runtime.js +23 -13
  118. package/lib/packages/market-runtime/src/runtime/surfaces/skills-provider.js +241 -0
  119. package/lib/packages/market-translation/src/application/state/translation-cache.js +122 -0
  120. package/lib/packages/market-translation/src/application/translation/chain.js +99 -0
  121. package/lib/packages/market-translation/src/application/translation/document.js +384 -0
  122. package/lib/packages/market-translation/src/application/translation/localizer.js +642 -0
  123. package/lib/packages/market-translation/src/application/translation/service.js +113 -0
  124. package/lib/packages/market-translation/src/application/translation/unit.js +19 -0
  125. package/lib/packages/market-translation/src/index.js +4 -0
  126. package/lib/packages/market-translation/src/runtime/host/llm-translator.js +278 -0
  127. package/lib/packages/market-translation/src/runtime/host/machine-translator.js +152 -0
  128. package/lib/packages/market-translation/src/runtime/host/text-masking.js +96 -0
  129. package/lib/packages/market-translation/src/runtime/host/translation-providers.js +116 -0
  130. package/lib/types/index.d.ts +2 -130
  131. package/lib/types/{application → packages/market-bundle/src/application}/catalog.d.ts +117 -22
  132. package/lib/types/packages/market-bundle/src/application/details.d.ts +24 -0
  133. package/lib/types/packages/market-bundle/src/application/extension-inventory.d.ts +45 -0
  134. package/lib/types/packages/market-bundle/src/application/extension-project.d.ts +26 -0
  135. package/lib/types/packages/market-bundle/src/application/resource-inventory.d.ts +42 -0
  136. package/lib/types/packages/market-bundle/src/application/server-config.d.ts +9 -0
  137. package/lib/types/packages/market-bundle/src/application/suite-queries.d.ts +84 -0
  138. package/lib/types/packages/market-bundle/src/index.d.ts +125 -0
  139. package/lib/types/{runtime/host → packages/market-bundle/src/platform}/settings-namespace.d.ts +44 -9
  140. package/lib/types/{application/mcp/mcp-backend.d.ts → packages/market-bundle/src/platform/settings-schema.d.ts} +13 -28
  141. package/lib/types/packages/market-bundle/src/routes-extension-presets.d.ts +15 -0
  142. package/lib/types/packages/market-bundle/src/routes-resources.d.ts +17 -0
  143. package/lib/types/packages/market-bundle/src/routes.d.ts +32 -0
  144. package/lib/types/packages/market-bundle/src/runtime-adapters.d.ts +42 -0
  145. package/lib/types/packages/market-bundle/src/session-extension.d.ts +59 -0
  146. package/lib/types/{application → packages/market-catalog/src/application}/catalog-context.d.ts +11 -3
  147. package/lib/types/{application → packages/market-catalog/src/application}/install-store.d.ts +1 -1
  148. package/lib/types/{application → packages/market-catalog/src/application}/regions.d.ts +1 -1
  149. package/lib/types/{application → packages/market-catalog/src/application}/snapshot-cache.d.ts +44 -2
  150. package/lib/types/{application → packages/market-catalog/src/application}/source-store.d.ts +12 -3
  151. package/lib/types/{application → packages/market-catalog/src/application}/state/state-store.d.ts +1 -1
  152. package/lib/types/packages/market-catalog/src/index.d.ts +22 -0
  153. package/lib/types/{catalog → packages/market-catalog/src/scanning}/archive.d.ts +1 -1
  154. package/lib/types/{catalog → packages/market-catalog/src/scanning}/codex-mcp.d.ts +1 -1
  155. package/lib/types/{catalog → packages/market-catalog/src/scanning}/component-files.d.ts +1 -1
  156. package/lib/types/{catalog → packages/market-catalog/src/scanning}/lsp-spec.d.ts +1 -1
  157. package/lib/types/{catalog → packages/market-catalog/src/scanning}/manifests.d.ts +3 -3
  158. package/lib/types/{catalog → packages/market-catalog/src/scanning}/native-project.d.ts +2 -2
  159. package/lib/types/{catalog → packages/market-catalog/src/scanning}/plugin-variables.d.ts +12 -1
  160. package/lib/types/{catalog → packages/market-catalog/src/scanning}/project-config.d.ts +2 -2
  161. package/lib/types/{catalog → packages/market-catalog/src/scanning}/project-hooks.d.ts +2 -2
  162. package/lib/types/{catalog → packages/market-catalog/src/scanning}/scan-pipeline.d.ts +1 -1
  163. package/lib/types/{catalog → packages/market-catalog/src/scanning}/scan-resolvers.d.ts +3 -3
  164. package/lib/types/{catalog → packages/market-catalog/src/scanning}/source-catalog.d.ts +1 -1
  165. package/lib/types/{catalog → packages/market-catalog/src/scanning}/suite-components.d.ts +1 -1
  166. package/lib/types/{catalog → packages/market-catalog/src/scanning}/suite-scanner.d.ts +1 -1
  167. package/lib/types/{catalog → packages/market-catalog/src/scanning}/surfaces.d.ts +1 -1
  168. package/lib/types/{catalog → packages/market-catalog/src/scanning}/validate.d.ts +1 -1
  169. package/lib/types/packages/market-contracts/src/contracts/extension-presets.d.ts +237 -0
  170. package/lib/types/{contracts → packages/market-contracts/src/contracts}/market.d.ts +87 -16
  171. package/lib/types/packages/market-contracts/src/contracts/mcp-overrides.d.ts +39 -0
  172. package/lib/types/{contracts → packages/market-contracts/src/contracts}/mcp-status.d.ts +9 -0
  173. package/lib/types/packages/market-contracts/src/contracts/resource-window.d.ts +70 -0
  174. package/lib/types/packages/market-contracts/src/contracts/settings.d.ts +121 -0
  175. package/lib/types/packages/market-contracts/src/contracts/surface-toggles.d.ts +28 -0
  176. package/lib/types/packages/market-contracts/src/contracts/translation.d.ts +81 -0
  177. package/lib/types/{runtime → packages/market-contracts/src}/host/plugin-message-source.d.ts +1 -1
  178. package/lib/types/packages/market-contracts/src/index.d.ts +5 -0
  179. package/lib/types/{model → packages/market-contracts/src/model}/layouts.d.ts +7 -0
  180. package/lib/types/{model → packages/market-contracts/src/model}/types.d.ts +2 -2
  181. package/lib/types/packages/market-contracts/src/ports/ports.d.ts +183 -0
  182. package/lib/types/{application → packages/market-contracts/src/ports}/queries.d.ts +27 -6
  183. package/lib/types/{application/mcp/mcp-redaction.d.ts → packages/market-contracts/src/redaction.d.ts} +2 -0
  184. package/lib/types/{application → packages/market-lsp/src/application}/lsp/lsp-direct-config.d.ts +1 -1
  185. package/lib/types/{application → packages/market-lsp/src/application}/lsp/lsp-status.d.ts +21 -5
  186. package/lib/types/packages/market-lsp/src/application/lsp/validation.d.ts +8 -0
  187. package/lib/types/{application → packages/market-lsp/src/application}/lsp-service.d.ts +19 -6
  188. package/lib/types/packages/market-lsp/src/index.d.ts +8 -0
  189. package/lib/types/{runtime → packages/market-lsp/src/runtime}/lsp/lsp-mounts.d.ts +26 -6
  190. package/lib/types/packages/market-mcp/src/application/mcp/mcp-backend.d.ts +28 -0
  191. package/lib/types/{application → packages/market-mcp/src/application}/mcp/mcp-bridge-config.d.ts +1 -1
  192. package/lib/types/{application → packages/market-mcp/src/application}/mcp/mcp-config.d.ts +2 -2
  193. package/lib/types/{application → packages/market-mcp/src/application}/mcp/mcp-direct-config.d.ts +6 -1
  194. package/lib/types/{application → packages/market-mcp/src/application}/mcp/mcp-overrides.d.ts +4 -38
  195. package/lib/types/packages/market-mcp/src/application/mcp/mcp-status.d.ts +40 -0
  196. package/lib/types/{application/server-config.d.ts → packages/market-mcp/src/application/mcp/validation.d.ts} +2 -10
  197. package/lib/types/{application → packages/market-mcp/src/application}/mcp-service.d.ts +22 -16
  198. package/lib/types/packages/market-mcp/src/index.d.ts +12 -0
  199. package/lib/types/packages/market-mcp/src/runtime/mcp/bridge/tool-ownership.d.ts +14 -0
  200. package/lib/types/{runtime → packages/market-mcp/src/runtime}/mcp/mcp-auth-record.d.ts +4 -0
  201. package/lib/types/{runtime → packages/market-mcp/src/runtime}/mcp/mcp-mounts.d.ts +19 -3
  202. package/lib/types/packages/market-runtime/src/adapter-contracts.d.ts +89 -0
  203. package/lib/types/{application → packages/market-runtime/src/application}/agent-roles.d.ts +2 -0
  204. package/lib/types/packages/market-runtime/src/application/command-resources.d.ts +26 -0
  205. package/lib/types/packages/market-runtime/src/application/extension-authorization.d.ts +12 -0
  206. package/lib/types/packages/market-runtime/src/application/extension-hook-selection.d.ts +23 -0
  207. package/lib/types/packages/market-runtime/src/application/extension-suite-declarations.d.ts +10 -0
  208. package/lib/types/packages/market-runtime/src/application/extension-suite-selection.d.ts +30 -0
  209. package/lib/types/packages/market-runtime/src/application/panel-resources.d.ts +100 -0
  210. package/lib/types/{application → packages/market-runtime/src/application}/panels/user-hooks.d.ts +1 -1
  211. package/lib/types/packages/market-runtime/src/application/project-agent-roles.d.ts +10 -0
  212. package/lib/types/packages/market-runtime/src/application/state/extension-presets.d.ts +24 -0
  213. package/lib/types/packages/market-runtime/src/application/state/resource-favorites.d.ts +9 -0
  214. package/lib/types/packages/market-runtime/src/application/state/resource-filters.d.ts +2 -0
  215. package/lib/types/packages/market-runtime/src/application/state/surface-toggles.d.ts +6 -0
  216. package/lib/types/packages/market-runtime/src/application/state/workspace-policy.d.ts +19 -0
  217. package/lib/types/packages/market-runtime/src/catalog-port.d.ts +30 -0
  218. package/lib/types/packages/market-runtime/src/extension-service.d.ts +14 -0
  219. package/lib/types/packages/market-runtime/src/index.d.ts +41 -0
  220. package/lib/types/{runtime → packages/market-runtime/src/runtime}/agents/agent-role-router.d.ts +48 -30
  221. package/lib/types/packages/market-runtime/src/runtime/agents/agent-teams-seat.d.ts +41 -0
  222. package/lib/types/{runtime → packages/market-runtime/src/runtime}/agents/subagent-catalog.d.ts +12 -1
  223. package/lib/types/packages/market-runtime/src/runtime/agents/team-coordination.d.ts +8 -0
  224. package/lib/types/packages/market-runtime/src/runtime/agents/teammate-role-runtime.d.ts +74 -0
  225. package/lib/types/packages/market-runtime/src/runtime/agents/teammate-role-tool.d.ts +6 -0
  226. package/lib/types/{runtime → packages/market-runtime/src/runtime}/core/reconcile-scheduler.d.ts +5 -2
  227. package/lib/types/packages/market-runtime/src/runtime/core/reconciler.d.ts +141 -0
  228. package/lib/types/packages/market-runtime/src/runtime/host/command-name-allocator.d.ts +132 -0
  229. package/lib/types/packages/market-runtime/src/runtime/host/extension-progress.d.ts +91 -0
  230. package/lib/types/packages/market-runtime/src/runtime/host/extension-runtime.d.ts +77 -0
  231. package/lib/types/packages/market-runtime/src/runtime/host/extension-session-state.d.ts +242 -0
  232. package/lib/types/packages/market-runtime/src/runtime/host/extension-tool-gates.d.ts +38 -0
  233. package/lib/types/{runtime → packages/market-runtime/src/runtime}/host/host-locale.d.ts +1 -1
  234. package/lib/types/packages/market-runtime/src/runtime/host/menu-row-identities.d.ts +50 -0
  235. package/lib/types/{runtime → packages/market-runtime/src/runtime}/host/model-catalog.d.ts +1 -1
  236. package/lib/types/packages/market-runtime/src/runtime/host/resource-filter-service.d.ts +34 -0
  237. package/lib/types/packages/market-runtime/src/runtime/host/scoped-contributors.d.ts +58 -0
  238. package/lib/types/packages/market-runtime/src/runtime/host/surface-toggle-service.d.ts +10 -0
  239. package/lib/types/packages/market-runtime/src/runtime/panels/user-commands.d.ts +74 -0
  240. package/lib/types/{runtime → packages/market-runtime/src/runtime}/panels/user-panels.d.ts +7 -1
  241. package/lib/types/packages/market-runtime/src/runtime/surfaces/commands-mounts.d.ts +81 -0
  242. package/lib/types/packages/market-runtime/src/runtime/surfaces/extension-hooks.d.ts +59 -0
  243. package/lib/types/packages/market-runtime/src/runtime/surfaces/hook-dry-run.d.ts +91 -0
  244. package/lib/types/{runtime → packages/market-runtime/src/runtime}/surfaces/hooks-mounts.d.ts +1 -1
  245. package/lib/types/{runtime → packages/market-runtime/src/runtime}/surfaces/project-runtime.d.ts +8 -5
  246. package/lib/types/packages/market-runtime/src/runtime/surfaces/skills-provider.d.ts +71 -0
  247. package/lib/types/packages/market-translation/src/application/state/translation-cache.d.ts +56 -0
  248. package/lib/types/packages/market-translation/src/application/translation/chain.d.ts +47 -0
  249. package/lib/types/packages/market-translation/src/application/translation/document.d.ts +54 -0
  250. package/lib/types/packages/market-translation/src/application/translation/localizer.d.ts +325 -0
  251. package/lib/types/packages/market-translation/src/application/translation/service.d.ts +89 -0
  252. package/lib/types/packages/market-translation/src/application/translation/unit.d.ts +35 -0
  253. package/lib/types/packages/market-translation/src/index.d.ts +4 -0
  254. package/lib/types/packages/market-translation/src/runtime/host/llm-translator.d.ts +30 -0
  255. package/lib/types/packages/market-translation/src/runtime/host/machine-translator.d.ts +52 -0
  256. package/lib/types/packages/market-translation/src/runtime/host/text-masking.d.ts +42 -0
  257. package/lib/types/packages/market-translation/src/runtime/host/translation-providers.d.ts +42 -0
  258. package/locale/en.json +6 -0
  259. package/locale/zh.json +6 -0
  260. package/package.json +47 -10
  261. package/schemas/README.md +3 -3
  262. package/schemas/agent-plugins/spec.md +2 -2
  263. package/schemas/com.deepseek.harness/spec.md +1 -1
  264. package/schemas/skill-collection/spec.md +10 -2
  265. package/lib/application/panel-resources.js +0 -161
  266. package/lib/application/server-config.js +0 -109
  267. package/lib/contracts/settings.js +0 -63
  268. package/lib/runtime/core/reconciler.js +0 -100
  269. package/lib/runtime/panels/user-commands.js +0 -105
  270. package/lib/runtime/surfaces/commands-mounts.js +0 -186
  271. package/lib/runtime/surfaces/skills-provider.js +0 -160
  272. package/lib/types/application/details.d.ts +0 -7
  273. package/lib/types/application/mcp/mcp-status.d.ts +0 -24
  274. package/lib/types/application/panel-resources.d.ts +0 -28
  275. package/lib/types/application/ports.d.ts +0 -86
  276. package/lib/types/application/project-agent-roles.d.ts +0 -3
  277. package/lib/types/contracts/settings.d.ts +0 -59
  278. package/lib/types/routes.d.ts +0 -16
  279. package/lib/types/runtime/core/reconciler.d.ts +0 -58
  280. package/lib/types/runtime/panels/user-commands.d.ts +0 -27
  281. package/lib/types/runtime/surfaces/commands-mounts.d.ts +0 -48
  282. package/lib/types/runtime/surfaces/skills-provider.d.ts +0 -23
  283. /package/lib/{application → packages/market-catalog/src/application}/deadline.js +0 -0
  284. /package/lib/{application → packages/market-catalog/src/application}/json-file.js +0 -0
  285. /package/lib/{application → packages/market-catalog/src/application}/regions.js +0 -0
  286. /package/lib/{catalog → packages/market-catalog/src/scanning}/fs-probes.js +0 -0
  287. /package/lib/{catalog → packages/market-catalog/src/scanning}/git.js +0 -0
  288. /package/lib/{catalog → packages/market-catalog/src/scanning}/lsp-spec.js +0 -0
  289. /package/lib/{catalog → packages/market-catalog/src/scanning}/project-config.js +0 -0
  290. /package/lib/{catalog → packages/market-catalog/src/scanning}/project-hooks.js +0 -0
  291. /package/lib/{catalog → packages/market-catalog/src/scanning}/scan-pipeline.js +0 -0
  292. /package/lib/{catalog → packages/market-catalog/src/scanning}/source-catalog.js +0 -0
  293. /package/lib/{catalog → packages/market-catalog/src/scanning}/suite-components.js +0 -0
  294. /package/lib/{catalog → packages/market-catalog/src/scanning}/suite-scanner.js +0 -0
  295. /package/lib/{catalog → packages/market-catalog/src/scanning}/surfaces.js +0 -0
  296. /package/lib/{contracts → packages/market-contracts/src/contracts}/lsp-status.js +0 -0
  297. /package/lib/{contracts → packages/market-contracts/src/contracts}/lsp.js +0 -0
  298. /package/lib/{contracts → packages/market-contracts/src/contracts}/mcp-status.js +0 -0
  299. /package/lib/{contracts → packages/market-contracts/src/contracts}/mcp.js +0 -0
  300. /package/lib/{runtime → packages/market-contracts/src}/host/plugin-message-source.js +0 -0
  301. /package/lib/{model → packages/market-contracts/src/model}/command-names.js +0 -0
  302. /package/lib/{model → packages/market-contracts/src/model}/preset-source.js +0 -0
  303. /package/lib/{model → packages/market-contracts/src/model}/types.js +0 -0
  304. /package/lib/{application → packages/market-contracts/src/ports}/queries.js +0 -0
  305. /package/lib/{application → packages/market-mcp/src/application}/mcp/mcp-bridge-config.js +0 -0
  306. /package/lib/{runtime → packages/market-mcp/src/runtime}/mcp/bridge/host-contract.js +0 -0
  307. /package/lib/{runtime → packages/market-mcp/src/runtime}/mcp/bridge/host-seams.js +0 -0
  308. /package/lib/{runtime → packages/market-mcp/src/runtime}/mcp/bridge/plugin-identity.js +0 -0
  309. /package/lib/{runtime → packages/market-mcp/src/runtime}/mcp/bridge/projection.js +0 -0
  310. /package/lib/{runtime → packages/market-mcp/src/runtime}/mcp/bridge/transport.js +0 -0
  311. /package/lib/{runtime → packages/market-mcp/src/runtime}/mcp/mcp-credentials.js +0 -0
  312. /package/lib/{application → packages/market-runtime/src/application}/agent-roles.js +0 -0
  313. /package/lib/{runtime → packages/market-runtime/src/runtime}/agents/agent-role-names.js +0 -0
  314. /package/lib/{runtime → packages/market-runtime/src/runtime}/core/context.js +0 -0
  315. /package/lib/{runtime → packages/market-runtime/src/runtime}/core/mount-lifecycle.js +0 -0
  316. /package/lib/{runtime → packages/market-runtime/src/runtime}/core/source-auto-update.js +0 -0
  317. /package/lib/{runtime → packages/market-runtime/src/runtime}/core/timer-seat.js +0 -0
  318. /package/lib/{runtime → packages/market-runtime/src/runtime}/host/model-catalog.js +0 -0
  319. /package/lib/{runtime → packages/market-runtime/src/runtime}/host/shell-path.js +0 -0
  320. /package/lib/{runtime → packages/market-runtime/src/runtime}/host/tool-registry-observer.js +0 -0
  321. /package/lib/{runtime → packages/market-runtime/src/runtime}/surfaces/dynamic-context.js +0 -0
  322. /package/lib/types/{runtime/host → packages/market-bundle/src/platform}/feedback-tool.d.ts +0 -0
  323. /package/lib/types/{application → packages/market-catalog/src/application}/deadline.d.ts +0 -0
  324. /package/lib/types/{application → packages/market-catalog/src/application}/json-file.d.ts +0 -0
  325. /package/lib/types/{application → packages/market-catalog/src/application}/state/storage-migration.d.ts +0 -0
  326. /package/lib/types/{catalog → packages/market-catalog/src/scanning}/fs-probes.d.ts +0 -0
  327. /package/lib/types/{catalog → packages/market-catalog/src/scanning}/git.d.ts +0 -0
  328. /package/lib/types/{catalog → packages/market-catalog/src/scanning}/paths.d.ts +0 -0
  329. /package/lib/types/{catalog → packages/market-catalog/src/scanning}/skills-parse.d.ts +0 -0
  330. /package/lib/types/{contracts → packages/market-contracts/src/contracts}/lsp-status.d.ts +0 -0
  331. /package/lib/types/{contracts → packages/market-contracts/src/contracts}/lsp.d.ts +0 -0
  332. /package/lib/types/{contracts → packages/market-contracts/src/contracts}/mcp.d.ts +0 -0
  333. /package/lib/types/{model → packages/market-contracts/src/model}/command-names.d.ts +0 -0
  334. /package/lib/types/{model → packages/market-contracts/src/model}/preset-source.d.ts +0 -0
  335. /package/lib/types/{application → packages/market-lsp/src/application}/lsp/lsp-server-state.d.ts +0 -0
  336. /package/lib/types/{application → packages/market-lsp/src/application}/lsp/profile-seam.d.ts +0 -0
  337. /package/lib/types/{runtime → packages/market-mcp/src/runtime}/mcp/bridge/bridge.d.ts +0 -0
  338. /package/lib/types/{runtime → packages/market-mcp/src/runtime}/mcp/bridge/connection.d.ts +0 -0
  339. /package/lib/types/{runtime → packages/market-mcp/src/runtime}/mcp/bridge/host-contract.d.ts +0 -0
  340. /package/lib/types/{runtime → packages/market-mcp/src/runtime}/mcp/bridge/host-seams.d.ts +0 -0
  341. /package/lib/types/{runtime → packages/market-mcp/src/runtime}/mcp/bridge/oauth.d.ts +0 -0
  342. /package/lib/types/{runtime → packages/market-mcp/src/runtime}/mcp/bridge/plugin-identity.d.ts +0 -0
  343. /package/lib/types/{runtime → packages/market-mcp/src/runtime}/mcp/bridge/projection.d.ts +0 -0
  344. /package/lib/types/{runtime → packages/market-mcp/src/runtime}/mcp/bridge/tools.d.ts +0 -0
  345. /package/lib/types/{runtime → packages/market-mcp/src/runtime}/mcp/bridge/transport.d.ts +0 -0
  346. /package/lib/types/{runtime → packages/market-mcp/src/runtime}/mcp/mcp-credentials.d.ts +0 -0
  347. /package/lib/types/{application → packages/market-runtime/src/application}/panels/user-store.d.ts +0 -0
  348. /package/lib/types/{runtime → packages/market-runtime/src/runtime}/agents/agent-role-names.d.ts +0 -0
  349. /package/lib/types/{runtime → packages/market-runtime/src/runtime}/core/context.d.ts +0 -0
  350. /package/lib/types/{runtime → packages/market-runtime/src/runtime}/core/mount-lifecycle.d.ts +0 -0
  351. /package/lib/types/{runtime → packages/market-runtime/src/runtime}/core/source-auto-update.d.ts +0 -0
  352. /package/lib/types/{runtime → packages/market-runtime/src/runtime}/core/timer-seat.d.ts +0 -0
  353. /package/lib/types/{runtime → packages/market-runtime/src/runtime}/host/failure-detail.d.ts +0 -0
  354. /package/lib/types/{runtime → packages/market-runtime/src/runtime}/host/shell-path.d.ts +0 -0
  355. /package/lib/types/{runtime → packages/market-runtime/src/runtime}/host/tool-registry-observer.d.ts +0 -0
  356. /package/lib/types/{runtime → packages/market-runtime/src/runtime}/surfaces/dynamic-context.d.ts +0 -0
package/README.md CHANGED
@@ -1,6 +1,8 @@
1
- <img src="docs-site/public/favicon.svg" alt="" width="48" height="48" />
1
+ <img src="assets/dsh-agent-plugins.png" alt="Agent Plugins" width="64" height="64" />
2
2
 
3
- # dsh-agent-plugins-market
3
+ # Agent Plugins
4
+
5
+ `dsh-agent-plugins-market`
4
6
 
5
7
  **A one-stop skills, subagent, MCP and LSP manager inside [DeepSeek Harness (DSH)](https://github.com/deepseek-ai/deepseek-harness), compatible with Claude Code, Codex, Cursor, Kimi and other agent plugin layouts.**
6
8
 
@@ -49,19 +51,22 @@ English | [简体中文](README.zh.md) | [Documentation](https://sivan757.github
49
51
 
50
52
  ## What you can do
51
53
 
54
+ - Enable the experimental Agent preset manager in plugin settings to show its composer entry. It is off by default and does not disable the session runtime. Session extension presets select skills, commands, roles, MCP and LSP capabilities through the Agent extension icon button to the right of Permissions. Each workspace owns a preset library and a default for new sessions. Selecting a preset while a session runtime is active takes effect on that session's next user request. Mid-turn steering and tools do not change. Once the selection commits, the open slash skill menu refreshes without another keystroke or page reload. Editing the selected or pending preset in the current session updates that session. Every other session keeps its own detached copy. Copy and paste a preset to another workspace to create an independent copy. Globally managed resources show their actual state without a session switch. Preset details do not change shared credentials or configuration. After a failed session selection, explicit recovery restores readiness and continues queued user input without another Send.
55
+
52
56
  - **Ten suite layouts.** Claude Code, Codex, Cursor, Kimi Code, ZCode, Qoder CLI, GitHub Copilot CLI, Universal `.plugin/`, [agent-plugins](https://agent-plugins.org) and manifest-less skill collections.
53
57
  - **Sources.** Add a Git repository, a local directory or an archive (`.zip` / `.tar.gz` / `.tgz` / `.tar`); adopt a checkout you cloned yourself; refresh on demand; delete a managed checkout when you remove its source.
54
58
  - **First-party source.** The plugin presets one source record pointing at its own suite collection, so the market lists that repository on first run with no URL to paste. It is an ordinary Git source from there on — refresh it to fetch, then install and toggle its suites like any other.
55
59
  - **Downloads that fit your network.** Pick a download region — default `auto` follows the interface language, or choose global / China mainland — and the plugin routes `github.com` clones through the matching mirror. A proxy and per-invocation tuning live in the host config.
56
60
  - **Runtime surfaces.** Enabled suites inject into sessions: skills into the catalog and slash menu, commands as `/name`, agent personas into the subagent catalog, MCP tools with an `mcp__` prefix, hooks onto host lifecycle events, and language servers through the `lsp` tool.
57
- - **MCP.** A built-in bridge runs stdio, Streamable HTTP with OAuth and legacy SSE without a host MCP client. `${VAR}` references resolve from the host credential store or the launch environment; per-server overrides disable or patch a declaration without editing the source, set the tool-call and startup timeouts, and switch individual tools off; the new-service form asks only for the name, the transport and the field that transport requires, with every other setting written as JSON; an optional host-client compatibility mode is available. A suite's tools register as `mcp__<suite>__<server>__<tool>`; a server you declare yourself in `~/.agents/mcp.json` mounts under its own key, `mcp__<server>__<tool>`.
61
+ - **MCP.** A built-in bridge runs stdio, Streamable HTTP with OAuth and legacy SSE without a host MCP client. `${VAR}` references resolve from the host credential store or the launch environment; per-server overrides disable or patch a declaration without editing the source, set the tool-call and startup timeouts, and switch individual tools off; creation and editing share the same service form, including advanced timeout settings and a JSON view; an optional host-client compatibility mode is available. A suite's tools register as `mcp__<suite>__<server>__<tool>`; a server you declare yourself in `~/.agents/mcp.json` mounts under its own key, `mcp__<server>__<tool>`.
58
62
  - **LSP.** Self-provisioned: installing the plugin is the whole setup, and the `lsp` tool mounts only while a language server is wanted. The server executable itself must be on `PATH`. Upgrading from a release that asked you to expose LSP from your profile? A profile that still carries that hand-added layer reports a seam conflict; the LSP panel names the file and removes the layer for you, keeping a backup.
59
- - **Agent personas and delegation.** Role cards save an exact provider, model and reasoning effort; they appear in the session catalog and run through `subagent_role`, which starts a durable background child and returns its id immediately.
63
+ - **Agent personas and delegation.** Role cards keep their instructions and exact provider/model/effort settings. Without Agent Teams, use `subagent_role`; with Agent Teams, use `spawn_teammate_role` to create a real Team member and manage it through native Team tools.
60
64
  - **Project dimension.** Skills, agents, commands, MCP servers and hooks are read from the project's own directories with no install step.
61
65
  - **Your own resources.** Author skills, commands and agent personas as Markdown under `~/.agents/`, then edit them or disable them without deleting the files.
62
66
  - **Background source updates.** Optionally refresh every configured source on a timer; off by default.
63
- - **Web workspace.** Six tabs — Market, Skills, Commands, Agent personas, MCP services and LSP servers — each with search, filters and a grid/list toggle, plus status panels with diagnostics, credential editing, and an install confirmation that warns before executable third-party content is enabled.
67
+ - **Web workspace.** Seven tabs: Market, Skills, Commands, Agent personas, MCP services, LSP servers and Hooks, each with search, filters and a grid/list toggle, plus status panels with diagnostics, credential editing, and an install confirmation that warns before executable third-party content is enabled. The settings page is the canonical layout. Every surface shares one tab row of equal columns that never scrolls sideways, and a label that does not fit ellipsizes. Every surface also shares one card and detail anatomy, and the preset manager follows it.
64
68
  - **Bilingual interface and feedback.** Workspace strings and injected prompts follow the host language. With feedback enabled, the model can file a `report_market_issue` report through the `gh` CLI or a GitHub token; with neither, it opens a prefilled GitHub issue page and hands you the complete issue text.
69
+ - **Translation.** Descriptions and expanded documents can follow the Chinese or English interface. Names stay unchanged. Chinese defaults to on and English to off, but your saved choice takes priority. Documents offer original, translated, and paragraph-by-paragraph bilingual views, with bilingual selected by default. Translation starts on demand, tries Google Translate, Microsoft Translator, then your default model, and keeps the original when none answers. Results stay cached locally until cleared. Turning translation off keeps that cache. See [translation](docs/user/usage.md#translation).
65
70
 
66
71
  ## Quick start
67
72
 
@@ -71,7 +76,7 @@ Install into your profile, replacing `<name>` with its name:
71
76
  dsh plugin --profile <name> add dsh-agent-plugins-market
72
77
  ```
73
78
 
74
- 1. Restart DSH and open **Settings → Agent Plugins Market**.
79
+ 1. Restart DSH and open **Settings → Agent Plugins**.
75
80
  2. The market already lists the first-party source; press **Refresh** to fetch its suites. To pull in more, add a source, for example `https://github.com/anthropics/claude-plugins-official`.
76
81
  3. Open a suite, review its contents, then install it and ensure it is enabled.
77
82
  4. For a suite with skills, check the **Skills** tab and type `/` in chat to find its user-invocable skills. For an MCP suite, check **MCP services** and resolve any credential or connection notice before using its tools.
@@ -80,22 +85,23 @@ Requirements, profile configuration and alternative installs: [usage guide](docs
80
85
 
81
86
  ## Everyday use
82
87
 
83
- The workspace has six tabs:
88
+ The workspace has seven tabs:
84
89
 
85
- | Tab | Use it to |
86
- | -------------- | --------------------------------------------------------------------------------------------------------------------------------------------- |
87
- | Market | Add sources, preview suites, install / uninstall, enable / disable and refresh. |
88
- | Skills | Browse skills and create or edit your own reusable instructions. |
89
- | Commands | Manage prompt templates invoked as `/name`. |
90
- | Agent personas | Manage role instructions and save an exact provider, model and reasoning effort per role; delegate in the background through `subagent_role`. |
91
- | MCP services | Add a service or configure an installed one, its credentials and authorization; inspect status and retry failures. |
92
- | LSP servers | Add and configure language servers and inspect their runtime status. |
90
+ | Tab | Use it to |
91
+ | --- | --- |
92
+ | Market | Add sources, preview suites, install / uninstall, enable / disable and refresh. |
93
+ | Skills | Browse skills and create or edit your own reusable instructions. |
94
+ | Commands | Manage prompt templates invoked as `/name`. |
95
+ | Agent personas | Save role instructions and model settings; delegate through `subagent_role` or create role-aware Team members with `spawn_teammate_role`. |
96
+ | MCP services | Add a service or configure an installed one, its credentials and authorization; inspect status and retry failures. |
97
+ | LSP servers | Add and configure language servers and inspect their runtime status. |
98
+ | Hooks | Inspect configured command hooks and supported events. Each row opens a declaration card with support, event, matcher and timeout, plus a dry run in your home directory. Installed suite hooks list read-only and follow their suite. |
93
99
 
94
100
  A **source** is where content comes from; a **suite** is an installable unit discovered there. Adding a source discovers its suites. Installing and enabling a suite controls its runtime capabilities.
95
101
 
96
102
  Everything you author yourself lives in the shared Agent layout root: skills, commands and personas as Markdown under `~/.agents/`, command hooks in `~/.agents/hooks.json` (or `~/.agents/hooks/hooks.json`), and the MCP and LSP services you add in the workspace in `~/.agents/mcp.json` and `~/.agents/lsp.json`. Commands and personas are read at any subdirectory depth, so a file another tool wrote at `~/.agents/commands/git/commit.md` is callable as `/git-commit`. Project-native resources stay in the project. See [storage and discovery](docs/user/usage.md#storage-and-discovery) for paths and precedence.
97
103
 
98
- All six tabs share a saved grid/list preference. Add and refresh actions sit at the top right; resource state rails are green when active.
104
+ All seven tabs share a saved grid/list preference. Add and refresh actions sit at the top right; resource state rails are green when active. A hook row opens its own read-only declaration. The declaration shows the full command, the declared matcher, the declared timeout and the host support verdict, never the whole suite behind it.
99
105
 
100
106
  ## Compatibility and boundaries
101
107
 
@@ -107,12 +113,12 @@ Supported **runtime surfaces** describe what DSH can use:
107
113
  | --- | --- |
108
114
  | Skills | Host skill catalog and user-invocable slash entries; supported root placeholders are expanded. |
109
115
  | Commands | Slash commands through the host command service. |
110
- | Agents | Dynamic subagent catalog and `subagent_role`; requires host agents, tools, LLM, subagent and session-persistence services. |
116
+ | Agents | Dynamic role catalog; `subagent_role` without Agent Teams, `spawn_teammate_role` with it. Team mode also requires session query and system-prompt services. |
111
117
  | MCP | Built-in bridge by default: stdio, Streamable HTTP with OAuth, and legacy SSE. Optional host-client compatibility mode is also available; it enforces the tool-call timeout but not tool filters or a startup timeout. |
112
118
  | Hooks | The command-hook subset mapped by `dsh-hooks-claude-code`. |
113
119
  | LSP | Self-provisioned: installing the plugin is the whole setup, and `lsp` mounts only while a language server is wanted; the server executable must be on `PATH`. |
114
120
 
115
- Agent roles appear in the session catalog and run through `subagent_role(agent, prompt)`. A role may save an exact `provider` plus `model` pair and a `reasoning_effort`; every other declaration is ignored and the child inherits the parent route. `tools` and `disallowedTools` are preserved in the file but never applied. See [agent roles](docs/user/agent-roles.md) for the frontmatter fields and limits.
121
+ Role discovery remains available in either mode. `spawn_teammate_role(agent, name, description, prompt)` applies role instructions and model settings from the first request, returns a native Team `target`, and retains the creation snapshot for resume. Only the Lead creates members, after the user explicitly requests Team work. Native `spawn_teammate` stays available; roles do not add a second management API. A separate Team coordination briefing keeps the Lead on user intent and integration while guiding members through scoped execution and reporting, even without a role catalog. `tools` and `disallowedTools` are preserved but not enforced. See [agent roles](docs/user/agent-roles.md) for routing, prerequisites and limits.
116
122
 
117
123
  ### Layout detection precedence
118
124
 
@@ -135,7 +141,7 @@ When multiple manifests exist in the **same suite directory**, the first existin
135
141
  - **Component fallback:** for a root `plugin.json` that does not declare a recognized agent-plugins `$schema`, missing component declarations can come from `.claude-plugin/plugin.json`; explicit root declarations win, and marketplace entry declarations fill remaining gaps.
136
142
  - Marketplace catalogs follow the same order: the first catalog that produces suites wins, and invalid or empty catalogs allow the next candidate to be tried.
137
143
 
138
- The order is defined in [`src/model/layouts.ts`](src/model/layouts.ts); selection and root-manifest fallback are implemented in [`src/catalog/manifests.ts`](src/catalog/manifests.ts).
144
+ The order is defined in [`packages/market-contracts/src/model/layouts.ts`](packages/market-contracts/src/model/layouts.ts); selection and root-manifest fallback are implemented in [`packages/market-catalog/src/scanning/manifests.ts`](packages/market-catalog/src/scanning/manifests.ts).
139
145
 
140
146
  ### Layout support matrix
141
147
 
@@ -163,6 +169,8 @@ The table says per layout whether this plugin reads a given surface at all. **Ye
163
169
  - **agent-plugins** suites read the portable core (`skills/`, `mcp.json`) per the specification, plus this plugin's [`com.deepseek.harness`](schemas/com.deepseek.harness/spec.md) extension namespace for commands, agents, hooks, LSP and per-server MCP policy (OAuth, tool lists, timeouts). Root-level `commands/`, `agents/`, `hooks/` and `.mcp.json` files belong to other layouts and are reported as unread for this dialect; inline manifest component keys are reported and ignored per §5.2. Both recognized releases (1.0.0, 1.1.0) validate against their own vendored schemas.
164
170
  - **Universal** is a compatibility-layout label used by this plugin; the [OpenHands SDK](https://docs.openhands.dev/sdk/guides/plugins) documents the same `.plugin/plugin.json` location and a [Vercel repository](https://github.com/vercel/vercel-plugin/blob/main/.plugin/plugin.json) uses it, but no cross-vendor specification exists.
165
171
 
172
+ Sources such as [jeecgboot/skills](https://github.com/jeecgboot/skills) group undeclared, skill-only directories into one plugin card. Marketplace entries and roots with plugin manifests or other runtime surfaces retain their separate identities. The aggregate requires its own installation and does not inherit individual skill installs. See [skill collection rules](schemas/skill-collection/spec.md).
173
+
166
174
  Reading a layout does not guarantee every behavior of its original platform. Invalid declarations are diagnosed and skipped.
167
175
 
168
176
  ### Project layout switch
@@ -211,6 +219,10 @@ There is no file watcher. Local-source discovery caches results for up to 30 sec
211
219
 
212
220
  Only when you tick **also delete the managed market directory** in the confirmation. That removes the source's checkout under `~/.dsh/agent-plugins/.sources/<id>` — including one you cloned yourself and adopted. A local-directory source pointing outside `.sources/` is never deleted.
213
221
 
222
+ ## Repository layout
223
+
224
+ The published package stays `dsh-agent-plugins-market` and ships one artifact. The code lives in eight private workspace packages under `packages/`: `market-bundle` (composition root and HTTP surface), `market-catalog` (source scanning and catalog use cases), `market-contracts` (stateless shared records), `market-runtime` (session selection and harness effects), `market-mcp`, `market-lsp`, `market-translation`, and `market-ui` (the browser bundle). Ownership, dependency direction and the migration gates are recorded in [the domain workspace refactor](docs/developer/design/domain-workspace-refactor.md); [AGENTS.md](AGENTS.md) holds the layout map maintainers edit.
225
+
214
226
  ## More documentation
215
227
 
216
228
  - [Usage guide](docs/user/usage.md): installation, source configuration, storage, host requirements, project layouts, MCP / LSP and feedback settings.
package/README.zh.md CHANGED
@@ -1,6 +1,8 @@
1
- <img src="docs-site/public/favicon.svg" alt="" width="48" height="48" />
1
+ <img src="assets/dsh-agent-plugins.png" alt="Agent 扩展" width="64" height="64" />
2
2
 
3
- # dsh-agent-plugins-market
3
+ # Agent 扩展
4
+
5
+ `dsh-agent-plugins-market`
4
6
 
5
7
  **在 [DeepSeek Harness(DSH)](https://github.com/deepseek-ai/deepseek-harness) 之内,一站式管理 skills、subagent、MCP、LSP,兼容 Claude Code、Codex、Cursor、Kimi 等 agent plugins 体系。**
6
8
 
@@ -49,19 +51,22 @@
49
51
 
50
52
  ## 你可以用它做什么
51
53
 
54
+ - 在插件设置中开启实验性的 Agent 预设管理器后,输入框才显示入口。该开关默认关闭,只控制入口显示,不停用会话运行时。会话扩展预设通过「权限」右侧的Agent 扩展图标按钮选择技能、命令、角色、MCP 与 LSP 能力。每个工作区拥有自己的预设库和新会话默认值。会话运行时处于活动状态时选择预设,将在该会话的下一次用户请求生效。进行中的中途引导(steer)与工具调用不受影响。选择提交后,已打开的斜杠技能菜单自动刷新,无需再次输入或刷新页面。在当前会话中编辑已选或待选预设会更新该会话,其他会话各自保留独立副本。复制、粘贴预设到另一个工作区会生成独立副本。全局管理的资源显示真实状态,不提供会话开关。预设详情不会修改共享凭据或配置。会话选择失败后,显式恢复会还原就绪状态并继续排队的用户输入,无需再次发送。
55
+
52
56
  - **十种套件布局。** Claude Code、Codex、Cursor、Kimi Code、ZCode、Qoder CLI、GitHub Copilot CLI、Universal `.plugin/`、[agent-plugins](https://agent-plugins.org) 与无清单技能集合。
53
57
  - **来源。** 添加 Git 仓库、本地目录或压缩包(`.zip` / `.tar.gz` / `.tgz` / `.tar`);收编自己克隆的目录;按需刷新;删除来源时可一并删除受管目录。
54
58
  - **第一方来源。** 插件预置一条指向自身套件集合的仓库源记录,所以首次运行市场里就列出该仓库,不需要粘贴任何地址。此后它就是普通 Git 来源——刷新以拉取,再像其他来源一样安装与启停其中的套件。
55
59
  - **适合你网络的下载方式。** 下载区域设置(默认 `auto` 跟随界面语言,也可显式选择全球或中国大陆)决定 `github.com` 克隆走的镜像前缀;代理与单次调用调优在宿主配置里。
56
60
  - **运行时能力。** 启用套件会注入会话:技能进入目录与斜杠菜单,命令以 `/名称` 调用,代理角色进入子代理目录,MCP 工具以 `mcp__` 前缀注册,hooks 挂到宿主生命周期事件,语言服务器通过 `lsp` 工具使用。
57
- - **MCP。** 内置桥接无需宿主 MCP 客户端,支持 stdio、带 OAuth 的 Streamable HTTP 和旧式 SSE。`${VAR}` 引用从宿主凭据服务或启动环境解析;按服务覆盖可禁用或修补声明,不必修改源文件,可设置工具调用超时与启动超时,也可逐个关闭工具;新建服务表单只问名称、传输方式与该传输方式必需的字段,其余设置都以 JSON 写入;还可选用宿主客户端兼容模式。套件的工具名为 `mcp__<套件>__<服务>__<工具>`;你在 `~/.agents/mcp.json` 自建的服务以自己的键挂载,即 `mcp__<服务>__<工具>`。
61
+ - **MCP。** 内置桥接无需宿主 MCP 客户端,支持 stdio、带 OAuth 的 Streamable HTTP 和旧式 SSE。`${VAR}` 引用从宿主凭据服务或启动环境解析;按服务覆盖可禁用或修补声明,不必修改源文件,可设置工具调用超时与启动超时,也可逐个关闭工具;新建与编辑共用同一服务表单,均提供高级超时设置与 JSON 视图;还可选用宿主客户端兼容模式。套件的工具名为 `mcp__<套件>__<服务>__<工具>`;你在 `~/.agents/mcp.json` 自建的服务以自己的键挂载,即 `mcp__<服务>__<工具>`。
58
62
  - **LSP。** 随插件自带:安装插件即完成全部设置,`lsp` 工具只在确有语言服务器需求时挂载;语言服务器可执行文件本身需在 `PATH` 中。从「需要你自己在 profile 里暴露 LSP」的版本升级上来时,若 profile 里还留着那层手工配置,会报接缝冲突;LSP 面板会指出该文件并代为移除这一层,且保留备份。
59
- - **代理角色与委派。** 角色卡片保存精确的供应商、模型与思考强度;角色出现在会话目录中,通过 `subagent_role` 运行,立即返回可继续的后台子代理 ID。
63
+ - **代理角色与委派。** 角色卡保留专业指令及精确的供应商、模型、思考强度配置。未启用 Agent Teams 时使用 `subagent_role`;启用后使用 `spawn_teammate_role` 创建真正的 Team 成员,并通过原生 Team 工具管理。
60
64
  - **项目维度。** 项目自身的技能、代理、命令、MCP 服务与 hooks 无需安装即被发现。
61
65
  - **自建资源。** 技能、命令和代理角色以 Markdown 保存在 `~/.agents/` 下,可随时编辑或禁用而不删除文件。
62
66
  - **后台自动更新来源。** 可选:按定时器刷新全部已配置来源;默认关闭。
63
- - **Web 工作区。** 六个页签——插件市场、技能、命令、代理角色、MCP 服务、LSP 服务——每个页签都有搜索、过滤与网格/列表切换,并提供带诊断的状态面板、凭据编辑,以及可在启用可执行第三方内容前提示风险的安装确认。
67
+ - **Web 工作区。** 七个页签:插件市场、技能、命令、代理角色、MCP 服务、LSP 服务和 Hooks。每个页签都有搜索、过滤与网格/列表切换,并提供带诊断的状态面板、凭据编辑,以及可在启用可执行第三方内容前提示风险的安装确认。设置页是版式的准绳:所有页面共用同一条页签行(等宽列、绝不横向滚动,标签过长则省略号截断),并共用同一套卡片与详情结构,预设管理器同样如此。
64
68
  - **双语界面与反馈。** 工作区文案与注入提示跟随宿主语言;启用反馈后,模型可通过 `gh` 命令或 GitHub token 提交 `report_market_issue` 报告;两者都没有时,会打开预填好的 GitHub 新建 issue 页面并把完整 issue 文本交给你。
69
+ - **翻译。** 描述与已展开的文档可翻译成界面所用的中文或英文,名称保持不变。中文默认开启、英文默认关闭,但你保存的选择优先。正文提供原文、译文和逐段双语三种视图,默认双语。翻译按需开始,依次尝试 Google Translate、Microsoft Translator、你的默认模型,都未应答时保留原文。结果缓存在本地直到清空;关闭翻译会保留缓存。详见[翻译](docs/user/usage.zh.md#翻译)。
65
70
 
66
71
  ## 快速开始
67
72
 
@@ -71,7 +76,7 @@
71
76
  dsh plugin --profile <name> add dsh-agent-plugins-market
72
77
  ```
73
78
 
74
- 1. 重启 DSH,打开 **设置 → Agent Plugins 市场**。
79
+ 1. 重启 DSH,打开 **设置 → Agent 扩展**。
75
80
  2. 市场里已经列出第一方来源;点**刷新**即可拉取其中的套件。想补充更多内容时再添加来源,例如 `https://github.com/anthropics/claude-plugins-official`。
76
81
  3. 打开套件查看内容,确认后安装,并确保套件已启用。
77
82
  4. 如果套件提供技能,先在**技能**页签查看,再在聊天中输入 `/` 查找允许手动调用的技能。如果提供 MCP,前往 **MCP 服务**检查状态,处理凭据或连接提示后再使用工具。
@@ -80,22 +85,23 @@ dsh plugin --profile <name> add dsh-agent-plugins-market
80
85
 
81
86
  ## 日常使用
82
87
 
83
- 工作区包含六个页签:
88
+ 工作区包含七个页签:
84
89
 
85
- | 页签 | 可以做什么 |
86
- | -------- | ------------------------------------------------------------------------------------------- |
87
- | 插件市场 | 添加来源、预览套件、安装 / 卸载、启用 / 禁用和刷新。 |
88
- | 技能 | 浏览技能,创建或编辑自己的可复用指令。 |
89
- | 命令 | 管理通过 `/名称` 调用的提示词模板。 |
90
- | 代理角色 | 管理角色指令并为每个角色保存精确的供应商、模型与思考强度;通过 `subagent_role` 在后台委派。 |
91
- | MCP 服务 | 自行新增服务或配置已安装的服务及其凭据与授权,查看连接状态并重试失败的服务。 |
92
- | LSP 服务 | 新增并配置语言服务器,查看运行状态。 |
90
+ | 页签 | 可以做什么 |
91
+ | -------- | ----------------------------------------------------------------------------------------------------------------------------------------------------- |
92
+ | 插件市场 | 添加来源、预览套件、安装 / 卸载、启用 / 禁用和刷新。 |
93
+ | 技能 | 浏览技能,创建或编辑自己的可复用指令。 |
94
+ | 命令 | 管理通过 `/名称` 调用的提示词模板。 |
95
+ | 代理角色 | 保存角色指令与模型配置;通过 `subagent_role` 委派,或通过 `spawn_teammate_role` 创建带角色的 Team 成员。 |
96
+ | MCP 服务 | 自行新增服务或配置已安装的服务及其凭据与授权,查看连接状态并重试失败的服务。 |
97
+ | LSP 服务 | 新增并配置语言服务器,查看运行状态。 |
98
+ | Hooks | 查看已配置的命令 hooks 及其支持情况。每行可打开声明卡:支持情况、事件、匹配条件与超时,并可在用户根目录试运行;已安装套件的 hook 只读列出,跟随套件。 |
93
99
 
94
100
  **来源(source)**表示内容来自哪里,**套件(suite)**是从中发现的可安装单元。添加来源用于发现套件;安装并启用套件决定其运行时能力是否生效。
95
101
 
96
102
  你自己创作的内容都放在共用的 Agent 布局根目录:技能、命令和角色是 `~/.agents/` 下的 Markdown 文件,命令 hooks 放在 `~/.agents/hooks.json`(或 `~/.agents/hooks/hooks.json`),工作区里新增的 MCP 与 LSP 服务分别保存在 `~/.agents/mcp.json` 与 `~/.agents/lsp.json`。命令与角色按任意子目录深度读取,因此其它工具写在 `~/.agents/commands/git/commit.md` 的文件可用 `/git-commit` 调用。项目原生资源继续保留在项目中。路径和优先级见[存储与发现](docs/user/usage.zh.md#存储与发现)。
97
103
 
98
- 六个页签共用持久化的卡片/列表偏好。新增、刷新统一位于页头;资源状态条为绿色时表示生效中。
104
+ 七个页签共用持久化的卡片/列表偏好。新增、刷新统一位于页头;资源状态条为绿色时表示生效中。hook 行打开的是它自己的只读声明,包含完整命令、声明的匹配条件、声明的超时与宿主支持情况,而不是它所属的整个套件。
99
105
 
100
106
  ## 兼容性与运行边界
101
107
 
@@ -107,12 +113,12 @@ dsh plugin --profile <name> add dsh-agent-plugins-market
107
113
  | ----- | ------------------------------------------------------------------------------------------------------------------------------------------------------ |
108
114
  | 技能 | 接入宿主技能目录,允许手动调用的技能出现在斜杠菜单;展开支持的根路径占位符。 |
109
115
  | 命令 | 通过宿主命令服务注册斜杠命令。 |
110
- | 代理 | 动态子代理目录与 `subagent_role`;需要宿主 agents、tools、LLM、subagents 与会话持久化服务。 |
116
+ | 代理 | 动态角色目录;无 Agent Teams 时用 `subagent_role`,启用后用 `spawn_teammate_role`。Team 模式还需要会话查询和系统提示词服务。 |
111
117
  | MCP | 默认使用内置桥接,支持 stdio、带 OAuth 的 Streamable HTTP 和旧式 SSE;也可切换宿主客户端兼容模式,该模式执行工具调用超时,但不执行工具过滤与启动超时。 |
112
118
  | Hooks | 运行 `dsh-hooks-claude-code` 桥接映射支持的 command-hook 子集。 |
113
119
  | LSP | 随插件自带:安装插件即安装 LSP 支持包,`lsp` 工具只在确有语言服务器需求时挂载;语言服务器可执行文件本身需在 `PATH` 中。 |
114
120
 
115
- 代理角色显示在会话目录中,并通过 `subagent_role(agent, prompt)` 执行。角色可以保存精确的 `provider` + `model` 与 `reasoning_effort`;其余声明一律忽略,子代理改为继承父会话路由。`tools` 与 `disallowedTools` 会保留在文件中但不会生效。frontmatter 字段与边界见[代理角色](docs/user/agent-roles.zh.md)。
121
+ 两种模式都保留角色发现。`spawn_teammate_role(agent, name, description, prompt)` 从首个请求起应用角色指令与模型配置,返回原生 Team `target`,并保留创建时快照供恢复。只有 Lead 在用户明确要求 Team 工作后才能创建成员。原生 `spawn_teammate` 仍可用,角色不会新增第二套管理 API。独立的 Team 协调说明让 Lead 负责用户意图与整合,指导成员按范围执行和回报,即使没有角色目录也可用。`tools` 与 `disallowedTools` 保留但不执行。路由、依赖与限制见[代理角色](docs/user/agent-roles.zh.md)。
116
122
 
117
123
  ### 布局识别优先级
118
124
 
@@ -135,7 +141,7 @@ dsh plugin --profile <name> add dsh-agent-plugins-market
135
141
  - **组件补充:** 根 `plugin.json` 未声明受识别的 agent-plugins `$schema` 时,缺失的组件声明可以从 `.claude-plugin/plugin.json` 补齐;根清单中的显式声明优先,marketplace 条目声明补充剩余缺项。
136
142
  - Marketplace 索引遵循同一顺序:第一个能产出套件的索引胜出,无效或空索引允许继续尝试后续候选。
137
143
 
138
- 顺序定义见 [`src/model/layouts.ts`](src/model/layouts.ts),选择与根清单补充逻辑见 [`src/catalog/manifests.ts`](src/catalog/manifests.ts)。
144
+ 顺序定义见 [`packages/market-contracts/src/model/layouts.ts`](packages/market-contracts/src/model/layouts.ts),选择与根清单补充逻辑见 [`packages/market-catalog/src/scanning/manifests.ts`](packages/market-catalog/src/scanning/manifests.ts)。
139
145
 
140
146
  ### 布局支持矩阵
141
147
 
@@ -163,6 +169,8 @@ dsh plugin --profile <name> add dsh-agent-plugins-market
163
169
  - **agent-plugins** 套件按规范读取可移植核心(`skills/`、`mcp.json`),另通过本插件的 [`com.deepseek.harness`](schemas/com.deepseek.harness/spec.md) 扩展命名空间承载命令、代理、hooks、LSP 与逐服务器 MCP 策略(OAuth、工具清单、超时)。该布局下根目录的 `commands/`、`agents/`、`hooks/` 与 `.mcp.json` 属于其它布局,给出「未读取」诊断;清单内联组件键按 §5.2 报告后忽略。两个受支持的版本(1.0.0、1.1.0)各自按内置 schema 校验。
164
170
  - **Universal** 是本插件使用的兼容布局名称:[OpenHands SDK](https://docs.openhands.dev/sdk/guides/plugins)文档同样使用 `.plugin/plugin.json`,[Vercel 仓库](https://github.com/vercel/vercel-plugin/blob/main/.plugin/plugin.json)也在使用,但不存在跨厂商规范。
165
171
 
172
+ [jeecgboot/skills](https://github.com/jeecgboot/skills) 这类源中,未声明插件且只包含技能的目录会聚合为一张插件卡片。市场条目、自带插件清单或其它运行面的目录仍保留独立身份。聚合插件需要单独安装,不继承单个技能的安装状态。详见[技能集合规则](schemas/skill-collection/spec.md)。
173
+
166
174
  能读取一种布局,并不保证复现原平台的全部行为。无效声明会被诊断并跳过。
167
175
 
168
176
  ### 项目布局开关
@@ -211,6 +219,10 @@ README 中的仓库在 [`tests/fixtures/real-layouts/`](tests/fixtures/real-layo
211
219
 
212
220
  只有勾选确认框里的「同时删除市场目录」才会删除。它删除该源在 `~/.dsh/agent-plugins/.sources/<id>` 下的目录——包括你手动克隆后被收编的目录。指向 `.sources/` 之外的本地目录源永不删除。
213
221
 
222
+ ## 仓库结构
223
+
224
+ 发布包仍为 `dsh-agent-plugins-market`,只产出一个构件。代码位于 `packages/` 下的八个私有工作区包:`market-bundle`(组合根与 HTTP 接口)、`market-catalog`(来源扫描与目录用例)、`market-contracts`(无状态共享记录)、`market-runtime`(会话选择与宿主副作用)、`market-mcp`、`market-lsp`、`market-translation` 与 `market-ui`(浏览器 bundle)。归属、依赖方向与迁移门禁记录在[领域工作区重构](docs/developer/design/domain-workspace-refactor.md);维护者维护的布局图见 [AGENTS.md](AGENTS.md)。
225
+
214
226
  ## 更多文档
215
227
 
216
228
  - [使用指南](docs/user/usage.zh.md):安装、来源配置、存储、宿主要求、项目布局、MCP / LSP 和反馈设置。
Binary file