dsh-plugin-dev-kb 1.3.0 → 1.4.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 (364) hide show
  1. package/CHANGELOG.md +15 -0
  2. package/README.en.md +4 -4
  3. package/README.md +5 -5
  4. package/kb/INDEX.md +18 -18
  5. package/kb/README.md +6 -4
  6. package/kb/extra/AGENTS.md +11 -10
  7. package/kb/extra/cookbook/adding-a-remote-api.md +2 -2
  8. package/kb/extra/cookbook/adding-a-remote-api.zh.md +2 -2
  9. package/kb/extra/cookbook/adding-a-session-format-version.md +48 -6
  10. package/kb/extra/cookbook/adding-a-session-format-version.zh.md +48 -6
  11. package/kb/extra/cookbook/reviewing-persistence-type-changes.md +120 -0
  12. package/kb/extra/cookbook/reviewing-persistence-type-changes.zh.md +120 -0
  13. package/kb/extra/deepseek-llm-api-wire-extensions.md +18 -19
  14. package/kb/extra/deepseek-llm-api-wire-extensions.zh.md +17 -18
  15. package/kb/extra/development.md +27 -10
  16. package/kb/extra/development.zh.md +27 -10
  17. package/kb/extra/event-producer-consumer.md +89 -68
  18. package/kb/extra/event-producer-consumer.zh.md +90 -69
  19. package/kb/extra/glossary.md +1 -1
  20. package/kb/extra/glossary.zh.md +1 -1
  21. package/kb/extra/i18n/README.md +15 -7
  22. package/kb/extra/i18n/README.zh.md +15 -7
  23. package/kb/extra/i18n/terminology.md +4 -4
  24. package/kb/extra/i18n/translation-prompt.md +2 -2
  25. package/kb/extra/module-graph.md +574 -326
  26. package/kb/extra/module-graph.zh.md +574 -326
  27. package/kb/extra/persistence-changes/2026-09-11-initial.md +280 -0
  28. package/kb/extra/persistence-changes/2026-09-11-initial.zh.md +280 -0
  29. package/kb/extra/persistence-changes/2026-09-12-auto-review-error-metadata.md +52 -0
  30. package/kb/extra/persistence-changes/2026-09-12-auto-review-error-metadata.zh.md +52 -0
  31. package/kb/extra/persistence-changes/2026-09-14-image-offload.md +96 -0
  32. package/kb/extra/persistence-changes/2026-09-14-image-offload.zh.md +96 -0
  33. package/kb/extra/persistence-changes/2026-09-14-workspace-changes-event.md +48 -0
  34. package/kb/extra/persistence-changes/2026-09-14-workspace-changes-event.zh.md +48 -0
  35. package/kb/extra/persistence-changes/2026-09-16-session-format-v4.md +120 -0
  36. package/kb/extra/persistence-changes/2026-09-16-session-format-v4.zh.md +120 -0
  37. package/kb/extra/persistence-changes/2026-09-18-schedule-optional-title.md +48 -0
  38. package/kb/extra/persistence-changes/2026-09-18-schedule-optional-title.zh.md +48 -0
  39. package/kb/extra/persistence-changes/2026-09-20-unknown-child-catalog.md +48 -0
  40. package/kb/extra/persistence-changes/2026-09-20-unknown-child-catalog.zh.md +48 -0
  41. package/kb/extra/persistence-changes/2026-09-21-user-question-reply.md +60 -0
  42. package/kb/extra/persistence-changes/2026-09-21-user-question-reply.zh.md +60 -0
  43. package/kb/extra/persistence-changes/README.md +88 -0
  44. package/kb/extra/persistence-changes/README.zh.md +88 -0
  45. package/kb/extra/persistence-changes/historical-formats/README.md +75 -0
  46. package/kb/extra/persistence-changes/historical-formats/README.zh.md +75 -0
  47. package/kb/extra/persistence-changes/historical-formats/v0.md +5105 -0
  48. package/kb/extra/persistence-changes/historical-formats/v0.zh.md +5105 -0
  49. package/kb/extra/persistence-changes/historical-formats/v1.md +5107 -0
  50. package/kb/extra/persistence-changes/historical-formats/v1.zh.md +5107 -0
  51. package/kb/extra/persistence-changes/historical-formats/v2.md +5362 -0
  52. package/kb/extra/persistence-changes/historical-formats/v2.zh.md +5362 -0
  53. package/kb/extra/persistence-changes/historical-formats/v3.md +5634 -0
  54. package/kb/extra/persistence-changes/historical-formats/v3.zh.md +5634 -0
  55. package/kb/extra/persistence-changes/releases/README.md +103 -0
  56. package/kb/extra/persistence-changes/releases/README.zh.md +103 -0
  57. package/kb/extra/persistence-changes/releases/dsh-v0.0.1-rc.1.md +201 -0
  58. package/kb/extra/persistence-changes/releases/dsh-v0.0.1-rc.1.zh.md +201 -0
  59. package/kb/extra/persistence-changes/releases/dsh-v0.0.1-rc.2.md +261 -0
  60. package/kb/extra/persistence-changes/releases/dsh-v0.0.1-rc.2.zh.md +261 -0
  61. package/kb/extra/persistence-changes/releases/dsh-v0.0.1-rc.3.md +126 -0
  62. package/kb/extra/persistence-changes/releases/dsh-v0.0.1-rc.3.zh.md +126 -0
  63. package/kb/extra/persistence-changes/releases/dsh-v0.0.1-rc.4.md +75 -0
  64. package/kb/extra/persistence-changes/releases/dsh-v0.0.1-rc.4.zh.md +75 -0
  65. package/kb/extra/persistence-changes/releases/dsh-v0.0.1-rc.5.md +75 -0
  66. package/kb/extra/persistence-changes/releases/dsh-v0.0.1-rc.5.zh.md +75 -0
  67. package/kb/extra/persistence-changes/releases/dsh-v0.1.0-rc.1.md +75 -0
  68. package/kb/extra/persistence-changes/releases/dsh-v0.1.0-rc.1.zh.md +75 -0
  69. package/kb/extra/persistence-changes/releases/dsh-v0.1.0-rc.2.md +75 -0
  70. package/kb/extra/persistence-changes/releases/dsh-v0.1.0-rc.2.zh.md +75 -0
  71. package/kb/extra/persistence-changes/releases/dsh-v0.1.0-rc.3.md +75 -0
  72. package/kb/extra/persistence-changes/releases/dsh-v0.1.0-rc.3.zh.md +75 -0
  73. package/kb/extra/persistence-changes/releases/dsh-v0.1.0-rc.5.md +75 -0
  74. package/kb/extra/persistence-changes/releases/dsh-v0.1.0-rc.5.zh.md +75 -0
  75. package/kb/extra/persistence-changes/releases/dsh-v0.1.0-rc.6.md +75 -0
  76. package/kb/extra/persistence-changes/releases/dsh-v0.1.0-rc.6.zh.md +75 -0
  77. package/kb/extra/persistence-changes/releases/dsh-v0.1.0-rc.7.md +82 -0
  78. package/kb/extra/persistence-changes/releases/dsh-v0.1.0-rc.7.zh.md +82 -0
  79. package/kb/extra/persistence-changes/releases/dsh-v0.1.0-rc.8.md +110 -0
  80. package/kb/extra/persistence-changes/releases/dsh-v0.1.0-rc.8.zh.md +110 -0
  81. package/kb/extra/persistence-changes/releases/dsh-v0.1.1-rc.1.md +82 -0
  82. package/kb/extra/persistence-changes/releases/dsh-v0.1.1-rc.1.zh.md +82 -0
  83. package/kb/extra/persistence-changes/releases/dsh-v0.1.1-rc.2.md +119 -0
  84. package/kb/extra/persistence-changes/releases/dsh-v0.1.1-rc.2.zh.md +119 -0
  85. package/kb/extra/persistence-changes/releases/dsh-v0.1.2-alpha.1.md +295 -0
  86. package/kb/extra/persistence-changes/releases/dsh-v0.1.2-alpha.1.zh.md +295 -0
  87. package/kb/extra/persistence-changes/releases/dsh-v0.1.2-alpha.2.md +286 -0
  88. package/kb/extra/persistence-changes/releases/dsh-v0.1.2-alpha.2.zh.md +286 -0
  89. package/kb/extra/persistence-changes/releases/dsh-v0.1.2-alpha.3.md +75 -0
  90. package/kb/extra/persistence-changes/releases/dsh-v0.1.2-alpha.3.zh.md +75 -0
  91. package/kb/extra/persistence-changes/releases/dsh-v0.1.2-alpha.4.md +95 -0
  92. package/kb/extra/persistence-changes/releases/dsh-v0.1.2-alpha.4.zh.md +95 -0
  93. package/kb/extra/persistence-changes/releases/dsh-v0.1.2-alpha.5.md +75 -0
  94. package/kb/extra/persistence-changes/releases/dsh-v0.1.2-alpha.5.zh.md +75 -0
  95. package/kb/extra/persistence-changes/releases/dsh-v0.1.2-rc.1.md +75 -0
  96. package/kb/extra/persistence-changes/releases/dsh-v0.1.2-rc.1.zh.md +75 -0
  97. package/kb/extra/persistence-changes/releases/dsh-v0.1.3-alpha.1.md +154 -0
  98. package/kb/extra/persistence-changes/releases/dsh-v0.1.3-alpha.1.zh.md +154 -0
  99. package/kb/extra/persistence-changes/releases/dsh-v0.1.3-alpha.2.md +86 -0
  100. package/kb/extra/persistence-changes/releases/dsh-v0.1.3-alpha.2.zh.md +86 -0
  101. package/kb/extra/persistence-changes/releases/dsh-v0.1.5-alpha.1.md +139 -0
  102. package/kb/extra/persistence-changes/releases/dsh-v0.1.5-alpha.1.zh.md +139 -0
  103. package/kb/extra/persistence-changes/releases/dsh-v0.1.5-alpha.2.md +95 -0
  104. package/kb/extra/persistence-changes/releases/dsh-v0.1.5-alpha.2.zh.md +95 -0
  105. package/kb/extra/persistence-changes/releases/dsh-v0.1.5-rc.1.md +75 -0
  106. package/kb/extra/persistence-changes/releases/dsh-v0.1.5-rc.1.zh.md +75 -0
  107. package/kb/extra/persistence-changes/releases/dsh-v0.1.5-rc.2.md +75 -0
  108. package/kb/extra/persistence-changes/releases/dsh-v0.1.5-rc.2.zh.md +75 -0
  109. package/kb/extra/rescope.md +1 -1
  110. package/kb/extra/rescope.zh.md +1 -1
  111. package/kb/extra/session-format-status.md +22 -6
  112. package/kb/extra/session-format-status.zh.md +22 -6
  113. package/kb/extra/subsystems/agent-team.md +52 -28
  114. package/kb/extra/subsystems/agent-team.zh.md +52 -28
  115. package/kb/extra/subsystems/attachment.md +19 -9
  116. package/kb/extra/subsystems/attachment.zh.md +19 -9
  117. package/kb/extra/subsystems/boot.md +323 -0
  118. package/kb/extra/subsystems/boot.zh.md +323 -0
  119. package/kb/extra/subsystems/browser-use.md +67 -0
  120. package/kb/extra/subsystems/browser-use.zh.md +67 -0
  121. package/kb/extra/subsystems/claude-code-mods.md +146 -0
  122. package/kb/extra/subsystems/claude-code-mods.zh.md +146 -0
  123. package/kb/extra/subsystems/computer-use.md +56 -0
  124. package/kb/extra/subsystems/computer-use.zh.md +56 -0
  125. package/kb/extra/subsystems/deliverables.md +178 -0
  126. package/kb/extra/subsystems/deliverables.zh.md +178 -0
  127. package/kb/extra/subsystems/extensions.md +6 -4
  128. package/kb/extra/subsystems/extensions.zh.md +6 -4
  129. package/kb/extra/subsystems/feedback.md +4 -4
  130. package/kb/extra/subsystems/feedback.zh.md +4 -4
  131. package/kb/extra/subsystems/mcp.md +139 -0
  132. package/kb/extra/subsystems/mcp.zh.md +139 -0
  133. package/kb/extra/subsystems/office-to-pdf.md +87 -0
  134. package/kb/extra/subsystems/office-to-pdf.zh.md +87 -0
  135. package/kb/extra/subsystems/otel.md +44 -0
  136. package/kb/extra/subsystems/otel.zh.md +44 -0
  137. package/kb/extra/subsystems/product-telemetry.md +79 -0
  138. package/kb/extra/subsystems/product-telemetry.zh.md +79 -0
  139. package/kb/extra/subsystems/ssh.md +135 -0
  140. package/kb/extra/subsystems/ssh.zh.md +135 -0
  141. package/kb/extra/subsystems/todo.md +3 -3
  142. package/kb/extra/subsystems/todo.zh.md +3 -3
  143. package/kb/extra/subsystems/voice-input.md +164 -0
  144. package/kb/extra/subsystems/voice-input.zh.md +164 -0
  145. package/kb/extra/subsystems/webhook.md +3 -3
  146. package/kb/extra/subsystems/webhook.zh.md +1 -1
  147. package/kb/extra/testing.md +3 -3
  148. package/kb/extra/testing.zh.md +3 -3
  149. package/kb/extra/ui-radius.md +115 -0
  150. package/kb/extra/ui-radius.zh.md +115 -0
  151. package/kb/extra/upgrade-guide/v0.1.7-rc.2/schedule-optional-bundle/guide.md +22 -0
  152. package/kb/extra/upgrade-guide/v0.1.7-rc.2/schedule-optional-bundle/guide.zh.md +22 -0
  153. package/kb/extra/upgrade-guide/v0.1.7-rc.2/transcript-view-legacy-normal/guide.md +25 -0
  154. package/kb/extra/upgrade-guide/v0.1.7-rc.2/transcript-view-legacy-normal/guide.zh.md +25 -0
  155. package/kb/extra/upgrade-guide/v0.2.0-rc.2/account-sign-in-errors/guide.md +18 -0
  156. package/kb/extra/upgrade-guide/v0.2.0-rc.2/account-sign-in-errors/guide.zh.md +18 -0
  157. package/kb/extra/upgrade-guide/v0.2.0-rc.2/remove-runtime-invariants/guide.md +23 -0
  158. package/kb/extra/upgrade-guide/v0.2.0-rc.2/remove-runtime-invariants/guide.zh.md +23 -0
  159. package/kb/extra/upgrade-guide/v0.2.0-rc.2/schedule-bundle-retired/guide.md +22 -0
  160. package/kb/extra/upgrade-guide/v0.2.0-rc.2/schedule-bundle-retired/guide.zh.md +22 -0
  161. package/kb/extra/upgrade-guide/v0.2.0-rc.2/subpath-plugin-display-manifest/guide.md +27 -0
  162. package/kb/extra/upgrade-guide/v0.2.0-rc.2/subpath-plugin-display-manifest/guide.zh.md +27 -0
  163. package/kb/extra/web-styling.md +12 -3
  164. package/kb/extra/web-styling.zh.md +12 -3
  165. package/kb/meta/search-index.json +976 -256
  166. package/kb/meta/site-pages.txt +188 -188
  167. package/kb/meta/source.json +6 -6
  168. package/kb/meta/topics.md +10 -6
  169. package/kb/site/develop/basic/config.md +1 -0
  170. package/kb/site/develop/basic/index.md +1 -0
  171. package/kb/site/develop/basic/publish.md +9 -2
  172. package/kb/site/develop/basic/tool.md +1 -0
  173. package/kb/site/develop/cordis-tutorial/01-first-plugin.md +1 -0
  174. package/kb/site/develop/cordis-tutorial/02-lifecycle-and-effects.md +1 -0
  175. package/kb/site/develop/cordis-tutorial/03-services.md +1 -0
  176. package/kb/site/develop/cordis-tutorial/04-events.md +1 -0
  177. package/kb/site/develop/cordis-tutorial/05-config.md +28 -0
  178. package/kb/site/develop/cordis-tutorial/06-composition-and-hmr.md +3 -2
  179. package/kb/site/develop/cordis-tutorial/07-into-the-harness.md +1 -0
  180. package/kb/site/develop/cordis-tutorial/index.md +1 -0
  181. package/kb/site/develop/framework/events.md +1 -0
  182. package/kb/site/develop/framework/index.md +2 -1
  183. package/kb/site/develop/framework/service.md +1 -0
  184. package/kb/site/develop/practice/dynamic-cordis.md +9 -8
  185. package/kb/site/develop/practice/index.md +1 -0
  186. package/kb/site/develop/practice/llm-adapter.md +2 -1
  187. package/kb/site/en/develop/basic/config.md +1 -0
  188. package/kb/site/en/develop/basic/index.md +1 -0
  189. package/kb/site/en/develop/basic/publish.md +9 -2
  190. package/kb/site/en/develop/basic/tool.md +1 -0
  191. package/kb/site/en/develop/cordis-tutorial/01-first-plugin.md +1 -0
  192. package/kb/site/en/develop/cordis-tutorial/02-lifecycle-and-effects.md +1 -0
  193. package/kb/site/en/develop/cordis-tutorial/03-services.md +1 -0
  194. package/kb/site/en/develop/cordis-tutorial/04-events.md +1 -0
  195. package/kb/site/en/develop/cordis-tutorial/05-config.md +28 -0
  196. package/kb/site/en/develop/cordis-tutorial/06-composition-and-hmr.md +3 -2
  197. package/kb/site/en/develop/cordis-tutorial/07-into-the-harness.md +1 -0
  198. package/kb/site/en/develop/cordis-tutorial/index.md +1 -0
  199. package/kb/site/en/develop/framework/events.md +1 -0
  200. package/kb/site/en/develop/framework/index.md +2 -1
  201. package/kb/site/en/develop/framework/service.md +1 -0
  202. package/kb/site/en/develop/practice/dynamic-cordis.md +9 -8
  203. package/kb/site/en/develop/practice/index.md +1 -0
  204. package/kb/site/en/develop/practice/llm-adapter.md +2 -1
  205. package/kb/site/en/guide/github-review.md +1 -0
  206. package/kb/site/en/guide/mcp-memory.md +1 -0
  207. package/kb/site/en/guide/network-proxy.md +2 -1
  208. package/kb/site/en/guide/providers-custom-form.png +0 -0
  209. package/kb/site/en/guide/providers-models-page.png +0 -0
  210. package/kb/site/en/guide/providers.md +97 -82
  211. package/kb/site/en/guide/public-deployments.md +36 -0
  212. package/kb/site/en/guide/python-sdk.md +42 -21
  213. package/kb/site/en/guide/quickstart.md +2 -0
  214. package/kb/site/en/guide/schedule.md +70 -11
  215. package/kb/site/en/reference/agent-lifecycle.md +1 -0
  216. package/kb/site/en/reference/api-gateway.md +13 -11
  217. package/kb/site/en/reference/capability-seams.md +177 -59
  218. package/kb/site/en/reference/config-catalog.md +1758 -821
  219. package/kb/site/en/reference/cookbook/adding-a-package.md +57 -3
  220. package/kb/site/en/reference/cookbook/adding-a-settings-card.md +35 -64
  221. package/kb/site/en/reference/cookbook/adding-a-tool.md +4 -3
  222. package/kb/site/en/reference/cookbook/adding-an-llm-adapter.md +1 -0
  223. package/kb/site/en/reference/cookbook/extension-cookbook.md +6 -5
  224. package/kb/site/en/reference/cordis-api/context.md +1 -0
  225. package/kb/site/en/reference/cordis-api/events.md +1 -0
  226. package/kb/site/en/reference/cordis-api/fiber.md +4 -3
  227. package/kb/site/en/reference/cordis-api/inherited.md +16 -16
  228. package/kb/site/en/reference/cordis-api/registry.md +1 -0
  229. package/kb/site/en/reference/cordis-api/service.md +1 -0
  230. package/kb/site/en/reference/cordis-primer.md +1 -0
  231. package/kb/site/en/reference/index.md +18 -11
  232. package/kb/site/en/reference/persistence-catalog.md +7687 -54
  233. package/kb/site/en/reference/subsystems/approval.md +2 -1
  234. package/kb/site/en/reference/subsystems/client-modules.md +23 -15
  235. package/kb/site/en/reference/subsystems/client-resources.md +3 -1
  236. package/kb/site/en/reference/subsystems/commands.md +6 -1
  237. package/kb/site/en/reference/subsystems/compaction.md +50 -3
  238. package/kb/site/en/reference/subsystems/conversation.md +36 -6
  239. package/kb/site/en/reference/subsystems/core.md +97 -257
  240. package/kb/site/en/reference/subsystems/credentials.md +169 -5
  241. package/kb/site/en/reference/subsystems/filesystem.md +11 -0
  242. package/kb/site/en/reference/subsystems/goal.md +2 -1
  243. package/kb/site/en/reference/subsystems/index.md +16 -5
  244. package/kb/site/en/reference/subsystems/jobs.md +337 -127
  245. package/kb/site/en/reference/subsystems/llm-streaming.md +76 -36
  246. package/kb/site/en/reference/subsystems/lsp.md +1 -0
  247. package/kb/site/en/reference/subsystems/permission-presets.md +66 -29
  248. package/kb/site/en/reference/subsystems/persistence.md +4 -3
  249. package/kb/site/en/reference/subsystems/plan.md +2 -1
  250. package/kb/site/en/reference/subsystems/ptc-runtime.md +236 -0
  251. package/kb/site/en/reference/subsystems/sandbox.md +7 -5
  252. package/kb/site/en/reference/subsystems/schedule.md +392 -33
  253. package/kb/site/en/reference/subsystems/scope.md +2 -1
  254. package/kb/site/en/reference/subsystems/session-projection.md +22 -19
  255. package/kb/site/en/reference/subsystems/session-query.md +1 -0
  256. package/kb/site/en/reference/subsystems/session-reference.md +8 -6
  257. package/kb/site/en/reference/subsystems/session-telemetry.md +7 -4
  258. package/kb/site/en/reference/subsystems/session-title.md +6 -5
  259. package/kb/site/en/reference/subsystems/session.md +199 -81
  260. package/kb/site/en/reference/subsystems/settings.md +43 -292
  261. package/kb/site/en/reference/subsystems/shell.md +37 -28
  262. package/kb/site/en/reference/subsystems/sidebar-right.md +23 -12
  263. package/kb/site/en/reference/subsystems/skills.md +5 -6
  264. package/kb/site/en/reference/subsystems/slots.md +34 -13
  265. package/kb/site/en/reference/subsystems/spill.md +4 -3
  266. package/kb/site/en/reference/subsystems/storage.md +2 -2
  267. package/kb/site/en/reference/subsystems/subagent.md +50 -64
  268. package/kb/site/en/reference/subsystems/subprocess.md +17 -18
  269. package/kb/site/en/reference/subsystems/system-prompt.md +4 -1
  270. package/kb/site/en/reference/subsystems/terminal.md +1 -0
  271. package/kb/site/en/reference/subsystems/token-meter.md +1 -0
  272. package/kb/site/en/reference/subsystems/tools.md +40 -12
  273. package/kb/site/en/reference/subsystems/typert.md +153 -10
  274. package/kb/site/en/reference/subsystems/user-questions.md +131 -1
  275. package/kb/site/en/reference/subsystems/web-client.md +15 -9
  276. package/kb/site/en/reference/subsystems/web-server.md +74 -1
  277. package/kb/site/en/reference/subsystems/web.md +1 -0
  278. package/kb/site/en/reference/subsystems/workflow.md +10 -9
  279. package/kb/site/en/reference/subsystems/workspace.md +294 -34
  280. package/kb/site/en/reference/tool-catalog.md +782 -331
  281. package/kb/site/en/reference/tool-execution-pipeline.md +7 -3
  282. package/kb/site/guide/github-review.md +1 -0
  283. package/kb/site/guide/mcp-memory.md +1 -0
  284. package/kb/site/guide/network-proxy.md +2 -1
  285. package/kb/site/guide/providers-custom-form.zh.png +0 -0
  286. package/kb/site/guide/providers-models-page.zh.png +0 -0
  287. package/kb/site/guide/providers.md +109 -94
  288. package/kb/site/guide/public-deployments.md +36 -0
  289. package/kb/site/guide/python-sdk.md +42 -21
  290. package/kb/site/guide/quickstart.md +2 -0
  291. package/kb/site/guide/schedule.md +70 -11
  292. package/kb/site/reference/agent-lifecycle.md +1 -0
  293. package/kb/site/reference/api-gateway.md +13 -11
  294. package/kb/site/reference/capability-seams.md +177 -59
  295. package/kb/site/reference/config-catalog.md +1760 -822
  296. package/kb/site/reference/cookbook/adding-a-package.md +55 -3
  297. package/kb/site/reference/cookbook/adding-a-settings-card.md +35 -64
  298. package/kb/site/reference/cookbook/adding-a-tool.md +4 -3
  299. package/kb/site/reference/cookbook/adding-an-llm-adapter.md +1 -0
  300. package/kb/site/reference/cookbook/extension-cookbook.md +6 -5
  301. package/kb/site/reference/cordis-api/context.md +1 -0
  302. package/kb/site/reference/cordis-api/events.md +1 -0
  303. package/kb/site/reference/cordis-api/fiber.md +4 -3
  304. package/kb/site/reference/cordis-api/inherited.md +16 -16
  305. package/kb/site/reference/cordis-api/registry.md +1 -0
  306. package/kb/site/reference/cordis-api/service.md +1 -0
  307. package/kb/site/reference/cordis-primer.md +1 -0
  308. package/kb/site/reference/index.md +18 -11
  309. package/kb/site/reference/persistence-catalog.md +7693 -60
  310. package/kb/site/reference/subsystems/approval.md +2 -1
  311. package/kb/site/reference/subsystems/client-modules.md +23 -15
  312. package/kb/site/reference/subsystems/client-resources.md +3 -1
  313. package/kb/site/reference/subsystems/commands.md +6 -1
  314. package/kb/site/reference/subsystems/compaction.md +50 -3
  315. package/kb/site/reference/subsystems/conversation.md +35 -5
  316. package/kb/site/reference/subsystems/core.md +97 -257
  317. package/kb/site/reference/subsystems/credentials.md +169 -5
  318. package/kb/site/reference/subsystems/filesystem.md +11 -0
  319. package/kb/site/reference/subsystems/goal.md +2 -1
  320. package/kb/site/reference/subsystems/index.md +16 -5
  321. package/kb/site/reference/subsystems/jobs.md +336 -126
  322. package/kb/site/reference/subsystems/llm-streaming.md +76 -36
  323. package/kb/site/reference/subsystems/lsp.md +1 -0
  324. package/kb/site/reference/subsystems/permission-presets.md +66 -29
  325. package/kb/site/reference/subsystems/persistence.md +4 -3
  326. package/kb/site/reference/subsystems/plan.md +2 -1
  327. package/kb/site/reference/subsystems/ptc-runtime.md +236 -0
  328. package/kb/site/reference/subsystems/sandbox.md +7 -5
  329. package/kb/site/reference/subsystems/schedule.md +392 -33
  330. package/kb/site/reference/subsystems/scope.md +2 -1
  331. package/kb/site/reference/subsystems/session-projection.md +22 -19
  332. package/kb/site/reference/subsystems/session-query.md +1 -0
  333. package/kb/site/reference/subsystems/session-reference.md +8 -6
  334. package/kb/site/reference/subsystems/session-telemetry.md +7 -4
  335. package/kb/site/reference/subsystems/session-title.md +6 -5
  336. package/kb/site/reference/subsystems/session.md +199 -81
  337. package/kb/site/reference/subsystems/settings.md +43 -292
  338. package/kb/site/reference/subsystems/shell.md +37 -28
  339. package/kb/site/reference/subsystems/sidebar-right.md +23 -12
  340. package/kb/site/reference/subsystems/skills.md +5 -6
  341. package/kb/site/reference/subsystems/slots.md +34 -13
  342. package/kb/site/reference/subsystems/spill.md +3 -2
  343. package/kb/site/reference/subsystems/storage.md +2 -2
  344. package/kb/site/reference/subsystems/subagent.md +49 -63
  345. package/kb/site/reference/subsystems/subprocess.md +17 -18
  346. package/kb/site/reference/subsystems/system-prompt.md +4 -1
  347. package/kb/site/reference/subsystems/terminal.md +1 -0
  348. package/kb/site/reference/subsystems/token-meter.md +1 -0
  349. package/kb/site/reference/subsystems/tools.md +40 -12
  350. package/kb/site/reference/subsystems/typert.md +153 -10
  351. package/kb/site/reference/subsystems/user-questions.md +132 -2
  352. package/kb/site/reference/subsystems/web-client.md +15 -9
  353. package/kb/site/reference/subsystems/web-server.md +74 -1
  354. package/kb/site/reference/subsystems/web.md +1 -0
  355. package/kb/site/reference/subsystems/workflow.md +10 -9
  356. package/kb/site/reference/subsystems/workspace.md +294 -34
  357. package/kb/site/reference/tool-catalog.md +784 -333
  358. package/kb/site/reference/tool-execution-pipeline.md +7 -3
  359. package/package.json +2 -2
  360. package/skills/dsh-plugin-dev-kb.md +5 -4
  361. package/kb/site/en/reference/subsystems/code-runtime.md +0 -198
  362. package/kb/site/en/reference/subsystems/invariants.md +0 -91
  363. package/kb/site/reference/subsystems/code-runtime.md +0 -198
  364. package/kb/site/reference/subsystems/invariants.md +0 -91
@@ -1,5 +1,6 @@
1
1
  ---
2
2
  editSource: "docs/config-catalog.md"
3
+ rawMarkdownPath: "en/reference/config-catalog.md"
3
4
  ---
4
5
 
5
6
  <!-- Generated by scripts/gen-config-catalog.ts — do not edit by hand.
@@ -9,15 +10,18 @@ editSource: "docs/config-catalog.md"
9
10
 
10
11
  Every `config:` block a `cordis.yml` entry can set: for each loadable harness package, the verbatim config declaration (JSDoc included) its `apply` function or service constructor receives, with every referenced type pasted alongside (package-local types) or linked (everything else). The paste is the plugin's full declared config type — a field the runtime schema deliberately excludes is a runtime-only seam (its own JSDoc says so) and is not settable from `cordis.yml`. This is the **deployment**-axis reference — the wiring a plugin author works against is the generated Cordis API region on each [subsystem page](./subsystems/core.md), the model-facing tool schemas are the [tool catalog](./tool-catalog.md), and [subsystems/](./subsystems/core.md) documents the types these declarations reference.
11
12
 
12
- This file is GENERATED from source (`scripts/gen-config-catalog.ts`) and verified fresh by `pnpm run verify-config-catalog` (part of `doc-sync`) — do not edit it by hand. Declaration blocks use a `ts config-catalog` fence (skipped by doc-typecheck, since a lone declaration referencing imports is not standalone-compilable). The generator also cross-checks the runtime schemastery schema against the pasted declaration — every schema-validated key, nested keys included, must be locatable on the declared config type — so the paste cannot hide a loader-accepted field.
13
+ Both language versions of this file are GENERATED from source (`scripts/gen-config-catalog.ts`) and verified fresh by `pnpm run verify-config-catalog` (part of `doc-sync`) — do not edit them by hand. Declaration blocks use a `ts config-catalog` fence (skipped by doc-typecheck, since a lone declaration referencing imports is not standalone-compilable). The generator also cross-checks the runtime schemastery schema against the pasted declaration — every schema-validated key, nested keys included, must be locatable on the declared config type — so the paste cannot hide a loader-accepted field.
13
14
 
14
- A `Requires:` line lists the service keys the plugin `inject`s: its `cordis.yml` tree must also load providers for those services. Scope is the harness tier (`packages/`); the vendored cordis plugins a config tree may also load (`hmr`, the console logger, …) are pinned upstream source ([vendoring policy](https://github.com/deepseek-ai/deepseek-harness/blob/master/vendor/README.md)) and not catalogued here.
15
+ Each package entry labels its data with three identifiers: `inject` lists the service keys the plugin injects, so its `cordis.yml` tree must also load providers for those services; `refs` lists the referenced types that are not pasted here; `source` links the file that declares the config. Scope is the harness tier (`packages/`); the vendored cordis plugins a config tree may also load (the console logger, …) are pinned upstream source ([vendoring policy](https://github.com/deepseek-ai/deepseek-harness/blob/master/vendor/README.md)) and not catalogued here.
15
16
 
17
+ <!-- BEGIN GENERATED config-catalog:@deepseek-ai/dsh-acp -->
16
18
  <a id="deepseek-aidsh-acp"></a>
17
19
 
18
20
  ## `@deepseek-ai/dsh-acp`
19
21
 
20
- Requires: `agents` · `llm` · `sessionPersistence` · `sessions`
22
+ - `inject`: `agents` · `llm` · `sessionPersistence` · `sessions`
23
+ - `refs`: `Stream` (`@agentclientprotocol/sdk`)
24
+ - `source`: [`packages/acp/acp/src/index.ts:75`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/acp/acp/src/index.ts)
21
25
 
22
26
  ```ts config-catalog
23
27
  /** Plugin config: the provider/model selection used for each ACP-created agent. */
@@ -32,32 +36,36 @@ export interface AcpConfig {
32
36
  stream?: Stream
33
37
  }
34
38
  ```
39
+ <!-- END GENERATED config-catalog:@deepseek-ai/dsh-acp -->
35
40
 
36
- Depends on: `Stream` (`@agentclientprotocol/sdk`)
37
-
38
- Source: [`packages/acp/acp/src/index.ts:75`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/acp/acp/src/index.ts)
39
-
41
+ <!-- BEGIN GENERATED config-catalog:@deepseek-ai/dsh-agent-default-model -->
40
42
  <a id="deepseek-aidsh-agent-default-model"></a>
41
43
 
42
44
  ## `@deepseek-ai/dsh-agent-default-model`
43
45
 
46
+ - `refs`: `Volatile` (`@deepseek-ai/cordis`)
47
+ - `source`: [`packages/core/agent-default-model/src/index.ts:24`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/core/agent-default-model/src/index.ts)
48
+
44
49
  ```ts config-catalog
45
- /** Composition entry for the default model selection. */
50
+ /** Default model selection supplied by plugin configuration. */
46
51
  export interface Config {
47
52
  /** Registered provider route. */
48
- provider: string
53
+ provider: Volatile<string>
49
54
  /** Provider-owned model id. */
50
- model: string
55
+ model: Volatile<string>
56
+ /** Adapter-owned reasoning effort; omission follows the provider default. */
57
+ reasoningEffort: Volatile<string | undefined>
51
58
  }
52
59
  ```
60
+ <!-- END GENERATED config-catalog:@deepseek-ai/dsh-agent-default-model -->
53
61
 
54
- Source: [`packages/core/agent-default-model/src/index.ts:41`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/core/agent-default-model/src/index.ts)
55
-
62
+ <!-- BEGIN GENERATED config-catalog:@deepseek-ai/dsh-agent-instructions -->
56
63
  <a id="deepseek-aidsh-agent-instructions"></a>
57
64
 
58
65
  ## `@deepseek-ai/dsh-agent-instructions`
59
66
 
60
- Requires: `sessionProjections`
67
+ - `inject`: `sessionProjections`
68
+ - `source`: [`packages/context/agent-instructions/src/config.ts:18`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/context/agent-instructions/src/config.ts)
61
69
 
62
70
  ```ts config-catalog
63
71
  /** User-facing workspace instruction loader configuration. */
@@ -82,14 +90,16 @@ export interface Config {
82
90
  localInstructionFileCandidates?: string[]
83
91
  }
84
92
  ```
93
+ <!-- END GENERATED config-catalog:@deepseek-ai/dsh-agent-instructions -->
85
94
 
86
- Source: [`packages/context/agent-instructions/src/config.ts:18`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/context/agent-instructions/src/config.ts)
87
-
95
+ <!-- BEGIN GENERATED config-catalog:@deepseek-ai/dsh-agent-loop -->
88
96
  <a id="deepseek-aidsh-agent-loop"></a>
89
97
 
90
98
  ## `@deepseek-ai/dsh-agent-loop`
91
99
 
92
- Requires: `agents` · `sessions` · `llm` · `tools` · `systemPrompt` · `sessionProjections`
100
+ - `inject`: `agents` · `sessions` · `llm` · `tools` · `systemPrompt` · `sessionProjections`
101
+ - `refs`: [`AgentOptions`](./subsystems/core.md) · [`SessionId`](./subsystems/core.md) · `Volatile` (`@deepseek-ai/cosmokit`)
102
+ - `source`: [`packages/core/agent-loop/src/index.ts:292`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/core/agent-loop/src/index.ts)
93
103
 
94
104
  ```ts config-catalog
95
105
  /** Agent-loop plugin configuration. */
@@ -98,7 +108,7 @@ export interface Config {
98
108
  * Maximum parallel-safe calls in flight per agent step. `1` is serial;
99
109
  * omission defaults to {@link DEFAULT_MAX_PARALLEL_TOOL_CALLS}.
100
110
  */
101
- maxParallelToolCalls?: number
111
+ maxParallelToolCalls: Volatile<number>
102
112
  /** Agents created or resumed at plugin startup. */
103
113
  agents: (AgentOptions & {
104
114
  /** Stable config label used in logs and as the fresh combined-id prefix. */
@@ -112,62 +122,51 @@ export interface Config {
112
122
  })[]
113
123
  }
114
124
  ```
125
+ <!-- END GENERATED config-catalog:@deepseek-ai/dsh-agent-loop -->
126
+
127
+ <!-- BEGIN GENERATED config-catalog:@deepseek-ai/dsh-agent-preset -->
128
+ <a id="deepseek-aidsh-agent-preset"></a>
129
+
130
+ ## `@deepseek-ai/dsh-agent-preset`
115
131
 
116
- Depends on: [`AgentOptions`](./subsystems/core.md) · [`SessionId`](./subsystems/core.md)
132
+ - `inject`: `agentPresets`
133
+ - `refs`: [`PresetDefinition`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/preset/agent-preset-registry/src/index.ts)
134
+ - `source`: [`packages/preset/agent-preset/src/index.ts:9`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/preset/agent-preset/src/index.ts)
117
135
 
118
- Source: [`packages/core/agent-loop/src/index.ts:318`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/core/agent-loop/src/index.ts)
136
+ ```ts config-catalog
137
+ /** Definition submitted to the preset registry. */
138
+ export type Config = PresetDefinition
139
+ ```
140
+ <!-- END GENERATED config-catalog:@deepseek-ai/dsh-agent-preset -->
119
141
 
120
- <a id="deepseek-aidsh-agent-presets"></a>
142
+ <!-- BEGIN GENERATED config-catalog:@deepseek-ai/dsh-agent-preset-registry -->
143
+ <a id="deepseek-aidsh-agent-preset-registry"></a>
121
144
 
122
- ## `@deepseek-ai/dsh-agent-presets`
145
+ ## `@deepseek-ai/dsh-agent-preset-registry`
123
146
 
124
- Requires: `loader` · `sessionProjections`
147
+ - `inject`: `loader` · `sessionProjections`
148
+ - `refs`: `Volatile` (`@deepseek-ai/cordis`)
149
+ - `source`: [`packages/preset/agent-preset-registry/src/preset.ts:13`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/preset/agent-preset-registry/src/preset.ts)
125
150
 
126
151
  ```ts config-catalog
127
- /** Plugin config: which preset is the default, and where presets live. */
152
+ /** Registry selection policy. */
128
153
  export interface Config {
129
- /** Preset id mounted when a caller names none. Missing at mount time fails loud. */
154
+ /** Deployment default when the caller omits a preset. */
130
155
  default: string
131
- /** Scanned roots in precedence order; an earlier root wins a duplicate id. */
132
- roots: PresetRoot[]
133
- /**
134
- * Prepend this package's bundled shipped presets as a `system` root, before
135
- * every configured root, so the shipped set always mounts and wins a
136
- * duplicate id. The default survives a whole-`config` patch replacement;
137
- * only an explicit `false` — a deployment supplying purely its own presets,
138
- * or an embedder using the roster as bare machinery — drops the set.
139
- */
140
- includeShippedRoot: boolean
141
- /**
142
- * Append the harness home's `USER_PRESET_DIR` as a `user` root, after every
143
- * configured root. False mounts a roster without the derived writable root.
144
- */
145
- includeUserRoot: boolean
156
+ /** User-selected default; edited through Settings. */
157
+ selectedDefault: Volatile<string | undefined>
146
158
  }
147
-
148
- /** One directory scanned for preset subdirectories. */
149
- export interface PresetRoot {
150
- /** Directory holding one subdirectory per preset; a leading `~` expands. */
151
- path: string
152
- /** Trust recorded on every preset discovered under this root. */
153
- trust: PresetTrust
154
- }
155
-
156
- /**
157
- * Where a preset's composition came from. A `system` preset ships with the
158
- * deployment; a `user` preset was authored locally, by a person or by an
159
- * agent, and therefore carries the same trust as shell access.
160
- */
161
- export type PresetTrust = 'system' | 'user'
162
159
  ```
160
+ <!-- END GENERATED config-catalog:@deepseek-ai/dsh-agent-preset-registry -->
163
161
 
164
- Source: [`packages/preset/agent-presets/src/preset.ts:52`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/preset/agent-presets/src/preset.ts)
165
-
162
+ <!-- BEGIN GENERATED config-catalog:@deepseek-ai/dsh-agent-tool-presentation -->
166
163
  <a id="deepseek-aidsh-agent-tool-presentation"></a>
167
164
 
168
165
  ## `@deepseek-ai/dsh-agent-tool-presentation`
169
166
 
170
- Requires: `tools`
167
+ - `inject`: `tools`
168
+ - `refs`: [`ToolPresentationMode`](./subsystems/tools.md)
169
+ - `source`: [`packages/core/agent-tool-presentation/src/index.ts:38`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/core/agent-tool-presentation/src/index.ts)
171
170
 
172
171
  ```ts config-catalog
173
172
  /** Plugin config. */
@@ -182,62 +181,153 @@ export interface Config {
182
181
  mode: ToolPresentationMode
183
182
  }
184
183
  ```
184
+ <!-- END GENERATED config-catalog:@deepseek-ai/dsh-agent-tool-presentation -->
185
185
 
186
- Depends on: [`ToolPresentationMode`](./subsystems/tools.md)
187
-
188
- Source: [`packages/core/agent-tool-presentation/src/index.ts:38`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/core/agent-tool-presentation/src/index.ts)
189
-
186
+ <!-- BEGIN GENERATED config-catalog:@deepseek-ai/dsh-api-gateway -->
190
187
  <a id="deepseek-aidsh-api-gateway"></a>
191
188
 
192
189
  ## `@deepseek-ai/dsh-api-gateway`
193
190
 
194
- Requires: `typert`
191
+ - `inject`: `typert`
192
+ - `source`: [`packages/api/gateway/src/index.ts:146`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/api/gateway/src/index.ts)
195
193
 
196
194
  ```ts config-catalog
197
195
  /** Gateway transport configuration. */
198
196
  export interface Config {
199
197
  /** WebSocket Ping interval from 1 through 2,147,483,647 milliseconds. @default 2000 */
200
198
  readonly websocketHeartbeatIntervalMs?: number
199
+ /** Buffered uplink frame bytes one logical stream may hold before it fails with `gateway/uplink-overflow`. @default 262144 */
200
+ readonly streamInboxBytes?: number
201
201
  }
202
202
  ```
203
+ <!-- END GENERATED config-catalog:@deepseek-ai/dsh-api-gateway -->
204
+
205
+ <!-- BEGIN GENERATED config-catalog:@deepseek-ai/dsh-api-job-controller -->
206
+ <a id="deepseek-aidsh-api-job-controller"></a>
203
207
 
204
- Source: [`packages/api/gateway/src/index.ts:119`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/api/gateway/src/index.ts)
208
+ ## `@deepseek-ai/dsh-api-job-controller`
205
209
 
210
+ - `inject`: `jobs` · `typert`
211
+ - `source`: [`packages/api/job-controller/src/index.ts:35`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/api/job-controller/src/index.ts)
212
+
213
+ ```ts config-catalog
214
+ /** Job Controller deployment policy. */
215
+ export interface Config {
216
+ /** Coalescing window after a registry commit before the next rows or output read, in milliseconds (default 100). */
217
+ readonly observeFlushMs?: number
218
+ /** Soft byte budget per observation output frame (default 65536); one larger chunk ships whole. */
219
+ readonly observeMaxFrameBytes?: number
220
+ }
221
+ ```
222
+ <!-- END GENERATED config-catalog:@deepseek-ai/dsh-api-job-controller -->
223
+
224
+ <!-- BEGIN GENERATED config-catalog:@deepseek-ai/dsh-api-session-controller -->
206
225
  <a id="deepseek-aidsh-api-session-controller"></a>
207
226
 
208
227
  ## `@deepseek-ai/dsh-api-session-controller`
209
228
 
210
- Requires: `agentDefaultModel` · `agents` · `attachments` · `fileUploads` · `llm` · `sessions` · `sessionProjections` · `sessionQuery` · `typert` · `workspaceRegistry`
229
+ - `inject`: `agentDefaultModel` · `agents` · `attachments` · `fileUploads` · `fs` · `llm` · `sessions` · `sessionProjections` · `sessionQuery` · `typert` · `workspaceRegistry`
230
+ - `source`: [`packages/api/session-controller/src/index.ts:79`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/api/session-controller/src/index.ts)
211
231
 
212
232
  ```ts config-catalog
213
233
  /** Session Controller deployment policy. */
214
234
  export interface Config {
215
235
  /** Override platform desktop-opener detection. */
216
236
  readonly nativeOpen?: boolean
237
+ /** Positive integral milliseconds of list work before yielding between complete rows. */
238
+ readonly listWorkSliceMs?: number
217
239
  }
218
240
  ```
241
+ <!-- END GENERATED config-catalog:@deepseek-ai/dsh-api-session-controller -->
219
242
 
220
- Source: [`packages/api/session-controller/src/index.ts:71`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/api/session-controller/src/index.ts)
221
-
243
+ <!-- BEGIN GENERATED config-catalog:@deepseek-ai/dsh-api-settings-controller -->
222
244
  <a id="deepseek-aidsh-api-settings-controller"></a>
223
245
 
224
246
  ## `@deepseek-ai/dsh-api-settings-controller`
225
247
 
248
+ - `source`: [`packages/api/settings-controller/src/index.ts:35`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/api/settings-controller/src/index.ts)
249
+
226
250
  ```ts config-catalog
227
- /** Native document-opening policy. */
251
+ /** Host integrations replaceable by direct unit tests. */
252
+ export interface SettingsControllerInternals {
253
+ /** Host text-editor integration used to open the settings document. */
254
+ readonly openTextFile?: (path: string, signal: AbortSignal) => Promise<void>
255
+ }
256
+ ```
257
+ <!-- END GENERATED config-catalog:@deepseek-ai/dsh-api-settings-controller -->
258
+
259
+ <!-- BEGIN GENERATED config-catalog:@deepseek-ai/dsh-api-terminal-controller -->
260
+ <a id="deepseek-aidsh-api-terminal-controller"></a>
261
+
262
+ ## `@deepseek-ai/dsh-api-terminal-controller`
263
+
264
+ - `inject`: `subprocess` · `sandboxPolicy` · `typert`
265
+ - `source`: [`packages/api/terminal-controller/src/index.ts:26`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/api/terminal-controller/src/index.ts)
266
+
267
+ ```ts config-catalog
268
+ /** Deployment limits and an optional shell profile. */
228
269
  export interface Config {
229
- /** Override platform desktop-opener detection. */
230
- readonly nativeOpen?: boolean
270
+ /** Explicit shell profile; omission uses the execution environment's default shell. */
271
+ readonly shell?: {
272
+ /** Executable path or PATH name, verified by the subprocess provider. */
273
+ path: string
274
+ /** User-visible profile name. */
275
+ name: string
276
+ /** Arguments passed to the interactive shell. */
277
+ args: string[]
278
+ } | undefined
279
+ /** Executable names or paths checked for the new-terminal shell selector. */
280
+ readonly shellCandidates: string[]
281
+ /** Maximum retained terminals and pending allocations per Session. */
282
+ readonly maxTerminals: number
283
+ /** Maximum terminal width in columns. */
284
+ readonly maxCols: number
285
+ /** Maximum terminal height in rows. */
286
+ readonly maxRows: number
287
+ /** Screen history rows retained for reconnecting clients. */
288
+ readonly scrollback: number
289
+ /** Maximum queued UTF-8 frame bytes per output follower before disconnection. */
290
+ readonly maxBufferedBytes: number
291
+ /** Maximum UTF-8 bytes in one input request. */
292
+ readonly maxInputBytes: number
293
+ /** Provider process-termination grace period in milliseconds. */
294
+ readonly disposeGraceMs: number
295
+ /** Continuous confirmed idle time without window holds before reclamation; zero disables reclamation. */
296
+ readonly unattendedTimeoutMs: number
297
+ /** Interval between unattended shell and process observations. */
298
+ readonly activityPollIntervalMs: number
299
+ /** Delay before retrying failed owned terminal cleanup. */
300
+ readonly cleanupRetryMs: number
231
301
  }
232
302
  ```
303
+ <!-- END GENERATED config-catalog:@deepseek-ai/dsh-api-terminal-controller -->
304
+
305
+ <!-- BEGIN GENERATED config-catalog:@deepseek-ai/dsh-api-workspace-controller -->
306
+ <a id="deepseek-aidsh-api-workspace-controller"></a>
307
+
308
+ ## `@deepseek-ai/dsh-api-workspace-controller`
233
309
 
234
- Source: [`packages/api/settings-controller/src/index.ts:36`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/api/settings-controller/src/index.ts)
310
+ - `inject`: `typert` · `workspaceRegistry`
311
+ - `source`: [`packages/api/workspace-controller/src/index.ts:33`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/api/workspace-controller/src/index.ts)
235
312
 
313
+ ```ts config-catalog
314
+ /** First-use directory policy for the Host account. */
315
+ export interface Config {
316
+ /** Override the system Documents directory with a fully qualified path. */
317
+ documentsDirectory?: string
318
+ /** Maximum duration of the operating system's Documents lookup. */
319
+ documentsLookupTimeoutMs?: number
320
+ }
321
+ ```
322
+ <!-- END GENERATED config-catalog:@deepseek-ai/dsh-api-workspace-controller -->
323
+
324
+ <!-- BEGIN GENERATED config-catalog:@deepseek-ai/dsh-api-workspace-files -->
236
325
  <a id="deepseek-aidsh-api-workspace-files"></a>
237
326
 
238
327
  ## `@deepseek-ai/dsh-api-workspace-files`
239
328
 
240
- Requires: `fs` · `sandboxPolicy` · `sessions` · `typert`
329
+ - `inject`: `fs` · `sandboxPolicy` · `sessions` · `typert`
330
+ - `source`: [`packages/api/workspace-files/src/index.ts:70`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/api/workspace-files/src/index.ts)
241
331
 
242
332
  ```ts config-catalog
243
333
  /** Deployment caps on one page or one listing. */
@@ -258,13 +348,15 @@ export interface Config {
258
348
  readonly maxEntries: number
259
349
  }
260
350
  ```
351
+ <!-- END GENERATED config-catalog:@deepseek-ai/dsh-api-workspace-files -->
261
352
 
262
- Source: [`packages/api/workspace-files/src/index.ts:69`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/api/workspace-files/src/index.ts)
263
-
353
+ <!-- BEGIN GENERATED config-catalog:@deepseek-ai/dsh-attachment-local -->
264
354
  <a id="deepseek-aidsh-attachment-local"></a>
265
355
 
266
356
  ## `@deepseek-ai/dsh-attachment-local`
267
357
 
358
+ - `source`: [`packages/attachment/attachment-local/src/index.ts:61`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/attachment/attachment-local/src/index.ts)
359
+
268
360
  ```ts config-catalog
269
361
  /** Local attachment backend configuration. */
270
362
  export interface Config {
@@ -293,40 +385,44 @@ export interface Config {
293
385
  imageCompressionConcurrency?: number
294
386
  }
295
387
  ```
388
+ <!-- END GENERATED config-catalog:@deepseek-ai/dsh-attachment-local -->
296
389
 
297
- Source: [`packages/attachment/attachment-local/src/index.ts:61`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/attachment/attachment-local/src/index.ts)
298
-
390
+ <!-- BEGIN GENERATED config-catalog:@deepseek-ai/dsh-bash-local -->
299
391
  <a id="deepseek-aidsh-bash-local"></a>
300
392
 
301
393
  ## `@deepseek-ai/dsh-bash-local`
302
394
 
303
- Requires: `subprocess`
395
+ - `inject`: `subprocess`
396
+ - `refs`: `Volatile` (`@deepseek-ai/cordis`)
397
+ - `source`: [`packages/shell/bash-local/src/index.ts:41`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/shell/bash-local/src/index.ts)
304
398
 
305
399
  ```ts config-catalog
306
- /** Plugin config (all optional — `static Config` supplies the defaults). */
400
+ /** Validated plugin configuration with live command budgets. */
307
401
  export interface Config {
308
402
  /** Default working directory for commands (default: process.cwd()). */
309
- cwd?: string
403
+ cwd: Volatile<string | undefined>
310
404
  /** Default foreground timeout in milliseconds. */
311
- timeoutMs?: number
405
+ timeoutMs: Volatile<number>
312
406
  /** Upper bound for per-call timeout overrides. */
313
- maxTimeoutMs?: number
407
+ maxTimeoutMs: Volatile<number>
314
408
  /** Per-stream in-memory output cap; overflow spills to a temp file. */
315
- maxOutputBytes?: number
409
+ maxOutputBytes: Volatile<number>
316
410
  /** Per-stream spill-file cap; larger streams retain only their in-memory tail. */
317
- maxSpillBytes?: number
411
+ maxSpillBytes: Volatile<number>
318
412
  /** Grace period for kill escalation and inherited pipes; at most `MAX_TIMER_DELAY_MS`. */
319
- graceMs?: number
413
+ graceMs: Volatile<number>
320
414
  }
321
415
  ```
416
+ <!-- END GENERATED config-catalog:@deepseek-ai/dsh-bash-local -->
322
417
 
323
- Source: [`packages/shell/bash-local/src/index.ts:41`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/shell/bash-local/src/index.ts)
324
-
418
+ <!-- BEGIN GENERATED config-catalog:@deepseek-ai/dsh-bash-sandbox -->
325
419
  <a id="deepseek-aidsh-bash-sandbox"></a>
326
420
 
327
421
  ## `@deepseek-ai/dsh-bash-sandbox`
328
422
 
329
- Requires: `subprocess` · `sandbox` · `sandboxPolicy`
423
+ - `inject`: `subprocess` · `sandbox` · `sandboxPolicy`
424
+ - `refs`: [`LocalConfig`](#deepseek-aidsh-bash-local)
425
+ - `source`: [`packages/shell/bash-sandbox/src/index.ts:36`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/shell/bash-sandbox/src/index.ts)
330
426
 
331
427
  ```ts config-catalog
332
428
  /**
@@ -338,16 +434,15 @@ Requires: `subprocess` · `sandbox` · `sandboxPolicy`
338
434
  */
339
435
  export type Config = LocalConfig
340
436
  ```
437
+ <!-- END GENERATED config-catalog:@deepseek-ai/dsh-bash-sandbox -->
341
438
 
342
- Depends on: [`LocalConfig`](#deepseek-aidsh-bash-local)
343
-
344
- Source: [`packages/shell/bash-sandbox/src/index.ts:36`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/shell/bash-sandbox/src/index.ts)
345
-
439
+ <!-- BEGIN GENERATED config-catalog:@deepseek-ai/dsh-client-connection -->
346
440
  <a id="deepseek-aidsh-client-connection"></a>
347
441
 
348
442
  ## `@deepseek-ai/dsh-client-connection`
349
443
 
350
- Requires: `credentials`
444
+ - `inject`: `credentials`
445
+ - `source`: [`packages/client/connection/src/index.ts:92`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/client/connection/src/index.ts)
351
446
 
352
447
  ```ts config-catalog
353
448
  /** Browser authentication, request limits, and connection recovery configuration. */
@@ -386,14 +481,15 @@ export interface ConnectionRecoveryConfig {
386
481
  generationReadyTimeoutMs?: number
387
482
  }
388
483
  ```
484
+ <!-- END GENERATED config-catalog:@deepseek-ai/dsh-client-connection -->
389
485
 
390
- Source: [`packages/client/connection/src/index.ts:72`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/client/connection/src/index.ts)
391
-
486
+ <!-- BEGIN GENERATED config-catalog:@deepseek-ai/dsh-client-hmr -->
392
487
  <a id="deepseek-aidsh-client-hmr"></a>
393
488
 
394
489
  ## `@deepseek-ai/dsh-client-hmr`
395
490
 
396
- Requires: `clientModules` · `webServer`
491
+ - `inject`: `clientModules` · `webServer`
492
+ - `source`: [`packages/client/hmr/src/index.ts:30`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/client/hmr/src/index.ts)
397
493
 
398
494
  ```ts config-catalog
399
495
  /** Plugin config, validated by the same-named schemastery schema. */
@@ -402,51 +498,193 @@ export interface Config {
402
498
  pollIntervalMs?: number
403
499
  }
404
500
  ```
501
+ <!-- END GENERATED config-catalog:@deepseek-ai/dsh-client-hmr -->
405
502
 
406
- Source: [`packages/client/hmr/src/index.ts:31`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/client/hmr/src/index.ts)
503
+ <!-- BEGIN GENERATED config-catalog:@deepseek-ai/dsh-client-product-analytics -->
504
+ <a id="deepseek-aidsh-client-product-analytics"></a>
407
505
 
408
- <a id="deepseek-aidsh-code-runtime-worker-thread"></a>
506
+ ## `@deepseek-ai/dsh-client-product-analytics`
409
507
 
410
- ## `@deepseek-ai/dsh-code-runtime-worker-thread`
508
+ - `inject`: `deepseekAccount` · `productTelemetry`
509
+ - `refs`: `Volatile` (`@deepseek-ai/cordis`)
510
+ - `source`: [`packages/client/product-analytics/src/index.ts:14`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/client/product-analytics/src/index.ts)
411
511
 
412
512
  ```ts config-catalog
413
- /** Plugin config: every execution cap, changeable from `cordis.yml` (no hardcoded tunables). */
513
+ /** Application-owned collection policy; no user settings surface. */
414
514
  export interface Config {
415
- /**
416
- * Busy-time budget in milliseconds: the run fails with kind `'timeout'`
417
- * once the worker's MEASURED event-loop active time
418
- * (`worker.performance.eventLoopUtilization()`) exceeds this. Metering
419
- * measured busy time — not wall time, not host-side pending-call
420
- * bookkeeping — is what makes the budget both fair (a program awaiting a
421
- * slow tool accrues nothing) and ungameable (a hot loop accrues whether
422
- * or not a decoy dispatch is in flight).
423
- */
424
- computeMs?: number
425
- /**
426
- * Wall-clock ceiling in milliseconds; never pauses for anything. The
427
- * backstop for what busy-time cannot see (a program awaiting a promise
428
- * nobody will resolve). At most `2_147_483_647` (Node's maximum
429
- * `setTimeout` delay, about 24.9 days): a longer value is rejected at load
430
- * because `setTimeout` would clamp it to 1 ms.
431
- */
432
- maxWallMs?: number
433
- /**
434
- * Hard cap for serialized log-array, completion-value, and failure-message payloads;
435
- * fixed result-envelope syntax is excluded.
436
- */
437
- maxOutputBytes?: number
438
- /** The worker's max old-generation heap in MiB (`resourceLimits`); overflow kills the worker, surfacing as kind `'worker-exit'`. */
439
- maxOldGenerationSizeMb?: number
515
+ /** Live application collection policy; ordinary Web does not mount this service. */
516
+ enabled: Volatile<boolean>
517
+ /** Running Desktop release, absent when unavailable. */
518
+ appVersion?: string
519
+ }
520
+ ```
521
+ <!-- END GENERATED config-catalog:@deepseek-ai/dsh-client-product-analytics -->
522
+
523
+ <!-- BEGIN GENERATED config-catalog:@deepseek-ai/dsh-client-shortcuts -->
524
+ <a id="deepseek-aidsh-client-shortcuts"></a>
525
+
526
+ ## `@deepseek-ai/dsh-client-shortcuts`
527
+
528
+ - `source`: [`packages/client/shortcuts/src/config.ts:5`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/client/shortcuts/src/config.ts)
529
+
530
+ ```ts config-catalog
531
+ /** Fixed shortcut sequence settings. */
532
+ export interface Config {
533
+ /** Maximum interval between independent Escape presses for stopping a reply, in milliseconds. */
534
+ stopSequenceMs: number
440
535
  }
441
536
  ```
537
+ <!-- END GENERATED config-catalog:@deepseek-ai/dsh-client-shortcuts -->
538
+
539
+ <!-- BEGIN GENERATED config-catalog:@deepseek-ai/dsh-client-ui-plugin-manager -->
540
+ <a id="deepseek-aidsh-client-ui-plugin-manager"></a>
541
+
542
+ ## `@deepseek-ai/dsh-client-ui-plugin-manager`
543
+
544
+ - `source`: [`packages/client/ui-plugin-manager/src/index.ts:15`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/client/ui-plugin-manager/src/index.ts)
545
+
546
+ ```ts config-catalog
547
+ /** Registry-probe deadline and process-local cache policy. */
548
+ export interface Config {
549
+ /** Whether the dialog can compare the public npm registries. */
550
+ registryProbeEnabled: boolean
551
+ /** Deadline for the parallel HTTPS probes, including response cleanup. */
552
+ registryProbeTimeoutMs: number
553
+ /** Lifetime of a winning registry or unavailable result. */
554
+ registryProbeCacheTtlMs: number
555
+ }
556
+ ```
557
+ <!-- END GENERATED config-catalog:@deepseek-ai/dsh-client-ui-plugin-manager -->
558
+
559
+ <!-- BEGIN GENERATED config-catalog:@deepseek-ai/dsh-client-ui-settings-account -->
560
+ <a id="deepseek-aidsh-client-ui-settings-account"></a>
442
561
 
443
- Source: [`packages/code-runtime/code-runtime-worker-thread/src/index.ts:25`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/code-runtime/code-runtime-worker-thread/src/index.ts)
562
+ ## `@deepseek-ai/dsh-client-ui-settings-account`
444
563
 
564
+ - `refs`: `Volatile` (`@deepseek-ai/cordis`)
565
+ - `source`: [`packages/client/ui-settings-account/src/index.ts:9`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/client/ui-settings-account/src/index.ts)
566
+
567
+ ```ts config-catalog
568
+ /** Public contact options and live device-local onboarding progress. */
569
+ export interface Config extends ContactConfig {
570
+ /** Onboarding progress format version. */
571
+ version: Volatile<1>
572
+ /** Last accepted onboarding page. */
573
+ step: Volatile<OnboardingStep>
574
+ /** Selected work scenario. */
575
+ purpose?: Volatile<OnboardingPurpose | null | undefined>
576
+ /** Selected transcript detail. */
577
+ process?: Volatile<OnboardingProcess | null | undefined>
578
+ /** Completion reason, absent until completion. */
579
+ completion?: Volatile<'completed' | 'skipped' | 'api-key' | null | undefined>
580
+ /** Selected usage detail. */
581
+ usage: Volatile<'compact' | 'detailed'>
582
+ /** Selected developer-tool visibility. */
583
+ developerTools: Volatile<boolean>
584
+ }
585
+
586
+ /** Questionnaire destination and bonus notice timings shared by Host and Client. */
587
+ export interface ContactConfig {
588
+ /** HTTPS questionnaire URL; override for a test form. */
589
+ contactFormUrl: string
590
+ /** Questionnaire source option; empty until Harness is supported by the form. */
591
+ contactSource: string
592
+ /** First delay before retrying a failed bonus acknowledgement. */
593
+ bonusAckRetryDelayMs: number
594
+ /** Ceiling for the acknowledgement retry backoff. */
595
+ bonusAckRetryMaxDelayMs: number
596
+ }
597
+
598
+ /** Persisted steps; a native top-up page leaves the durable step at credit. */
599
+ export type OnboardingStep = 'welcome' | 'credit' | 'purpose' | 'process' | 'done'
600
+
601
+ /** Work scenarios offered by the desktop introduction. */
602
+ export type OnboardingPurpose = 'office' | 'development' | 'both'
603
+
604
+ /** Work-detail mode applied to Chat when onboarding completes. */
605
+ export type OnboardingProcess = 'compact' | 'standard' | 'detailed'
606
+ ```
607
+ <!-- END GENERATED config-catalog:@deepseek-ai/dsh-client-ui-settings-account -->
608
+
609
+ <!-- BEGIN GENERATED config-catalog:@deepseek-ai/dsh-client-ui-settings-models -->
610
+ <a id="deepseek-aidsh-client-ui-settings-models"></a>
611
+
612
+ ## `@deepseek-ai/dsh-client-ui-settings-models`
613
+
614
+ - `source`: [`packages/client/ui-settings-models/src/onboarding-config.ts:6`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/client/ui-settings-models/src/onboarding-config.ts)
615
+
616
+ ```ts config-catalog
617
+ /** Onboarding options after schema defaults are applied. */
618
+ export interface Config {
619
+ /** Offer the browser API-key step when no native shell owns credential onboarding. */
620
+ credentialOnboarding: boolean
621
+ }
622
+ ```
623
+ <!-- END GENERATED config-catalog:@deepseek-ai/dsh-client-ui-settings-models -->
624
+
625
+ <!-- BEGIN GENERATED config-catalog:@deepseek-ai/dsh-client-ui-sidebar-documentpreview -->
626
+ <a id="deepseek-aidsh-client-ui-sidebar-documentpreview"></a>
627
+
628
+ ## `@deepseek-ai/dsh-client-ui-sidebar-documentpreview`
629
+
630
+ - `source`: [`packages/client/ui-sidebar-documentpreview/src/config.ts:5`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/client/ui-sidebar-documentpreview/src/config.ts)
631
+
632
+ ```ts config-catalog
633
+ /** Transient Office conversion reuse within one Client connection. */
634
+ export interface Config {
635
+ /** Retained PDF limits; pending conversions share cancellation by reader lifetime. */
636
+ office: {
637
+ /** Maximum retained completed PDFs. */
638
+ maxCachedEntries: number
639
+ /** Maximum retained PDF bytes, counted by each binary buffer's byteLength. */
640
+ maxCachedBytes: number
641
+ /** Maximum unsettled Host conversion RPCs, including cancellation teardown. */
642
+ maxPending: number
643
+ /** Maximum readers including source and renderer metadata lookups. */
644
+ maxReaders: number
645
+ }
646
+ /** Browser spreadsheet parser and dense cell allocation limits. */
647
+ excel: {
648
+ /** Maximum source file bytes. */
649
+ maxBytes: number
650
+ /** Maximum combined rectangular cell area across worksheets. */
651
+ maxCells: number
652
+ /** Maximum parser Worker lifetime in milliseconds. */
653
+ timeoutMs: number
654
+ }
655
+ }
656
+ ```
657
+ <!-- END GENERATED config-catalog:@deepseek-ai/dsh-client-ui-sidebar-documentpreview -->
658
+
659
+ <!-- BEGIN GENERATED config-catalog:@deepseek-ai/dsh-client-ui-theme -->
660
+ <a id="deepseek-aidsh-client-ui-theme"></a>
661
+
662
+ ## `@deepseek-ai/dsh-client-ui-theme`
663
+
664
+ - `refs`: `Volatile` (`@deepseek-ai/cordis`)
665
+ - `source`: [`packages/client/ui-theme/src/index.ts:22`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/client/ui-theme/src/index.ts)
666
+
667
+ ```ts config-catalog
668
+ /** Runtime preferences projected to the browser. */
669
+ export interface Config {
670
+ /** Browser palette preference. */
671
+ preference: Volatile<ThemePreference>
672
+ /** Browser font size in pixels. */
673
+ fontSize: Volatile<number>
674
+ }
675
+
676
+ /** Theme preference persisted by the product Appearance row. */
677
+ export type ThemePreference = typeof THEME_PREFERENCES[number]
678
+ ```
679
+ <!-- END GENERATED config-catalog:@deepseek-ai/dsh-client-ui-theme -->
680
+
681
+ <!-- BEGIN GENERATED config-catalog:@deepseek-ai/dsh-compaction-basic -->
445
682
  <a id="deepseek-aidsh-compaction-basic"></a>
446
683
 
447
684
  ## `@deepseek-ai/dsh-compaction-basic`
448
685
 
449
- Requires: `llm` · `tokenMeter` · `sessions`
686
+ - `inject`: `llm` · `tokenMeter` · `sessions`
687
+ - `source`: [`packages/compaction/compaction-basic/src/types.ts:40`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/compaction/compaction-basic/src/types.ts)
450
688
 
451
689
  ```ts config-catalog
452
690
  /** Basic compaction configuration with an optional exact-target policy table. */
@@ -459,9 +697,11 @@ export interface BasicCompactionConfig extends CompactionPolicyConfig {
459
697
 
460
698
  /** Policy fields shared by the default policy and exact model overrides. */
461
699
  export interface CompactionPolicyConfig {
462
- /** Compact at this fraction of the model's context window. Defaults to `0.8`. */
700
+ /** Window fraction for pressure; capped at context window minus reserved output and `headroomTokens`. Defaults to `0.8`. */
463
701
  thresholdRatio?: number
464
- /** Recent context retained as a fraction of the model's window. Defaults to `0.16`. */
702
+ /** Additional pressure headroom beyond the routed output reservation. Non-negative integer; defaults to `65536`. */
703
+ headroomTokens?: number
704
+ /** Recent context retained as a fraction of context window minus reserved output tokens. Defaults to `0.16`. */
465
705
  retainRatio?: number
466
706
  /** Absolute recent-context budget; mutually exclusive with `retainRatio`. */
467
707
  retainTokens?: number
@@ -469,7 +709,7 @@ export interface CompactionPolicyConfig {
469
709
  summarizationProvider?: string
470
710
  /** Summary model; set together with `summarizationProvider`, or inherit the conversation target. */
471
711
  summarizationModel?: string
472
- /** Provider generation cap for summarization. Defaults to `8192`. */
712
+ /** Provider generation cap for summarization. Defaults to the resolved `headroomTokens`; an explicit cap must be positive. */
473
713
  maxTokens?: number
474
714
  /** Extra attempts after the first compaction when pressure remains above threshold. Defaults to `1`. */
475
715
  compactionRetries?: number
@@ -485,14 +725,15 @@ export interface ModelCompactPolicyConfig extends CompactionPolicyConfig {
485
725
  model: string
486
726
  }
487
727
  ```
728
+ <!-- END GENERATED config-catalog:@deepseek-ai/dsh-compaction-basic -->
488
729
 
489
- Source: [`packages/compaction/compaction-basic/src/types.ts:38`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/compaction/compaction-basic/src/types.ts)
490
-
730
+ <!-- BEGIN GENERATED config-catalog:@deepseek-ai/dsh-compaction-tool-result-pruner -->
491
731
  <a id="deepseek-aidsh-compaction-tool-result-pruner"></a>
492
732
 
493
733
  ## `@deepseek-ai/dsh-compaction-tool-result-pruner`
494
734
 
495
- Requires: `tokenMeter`
735
+ - `inject`: `tokenMeter`
736
+ - `source`: [`packages/compaction/compaction-tool-result-pruner/src/types.ts:5`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/compaction/compaction-tool-result-pruner/src/types.ts)
496
737
 
497
738
  ```ts config-catalog
498
739
  /** Character-budget policy for deterministic tool-result pruning. */
@@ -505,29 +746,34 @@ export interface ToolResultPruneConfig {
505
746
  tailChars?: number
506
747
  }
507
748
  ```
749
+ <!-- END GENERATED config-catalog:@deepseek-ai/dsh-compaction-tool-result-pruner -->
508
750
 
509
- Source: [`packages/compaction/compaction-tool-result-pruner/src/types.ts:5`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/compaction/compaction-tool-result-pruner/src/types.ts)
510
-
751
+ <!-- BEGIN GENERATED config-catalog:@deepseek-ai/dsh-cordis-host-runner -->
511
752
  <a id="deepseek-aidsh-cordis-host-runner"></a>
512
753
 
513
754
  ## `@deepseek-ai/dsh-cordis-host-runner`
514
755
 
515
- Requires: `tools`
756
+ - `inject`: `tools`
757
+ - `source`: [`packages/extensions/cordis-host-runner/src/index.ts:93`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/extensions/cordis-host-runner/src/index.ts)
516
758
 
517
759
  ```ts config-catalog
518
760
  /** Runner configuration. */
519
761
  export interface Config {
520
762
  /** Maximum synchronous VM evaluation time in milliseconds. */
521
763
  vmTimeoutMs?: number
764
+ /** Maximum wait for a valid Client inspect response in milliseconds. */
765
+ clientInspectTimeoutMs?: number
522
766
  }
523
767
  ```
768
+ <!-- END GENERATED config-catalog:@deepseek-ai/dsh-cordis-host-runner -->
524
769
 
525
- Source: [`packages/extensions/cordis-host-runner/src/index.ts:88`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/extensions/cordis-host-runner/src/index.ts)
526
-
770
+ <!-- BEGIN GENERATED config-catalog:@deepseek-ai/dsh-credentials-local -->
527
771
  <a id="deepseek-aidsh-credentials-local"></a>
528
772
 
529
773
  ## `@deepseek-ai/dsh-credentials-local`
530
774
 
775
+ - `source`: [`packages/credentials/credentials-local/src/index.ts:64`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/credentials/credentials-local/src/index.ts)
776
+
531
777
  ```ts config-catalog
532
778
  /** Plugin config: file location and hot-reload behavior. */
533
779
  export interface Config {
@@ -541,32 +787,56 @@ export interface Config {
541
787
  debounceMs?: number
542
788
  }
543
789
  ```
790
+ <!-- END GENERATED config-catalog:@deepseek-ai/dsh-credentials-local -->
544
791
 
545
- Source: [`packages/credentials/credentials-local/src/index.ts:64`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/credentials/credentials-local/src/index.ts)
792
+ <!-- BEGIN GENERATED config-catalog:@deepseek-ai/dsh-deepseek-account-platform -->
793
+ <a id="deepseek-aidsh-deepseek-account-platform"></a>
546
794
 
547
- <a id="deepseek-aidsh-e2b"></a>
795
+ ## `@deepseek-ai/dsh-deepseek-account-platform`
548
796
 
549
- ## `@deepseek-ai/dsh-e2b`
797
+ - `inject`: `credentials` · `authorization`
798
+ - `source`: [`packages/credentials/deepseek-account-platform/src/index.ts:23`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/credentials/deepseek-account-platform/src/index.ts)
550
799
 
551
800
  ```ts config-catalog
552
- /** Configuration for the shared E2B sandbox owner. */
801
+ /** Deployment-specific platform and request deadlines. */
553
802
  export interface Config {
554
- /** API key; omission reads `E2B_API_KEY`. It is never forwarded into the sandbox. */
555
- apiKey?: string
556
- /** Shared remote working directory, created before adapters receive the sandbox. */
557
- cwd?: string
558
- /** E2B sandbox lifetime in milliseconds; expiry always deletes the sandbox. */
559
- timeoutMs?: number
803
+ /** Platform origin serving auth-api and browser pages. */
804
+ platformOrigin?: string
805
+ /** Native desktop identity for Host API and embedded Platform requests; null identifies the client as web. */
806
+ desktopPlatform?: 'darwin' | 'win32' | null
807
+ /** Optional frontend deployment selector for embedded Usage and Top-up pages. */
808
+ embeddedPageDist?: string
809
+ /** Exact HTTP(S) origin allowed to receive account tokens for inference and files. */
810
+ inferenceOrigin?: string
811
+ /** Allow HTTP only on loopback for the development Mock. */
812
+ allowLoopbackHttp?: boolean
813
+ /** Map authorization and completion pages to platformOrigin for private development proxies. */
814
+ rewriteBrowserOrigin?: boolean
815
+ /** Host-only headers sent exclusively to platformOrigin; account authorization cannot be overridden. */
816
+ requestHeaders?: Record<string, string>
817
+ /** Overrides for profile, balance and embedded Platform requests; Cookie pairs merge by name. Logout retains requestHeaders. */
818
+ accountRequestHeaders?: Record<string, string>
819
+ /** Deadline for each platform HTTP request. */
820
+ requestTimeoutMs?: number
821
+ /** Deadline for recharge-wallet queries; timeout returns a failed balance outcome. */
822
+ balanceTimeoutMs?: number
823
+ /** Additional logout attempts after the first request fails, at most five. */
824
+ logoutMaxRetries?: number
825
+ /** Delay before the first logout retry; each later delay doubles. */
826
+ logoutRetryDelayMs?: number
827
+ /** Upper bound for the entire local attempt, even if the server advertises a longer TTL. */
828
+ attemptTimeoutMs?: number
560
829
  }
561
830
  ```
831
+ <!-- END GENERATED config-catalog:@deepseek-ai/dsh-deepseek-account-platform -->
562
832
 
563
- Source: [`packages/e2b/e2b/src/index.ts:45`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/e2b/e2b/src/index.ts)
564
-
833
+ <!-- BEGIN GENERATED config-catalog:@deepseek-ai/dsh-experimental-agent-team -->
565
834
  <a id="deepseek-aidsh-experimental-agent-team"></a>
566
835
 
567
836
  ## `@deepseek-ai/dsh-experimental-agent-team`
568
837
 
569
- Requires: `agents` · `sessions` · `sessionPersistence` · `sessionProjections` · `subagents`
838
+ - `inject`: `agents` · `sessions` · `sessionPersistence` · `sessionProjections` · `subagents`
839
+ - `source`: [`packages/experimental/agent-team/src/types.ts:152`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/experimental/agent-team/src/types.ts)
570
840
 
571
841
  ```ts config-catalog
572
842
  /** Team-service deployment limits. */
@@ -583,81 +853,156 @@ export interface Config {
583
853
  readonly disposalTimeoutMs?: number
584
854
  }
585
855
  ```
856
+ <!-- END GENERATED config-catalog:@deepseek-ai/dsh-experimental-agent-team -->
586
857
 
587
- Source: [`packages/experimental/agent-team/src/types.ts:130`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/experimental/agent-team/src/types.ts)
858
+ <!-- BEGIN GENERATED config-catalog:@deepseek-ai/dsh-experimental-api-speech-to-text -->
859
+ <a id="deepseek-aidsh-experimental-api-speech-to-text"></a>
588
860
 
589
- <a id="deepseek-aidsh-experimental-code-runtime-python"></a>
861
+ ## `@deepseek-ai/dsh-experimental-api-speech-to-text`
590
862
 
591
- ## `@deepseek-ai/dsh-experimental-code-runtime-python`
863
+ - `inject`: `speechToText` · `typert`
864
+ - `source`: [`packages/experimental/api-speech-to-text/src/index.ts:20`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/experimental/api-speech-to-text/src/index.ts)
592
865
 
593
866
  ```ts config-catalog
594
- /** Plugin config: every cap, changeable from `cordis.yml` (no hardcoded tunables). */
867
+ /** Limits applied before decoding or calling a provider. */
595
868
  export interface Config {
596
- /**
597
- * RLIMIT_CPU in whole seconds (a positive integer — `setrlimit` in the child
598
- * rejects a float). The child sets the soft limit to `cpuSeconds` and the
599
- * hard limit to `cpuSeconds + 1`: the kernel delivers SIGXCPU at the soft
600
- * limit, which the host classifies as a `timeout`; the +1s hard limit is a
601
- * SIGKILL backstop for a program that traps SIGXCPU. Granularity is seconds —
602
- * a coarser counterpart to the worker backend's millisecond `computeMs`.
603
- */
604
- cpuSeconds?: number
605
- /** Wall-clock ceiling in milliseconds; backstops CPU time for programs awaiting a promise nobody resolves. */
606
- maxWallMs?: number
607
- /**
608
- * RLIMIT_AS in mebibytes; caps address space so a runaway allocation fails
609
- * cleanly. Not applied on Darwin, where the dyld shared cache mapped into
610
- * every process at exec exceeds any practical cap and the kernel rejects
611
- * the call; `cpuSeconds` and `maxWallMs` still bound the run there. Bounds
612
- * `maxLogBytes`/`maxValueBytes` at load on EVERY platform (this static check
613
- * runs on Darwin too, where only the runtime `setrlimit` is skipped): each
614
- * budget times a worst-case Unicode expansion must fit this byte count minus a
615
- * fixed interpreter baseline, so a near-budget output cannot breach the address
616
- * space during the child's build-and-encode.
617
- */
618
- addressSpaceMb?: number
619
- /**
620
- * Shared byte budget for captured log text (host-side ledger). Bounded at load
621
- * against `addressSpaceMb`: the child builds and encodes a near-budget entry
622
- * under RLIMIT_AS with several copies live at once, so this cap times the
623
- * worst-case Unicode expansion must fit the address space left after the
624
- * interpreter baseline (see `addressSpaceMb`) — a load-time rejection, not a
625
- * runtime clamp. Also bounded at load by the host's configured heap like
626
- * `maxValueBytes` (see its JSDoc): the effective frame cap minus the frame
627
- * envelope.
628
- */
629
- maxLogBytes?: number
630
- /**
631
- * Byte cap for the completion value. Bounded at load against `addressSpaceMb`
632
- * the same way `maxLogBytes` is: the child builds and encodes a near-budget
633
- * value under RLIMIT_AS with several copies live at once, so this cap times the
634
- * worst-case Unicode expansion must fit the address space left after the
635
- * interpreter baseline. Both budgets are ALSO bounded at load by the host's
636
- * configured heap: the effective frame cap (the protocol cap, or a lower
637
- * heap-derived ceiling when the host heap cannot safely parse a near-cap
638
- * frame — see `hostFrameParseCeiling`) minus the frame envelope, so a budget
639
- * whose honest frame could OOM the host's own JSON.parse is rejected up
640
- * front.
641
- */
642
- maxValueBytes?: number
643
- /** SIGTERM→SIGKILL grace period on kill, matching bash-local's default. */
644
- graceMs?: number
645
- /**
646
- * Absolute path, relative path, or basename of a CPython 3.10+ interpreter.
647
- * Resolved and validated once at plugin load under a five-second force-kill
648
- * deadline; a basename searches `PATH`.
649
- */
650
- pythonBin?: string
869
+ /** Maximum decoded WAV bytes per request. */
870
+ maxAudioBytes: number
871
+ /** Maximum PCM recording duration in seconds. */
872
+ maxDurationSeconds: number
873
+ }
874
+ ```
875
+ <!-- END GENERATED config-catalog:@deepseek-ai/dsh-experimental-api-speech-to-text -->
876
+
877
+ <!-- BEGIN GENERATED config-catalog:@deepseek-ai/dsh-experimental-browser-use-chrome-devtools-mcp -->
878
+ <a id="deepseek-aidsh-experimental-browser-use-chrome-devtools-mcp"></a>
879
+
880
+ ## `@deepseek-ai/dsh-experimental-browser-use-chrome-devtools-mcp`
881
+
882
+ - `inject`: `browserUse` · `agents` · `tools` · `systemPrompt`
883
+ - `refs`: `BrowserMcpConfig` (`@deepseek-ai/dsh-experimental-browser-use-runtime/mcp`)
884
+ - `source`: [`packages/experimental/browser-use-chrome-devtools-mcp/src/index.ts:14`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/experimental/browser-use-chrome-devtools-mcp/src/index.ts)
885
+
886
+ ```ts config-catalog
887
+ /** Fixed Chromium launch or existing-browser attachment settings. */
888
+ export type Config = BrowserMcpConfig
889
+ ```
890
+ <!-- END GENERATED config-catalog:@deepseek-ai/dsh-experimental-browser-use-chrome-devtools-mcp -->
891
+
892
+ <!-- BEGIN GENERATED config-catalog:@deepseek-ai/dsh-experimental-browser-use-playwright-mcp -->
893
+ <a id="deepseek-aidsh-experimental-browser-use-playwright-mcp"></a>
894
+
895
+ ## `@deepseek-ai/dsh-experimental-browser-use-playwright-mcp`
896
+
897
+ - `inject`: `browserUse` · `agents` · `tools` · `systemPrompt`
898
+ - `refs`: `BrowserMcpConfig` (`@deepseek-ai/dsh-experimental-browser-use-runtime/mcp`)
899
+ - `source`: [`packages/experimental/browser-use-playwright-mcp/src/index.ts:15`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/experimental/browser-use-playwright-mcp/src/index.ts)
900
+
901
+ ```ts config-catalog
902
+ /** Fixed Chromium launch or existing-browser attachment settings. */
903
+ export type Config = BrowserMcpConfig
904
+ ```
905
+ <!-- END GENERATED config-catalog:@deepseek-ai/dsh-experimental-browser-use-playwright-mcp -->
906
+
907
+ <!-- BEGIN GENERATED config-catalog:@deepseek-ai/dsh-experimental-browser-use-stagehand-native -->
908
+ <a id="deepseek-aidsh-experimental-browser-use-stagehand-native"></a>
909
+
910
+ ## `@deepseek-ai/dsh-experimental-browser-use-stagehand-native`
911
+
912
+ - `inject`: `browserUse` · `agents` · `tools` · `systemPrompt`
913
+ - `refs`: `ModelConfig` (`@browserbasehq/stagehand`)
914
+ - `source`: [`packages/experimental/browser-use-stagehand-native/src/index.ts:28`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/experimental/browser-use-stagehand-native/src/index.ts)
915
+
916
+ ```ts config-catalog
917
+ /** Profile-owned browser connection and independent Stagehand model credentials. */
918
+ export interface Config {
919
+ /** Native Stagehand model and credentials; independent of the Session model. */
920
+ model: StagehandModelConfig
921
+ /** Launch a fresh browser or attach to the configured existing endpoint. */
922
+ mode: 'launch' | 'attach'
923
+ /** CDP HTTP or WebSocket endpoint, required only for attach mode. */
924
+ cdpEndpoint?: string
925
+ /** Optional Stagehand extension id for an existing browser. */
926
+ extensionId?: string
927
+ /** Installed Chrome/Chromium executable used in launch mode. */
928
+ executablePath?: string
929
+ /** Hide an owned browser's window. */
930
+ headless?: boolean
931
+ /** Deadline for Chromium startup and Stagehand navigation/action operations. */
932
+ operationTimeoutMs?: number
933
+ /** Grace for native SDK cleanup before its connection Worker is terminated. */
934
+ shutdownGraceMs?: number
935
+ }
936
+
937
+ /** Profile-owned model settings accepted by the pinned Stagehand SDK. */
938
+ export interface StagehandModelConfig {
939
+ /** Provider-prefixed model name from Stagehand's supported model catalog. */
940
+ modelName: ModelConfig['modelName']
941
+ /** Explicit API key sent to Stagehand's browser extension. */
942
+ apiKey: string
943
+ /** Additional headers sent with the extension's model requests. */
944
+ headers?: Record<string, string>
651
945
  }
652
946
  ```
947
+ <!-- END GENERATED config-catalog:@deepseek-ai/dsh-experimental-browser-use-stagehand-native -->
948
+
949
+ <!-- BEGIN GENERATED config-catalog:@deepseek-ai/dsh-experimental-claude-code-mods -->
950
+ <a id="deepseek-aidsh-experimental-claude-code-mods"></a>
951
+
952
+ ## `@deepseek-ai/dsh-experimental-claude-code-mods`
953
+
954
+ - `source`: [`packages/experimental/claude-code-mods/src/index.ts:52`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/experimental/claude-code-mods/src/index.ts)
955
+
956
+ ```ts config-catalog
957
+ /** Plugin config: the limits mod hooks run under. */
958
+ export interface Config {
959
+ /** A hook's own running-time limit in milliseconds (Claude Code: 10 seconds). */
960
+ hookTimeoutMs?: number
961
+ /** A `.catch` handler's running-time limit in milliseconds (Claude Code: 1 second). */
962
+ catchTimeoutMs?: number
963
+ /** Default `$.process.run` and `$.http.fetch` timeout in milliseconds (Claude Code: 30 seconds). */
964
+ processTimeoutMs?: number
965
+ /** Claude Code tool name → harness tool name entries added to the built-in alias table. */
966
+ toolAliases?: Record<string, string>
967
+ /** Columns the band above the prompt reports to `ui.render` as `bodyColumns` and `viewport.columns`. */
968
+ bandColumns?: number
969
+ /** Rows the band reports as `maxRows`. */
970
+ bandRows?: number
971
+ }
972
+ ```
973
+ <!-- END GENERATED config-catalog:@deepseek-ai/dsh-experimental-claude-code-mods -->
974
+
975
+ <!-- BEGIN GENERATED config-catalog:@deepseek-ai/dsh-experimental-computer-use-cua-driver-mcp -->
976
+ <a id="deepseek-aidsh-experimental-computer-use-cua-driver-mcp"></a>
653
977
 
654
- Source: [`packages/experimental/code-runtime-python/src/index.ts:42`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/experimental/code-runtime-python/src/index.ts)
978
+ ## `@deepseek-ai/dsh-experimental-computer-use-cua-driver-mcp`
655
979
 
980
+ - `inject`: `computerUse` · `tools`
981
+ - `refs`: [`McpClient`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/mcp/mcp-client/src/index.ts)
982
+ - `source`: [`packages/experimental/computer-use-cua-driver-mcp/src/index.ts:20`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/experimental/computer-use-cua-driver-mcp/src/index.ts)
983
+
984
+ ```ts config-catalog
985
+ /** Installed executable and MCP connection overrides. */
986
+ export interface Config {
987
+ /** Executable path or PATH command; defaults to `cua-driver`. */
988
+ command: string
989
+ /** Arguments passed without a shell; defaults to `['mcp']`. */
990
+ args: string[]
991
+ /** Per-call timeout in milliseconds; omission uses the MCP client's default. */
992
+ toolCallTimeoutMs?: number
993
+ /** Reconnection overrides; defaults to the MCP client's policy. */
994
+ reconnect: McpClient.ReconnectConfig
995
+ }
996
+ ```
997
+ <!-- END GENERATED config-catalog:@deepseek-ai/dsh-experimental-computer-use-cua-driver-mcp -->
998
+
999
+ <!-- BEGIN GENERATED config-catalog:@deepseek-ai/dsh-experimental-inspector -->
656
1000
  <a id="deepseek-aidsh-experimental-inspector"></a>
657
1001
 
658
1002
  ## `@deepseek-ai/dsh-experimental-inspector`
659
1003
 
660
- Requires: `webServer`
1004
+ - `inject`: `webServer` · `connection`
1005
+ - `source`: [`packages/experimental/inspector/src/index.ts:66`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/experimental/inspector/src/index.ts)
661
1006
 
662
1007
  ```ts config-catalog
663
1008
  /** Host plugin configuration. Fetch capture is enabled by default. */
@@ -718,14 +1063,161 @@ export interface InspectorOptions {
718
1063
  readonly maxDisconnectedCordisTrees?: number
719
1064
  }
720
1065
  ```
1066
+ <!-- END GENERATED config-catalog:@deepseek-ai/dsh-experimental-inspector -->
1067
+
1068
+ <!-- BEGIN GENERATED config-catalog:@deepseek-ai/dsh-experimental-ptc-runtime-python -->
1069
+ <a id="deepseek-aidsh-experimental-ptc-runtime-python"></a>
1070
+
1071
+ ## `@deepseek-ai/dsh-experimental-ptc-runtime-python`
1072
+
1073
+ - `source`: [`packages/experimental/ptc-runtime-python/src/index.ts:42`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/experimental/ptc-runtime-python/src/index.ts)
1074
+
1075
+ ```ts config-catalog
1076
+ /** Plugin config: every cap, changeable from `cordis.yml` (no hardcoded tunables). */
1077
+ export interface Config {
1078
+ /**
1079
+ * RLIMIT_CPU in whole seconds (a positive integer — `setrlimit` in the child
1080
+ * rejects a float). The child sets the soft limit to `cpuSeconds` and the
1081
+ * hard limit to `cpuSeconds + 1`: the kernel delivers SIGXCPU at the soft
1082
+ * limit, which the host classifies as a `timeout`; the +1s hard limit is a
1083
+ * SIGKILL backstop for a program that traps SIGXCPU. Granularity is whole seconds.
1084
+ */
1085
+ cpuSeconds?: number
1086
+ /** Wall-clock ceiling in milliseconds; backstops CPU time for programs awaiting a promise nobody resolves. */
1087
+ maxWallMs?: number
1088
+ /**
1089
+ * RLIMIT_AS in mebibytes; caps address space so a runaway allocation fails
1090
+ * cleanly. Not applied on Darwin, where the dyld shared cache mapped into
1091
+ * every process at exec exceeds any practical cap and the kernel rejects
1092
+ * the call; `cpuSeconds` and `maxWallMs` still bound the run there. Bounds
1093
+ * `maxLogBytes`/`maxValueBytes` at load on EVERY platform (this static check
1094
+ * runs on Darwin too, where only the runtime `setrlimit` is skipped): each
1095
+ * budget times a worst-case Unicode expansion must fit this byte count minus a
1096
+ * fixed interpreter baseline, so a near-budget output cannot breach the address
1097
+ * space during the child's build-and-encode.
1098
+ */
1099
+ addressSpaceMb?: number
1100
+ /**
1101
+ * Shared byte budget for captured log text (host-side ledger). Bounded at load
1102
+ * against `addressSpaceMb`: the child builds and encodes a near-budget entry
1103
+ * under RLIMIT_AS with several copies live at once, so this cap times the
1104
+ * worst-case Unicode expansion must fit the address space left after the
1105
+ * interpreter baseline (see `addressSpaceMb`) — a load-time rejection, not a
1106
+ * runtime clamp. Also bounded at load by the host's configured heap like
1107
+ * `maxValueBytes` (see its JSDoc): the effective frame cap minus the frame
1108
+ * envelope.
1109
+ */
1110
+ maxLogBytes?: number
1111
+ /**
1112
+ * Byte cap for the completion value. Bounded at load against `addressSpaceMb`
1113
+ * the same way `maxLogBytes` is: the child builds and encodes a near-budget
1114
+ * value under RLIMIT_AS with several copies live at once, so this cap times the
1115
+ * worst-case Unicode expansion must fit the address space left after the
1116
+ * interpreter baseline. Both budgets are ALSO bounded at load by the host's
1117
+ * configured heap: the effective frame cap (the protocol cap, or a lower
1118
+ * heap-derived ceiling when the host heap cannot safely parse a near-cap
1119
+ * frame — see `hostFrameParseCeiling`) minus the frame envelope, so a budget
1120
+ * whose honest frame could OOM the host's own JSON.parse is rejected up
1121
+ * front.
1122
+ */
1123
+ maxValueBytes?: number
1124
+ /** SIGTERM→SIGKILL grace period on kill, matching bash-local's default. */
1125
+ graceMs?: number
1126
+ /**
1127
+ * Absolute path, relative path, or basename of a CPython 3.10+ interpreter.
1128
+ * Resolved and validated once at plugin load under a five-second force-kill
1129
+ * deadline; a basename searches `PATH`.
1130
+ */
1131
+ pythonBin?: string
1132
+ }
1133
+ ```
1134
+ <!-- END GENERATED config-catalog:@deepseek-ai/dsh-experimental-ptc-runtime-python -->
1135
+
1136
+ <!-- BEGIN GENERATED config-catalog:@deepseek-ai/dsh-experimental-speech-to-text -->
1137
+ <a id="deepseek-aidsh-experimental-speech-to-text"></a>
1138
+
1139
+ ## `@deepseek-ai/dsh-experimental-speech-to-text`
1140
+
1141
+ - `refs`: `Volatile` (`@deepseek-ai/cordis`)
1142
+ - `source`: [`packages/experimental/speech-to-text/src/index.ts:20`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/experimental/speech-to-text/src/index.ts)
1143
+
1144
+ ```ts config-catalog
1145
+ /** Live selection read before a transcription starts; `configure()` writes it through the profile. */
1146
+ export interface Config {
1147
+ /** Registered provider selected when the caller omits an id. */
1148
+ defaultProvider: Volatile<string>
1149
+ /** Provider language hint selected when the caller omits one. */
1150
+ language: Volatile<string>
1151
+ }
1152
+ ```
1153
+ <!-- END GENERATED config-catalog:@deepseek-ai/dsh-experimental-speech-to-text -->
1154
+
1155
+ <!-- BEGIN GENERATED config-catalog:@deepseek-ai/dsh-experimental-speech-to-text-sensevoice -->
1156
+ <a id="deepseek-aidsh-experimental-speech-to-text-sensevoice"></a>
721
1157
 
722
- Source: [`packages/experimental/inspector/src/index.ts:66`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/experimental/inspector/src/index.ts)
1158
+ ## `@deepseek-ai/dsh-experimental-speech-to-text-sensevoice`
723
1159
 
1160
+ - `inject`: `speechToText` · `subprocess`
1161
+ - `source`: [`packages/experimental/speech-to-text-sensevoice/src/config.ts:6`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/experimental/speech-to-text-sensevoice/src/config.ts)
1162
+
1163
+ ```ts config-catalog
1164
+ /** Local runtime, inference, and retention settings. */
1165
+ export interface Config {
1166
+ /** Unique registration id; consumers select this exact id. */
1167
+ providerId: string
1168
+ /** Absolute directory for verified ONNX models. */
1169
+ dataRoot: string
1170
+ /** Existing directory containing the selected ONNX model and tokens.txt; omission downloads verified files. */
1171
+ modelDirectory?: string | undefined
1172
+ /** Existing Silero VAD ONNX file; omission downloads the verified model. */
1173
+ vadModelPath?: string | undefined
1174
+ /** Weight precision; INT8 minimizes first-use download and model storage. */
1175
+ precision: 'int8' | 'fp32'
1176
+ /** Explicit Hugging Face-compatible origin; bypasses automatic selection and public fallback. */
1177
+ modelOrigin?: string | undefined
1178
+ /** Hugging Face-compatible origins compared before downloading each missing asset. */
1179
+ modelOrigins: string[]
1180
+ /** Deadline for concurrent HEAD probes, including redirects to the actual asset. */
1181
+ modelProbeTimeoutMs: number
1182
+ /** CPU intra-operation thread count. */
1183
+ threads: number
1184
+ /** Maximum speech segment length passed to the recognizer. */
1185
+ segmentSeconds: number
1186
+ /** Silero speech probability threshold. */
1187
+ vadThreshold: number
1188
+ /** Minimum speech duration retained by VAD. */
1189
+ minSpeechSeconds: number
1190
+ /** Silence separating two speech segments. */
1191
+ minSilenceSeconds: number
1192
+ /** Maximum decoded WAV bytes accepted by the private worker. */
1193
+ maxAudioBytes: number
1194
+ /** Deadline for runtime preparation and cold model loading. */
1195
+ prepareTimeoutMs: number
1196
+ /** Deadline for one inference after the worker is ready. */
1197
+ inferenceTimeoutMs: number
1198
+ /** Idle period before stopping the worker; zero keeps it warm. */
1199
+ idleTimeoutMs: number
1200
+ /** Maximum accepted running and waiting transcriptions. */
1201
+ maxPending: number
1202
+ /** Managed process termination grace period. */
1203
+ graceMs: number
1204
+ /** Maximum retained worker diagnostic bytes. */
1205
+ maxLogBytes: number
1206
+ /** Maximum transcript response bytes. */
1207
+ maxResponseBytes: number
1208
+ /** Minimum interval between intermediate download progress notifications. */
1209
+ progressIntervalMs: number
1210
+ }
1211
+ ```
1212
+ <!-- END GENERATED config-catalog:@deepseek-ai/dsh-experimental-speech-to-text-sensevoice -->
1213
+
1214
+ <!-- BEGIN GENERATED config-catalog:@deepseek-ai/dsh-experimental-tool-agent-team -->
724
1215
  <a id="deepseek-aidsh-experimental-tool-agent-team"></a>
725
1216
 
726
1217
  ## `@deepseek-ai/dsh-experimental-tool-agent-team`
727
1218
 
728
- Requires: `agents` · `agentTeams` · `tools` · `systemPrompt`
1219
+ - `inject`: `agents` · `agentTeams` · `tools` · `systemPrompt`
1220
+ - `source`: [`packages/experimental/tool-agent-team/src/index.ts:17`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/experimental/tool-agent-team/src/index.ts)
729
1221
 
730
1222
  ```ts config-catalog
731
1223
  /** Tool routing configuration. */
@@ -736,14 +1228,15 @@ export interface Config {
736
1228
  readonly forkProvider?: string
737
1229
  }
738
1230
  ```
1231
+ <!-- END GENERATED config-catalog:@deepseek-ai/dsh-experimental-tool-agent-team -->
739
1232
 
740
- Source: [`packages/experimental/tool-agent-team/src/index.ts:17`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/experimental/tool-agent-team/src/index.ts)
741
-
1233
+ <!-- BEGIN GENERATED config-catalog:@deepseek-ai/dsh-file-reference-local -->
742
1234
  <a id="deepseek-aidsh-file-reference-local"></a>
743
1235
 
744
1236
  ## `@deepseek-ai/dsh-file-reference-local`
745
1237
 
746
- Requires: `agents`
1238
+ - `inject`: `agents`
1239
+ - `source`: [`packages/context/file-reference-local/src/index.ts:34`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/context/file-reference-local/src/index.ts)
747
1240
 
748
1241
  ```ts config-catalog
749
1242
  /** Local file-reference discovery configuration. */
@@ -756,13 +1249,15 @@ export interface Config {
756
1249
  excludedDirectories?: string[]
757
1250
  }
758
1251
  ```
1252
+ <!-- END GENERATED config-catalog:@deepseek-ai/dsh-file-reference-local -->
759
1253
 
760
- Source: [`packages/context/file-reference-local/src/index.ts:34`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/context/file-reference-local/src/index.ts)
761
-
1254
+ <!-- BEGIN GENERATED config-catalog:@deepseek-ai/dsh-fs-local -->
762
1255
  <a id="deepseek-aidsh-fs-local"></a>
763
1256
 
764
1257
  ## `@deepseek-ai/dsh-fs-local`
765
1258
 
1259
+ - `source`: [`packages/fs/fs-local/src/index.ts:45`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/fs/fs-local/src/index.ts)
1260
+
766
1261
  ```ts config-catalog
767
1262
  /** Configuration for the local filesystem backend. */
768
1263
  export interface Config {
@@ -775,14 +1270,16 @@ export interface Config {
775
1270
  diffBasisMaxBytes?: number
776
1271
  }
777
1272
  ```
1273
+ <!-- END GENERATED config-catalog:@deepseek-ai/dsh-fs-local -->
778
1274
 
779
- Source: [`packages/fs/fs-local/src/index.ts:42`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/fs/fs-local/src/index.ts)
780
-
1275
+ <!-- BEGIN GENERATED config-catalog:@deepseek-ai/dsh-fs-sandbox -->
781
1276
  <a id="deepseek-aidsh-fs-sandbox"></a>
782
1277
 
783
1278
  ## `@deepseek-ai/dsh-fs-sandbox`
784
1279
 
785
- Requires: `sandboxPolicy`
1280
+ - `inject`: `sandboxPolicy`
1281
+ - `refs`: [`LocalConfig`](#deepseek-aidsh-fs-local)
1282
+ - `source`: [`packages/fs/fs-sandbox/src/index.ts:45`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/fs/fs-sandbox/src/index.ts)
786
1283
 
787
1284
  ```ts config-catalog
788
1285
  /**
@@ -793,16 +1290,15 @@ Requires: `sandboxPolicy`
793
1290
  */
794
1291
  export type Config = LocalConfig
795
1292
  ```
1293
+ <!-- END GENERATED config-catalog:@deepseek-ai/dsh-fs-sandbox -->
796
1294
 
797
- Depends on: [`LocalConfig`](#deepseek-aidsh-fs-local)
798
-
799
- Source: [`packages/fs/fs-sandbox/src/index.ts:45`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/fs/fs-sandbox/src/index.ts)
800
-
1295
+ <!-- BEGIN GENERATED config-catalog:@deepseek-ai/dsh-goal -->
801
1296
  <a id="deepseek-aidsh-goal"></a>
802
1297
 
803
1298
  ## `@deepseek-ai/dsh-goal`
804
1299
 
805
- Requires: `agents` · `sessionProjections`
1300
+ - `inject`: `agents` · `sessionProjections`
1301
+ - `source`: [`packages/goal/goal/src/index.ts:172`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/goal/goal/src/index.ts)
806
1302
 
807
1303
  ```ts config-catalog
808
1304
  /** Deployment defaults for goal creation. */
@@ -811,30 +1307,59 @@ export interface Config {
811
1307
  defaultMaxGoalRounds?: number
812
1308
  }
813
1309
  ```
1310
+ <!-- END GENERATED config-catalog:@deepseek-ai/dsh-goal -->
814
1311
 
815
- Source: [`packages/goal/goal/src/index.ts:172`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/goal/goal/src/index.ts)
816
-
1312
+ <!-- BEGIN GENERATED config-catalog:@deepseek-ai/dsh-headless -->
817
1313
  <a id="deepseek-aidsh-headless"></a>
818
1314
 
819
1315
  ## `@deepseek-ai/dsh-headless`
820
1316
 
821
- Requires: `agentDefaultModel` · `agents` · `sessions`
1317
+ - `inject`: `agentDefaultModel` · `agents` · `sessions`
1318
+ - `source`: [`packages/bundle/headless/src/index.ts:42`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/bundle/headless/src/index.ts)
822
1319
 
823
1320
  ```ts config-catalog
824
- /** Plugin config: the task resolved from this app's injected provider service. */
1321
+ /** Plugin config: the task and run options resolved from this app's injected provider service. */
825
1322
  export interface Config {
826
- /** The prompt text for the single run. */
827
- task: string
1323
+ /** The prompt text for the single run; absent when the task arrives on stdin. */
1324
+ task?: string
1325
+ /** Exact Session identity to adopt; absent for a fresh random identity. An id with no stored Session fails. */
1326
+ sessionId?: string
1327
+ /** Whether stdout carries the machine-readable event stream instead of final text. */
1328
+ json?: boolean
828
1329
  }
829
1330
  ```
1331
+ <!-- END GENERATED config-catalog:@deepseek-ai/dsh-headless -->
1332
+
1333
+ <!-- BEGIN GENERATED config-catalog:@deepseek-ai/dsh-hmr -->
1334
+ <a id="deepseek-aidsh-hmr"></a>
830
1335
 
831
- Source: [`packages/bundle/headless/src/index.ts:34`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/bundle/headless/src/index.ts)
1336
+ ## `@deepseek-ai/dsh-hmr`
1337
+
1338
+ - `refs`: `ChokidarOptions` (`chokidar`)
1339
+ - `source`: [`packages/boot/hmr/src/index.ts:53`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/boot/hmr/src/index.ts)
1340
+
1341
+ ```ts config-catalog
1342
+ /** Module roots and watcher timing, with Chokidar deployment options. */
1343
+ export interface HmrConfig extends ChokidarOptions {
1344
+ /** Directory resolved against the owning context's base URL. */
1345
+ base?: string
1346
+ /** Module watch roots; an empty list leaves only explicit configuration watches. */
1347
+ root: string[]
1348
+ /** Milliseconds for combining module changes. */
1349
+ debounce: number
1350
+ /** Glob patterns excluded from module watching. */
1351
+ ignored: string[]
1352
+ }
1353
+ ```
1354
+ <!-- END GENERATED config-catalog:@deepseek-ai/dsh-hmr -->
832
1355
 
1356
+ <!-- BEGIN GENERATED config-catalog:@deepseek-ai/dsh-hooks-claude-code -->
833
1357
  <a id="deepseek-aidsh-hooks-claude-code"></a>
834
1358
 
835
1359
  ## `@deepseek-ai/dsh-hooks-claude-code`
836
1360
 
837
- Requires: `shell` · `sessionProjections`
1361
+ - `inject`: `shell` · `sessionProjections`
1362
+ - `source`: [`packages/hooks/hooks-claude-code/src/index.ts:51`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/hooks/hooks-claude-code/src/index.ts)
838
1363
 
839
1364
  ```ts config-catalog
840
1365
  /** Plugin config: where the CC hook config lives + substitution roots. */
@@ -865,14 +1390,15 @@ export interface Config {
865
1390
  stderrSummaryMaxChars?: number
866
1391
  }
867
1392
  ```
1393
+ <!-- END GENERATED config-catalog:@deepseek-ai/dsh-hooks-claude-code -->
868
1394
 
869
- Source: [`packages/hooks/hooks-claude-code/src/index.ts:44`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/hooks/hooks-claude-code/src/index.ts)
870
-
1395
+ <!-- BEGIN GENERATED config-catalog:@deepseek-ai/dsh-hooks-codex -->
871
1396
  <a id="deepseek-aidsh-hooks-codex"></a>
872
1397
 
873
1398
  ## `@deepseek-ai/dsh-hooks-codex`
874
1399
 
875
- Requires: `shell` · `sessionProjections`
1400
+ - `inject`: `shell` · `sessionProjections`
1401
+ - `source`: [`packages/hooks/hooks-codex/src/index.ts:50`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/hooks/hooks-codex/src/index.ts)
876
1402
 
877
1403
  ```ts config-catalog
878
1404
  /** Plugin config: where the Codex hooks.json lives + the model name for payloads. */
@@ -892,13 +1418,15 @@ export interface Config {
892
1418
  stderrSummaryMaxChars?: number
893
1419
  }
894
1420
  ```
1421
+ <!-- END GENERATED config-catalog:@deepseek-ai/dsh-hooks-codex -->
895
1422
 
896
- Source: [`packages/hooks/hooks-codex/src/index.ts:43`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/hooks/hooks-codex/src/index.ts)
897
-
1423
+ <!-- BEGIN GENERATED config-catalog:@deepseek-ai/dsh-host-directory-picker-browse -->
898
1424
  <a id="deepseek-aidsh-host-directory-picker-browse"></a>
899
1425
 
900
1426
  ## `@deepseek-ai/dsh-host-directory-picker-browse`
901
1427
 
1428
+ - `source`: [`packages/host/directory-picker-browse/src/index.ts:181`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/host/directory-picker-browse/src/index.ts)
1429
+
902
1430
  ```ts config-catalog
903
1431
  /** Validated plugin configuration. */
904
1432
  export interface Config {
@@ -906,14 +1434,15 @@ export interface Config {
906
1434
  maxEntries: number
907
1435
  }
908
1436
  ```
1437
+ <!-- END GENERATED config-catalog:@deepseek-ai/dsh-host-directory-picker-browse -->
909
1438
 
910
- Source: [`packages/host/directory-picker-browse/src/index.ts:181`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/host/directory-picker-browse/src/index.ts)
911
-
1439
+ <!-- BEGIN GENERATED config-catalog:@deepseek-ai/dsh-host-frontend-static -->
912
1440
  <a id="deepseek-aidsh-host-frontend-static"></a>
913
1441
 
914
1442
  ## `@deepseek-ai/dsh-host-frontend-static`
915
1443
 
916
- Requires: `webServer` · `connection`
1444
+ - `inject`: `webServer` · `connection`
1445
+ - `source`: [`packages/host/frontend-static/src/index.ts:30`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/host/frontend-static/src/index.ts)
917
1446
 
918
1447
  ```ts config-catalog
919
1448
  /** Plugin config: the dist anchor. */
@@ -922,14 +1451,15 @@ export interface Config {
922
1451
  distIndex: string
923
1452
  }
924
1453
  ```
1454
+ <!-- END GENERATED config-catalog:@deepseek-ai/dsh-host-frontend-static -->
925
1455
 
926
- Source: [`packages/host/frontend-static/src/index.ts:30`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/host/frontend-static/src/index.ts)
927
-
1456
+ <!-- BEGIN GENERATED config-catalog:@deepseek-ai/dsh-host-open-in-app -->
928
1457
  <a id="deepseek-aidsh-host-open-in-app"></a>
929
1458
 
930
1459
  ## `@deepseek-ai/dsh-host-open-in-app`
931
1460
 
932
- Requires: `webServer` · `connection` · `subprocess`
1461
+ - `inject`: `webServer` · `connection` · `subprocess`
1462
+ - `source`: [`packages/host/open-in-app/src/index.ts:50`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/host/open-in-app/src/index.ts)
933
1463
 
934
1464
  ```ts config-catalog
935
1465
  /** Open-in-app host configuration. */
@@ -953,13 +1483,52 @@ export interface Config {
953
1483
  readonly launchWatchMs: number
954
1484
  }
955
1485
  ```
1486
+ <!-- END GENERATED config-catalog:@deepseek-ai/dsh-host-open-in-app -->
1487
+
1488
+ <!-- BEGIN GENERATED config-catalog:@deepseek-ai/dsh-host-product-telemetry-otel -->
1489
+ <a id="deepseek-aidsh-host-product-telemetry-otel"></a>
956
1490
 
957
- Source: [`packages/host/open-in-app/src/index.ts:50`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/host/open-in-app/src/index.ts)
1491
+ ## `@deepseek-ai/dsh-host-product-telemetry-otel`
958
1492
 
1493
+ - `inject`: `otel`
1494
+ - `source`: [`packages/host/product-telemetry-otel/src/index.ts:18`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/host/product-telemetry-otel/src/index.ts)
1495
+
1496
+ ```ts config-catalog
1497
+ /** Collector routing, application identity, and bounded in-memory batch settings. */
1498
+ export interface Config {
1499
+ /** Full HTTP(S) logs URL. */
1500
+ endpoint: string
1501
+ /** Collector routing header. */
1502
+ channel: string
1503
+ /** Resource service.name supplied by the application composition. */
1504
+ serviceName: string
1505
+ /** Resource service.version supplied by the application composition. */
1506
+ serviceVersion: string
1507
+ /** Omit to honor OTEL_EXPORTER_OTLP_LOGS_COMPRESSION / OTEL_EXPORTER_OTLP_COMPRESSION. */
1508
+ compression?: 'none' | 'gzip'
1509
+ /** Maximum records per export; must not exceed maxQueueSize. */
1510
+ maxExportBatchSize: number
1511
+ /** Maximum queued records; the SDK drops new records when full. */
1512
+ maxQueueSize: number
1513
+ /** Delay before exporting a partial batch. */
1514
+ scheduledDelayMillis: number
1515
+ /** Exporter HTTP deadline, including SDK transient-error retries. */
1516
+ timeoutMillis: number
1517
+ /** Processor deadline for one batch export. */
1518
+ exportTimeoutMillis: number
1519
+ /** Drain deadline; expiry cancels pending exports before disposal completes. */
1520
+ shutdownTimeoutMillis: number
1521
+ }
1522
+ ```
1523
+ <!-- END GENERATED config-catalog:@deepseek-ai/dsh-host-product-telemetry-otel -->
1524
+
1525
+ <!-- BEGIN GENERATED config-catalog:@deepseek-ai/dsh-host-webserver -->
959
1526
  <a id="deepseek-aidsh-host-webserver"></a>
960
1527
 
961
1528
  ## `@deepseek-ai/dsh-host-webserver`
962
1529
 
1530
+ - `source`: [`packages/host/webserver/src/index.ts:59`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/host/webserver/src/index.ts)
1531
+
963
1532
  ```ts config-catalog
964
1533
  /** Web server listen and response-compression config. */
965
1534
  export interface Config {
@@ -975,31 +1544,15 @@ export interface Config {
975
1544
  compressionThresholdBytes?: number
976
1545
  }
977
1546
  ```
1547
+ <!-- END GENERATED config-catalog:@deepseek-ai/dsh-host-webserver -->
978
1548
 
979
- Source: [`packages/host/webserver/src/index.ts:59`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/host/webserver/src/index.ts)
980
-
981
- <a id="deepseek-aidsh-invariants"></a>
982
-
983
- ## `@deepseek-ai/dsh-invariants`
984
-
985
- ```ts config-catalog
986
- /** Runtime invariant selection configured on the service plugin. */
987
- export interface Config {
988
- /** Global switch; defaults to `true`. */
989
- readonly enabled?: boolean
990
- /** Case-sensitive JavaScript regex sources that admit package names; empty admits all. */
991
- readonly package_allowlist?: string[]
992
- /** Case-sensitive JavaScript regex sources that exclude package names after allowlist matching. */
993
- readonly package_blocklist?: string[]
994
- }
995
- ```
996
-
997
- Source: [`packages/runtime-diagnostics/invariants/src/index.ts:15`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/runtime-diagnostics/invariants/src/index.ts)
998
-
1549
+ <!-- BEGIN GENERATED config-catalog:@deepseek-ai/dsh-jobs-local -->
999
1550
  <a id="deepseek-aidsh-jobs-local"></a>
1000
1551
 
1001
1552
  ## `@deepseek-ai/dsh-jobs-local`
1002
1553
 
1554
+ - `source`: [`packages/jobs/jobs-local/src/index.ts:45`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/jobs/jobs-local/src/index.ts)
1555
+
1003
1556
  ```ts config-catalog
1004
1557
  /** Configuration for the process-local job registry. */
1005
1558
  export interface Config {
@@ -1008,103 +1561,61 @@ export interface Config {
1008
1561
  * omission defaults to 10.
1009
1562
  */
1010
1563
  maxConcurrentJobsPerOwner?: number
1564
+ /** Live ring retention per job in UTF-8 bytes; omission defaults to 262144. */
1565
+ retainBytes?: number
1566
+ /**
1567
+ * Ring retention kept after a job settles, in UTF-8 bytes; omission defaults to 16384.
1568
+ * Settlement keeps every byte the model cursor has not consumed on top of
1569
+ * this cap; the first terminal model read then trims to it.
1570
+ */
1571
+ settledRetainBytes?: number
1572
+ /** Poll interval for a job's pull sources, in milliseconds; omission defaults to 150. */
1573
+ pumpPollMs?: number
1011
1574
  }
1012
1575
  ```
1576
+ <!-- END GENERATED config-catalog:@deepseek-ai/dsh-jobs-local -->
1577
+
1578
+ <!-- BEGIN GENERATED config-catalog:@deepseek-ai/dsh-llm-deepseek-account -->
1579
+ <a id="deepseek-aidsh-llm-deepseek-account"></a>
1580
+
1581
+ ## `@deepseek-ai/dsh-llm-deepseek-account`
1582
+
1583
+ - `inject`: `llm`
1584
+ - `refs`: [`ProtocolConfig`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/llm/llm-deepseek/src/index.ts)
1585
+ - `source`: [`packages/llm/llm-deepseek-account/src/config.ts:5`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/llm/llm-deepseek-account/src/config.ts)
1586
+
1587
+ ```ts config-catalog
1588
+ /** Account route configuration; authentication comes exclusively from the account service. */
1589
+ export type Config = ProtocolConfig
1590
+ ```
1591
+ <!-- END GENERATED config-catalog:@deepseek-ai/dsh-llm-deepseek-account -->
1013
1592
 
1014
- Source: [`packages/jobs/jobs-local/src/index.ts:31`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/jobs/jobs-local/src/index.ts)
1593
+ <!-- BEGIN GENERATED config-catalog:@deepseek-ai/dsh-llm-deepseek-api-key -->
1594
+ <a id="deepseek-aidsh-llm-deepseek-api-key"></a>
1015
1595
 
1016
- <a id="deepseek-aidsh-llm-deepseek"></a>
1596
+ ## `@deepseek-ai/dsh-llm-deepseek-api-key`
1017
1597
 
1018
- ## `@deepseek-ai/dsh-llm-deepseek`
1019
-
1020
- Requires: `llm`
1598
+ - `inject`: `llm`
1599
+ - `refs`: [`ProtocolConfig`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/llm/llm-deepseek/src/index.ts) · `Volatile` (`@deepseek-ai/cordis`)
1600
+ - `source`: [`packages/llm/llm-deepseek-api-key/src/config.ts:10`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/llm/llm-deepseek-api-key/src/config.ts)
1021
1601
 
1022
1602
  ```ts config-catalog
1023
- /**
1024
- * Plugin config, validated by the same-named schemastery schema and doubling
1025
- * as the `llm-deepseek` settings-section shape. Every field is optional in
1026
- * yml: a missing API key resolves through {@link Config.apiKeyEnv} at each
1027
- * request (a request without any key fails with `MISSING_CREDENTIAL`, not at
1028
- * plugin load), omitted thinking mode uses the provider default, and omitted
1029
- * reasoning effort resolves to `high`.
1030
- */
1031
- export interface Config {
1032
- /** Credential reference (environment-variable name) resolved per request; defaults to `DEEPSEEK_API_KEY`. */
1033
- apiKeyEnv?: string
1034
- /** Endpoint base; falls back to $DEEPSEEK_BASE_URL from a trusted environment layer, then the public API. */
1035
- baseURL?: string
1036
- /** Deployment thinking policy; `disabled` limits every conversation request to `off`. */
1037
- thinking?: 'enabled' | 'disabled'
1038
- /** Default thinking effort (default `high`); `off` disables thinking per request. */
1039
- reasoningEffort?: 'off' | 'low' | 'high' | 'max'
1040
- /** Default per-request output cap (default 256,000); a model's own cap and explicit request values win. */
1041
- maxTokens?: number
1042
- /** Positive context capacity used when the selected model has no exact value (default 1,000,000). */
1043
- defaultContextWindow?: number
1044
- /** Advisory models shown by discovery consumers; defaults to V41 Flash, V4 Flash, V4 Pro, and V4 Flash Vision Exp. */
1045
- models?: DeepSeekCatalogModel[]
1046
- /** Maximum provider idle time while one stream read is outstanding (default five minutes). */
1047
- streamIdleTimeoutMs?: number
1048
- /** Maximum accumulated file-referenced image bytes per chat request (default 128 MiB). */
1049
- maxRequestFilesBytes?: number
1050
- /** Maximum accumulated base64 image payload after Files API fallback (default 20 MiB). */
1051
- maxInlineRequestImageBytes?: number
1052
- /** Maximum number of represented images per chat request (default 600). */
1053
- maxImagesPerRequest?: number
1054
- /** Raw-byte removal step after the request exceeds its file bound (default 64 MiB). */
1055
- imageOffloadByteQuantum?: number
1056
- /** Base64-byte removal step after inline fallback exceeds its bound (default 10 MiB). */
1057
- inlineImageOffloadByteQuantum?: number
1058
- /** Image-count removal step after the request exceeds its count bound (default 20). */
1059
- imageOffloadCountQuantum?: number
1060
- /** Maximum duration of one request-image Files API resolution (default one minute). */
1061
- filesApiTimeoutMs?: number
1062
- /** Explicit lifetime assigned to each uploaded image (default seven days). */
1063
- fileExpiresAfterSeconds?: number
1064
- /** Remaining lifetime below which an indexed file is replaced (default one hour). */
1065
- fileRefreshMarginSeconds?: number
1066
- /** Oldest harness-owned files deleted before one quota-recovery upload retry (default 100). */
1067
- fileQuotaCleanupBatch?: number
1068
- /** Provider-owned model-request retry policy; omission uses normal mode with five retries. */
1069
- retryPolicy?: RetryPolicyConfig
1070
- }
1071
-
1072
- /** One optional model entry advertised by the direct-fetch adapter. */
1073
- export interface DeepSeekCatalogModel {
1074
- /** Wire model id accepted by the configured endpoint. */
1075
- id: string
1076
- /** Selector label; defaults to {@link id}. */
1077
- name?: string
1078
- /** Optional selector detail for deployments with similar model variants. */
1079
- description?: string
1080
- /** Known combined request/response context capacity; omitted when deployment metadata is unavailable. */
1081
- contextWindow?: number
1082
- /** Per-request output cap for this model; omission falls back to the profile's {@link DeepSeekConnectionOptions.maxTokens}. */
1083
- maxTokens?: number
1084
- /** Accepted request modalities; omission is text-only. */
1085
- inputModalities?: ModelModality[]
1086
- /** Total-pixel budget for one deterministic request preview, or the 512-by-512 `low` preset. */
1087
- imagePixelBudget?: number | 'low'
1088
- /** Encoded-byte target for one deterministic request preview; the smallest quality-ladder output is used when no quality fits. */
1089
- imageMaxBytes?: number
1090
- /**
1091
- * `'in-history'` declares that the endpoint reads the latest `system`
1092
- * message at any position of the conversation as the complete effective
1093
- * system prompt; omission means only a leading system message is read.
1094
- */
1095
- systemPromptUpdate?: SystemPromptUpdate
1603
+ /** Messages configuration with a per-request API-key reference. */
1604
+ export interface Config extends ProtocolConfig {
1605
+ /** Credential reference resolved per request; defaults to DEEPSEEK_API_KEY. */
1606
+ apiKeyEnv: Volatile<string>
1096
1607
  }
1097
1608
  ```
1609
+ <!-- END GENERATED config-catalog:@deepseek-ai/dsh-llm-deepseek-api-key -->
1098
1610
 
1099
- Depends on: [`ModelModality`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/llm/llm/src/index.ts) · [`RetryPolicyConfig`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/llm/llm/src/index.ts) · [`SystemPromptUpdate`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/llm/llm/src/index.ts)
1100
-
1101
- Source: [`packages/llm/llm-deepseek/src/index.ts:134`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/llm/llm-deepseek/src/index.ts)
1102
-
1611
+ <!-- BEGIN GENERATED config-catalog:@deepseek-ai/dsh-llm-pi-ai -->
1103
1612
  <a id="deepseek-aidsh-llm-pi-ai"></a>
1104
1613
 
1105
1614
  ## `@deepseek-ai/dsh-llm-pi-ai`
1106
1615
 
1107
- Requires: `llm`
1616
+ - `inject`: `llm`
1617
+ - `refs`: `Api` (`@earendil-works/pi-ai`) · `CacheRetention` (`@earendil-works/pi-ai`) · `Model` (`@earendil-works/pi-ai`) · `ModelThinkingLevel` (`@earendil-works/pi-ai`) · `OpenAICompletionsCompat` (`@earendil-works/pi-ai`) · [`RetryPolicyConfig`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/llm/llm/src/index.ts) · `ThinkingBudgets` (`@earendil-works/pi-ai`) · `Transport` (`@earendil-works/pi-ai`) · `Volatile` (`@deepseek-ai/cordis`)
1618
+ - `source`: [`packages/llm/llm-pi-ai/src/config.ts:222`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/llm/llm-pi-ai/src/config.ts)
1108
1619
 
1109
1620
  ```ts config-catalog
1110
1621
  /** Plugin configuration: the provider routes this instance owns. */
@@ -1114,7 +1625,7 @@ export interface Config {
1114
1625
  * the dormant settings-driven posture: the adapter mounts with no routes
1115
1626
  * and registers them the moment a settings section supplies profiles.
1116
1627
  */
1117
- providers?: Record<string, PiAiProviderProfile>
1628
+ providers: Volatile<Record<string, PiAiProviderProfile>>
1118
1629
  }
1119
1630
 
1120
1631
  /** Configuration for one pi-ai provider route; the `providers` dict key IS the route. */
@@ -1370,16 +1881,16 @@ export type PiAiThinkingFormat = NonNullable<OpenAICompletionsCompat['thinkingFo
1370
1881
  /** The reasoning-budget field spellings pi-ai accepts. */
1371
1882
  export type PiAiThinkingTokenBudgetField = NonNullable<OpenAICompletionsCompat['thinkingTokenBudgetField']>
1372
1883
  ```
1884
+ <!-- END GENERATED config-catalog:@deepseek-ai/dsh-llm-pi-ai -->
1373
1885
 
1374
- Depends on: `Api` (`@earendil-works/pi-ai`) · `CacheRetention` (`@earendil-works/pi-ai`) · `Model` (`@earendil-works/pi-ai`) · `ModelThinkingLevel` (`@earendil-works/pi-ai`) · `OpenAICompletionsCompat` (`@earendil-works/pi-ai`) · [`RetryPolicyConfig`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/llm/llm/src/index.ts) · `ThinkingBudgets` (`@earendil-works/pi-ai`) · `Transport` (`@earendil-works/pi-ai`)
1375
-
1376
- Source: [`packages/llm/llm-pi-ai/src/config.ts:221`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/llm/llm-pi-ai/src/config.ts)
1377
-
1886
+ <!-- BEGIN GENERATED config-catalog:@deepseek-ai/dsh-llm-replay -->
1378
1887
  <a id="deepseek-aidsh-llm-replay"></a>
1379
1888
 
1380
1889
  ## `@deepseek-ai/dsh-llm-replay`
1381
1890
 
1382
- Requires: `llm`
1891
+ - `inject`: `llm`
1892
+ - `refs`: [`ModelModality`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/llm/llm/src/index.ts) · [`RetryPolicyConfig`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/llm/llm/src/index.ts) · [`SystemPromptUpdate`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/llm/llm/src/index.ts) · [`ToolUpdate`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/llm/llm/src/index.ts)
1893
+ - `source`: [`packages/test-support/llm-replay/src/index.ts:1129`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/test-support/llm-replay/src/index.ts)
1383
1894
 
1384
1895
  ```ts config-catalog
1385
1896
  /** Plugin config: the {@link ReplayConfig} inputs, each defaulting to its `DSH_SNAPSHOT_*` env var in `apply`. */
@@ -1447,31 +1958,33 @@ export interface ReplayModelConfig {
1447
1958
  defaultReasoningEffort?: string
1448
1959
  /** Optional in-history system prompt replacement for a keyless replay route. */
1449
1960
  systemPromptUpdate?: SystemPromptUpdate
1961
+ /** Optional mid-conversation tool declaration mode for a keyless replay route. */
1962
+ toolUpdate?: ToolUpdate
1450
1963
  }
1451
1964
  ```
1965
+ <!-- END GENERATED config-catalog:@deepseek-ai/dsh-llm-replay -->
1452
1966
 
1453
- Depends on: [`ModelModality`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/llm/llm/src/index.ts) · [`RetryPolicyConfig`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/llm/llm/src/index.ts) · [`SystemPromptUpdate`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/llm/llm/src/index.ts)
1454
-
1455
- Source: [`packages/test-support/llm-replay/src/index.ts:1123`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/test-support/llm-replay/src/index.ts)
1456
-
1967
+ <!-- BEGIN GENERATED config-catalog:@deepseek-ai/dsh-llm-retry -->
1457
1968
  <a id="deepseek-aidsh-llm-retry"></a>
1458
1969
 
1459
1970
  ## `@deepseek-ai/dsh-llm-retry`
1460
1971
 
1461
- Requires: `agents` · `sessionProjections`
1972
+ - `inject`: `agents` · `sessionProjections`
1973
+ - `source`: [`packages/llm/llm-retry/src/index.ts:25`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/llm/llm-retry/src/index.ts)
1462
1974
 
1463
1975
  ```ts config-catalog
1464
1976
  /** This policy executor has no config; providers own `retryPolicy`. */
1465
1977
  export type Config = Readonly<Record<string, never>>
1466
1978
  ```
1979
+ <!-- END GENERATED config-catalog:@deepseek-ai/dsh-llm-retry -->
1467
1980
 
1468
- Source: [`packages/llm/llm-retry/src/index.ts:25`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/llm/llm-retry/src/index.ts)
1469
-
1981
+ <!-- BEGIN GENERATED config-catalog:@deepseek-ai/dsh-lsp-stdio -->
1470
1982
  <a id="deepseek-aidsh-lsp-stdio"></a>
1471
1983
 
1472
1984
  ## `@deepseek-ai/dsh-lsp-stdio`
1473
1985
 
1474
- Requires: `fs` · `lsp` · `subprocess`
1986
+ - `inject`: `fs` · `lsp` · `subprocess`
1987
+ - `source`: [`packages/lsp/lsp-stdio/src/index.ts:82`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/lsp/lsp-stdio/src/index.ts)
1475
1988
 
1476
1989
  ```ts config-catalog
1477
1990
  /** Plugin configuration: provider id → local language-server configuration. */
@@ -1506,14 +2019,15 @@ export interface LspLocalServerConfig {
1506
2019
  killGraceMs?: number
1507
2020
  }
1508
2021
  ```
2022
+ <!-- END GENERATED config-catalog:@deepseek-ai/dsh-lsp-stdio -->
1509
2023
 
1510
- Source: [`packages/lsp/lsp-stdio/src/index.ts:82`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/lsp/lsp-stdio/src/index.ts)
1511
-
2024
+ <!-- BEGIN GENERATED config-catalog:@deepseek-ai/dsh-mcp-client -->
1512
2025
  <a id="deepseek-aidsh-mcp-client"></a>
1513
2026
 
1514
2027
  ## `@deepseek-ai/dsh-mcp-client`
1515
2028
 
1516
- Requires: `tools`
2029
+ - `inject`: `tools`
2030
+ - `source`: [`packages/mcp/mcp-client/src/index.ts:104`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/mcp/mcp-client/src/index.ts)
1517
2031
 
1518
2032
  ```ts config-catalog
1519
2033
  /** Configuration for one stdio or Streamable HTTP MCP server. */
@@ -1537,10 +2051,12 @@ export interface StdioConfig {
1537
2051
  env: Record<string, string>
1538
2052
  /** Working directory for the child process. */
1539
2053
  cwd: string
1540
- /** Per-tool-call timeout in milliseconds. */
2054
+ /** Timeout per tool call or resource request in milliseconds. */
1541
2055
  toolCallTimeoutMs: number
1542
2056
  /** Fail plugin activation when the initial connection or tool synchronization fails. */
1543
2057
  failOnStartupError: boolean
2058
+ /** Maximum UTF-8 bytes of attributed server instructions (default 32768). */
2059
+ maxInstructionBytes?: number
1544
2060
  /** Automatic reconnect policy after a lost connection; omission uses the defaults. */
1545
2061
  reconnect?: ReconnectConfig
1546
2062
  }
@@ -1559,10 +2075,12 @@ export interface StreamableHttpConfig {
1559
2075
  url: string
1560
2076
  /** Additional headers attached to MCP requests. */
1561
2077
  headers: Record<string, string>
1562
- /** Per-tool-call timeout in milliseconds. */
2078
+ /** Timeout per tool call or resource request in milliseconds. */
1563
2079
  toolCallTimeoutMs: number
1564
2080
  /** Fail plugin activation when the initial connection or tool synchronization fails. */
1565
2081
  failOnStartupError: boolean
2082
+ /** Maximum UTF-8 bytes of attributed server instructions (default 32768). */
2083
+ maxInstructionBytes?: number
1566
2084
  /** Automatic reconnect policy after a lost connection; omission uses the defaults. */
1567
2085
  reconnect?: ReconnectConfig
1568
2086
  }
@@ -1579,14 +2097,15 @@ export interface ReconnectConfig {
1579
2097
  maxAttempts?: number
1580
2098
  }
1581
2099
  ```
2100
+ <!-- END GENERATED config-catalog:@deepseek-ai/dsh-mcp-client -->
1582
2101
 
1583
- Source: [`packages/mcp/mcp-client/src/index.ts:98`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/mcp/mcp-client/src/index.ts)
1584
-
2102
+ <!-- BEGIN GENERATED config-catalog:@deepseek-ai/dsh-message-feedback -->
1585
2103
  <a id="deepseek-aidsh-message-feedback"></a>
1586
2104
 
1587
2105
  ## `@deepseek-ai/dsh-message-feedback`
1588
2106
 
1589
- Requires: `sessionPersistence` · `sessions`
2107
+ - `inject`: `sessionPersistence` · `sessions`
2108
+ - `source`: [`packages/feedback/message-feedback/src/index.ts:40`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/feedback/message-feedback/src/index.ts)
1590
2109
 
1591
2110
  ```ts config-catalog
1592
2111
  /** Required deployment policy for optional notes. */
@@ -1595,14 +2114,68 @@ export interface Config {
1595
2114
  readonly maxNoteBytes: number
1596
2115
  }
1597
2116
  ```
2117
+ <!-- END GENERATED config-catalog:@deepseek-ai/dsh-message-feedback -->
2118
+
2119
+ <!-- BEGIN GENERATED config-catalog:@deepseek-ai/dsh-office-to-pdf -->
2120
+ <a id="deepseek-aidsh-office-to-pdf"></a>
1598
2121
 
1599
- Source: [`packages/feedback/message-feedback/src/index.ts:40`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/feedback/message-feedback/src/index.ts)
2122
+ ## `@deepseek-ai/dsh-office-to-pdf`
1600
2123
 
2124
+ - `source`: [`packages/document/office-to-pdf/src/index.ts:31`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/document/office-to-pdf/src/index.ts)
2125
+
2126
+ ```ts config-catalog
2127
+ /** Provider concurrency and kit rendering/font configuration. */
2128
+ export interface Config {
2129
+ /** Maximum simultaneous conversions; queued callers remain cancellable. */
2130
+ maxConcurrentConversions: number
2131
+ /** Maximum metadata-only jobs awaiting source admission. */
2132
+ maxQueuedJobs: number
2133
+ /** Maximum outstanding conversion readers. */
2134
+ maxReaders: number
2135
+ /** Maximum reserved bytes across admitted source reads and conversions. */
2136
+ maxSourceBytes: number
2137
+ /** Maximum concurrent background jobs; zero refuses speculative work. */
2138
+ maxBackgroundConversions: number
2139
+ /** Maximum retained content-addressed PDFs. */
2140
+ maxCachedEntries: number
2141
+ /** Maximum retained PDF bytes. */
2142
+ maxCachedBytes: number
2143
+ /** Maximum retained source-version aliases to cached content. */
2144
+ maxSourceEntries: number
2145
+ /** Conversion deadline in milliseconds; excludes the DSH queue. */
2146
+ timeoutMs: number
2147
+ /** Maximum authorized source bytes. */
2148
+ maxInputBytes: number
2149
+ /** Maximum complete PDF bytes. */
2150
+ maxOutputBytes: number
2151
+ /** Exported raster-image DPI. */
2152
+ maxImageResolution: number
2153
+ /** Maximum OOXML ZIP entries. */
2154
+ maxArchiveEntries: number
2155
+ /** Maximum total declared uncompressed OOXML bytes. */
2156
+ maxUncompressedBytes: number
2157
+ /** Absolute font roots; omission uses the kit's platform defaults. */
2158
+ fontDirectories?: string[]
2159
+ /** Ordered font-family preference groups; omission retains the kit defaults. */
2160
+ fontFallbacks?: string[][]
2161
+ /** Maximum physical font files indexed by each converter. */
2162
+ maxFontFiles: number
2163
+ /** Maximum individual font-file bytes. */
2164
+ maxFontFileBytes: number
2165
+ /** Maximum original font bytes loaded for a conversion. */
2166
+ maxLoadedFontBytes: number
2167
+ }
2168
+ ```
2169
+ <!-- END GENERATED config-catalog:@deepseek-ai/dsh-office-to-pdf -->
2170
+
2171
+ <!-- BEGIN GENERATED config-catalog:@deepseek-ai/dsh-permission-presets -->
1601
2172
  <a id="deepseek-aidsh-permission-presets"></a>
1602
2173
 
1603
2174
  ## `@deepseek-ai/dsh-permission-presets`
1604
2175
 
1605
- Requires: `shell` · `approval` · `sessions` · `sessionProjections`
2176
+ - `inject`: `shell` · `approval` · `sessions` · `sessionProjections`
2177
+ - `refs`: [`ApprovalPolicy`](./subsystems/approval.md) · [`SandboxMode`](./subsystems/sandbox.md) · `Volatile` (`@deepseek-ai/cordis`)
2178
+ - `source`: [`packages/interaction/permission-presets/src/index.ts:159`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/interaction/permission-presets/src/index.ts)
1606
2179
 
1607
2180
  ```ts config-catalog
1608
2181
  /** The {@link PermissionPresetService} config: preset table and composition default. */
@@ -1610,14 +2183,15 @@ export interface Config {
1610
2183
  /**
1611
2184
  * The preset table: name → knob bundle. Defaults to `workspace-write`
1612
2185
  * (workspace-write + ask) and `danger-full-access` (danger-full-access +
1613
- * never). The name `custom` is reserved for the derived not-a-preset state.
2186
+ * never). The names `custom` and `auto` are reserved for derived state and
2187
+ * the Auto review integration respectively.
1614
2188
  */
1615
- presets?: Record<string, PresetSpec>
2189
+ presets: Record<string, PresetSpec>
1616
2190
  /**
1617
2191
  * Default for new sessions. When omitted, the preset matching the composed
1618
2192
  * sandbox and approval defaults is used.
1619
2193
  */
1620
- defaultPreset?: string
2194
+ defaultPreset: Volatile<string | undefined>
1621
2195
  }
1622
2196
 
1623
2197
  /** One preset's sandbox/approval bundle and optional client presentation. */
@@ -1632,16 +2206,15 @@ export interface PresetSpec {
1632
2206
  description?: string
1633
2207
  }
1634
2208
  ```
2209
+ <!-- END GENERATED config-catalog:@deepseek-ai/dsh-permission-presets -->
1635
2210
 
1636
- Depends on: [`ApprovalPolicy`](./subsystems/approval.md) · [`SandboxMode`](./subsystems/sandbox.md)
1637
-
1638
- Source: [`packages/interaction/permission-presets/src/index.ts:143`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/interaction/permission-presets/src/index.ts)
1639
-
2211
+ <!-- BEGIN GENERATED config-catalog:@deepseek-ai/dsh-persona -->
1640
2212
  <a id="deepseek-aidsh-persona"></a>
1641
2213
 
1642
2214
  ## `@deepseek-ai/dsh-persona`
1643
2215
 
1644
- Requires: `systemPrompt`
2216
+ - `inject`: `systemPrompt`
2217
+ - `source`: [`packages/preset/persona/src/index.ts:30`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/preset/persona/src/index.ts)
1645
2218
 
1646
2219
  ```ts config-catalog
1647
2220
  /** Plugin config: the persona text this composition contributes. */
@@ -1663,14 +2236,15 @@ export interface Config {
1663
2236
  includeRuntimeContext?: boolean
1664
2237
  }
1665
2238
  ```
2239
+ <!-- END GENERATED config-catalog:@deepseek-ai/dsh-persona -->
1666
2240
 
1667
- Source: [`packages/preset/persona/src/index.ts:30`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/preset/persona/src/index.ts)
1668
-
2241
+ <!-- BEGIN GENERATED config-catalog:@deepseek-ai/dsh-plan-mode -->
1669
2242
  <a id="deepseek-aidsh-plan-mode"></a>
1670
2243
 
1671
2244
  ## `@deepseek-ai/dsh-plan-mode`
1672
2245
 
1673
- Requires: `tools` · `systemPrompt` · `sessionProjections`
2246
+ - `inject`: `tools` · `systemPrompt` · `sessionProjections`
2247
+ - `source`: [`packages/plan/plan-mode/src/index.ts:69`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/plan/plan-mode/src/index.ts)
1674
2248
 
1675
2249
  ```ts config-catalog
1676
2250
  /** Deployment-owned plan guidance. */
@@ -1679,14 +2253,50 @@ export interface PlanModeConfig {
1679
2253
  section: string
1680
2254
  }
1681
2255
  ```
2256
+ <!-- END GENERATED config-catalog:@deepseek-ai/dsh-plan-mode -->
2257
+
2258
+ <!-- BEGIN GENERATED config-catalog:@deepseek-ai/dsh-plugin-manager -->
2259
+ <a id="deepseek-aidsh-plugin-manager"></a>
2260
+
2261
+ ## `@deepseek-ai/dsh-plugin-manager`
2262
+
2263
+ - `inject`: `loader` · `profileContext`
2264
+ - `source`: [`packages/boot/plugin-manager/src/index.ts:40`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/boot/plugin-manager/src/index.ts)
1682
2265
 
1683
- Source: [`packages/plan/plan-mode/src/index.ts:63`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/plan/plan-mode/src/index.ts)
2266
+ ```ts config-catalog
2267
+ /** The pnpm executable, registries, and limits for diagnostics, lookups and connection checks. */
2268
+ export interface Config {
2269
+ /** The pnpm executable name or path; resolved through `PATH` like the `dsh plugin` command. */
2270
+ pnpmCommand?: string
2271
+ /** Maximum retained package-operation diagnostic bytes. */
2272
+ outputBytes?: number
2273
+ /** Maximum time to wait for another process's profile package operation. */
2274
+ lockWaitMs?: number
2275
+ /** Bound on one registry lookup an inspection runs, in milliseconds. */
2276
+ inspectTimeoutMs?: number
2277
+ /** Maximum duration of the GitHub repository connection check before installation, in milliseconds. */
2278
+ githubConnectionTimeoutMs?: number
2279
+ /** Maximum time one captured package run may print nothing before the manager terminates it, in milliseconds. */
2280
+ idleTimeoutMs?: number
2281
+ /** The registry lookups and installations ask first, as an http(s) URL; absent, the one pnpm's own configuration names. */
2282
+ registry?: string
2283
+ /**
2284
+ * Registries asked in turn, as http(s) URLs, while the one before is unreachable or holds no copy of the package.
2285
+ * A registry outside this set and `registry` is asked alone, and so is the one pnpm's own configuration names
2286
+ * unless that is npm's own registry or one of these.
2287
+ */
2288
+ fallbackRegistries?: string[]
2289
+ }
2290
+ ```
2291
+ <!-- END GENERATED config-catalog:@deepseek-ai/dsh-plugin-manager -->
1684
2292
 
2293
+ <!-- BEGIN GENERATED config-catalog:@deepseek-ai/dsh-plugin-package-inventory-deepseek -->
1685
2294
  <a id="deepseek-aidsh-plugin-package-inventory-deepseek"></a>
1686
2295
 
1687
2296
  ## `@deepseek-ai/dsh-plugin-package-inventory-deepseek`
1688
2297
 
1689
- Requires: `agents` · `deepseekLlmApiExtensions` · `loader`
2298
+ - `inject`: `agents` · `deepseekLlmApiExtensions` · `loader`
2299
+ - `source`: [`packages/llm/plugin-package-inventory-deepseek/src/index.ts:32`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/llm/plugin-package-inventory-deepseek/src/index.ts)
1690
2300
 
1691
2301
  ```ts config-catalog
1692
2302
  /** Plugin-package request contribution configuration. */
@@ -1695,47 +2305,88 @@ export interface Config {
1695
2305
  enabled?: boolean
1696
2306
  }
1697
2307
  ```
2308
+ <!-- END GENERATED config-catalog:@deepseek-ai/dsh-plugin-package-inventory-deepseek -->
2309
+
2310
+ <!-- BEGIN GENERATED config-catalog:@deepseek-ai/dsh-ptc-runtime-node -->
2311
+ <a id="deepseek-aidsh-ptc-runtime-node"></a>
2312
+
2313
+ ## `@deepseek-ai/dsh-ptc-runtime-node`
2314
+
2315
+ - `inject`: `fs` · `subprocess` · `sandbox` · `sandboxPolicy`
2316
+ - `source`: [`packages/ptc-runtime/ptc-runtime-node/src/index.ts:26`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/ptc-runtime/ptc-runtime-node/src/index.ts)
2317
+
2318
+ ```ts config-catalog
2319
+ /** Deployment-varying runtime bounds and launch choices. */
2320
+ export interface Config extends LaunchConfig {
2321
+ /** Default elapsed deadline, including nested tool and approval waits. */
2322
+ timeoutMs?: number
2323
+ /** Maximum numeric elapsed budget accepted by resolve. */
2324
+ maxTimeoutMs?: number
2325
+ /** Combined serialized logs, completion and diagnostic byte cap. */
2326
+ maxOutputBytes?: number
2327
+ /** V8 old-generation heap limit in MiB; native allocations are excluded. */
2328
+ maxOldGenerationSizeMb?: number
2329
+ /** Maximum control frame, outstanding argument and queued control-output bytes. */
2330
+ maxMessageBytes?: number
2331
+ /** Maximum simultaneous host binding calls accepted from a program. */
2332
+ maxPendingCalls?: number
2333
+ /** Managed process termination and output-drain grace in milliseconds. */
2334
+ graceMs?: number
2335
+ }
1698
2336
 
1699
- Source: [`packages/llm/plugin-package-inventory-deepseek/src/index.ts:31`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/llm/plugin-package-inventory-deepseek/src/index.ts)
2337
+ /** Deployment-owned Node executable and optional preinstalled built bootstrap. */
2338
+ export interface LaunchConfig {
2339
+ /** Executable in the subprocess world; defaults to the current Node executable. */
2340
+ nodeExecutable?: string
2341
+ /** Absolute preinstalled built bootstrap in the execution world. */
2342
+ bootstrapPath?: string
2343
+ }
2344
+ ```
2345
+ <!-- END GENERATED config-catalog:@deepseek-ai/dsh-ptc-runtime-node -->
1700
2346
 
2347
+ <!-- BEGIN GENERATED config-catalog:@deepseek-ai/dsh-pwsh-local -->
1701
2348
  <a id="deepseek-aidsh-pwsh-local"></a>
1702
2349
 
1703
2350
  ## `@deepseek-ai/dsh-pwsh-local`
1704
2351
 
1705
- Requires: `subprocess`
2352
+ - `inject`: `subprocess`
2353
+ - `refs`: `Volatile` (`@deepseek-ai/cordis`)
2354
+ - `source`: [`packages/shell/pwsh-local/src/index.ts:58`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/shell/pwsh-local/src/index.ts)
1706
2355
 
1707
2356
  ```ts config-catalog
1708
- /** Plugin config (all optional — `static Config` supplies the defaults). */
2357
+ /** Validated plugin configuration with live command budgets. */
1709
2358
  export interface Config {
1710
2359
  /** Default working directory for commands (default: process.cwd()). */
1711
- cwd?: string
2360
+ cwd: Volatile<string | undefined>
1712
2361
  /** Default foreground timeout in milliseconds. */
1713
- timeoutMs?: number
2362
+ timeoutMs: Volatile<number>
1714
2363
  /** Upper bound for per-call timeout overrides. */
1715
- maxTimeoutMs?: number
2364
+ maxTimeoutMs: Volatile<number>
1716
2365
  /** Per-stream in-memory output cap; overflow spills to a temp file. */
1717
- maxOutputBytes?: number
2366
+ maxOutputBytes: Volatile<number>
1718
2367
  /** Per-stream spill-file cap; larger streams retain only their in-memory tail. */
1719
- maxSpillBytes?: number
2368
+ maxSpillBytes: Volatile<number>
1720
2369
  /** Grace period for kill escalation and inherited pipes; at most `MAX_TIMER_DELAY_MS`. */
1721
- graceMs?: number
2370
+ graceMs: Volatile<number>
1722
2371
  /**
1723
2372
  * Explicit pwsh executable. When omitted, well-known Windows install
1724
2373
  * locations and PATH entries are probed in order (PowerShell 7 install,
1725
2374
  * PATH entries such as the Microsoft Store install, then Windows
1726
2375
  * PowerShell 5.1), falling back to a bare `pwsh` resolved through PATH.
1727
2376
  */
1728
- pwshPath?: string
2377
+ pwshPath: Volatile<string | undefined>
1729
2378
  }
1730
2379
  ```
2380
+ <!-- END GENERATED config-catalog:@deepseek-ai/dsh-pwsh-local -->
1731
2381
 
1732
- Source: [`packages/shell/pwsh-local/src/index.ts:58`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/shell/pwsh-local/src/index.ts)
1733
-
2382
+ <!-- BEGIN GENERATED config-catalog:@deepseek-ai/dsh-pwsh-sandbox -->
1734
2383
  <a id="deepseek-aidsh-pwsh-sandbox"></a>
1735
2384
 
1736
2385
  ## `@deepseek-ai/dsh-pwsh-sandbox`
1737
2386
 
1738
- Requires: `subprocess` · `sandbox` · `sandboxPolicy`
2387
+ - `inject`: `subprocess` · `sandbox` · `sandboxPolicy`
2388
+ - `refs`: [`LocalConfig`](#deepseek-aidsh-pwsh-local)
2389
+ - `source`: [`packages/shell/pwsh-sandbox/src/index.ts:40`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/shell/pwsh-sandbox/src/index.ts)
1739
2390
 
1740
2391
  ```ts config-catalog
1741
2392
  /**
@@ -1748,15 +2399,15 @@ Requires: `subprocess` · `sandbox` · `sandboxPolicy`
1748
2399
  */
1749
2400
  export type Config = LocalConfig
1750
2401
  ```
2402
+ <!-- END GENERATED config-catalog:@deepseek-ai/dsh-pwsh-sandbox -->
1751
2403
 
1752
- Depends on: [`LocalConfig`](#deepseek-aidsh-pwsh-local)
1753
-
1754
- Source: [`packages/shell/pwsh-sandbox/src/index.ts:40`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/shell/pwsh-sandbox/src/index.ts)
1755
-
2404
+ <!-- BEGIN GENERATED config-catalog:@deepseek-ai/dsh-repeat-tool-reminder -->
1756
2405
  <a id="deepseek-aidsh-repeat-tool-reminder"></a>
1757
2406
 
1758
2407
  ## `@deepseek-ai/dsh-repeat-tool-reminder`
1759
2408
 
2409
+ - `source`: [`packages/guard/repeat-tool-reminder/src/index.ts:35`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/guard/repeat-tool-reminder/src/index.ts)
2410
+
1760
2411
  ```ts config-catalog
1761
2412
  /**
1762
2413
  * Plugin config, validated by the same-named schemastery schema plus the
@@ -1784,13 +2435,15 @@ export interface Config {
1784
2435
  argumentsPreviewChars?: number
1785
2436
  }
1786
2437
  ```
2438
+ <!-- END GENERATED config-catalog:@deepseek-ai/dsh-repeat-tool-reminder -->
1787
2439
 
1788
- Source: [`packages/guard/repeat-tool-reminder/src/index.ts:28`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/guard/repeat-tool-reminder/src/index.ts)
1789
-
2440
+ <!-- BEGIN GENERATED config-catalog:@deepseek-ai/dsh-sandbox-local -->
1790
2441
  <a id="deepseek-aidsh-sandbox-local"></a>
1791
2442
 
1792
2443
  ## `@deepseek-ai/dsh-sandbox-local`
1793
2444
 
2445
+ - `source`: [`packages/sandbox/sandbox-local/src/index.ts:45`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/sandbox/sandbox-local/src/index.ts)
2446
+
1794
2447
  ```ts config-catalog
1795
2448
  /** Plugin config. All optional — `static Config` supplies the defaults. */
1796
2449
  export interface Config {
@@ -1816,14 +2469,16 @@ export interface Config {
1816
2469
  probeTimeoutMs?: number
1817
2470
  }
1818
2471
  ```
2472
+ <!-- END GENERATED config-catalog:@deepseek-ai/dsh-sandbox-local -->
1819
2473
 
1820
- Source: [`packages/sandbox/sandbox-local/src/index.ts:44`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/sandbox/sandbox-local/src/index.ts)
1821
-
2474
+ <!-- BEGIN GENERATED config-catalog:@deepseek-ai/dsh-sandbox-policy -->
1822
2475
  <a id="deepseek-aidsh-sandbox-policy"></a>
1823
2476
 
1824
2477
  ## `@deepseek-ai/dsh-sandbox-policy`
1825
2478
 
1826
- Requires: `sessionProjections`
2479
+ - `inject`: `sessionProjections`
2480
+ - `refs`: [`SandboxMode`](./subsystems/sandbox.md)
2481
+ - `source`: [`packages/sandbox/sandbox-policy/src/index.ts:71`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/sandbox/sandbox-policy/src/index.ts)
1827
2482
 
1828
2483
  ```ts config-catalog
1829
2484
  /**
@@ -1837,22 +2492,46 @@ export interface Config {
1837
2492
  /** File-sandbox mode a session starts from (default: `read-only`). */
1838
2493
  mode?: SandboxMode
1839
2494
  /**
1840
- * Fallback root for agentless calls and sessions without a cwd (default:
2495
+ * Absolute fallback root for agentless calls and sessions without a cwd (default:
1841
2496
  * `process.cwd()`). Normal agent calls use their session cwd instead.
1842
2497
  */
1843
2498
  workspaceRoot?: string
1844
2499
  }
1845
2500
  ```
2501
+ <!-- END GENERATED config-catalog:@deepseek-ai/dsh-sandbox-policy -->
2502
+
2503
+ <!-- BEGIN GENERATED config-catalog:@deepseek-ai/dsh-schedule -->
2504
+ <a id="deepseek-aidsh-schedule"></a>
1846
2505
 
1847
- Depends on: [`SandboxMode`](./subsystems/sandbox.md)
2506
+ ## `@deepseek-ai/dsh-schedule`
1848
2507
 
1849
- Source: [`packages/sandbox/sandbox-policy/src/index.ts:70`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/sandbox/sandbox-policy/src/index.ts)
2508
+ - `inject`: `agents` · `sessions` · `storageDomain` · `sessionController` · `sessionPersistence`
2509
+ - `source`: [`packages/schedule/schedule/src/index.ts:72`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/schedule/schedule/src/index.ts)
2510
+
2511
+ ```ts config-catalog
2512
+ /** Configuration for the Host Schedule domain. */
2513
+ export interface Config {
2514
+ /**
2515
+ * Delivery-history window retained per task, in days; omission defaults to 30.
2516
+ * Pruning happens when an acknowledgment is appended, and `lastDelivery` is always retained.
2517
+ */
2518
+ deliveryHistoryDays?: number
2519
+ /**
2520
+ * Retained delivery records per task; omission defaults to 200. The older of this
2521
+ * cap and the window wins, and the newest records survive.
2522
+ */
2523
+ deliveryHistoryRecords?: number
2524
+ }
2525
+ ```
2526
+ <!-- END GENERATED config-catalog:@deepseek-ai/dsh-schedule -->
1850
2527
 
2528
+ <!-- BEGIN GENERATED config-catalog:@deepseek-ai/dsh-sdk-app -->
1851
2529
  <a id="deepseek-aidsh-sdk-app"></a>
1852
2530
 
1853
2531
  ## `@deepseek-ai/dsh-sdk-app`
1854
2532
 
1855
- Requires: `cmdlineArgs`
2533
+ - `inject`: `cmdlineArgs`
2534
+ - `source`: [`packages/bundle/sdk-app/src/index.ts:23`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/bundle/sdk-app/src/index.ts)
1856
2535
 
1857
2536
  ```ts config-catalog
1858
2537
  /** SDK stdio startup configuration. */
@@ -1861,14 +2540,16 @@ export interface Config {
1861
2540
  profile?: string
1862
2541
  }
1863
2542
  ```
2543
+ <!-- END GENERATED config-catalog:@deepseek-ai/dsh-sdk-app -->
1864
2544
 
1865
- Source: [`packages/bundle/sdk-app/src/index.ts:23`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/bundle/sdk-app/src/index.ts)
1866
-
2545
+ <!-- BEGIN GENERATED config-catalog:@deepseek-ai/dsh-sdk-jsonrpc-server -->
1867
2546
  <a id="deepseek-aidsh-sdk-jsonrpc-server"></a>
1868
2547
 
1869
2548
  ## `@deepseek-ai/dsh-sdk-jsonrpc-server`
1870
2549
 
1871
- Requires: `agents`
2550
+ - `inject`: `agents`
2551
+ - `refs`: `Readable` (`node:stream`) · `Writable` (`node:stream`)
2552
+ - `source`: [`packages/sdk/server/src/index.ts:25`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/sdk/server/src/index.ts)
1872
2553
 
1873
2554
  ```ts config-catalog
1874
2555
  /** JSON-RPC deployment config plus runtime-only test hooks. */
@@ -1883,32 +2564,39 @@ export interface JsonRpcConfig {
1883
2564
  exit?: (code: number) => void
1884
2565
  }
1885
2566
  ```
2567
+ <!-- END GENERATED config-catalog:@deepseek-ai/dsh-sdk-jsonrpc-server -->
1886
2568
 
1887
- Depends on: `Readable` (`node:stream`) · `Writable` (`node:stream`)
1888
-
1889
- Source: [`packages/sdk/server/src/index.ts:25`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/sdk/server/src/index.ts)
1890
-
2569
+ <!-- BEGIN GENERATED config-catalog:@deepseek-ai/dsh-session-log-deepseek -->
1891
2570
  <a id="deepseek-aidsh-session-log-deepseek"></a>
1892
2571
 
1893
2572
  ## `@deepseek-ai/dsh-session-log-deepseek`
1894
2573
 
1895
- Requires: `deepseekLlmApiExtensions` · `sessions`
2574
+ - `inject`: `deepseekLlmApiExtensions` · `sessions`
2575
+ - `refs`: `Volatile` (`@deepseek-ai/cordis`)
2576
+ - `source`: [`packages/session/session-log-deepseek/src/index.ts:39`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/session/session-log-deepseek/src/index.ts)
1896
2577
 
1897
2578
  ```ts config-catalog
1898
2579
  /** Session-log request contribution configuration. */
1899
2580
  export interface Config {
1900
- /** Contribute `dsh_session_log` to official DeepSeek requests. Defaults to `false`. */
1901
- enabled?: boolean
2581
+ /** Contribute `dsh_session_log` to official DeepSeek requests. Defaults to `true`. */
2582
+ enabled: Volatile<boolean>
2583
+ /**
2584
+ * Largest serialized `dsh_session_log` field, in UTF-8 bytes, that one request carries.
2585
+ * A request uploads the longest pending event prefix that fits; later requests continue
2586
+ * after its acceptance. Defaults to 8 MiB.
2587
+ */
2588
+ maxBytes: number
1902
2589
  }
1903
2590
  ```
2591
+ <!-- END GENERATED config-catalog:@deepseek-ai/dsh-session-log-deepseek -->
1904
2592
 
1905
- Source: [`packages/session/session-log-deepseek/src/index.ts:38`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/session/session-log-deepseek/src/index.ts)
1906
-
2593
+ <!-- BEGIN GENERATED config-catalog:@deepseek-ai/dsh-session-log-export -->
1907
2594
  <a id="deepseek-aidsh-session-log-export"></a>
1908
2595
 
1909
2596
  ## `@deepseek-ai/dsh-session-log-export`
1910
2597
 
1911
- Requires: `commands` · `connection`
2598
+ - `inject`: `commands` · `connection`
2599
+ - `source`: [`packages/session-query/session-log-export/src/index.ts:46`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/session-query/session-log-export/src/index.ts)
1912
2600
 
1913
2601
  ```ts config-catalog
1914
2602
  /** Session-log archive policy. */
@@ -1920,13 +2608,15 @@ export interface Config {
1920
2608
  /** Valid fflate DEFLATE levels accepted by session-log export. */
1921
2609
  export type SessionLogCompressionLevel = 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9
1922
2610
  ```
2611
+ <!-- END GENERATED config-catalog:@deepseek-ai/dsh-session-log-export -->
1923
2612
 
1924
- Source: [`packages/session-query/session-log-export/src/index.ts:45`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/session-query/session-log-export/src/index.ts)
1925
-
2613
+ <!-- BEGIN GENERATED config-catalog:@deepseek-ai/dsh-session-persistence-jsonl -->
1926
2614
  <a id="deepseek-aidsh-session-persistence-jsonl"></a>
1927
2615
 
1928
2616
  ## `@deepseek-ai/dsh-session-persistence-jsonl`
1929
2617
 
2618
+ - `source`: [`packages/session/session-persistence-jsonl/src/index.ts:90`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/session/session-persistence-jsonl/src/index.ts)
2619
+
1930
2620
  ```ts config-catalog
1931
2621
  /** Plugin config for the JSONL backend's root and physical encoding. */
1932
2622
  export interface Config {
@@ -1945,14 +2635,15 @@ export interface Config {
1945
2635
  /** Physical encoding selected for JSONL session artifacts. */
1946
2636
  export type JsonlCompression = 'zstd' | 'none'
1947
2637
  ```
2638
+ <!-- END GENERATED config-catalog:@deepseek-ai/dsh-session-persistence-jsonl -->
1948
2639
 
1949
- Source: [`packages/session/session-persistence-jsonl/src/index.ts:88`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/session/session-persistence-jsonl/src/index.ts)
1950
-
2640
+ <!-- BEGIN GENERATED config-catalog:@deepseek-ai/dsh-session-projection-cache -->
1951
2641
  <a id="deepseek-aidsh-session-projection-cache"></a>
1952
2642
 
1953
2643
  ## `@deepseek-ai/dsh-session-projection-cache`
1954
2644
 
1955
- Requires: `storageDomain` · `sessionProjections` · `sessions`
2645
+ - `inject`: `storageDomain` · `sessionProjections` · `sessions`
2646
+ - `source`: [`packages/session/session-projection-cache/src/index.ts:75`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/session/session-projection-cache/src/index.ts)
1956
2647
 
1957
2648
  ```ts config-catalog
1958
2649
  /**
@@ -1969,14 +2660,16 @@ export interface Config {
1969
2660
  writeIntervalMs: number
1970
2661
  }
1971
2662
  ```
2663
+ <!-- END GENERATED config-catalog:@deepseek-ai/dsh-session-projection-cache -->
1972
2664
 
1973
- Source: [`packages/session/session-projection-cache/src/index.ts:63`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/session/session-projection-cache/src/index.ts)
1974
-
2665
+ <!-- BEGIN GENERATED config-catalog:@deepseek-ai/dsh-session-query-sqlite -->
1975
2666
  <a id="deepseek-aidsh-session-query-sqlite"></a>
1976
2667
 
1977
2668
  ## `@deepseek-ai/dsh-session-query-sqlite`
1978
2669
 
1979
- Requires: `sessions`
2670
+ - `inject`: `sessions`
2671
+ - `refs`: [`SessionQueryConfig`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/session-query/session-query/src/index.ts)
2672
+ - `source`: [`packages/session-query/session-query-sqlite/src/index.ts:92`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/session-query/session-query-sqlite/src/index.ts)
1980
2673
 
1981
2674
  ```ts config-catalog
1982
2675
  /** Combined session-query configuration backed by SQLite full-text search. */
@@ -2015,16 +2708,15 @@ export type OpenAt = 'startup' | 'first-search' | 'never'
2015
2708
  /** Supported SQLite journal modes. */
2016
2709
  export type JournalMode = 'wal' | 'delete' | 'truncate' | 'persist'
2017
2710
  ```
2711
+ <!-- END GENERATED config-catalog:@deepseek-ai/dsh-session-query-sqlite -->
2018
2712
 
2019
- Depends on: [`SessionQueryConfig`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/session-query/session-query/src/index.ts)
2020
-
2021
- Source: [`packages/session-query/session-query-sqlite/src/index.ts:92`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/session-query/session-query-sqlite/src/index.ts)
2022
-
2713
+ <!-- BEGIN GENERATED config-catalog:@deepseek-ai/dsh-session-reference -->
2023
2714
  <a id="deepseek-aidsh-session-reference"></a>
2024
2715
 
2025
2716
  ## `@deepseek-ai/dsh-session-reference`
2026
2717
 
2027
- Requires: `sessionQuery`
2718
+ - `inject`: `sessionQuery`
2719
+ - `source`: [`packages/context/session-reference/src/config.ts:11`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/context/session-reference/src/config.ts)
2028
2720
 
2029
2721
  ```ts config-catalog
2030
2722
  /** Session-reference service configuration. */
@@ -2039,41 +2731,43 @@ export interface Config {
2039
2731
  referenceContextFraction?: number
2040
2732
  }
2041
2733
  ```
2734
+ <!-- END GENERATED config-catalog:@deepseek-ai/dsh-session-reference -->
2042
2735
 
2043
- Source: [`packages/context/session-reference/src/config.ts:11`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/context/session-reference/src/config.ts)
2044
-
2736
+ <!-- BEGIN GENERATED config-catalog:@deepseek-ai/dsh-session-telemetry-otel -->
2045
2737
  <a id="deepseek-aidsh-session-telemetry-otel"></a>
2046
2738
 
2047
2739
  ## `@deepseek-ai/dsh-session-telemetry-otel`
2048
2740
 
2049
- Requires: `sessions`
2741
+ - `inject`: `sessions` · `otel`
2742
+ - `refs`: `BatchLogRecordProcessorOptions` (`@opentelemetry/sdk-logs`) · `OTLPExporterNodeConfigBase` (`@opentelemetry/otlp-exporter-base`)
2743
+ - `source`: [`packages/session/session-telemetry-otel/src/index.ts:87`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/session/session-telemetry-otel/src/index.ts)
2050
2744
 
2051
2745
  ```ts config-catalog
2052
2746
  /**
2053
- * Plugin configuration: one sharing policy, two verbatim SDK option objects,
2054
- * and one DSH-owned shutdown bound. Uploading modes validate their endpoint
2747
+ * Plugin configuration: sharing policy, SDK transport options, byte/count queue
2748
+ * settings, and an overall shutdown bound. Uploading modes validate their endpoint
2055
2749
  * and shutdown deadline at plugin load; `DISABLED` reads neither.
2056
2750
  */
2057
2751
  export interface Config {
2058
2752
  /** Defaults to `FEEDBACK_ONLY`: capture session history only when feedback is explicitly submitted. */
2059
2753
  mode?: SessionTelemetryMode
2060
2754
  /**
2061
- * Passed verbatim to the SDK's OTLP/HTTP log exporter — the complete
2062
- * `OTLPExporterNodeConfigBase` shape (`headers`, `timeoutMillis`,
2063
- * `compression`, `keepAlive`, …), owned and documented by the SDK. `url`
2064
- * is the one field this package requires and validates itself.
2755
+ * Explicit SDK HTTP transport settings, including optional routing headers.
2756
+ * Ambient credentials are not inherited. URL is required while uploading.
2065
2757
  */
2066
2758
  exporter?: OTLPExporterNodeConfigBase & {
2067
2759
  /** Full logs endpoint (e.g. `https://collector.example.com/v1/logs`). Required outside `DISABLED`; validated at load. */
2068
2760
  url?: string
2069
2761
  }
2070
2762
  /**
2071
- * Passed verbatim to `BatchLogRecordProcessor` (minus the exporter slot,
2072
- * which this plugin fills); the SDK owns and documents these knobs.
2763
+ * Count, queue, cadence, and per-request watchdog settings for the byte-bounded
2764
+ * processor. A watchdog warning never releases an unsettled transport slot.
2073
2765
  */
2074
2766
  processor?: Omit<BatchLogRecordProcessorOptions, 'exporter'>
2075
2767
  /** Maximum time spent awaiting the SDK provider's complete shutdown path. */
2076
2768
  shutdownTimeoutMillis?: number
2769
+ /** Uncompressed OTLP request byte limit, at most 4,000,000. */
2770
+ maxRequestBytes?: number
2077
2771
  }
2078
2772
 
2079
2773
  /** Session-sharing policy selected by {@link Config.mode}. */
@@ -2082,16 +2776,15 @@ export enum SessionTelemetryMode {
2082
2776
  DISABLED = 'DISABLED',
2083
2777
  }
2084
2778
  ```
2779
+ <!-- END GENERATED config-catalog:@deepseek-ai/dsh-session-telemetry-otel -->
2085
2780
 
2086
- Depends on: `BatchLogRecordProcessorOptions` (`@opentelemetry/sdk-logs`) · `OTLPExporterNodeConfigBase` (`@opentelemetry/otlp-exporter-base`)
2087
-
2088
- Source: [`packages/session/session-telemetry-otel/src/index.ts:100`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/session/session-telemetry-otel/src/index.ts)
2089
-
2781
+ <!-- BEGIN GENERATED config-catalog:@deepseek-ai/dsh-session-title -->
2090
2782
  <a id="deepseek-aidsh-session-title"></a>
2091
2783
 
2092
2784
  ## `@deepseek-ai/dsh-session-title`
2093
2785
 
2094
- Requires: `sessions` · `sessionProjections`
2786
+ - `inject`: `sessions` · `sessionProjections`
2787
+ - `source`: [`packages/session/session-title/src/index.ts:56`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/session/session-title/src/index.ts)
2095
2788
 
2096
2789
  ```ts config-catalog
2097
2790
  /** Required deterministic fallback and accepted-title limits. */
@@ -2104,63 +2797,45 @@ export interface Config {
2104
2797
  readonly maxTitleBytes: number
2105
2798
  }
2106
2799
  ```
2800
+ <!-- END GENERATED config-catalog:@deepseek-ai/dsh-session-title -->
2107
2801
 
2108
- Source: [`packages/session/session-title/src/index.ts:56`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/session/session-title/src/index.ts)
2109
-
2802
+ <!-- BEGIN GENERATED config-catalog:@deepseek-ai/dsh-session-title-all-prompts-llm -->
2110
2803
  <a id="deepseek-aidsh-session-title-all-prompts-llm"></a>
2111
2804
 
2112
2805
  ## `@deepseek-ai/dsh-session-title-all-prompts-llm`
2113
2806
 
2114
- Requires: `sessionTitle` · `llm` · `sessions`
2807
+ - `inject`: `sessionTitle` · `llm` · `sessions`
2808
+ - `refs`: [`SessionTitleLlmConfig`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/session/session-title-llm/src/index.ts)
2809
+ - `source`: [`packages/session/session-title-all-prompts-llm/src/index.ts:15`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/session/session-title-all-prompts-llm/src/index.ts)
2115
2810
 
2116
2811
  ```ts config-catalog
2117
2812
  /** Required LLM policy; this plugin adds no defaults. */
2118
2813
  export type Config = SessionTitleLlmConfig
2119
2814
  ```
2815
+ <!-- END GENERATED config-catalog:@deepseek-ai/dsh-session-title-all-prompts-llm -->
2120
2816
 
2121
- Depends on: [`SessionTitleLlmConfig`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/session/session-title-llm/src/index.ts)
2122
-
2123
- Source: [`packages/session/session-title-all-prompts-llm/src/index.ts:15`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/session/session-title-all-prompts-llm/src/index.ts)
2124
-
2817
+ <!-- BEGIN GENERATED config-catalog:@deepseek-ai/dsh-session-title-first-prompt-llm -->
2125
2818
  <a id="deepseek-aidsh-session-title-first-prompt-llm"></a>
2126
2819
 
2127
2820
  ## `@deepseek-ai/dsh-session-title-first-prompt-llm`
2128
2821
 
2129
- Requires: `sessionTitle` · `llm` · `sessions`
2822
+ - `inject`: `sessionTitle` · `llm` · `sessions`
2823
+ - `refs`: [`SessionTitleLlmConfig`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/session/session-title-llm/src/index.ts)
2824
+ - `source`: [`packages/session/session-title-first-prompt-llm/src/index.ts:15`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/session/session-title-first-prompt-llm/src/index.ts)
2130
2825
 
2131
2826
  ```ts config-catalog
2132
2827
  /** Required LLM policy; this plugin adds no defaults. */
2133
2828
  export type Config = SessionTitleLlmConfig
2134
2829
  ```
2830
+ <!-- END GENERATED config-catalog:@deepseek-ai/dsh-session-title-first-prompt-llm -->
2135
2831
 
2136
- Depends on: [`SessionTitleLlmConfig`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/session/session-title-llm/src/index.ts)
2137
-
2138
- Source: [`packages/session/session-title-first-prompt-llm/src/index.ts:15`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/session/session-title-first-prompt-llm/src/index.ts)
2139
-
2140
- <a id="deepseek-aidsh-settings-file"></a>
2141
-
2142
- ## `@deepseek-ai/dsh-settings-file`
2143
-
2144
- ```ts config-catalog
2145
- /** Plugin config: file location and hot-reload behavior. */
2146
- export interface Config {
2147
- /** Settings document path; defaults to `settings.yaml` under the harness home. */
2148
- path?: string
2149
- /** Harness home used when `path` is omitted; defaults to `$DSH_HOME` or `~/.dsh`. */
2150
- dshHome?: string
2151
- /** Watch the document and hot-publish external edits; defaults to true. */
2152
- watch?: boolean
2153
- /** Watcher write-settle window in milliseconds; defaults to 100. */
2154
- debounceMs?: number
2155
- }
2156
- ```
2157
-
2158
- Source: [`packages/settings/settings-file/src/index.ts:22`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/settings/settings-file/src/index.ts)
2159
-
2832
+ <!-- BEGIN GENERATED config-catalog:@deepseek-ai/dsh-shell-env -->
2160
2833
  <a id="deepseek-aidsh-shell-env"></a>
2161
2834
 
2162
2835
  ## `@deepseek-ai/dsh-shell-env`
2163
2836
 
2837
+ - `source`: [`packages/shell/shell-env/src/index.ts:30`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/shell/shell-env/src/index.ts)
2838
+
2164
2839
  ```ts config-catalog
2165
2840
  /** Plugin config (all optional — the built-in facts resolve without defaults). */
2166
2841
  export interface Config {
@@ -2168,13 +2843,15 @@ export interface Config {
2168
2843
  dshHome?: string
2169
2844
  }
2170
2845
  ```
2846
+ <!-- END GENERATED config-catalog:@deepseek-ai/dsh-shell-env -->
2171
2847
 
2172
- Source: [`packages/shell/shell-env/src/index.ts:28`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/shell/shell-env/src/index.ts)
2173
-
2848
+ <!-- BEGIN GENERATED config-catalog:@deepseek-ai/dsh-skill -->
2174
2849
  <a id="deepseek-aidsh-skill"></a>
2175
2850
 
2176
2851
  ## `@deepseek-ai/dsh-skill`
2177
2852
 
2853
+ - `source`: [`packages/skill/skill/src/index.ts:278`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/skill/skill/src/index.ts)
2854
+
2178
2855
  ```ts config-catalog
2179
2856
  /** Skill registry configuration. */
2180
2857
  export interface Config {
@@ -2182,14 +2859,15 @@ export interface Config {
2182
2859
  readonly collectCacheMaxEntries?: number
2183
2860
  }
2184
2861
  ```
2862
+ <!-- END GENERATED config-catalog:@deepseek-ai/dsh-skill -->
2185
2863
 
2186
- Source: [`packages/skill/skill/src/index.ts:280`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/skill/skill/src/index.ts)
2187
-
2864
+ <!-- BEGIN GENERATED config-catalog:@deepseek-ai/dsh-skill-filesystem -->
2188
2865
  <a id="deepseek-aidsh-skill-filesystem"></a>
2189
2866
 
2190
2867
  ## `@deepseek-ai/dsh-skill-filesystem`
2191
2868
 
2192
- Requires: `skills`
2869
+ - `inject`: `skills`
2870
+ - `source`: [`packages/skill/skill-filesystem/src/index.ts:49`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/skill/skill-filesystem/src/index.ts)
2193
2871
 
2194
2872
  ```ts config-catalog
2195
2873
  /** Local filesystem skill provider configuration. */
@@ -2220,13 +2898,36 @@ export interface Config {
2220
2898
  bundledSkillDir?: string
2221
2899
  }
2222
2900
  ```
2901
+ <!-- END GENERATED config-catalog:@deepseek-ai/dsh-skill-filesystem -->
2902
+
2903
+ <!-- BEGIN GENERATED config-catalog:@deepseek-ai/dsh-skill-office -->
2904
+ <a id="deepseek-aidsh-skill-office"></a>
2905
+
2906
+ ## `@deepseek-ai/dsh-skill-office`
2907
+
2908
+ - `inject`: `skills`
2909
+ - `source`: [`packages/skill/skill-office/src/index.ts:16`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/skill/skill-office/src/index.ts)
2223
2910
 
2224
- Source: [`packages/skill/skill-filesystem/src/index.ts:49`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/skill/skill-filesystem/src/index.ts)
2911
+ ```ts config-catalog
2912
+ /** Office skill resource location. */
2913
+ export interface Config {
2914
+ /** Absolute assets directory containing the three skill folders and shared scripts; defaults to packaged assets. */
2915
+ assetRoot?: string
2916
+ /** Standalone Node executable; defaults to the current executable outside Electron and SEA. */
2917
+ node?: string
2918
+ /** Absolute LibreOffice Kit CLI entry; false explicitly disables CLI access. */
2919
+ cli?: string | false
2920
+ }
2921
+ ```
2922
+ <!-- END GENERATED config-catalog:@deepseek-ai/dsh-skill-office -->
2225
2923
 
2924
+ <!-- BEGIN GENERATED config-catalog:@deepseek-ai/dsh-spill-local -->
2226
2925
  <a id="deepseek-aidsh-spill-local"></a>
2227
2926
 
2228
2927
  ## `@deepseek-ai/dsh-spill-local`
2229
2928
 
2929
+ - `source`: [`packages/spill/spill-local/src/index.ts:31`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/spill/spill-local/src/index.ts)
2930
+
2230
2931
  ```ts config-catalog
2231
2932
  /** Plugin config (all optional — `static Config` supplies the defaults). */
2232
2933
  export interface Config {
@@ -2249,34 +2950,68 @@ export interface Config {
2249
2950
  cleanupPeriodDays?: number
2250
2951
  }
2251
2952
  ```
2953
+ <!-- END GENERATED config-catalog:@deepseek-ai/dsh-spill-local -->
2252
2954
 
2253
- Source: [`packages/spill/spill-local/src/index.ts:31`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/spill/spill-local/src/index.ts)
2254
-
2955
+ <!-- BEGIN GENERATED config-catalog:@deepseek-ai/dsh-spill-policy -->
2255
2956
  <a id="deepseek-aidsh-spill-policy"></a>
2256
2957
 
2257
2958
  ## `@deepseek-ai/dsh-spill-policy`
2258
2959
 
2259
- Requires: `tools`
2960
+ - `inject`: `tools`
2961
+ - `source`: [`packages/spill/spill-policy/src/index.ts:25`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/spill/spill-policy/src/index.ts)
2260
2962
 
2261
2963
  ```ts config-catalog
2262
- /** Plugin config. */
2964
+ /** Optional result-retention budget. */
2263
2965
  export interface Config {
2264
- /**
2265
- * The model-facing context cap for a plain-text tool result, in UTF-8 bytes.
2266
- * Omitted disables the policy entirely (no-op). When set, a result larger than
2267
- * this is spilled and replaced with a preview derived from this same budget.
2268
- */
2269
- maxInlineBytes?: number
2966
+ /** Maximum estimated tokens in a retained result, including image descriptors and omission notices. Omitted disables retention. */
2967
+ maxInlineTokens?: number
2270
2968
  }
2271
2969
  ```
2970
+ <!-- END GENERATED config-catalog:@deepseek-ai/dsh-spill-policy -->
2971
+
2972
+ <!-- BEGIN GENERATED config-catalog:@deepseek-ai/dsh-ssh -->
2973
+ <a id="deepseek-aidsh-ssh"></a>
2974
+
2975
+ ## `@deepseek-ai/dsh-ssh`
2976
+
2977
+ - `source`: [`packages/ssh/ssh/src/index.ts:17`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/ssh/ssh/src/index.ts)
2272
2978
 
2273
- Source: [`packages/spill/spill-policy/src/index.ts:61`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/spill/spill-policy/src/index.ts)
2979
+ ```ts config-catalog
2980
+ /** Deployment-owned SSH identity and installed helper; no model argument selects these values. */
2981
+ export interface Config {
2982
+ /** OpenSSH host alias, including its existing user, key and known-host configuration. */
2983
+ host: string
2984
+ /** Absolute remote Node executable. */
2985
+ node: string
2986
+ /** Absolute path to the installed, bundled helper entry. */
2987
+ helper: string
2988
+ /** SHA-256 of that bundled helper; mismatches refuse the connection. */
2989
+ helperHash: string
2990
+ /** Absolute remote default workspace. */
2991
+ workspace: string
2992
+ /** Optional preinstalled built PTC entry, paired with its expected digest. */
2993
+ bootstrapPath?: string
2994
+ /** SHA-256 of bootstrapPath; both fields must be supplied together. */
2995
+ bootstrapHash?: string
2996
+ /** Connection and administrative-request deadline, at most 2,147,483,647 milliseconds. */
2997
+ requestTimeoutMs?: number
2998
+ /** Maximum JSON payload bytes per helper request or response. */
2999
+ maxFrameBytes?: number
3000
+ /** Maximum ordinary requests; heartbeat and bounded resource cleanup have reserved capacity. */
3001
+ maxPending?: number
3002
+ /** Remote helper lease; loss of heartbeats starts remote managed cleanup. */
3003
+ leaseMs?: number
3004
+ }
3005
+ ```
3006
+ <!-- END GENERATED config-catalog:@deepseek-ai/dsh-ssh -->
2274
3007
 
3008
+ <!-- BEGIN GENERATED config-catalog:@deepseek-ai/dsh-storage-domain -->
2275
3009
  <a id="deepseek-aidsh-storage-domain"></a>
2276
3010
 
2277
3011
  ## `@deepseek-ai/dsh-storage-domain`
2278
3012
 
2279
- Requires: `storage`
3013
+ - `inject`: `storage`
3014
+ - `source`: [`packages/storage/storage-domain/src/index.ts:52`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/storage/storage-domain/src/index.ts)
2280
3015
 
2281
3016
  ```ts config-catalog
2282
3017
  /**
@@ -2292,14 +3027,15 @@ export interface Config {
2292
3027
  routes?: Record<string, string>
2293
3028
  }
2294
3029
  ```
3030
+ <!-- END GENERATED config-catalog:@deepseek-ai/dsh-storage-domain -->
2295
3031
 
2296
- Source: [`packages/storage/storage-domain/src/index.ts:52`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/storage/storage-domain/src/index.ts)
2297
-
3032
+ <!-- BEGIN GENERATED config-catalog:@deepseek-ai/dsh-storage-json -->
2298
3033
  <a id="deepseek-aidsh-storage-json"></a>
2299
3034
 
2300
3035
  ## `@deepseek-ai/dsh-storage-json`
2301
3036
 
2302
- Requires: `storage`
3037
+ - `inject`: `storage`
3038
+ - `source`: [`packages/storage/storage-json/src/index.ts:28`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/storage/storage-json/src/index.ts)
2303
3039
 
2304
3040
  ```ts config-catalog
2305
3041
  /**
@@ -2313,14 +3049,15 @@ export interface Config {
2313
3049
  root: string
2314
3050
  }
2315
3051
  ```
3052
+ <!-- END GENERATED config-catalog:@deepseek-ai/dsh-storage-json -->
2316
3053
 
2317
- Source: [`packages/storage/storage-json/src/index.ts:28`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/storage/storage-json/src/index.ts)
2318
-
3054
+ <!-- BEGIN GENERATED config-catalog:@deepseek-ai/dsh-storage-sqlite -->
2319
3055
  <a id="deepseek-aidsh-storage-sqlite"></a>
2320
3056
 
2321
3057
  ## `@deepseek-ai/dsh-storage-sqlite`
2322
3058
 
2323
- Requires: `storage`
3059
+ - `inject`: `storage`
3060
+ - `source`: [`packages/storage/storage-sqlite/src/index.ts:24`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/storage/storage-sqlite/src/index.ts)
2324
3061
 
2325
3062
  ```ts config-catalog
2326
3063
  /** Plugin configuration. */
@@ -2353,14 +3090,34 @@ export interface Config {
2353
3090
  */
2354
3091
  export type JournalMode = 'wal' | 'delete' | 'truncate' | 'persist'
2355
3092
  ```
3093
+ <!-- END GENERATED config-catalog:@deepseek-ai/dsh-storage-sqlite -->
3094
+
3095
+ <!-- BEGIN GENERATED config-catalog:@deepseek-ai/dsh-subagent -->
3096
+ <a id="deepseek-aidsh-subagent"></a>
3097
+
3098
+ ## `@deepseek-ai/dsh-subagent`
2356
3099
 
2357
- Source: [`packages/storage/storage-sqlite/src/index.ts:24`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/storage/storage-sqlite/src/index.ts)
3100
+ - `refs`: `Volatile` (`@deepseek-ai/cordis`)
3101
+ - `source`: [`packages/subagent/subagent/src/index.ts:190`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/subagent/subagent/src/index.ts)
2358
3102
 
3103
+ ```ts config-catalog
3104
+ /** Host configuration for continuable subagent capacity. */
3105
+ export interface Config {
3106
+ /** Maximum live children sharing uninterrupted continuable parent links; defaults to 8. */
3107
+ maxActiveSubagents: Volatile<number>
3108
+ /** Default delegation depth for tools without an explicit limit; defaults to 1. */
3109
+ maxDepth: Volatile<number>
3110
+ }
3111
+ ```
3112
+ <!-- END GENERATED config-catalog:@deepseek-ai/dsh-subagent -->
3113
+
3114
+ <!-- BEGIN GENERATED config-catalog:@deepseek-ai/dsh-subagent-acp -->
2359
3115
  <a id="deepseek-aidsh-subagent-acp"></a>
2360
3116
 
2361
3117
  ## `@deepseek-ai/dsh-subagent-acp`
2362
3118
 
2363
- Requires: `subagents` · `subprocess`
3119
+ - `inject`: `subagents` · `subprocess`
3120
+ - `source`: [`packages/subagent/subagent-acp/src/index.ts:27`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/subagent/subagent-acp/src/index.ts)
2364
3121
 
2365
3122
  ```ts config-catalog
2366
3123
  /** Config: how to spawn and drive the child ACP agent process. */
@@ -2406,14 +3163,15 @@ export interface Config {
2406
3163
  /** Fixed response to child permission requests: reject by default, or select the first allow option. */
2407
3164
  export type PermissionPolicy = 'allow' | 'reject'
2408
3165
  ```
3166
+ <!-- END GENERATED config-catalog:@deepseek-ai/dsh-subagent-acp -->
2409
3167
 
2410
- Source: [`packages/subagent/subagent-acp/src/index.ts:27`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/subagent/subagent-acp/src/index.ts)
2411
-
3168
+ <!-- BEGIN GENERATED config-catalog:@deepseek-ai/dsh-subagent-claude-code -->
2412
3169
  <a id="deepseek-aidsh-subagent-claude-code"></a>
2413
3170
 
2414
3171
  ## `@deepseek-ai/dsh-subagent-claude-code`
2415
3172
 
2416
- Requires: `subagents` · `subprocess`
3173
+ - `inject`: `subagents` · `subprocess`
3174
+ - `source`: [`packages/subagent/subagent-claude-code/src/index.ts:38`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/subagent/subagent-claude-code/src/index.ts)
2417
3175
 
2418
3176
  ```ts config-catalog
2419
3177
  /** Deployment-owned model, permission, environment, and process-release settings. */
@@ -2441,14 +3199,15 @@ export interface Config {
2441
3199
  /** Profile-selectable non-interactive Claude Code permission mode. */
2442
3200
  export type ClaudeCodePermissionMode = typeof CLAUDE_CODE_PERMISSION_MODES[number]
2443
3201
  ```
3202
+ <!-- END GENERATED config-catalog:@deepseek-ai/dsh-subagent-claude-code -->
2444
3203
 
2445
- Source: [`packages/subagent/subagent-claude-code/src/index.ts:38`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/subagent/subagent-claude-code/src/index.ts)
2446
-
3204
+ <!-- BEGIN GENERATED config-catalog:@deepseek-ai/dsh-subagent-codex -->
2447
3205
  <a id="deepseek-aidsh-subagent-codex"></a>
2448
3206
 
2449
3207
  ## `@deepseek-ai/dsh-subagent-codex`
2450
3208
 
2451
- Requires: `subagents` · `subprocess`
3209
+ - `inject`: `subagents` · `subprocess`
3210
+ - `source`: [`packages/subagent/subagent-codex/src/index.ts:36`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/subagent/subagent-codex/src/index.ts)
2452
3211
 
2453
3212
  ```ts config-catalog
2454
3213
  /** Deployment-owned model, permission, environment, and process-release settings. */
@@ -2474,14 +3233,15 @@ export type CodexPermissionMode =
2474
3233
  | 'approve-for-me'
2475
3234
  | 'dangerously-bypass-approvals-and-sandbox'
2476
3235
  ```
3236
+ <!-- END GENERATED config-catalog:@deepseek-ai/dsh-subagent-codex -->
2477
3237
 
2478
- Source: [`packages/subagent/subagent-codex/src/index.ts:36`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/subagent/subagent-codex/src/index.ts)
2479
-
3238
+ <!-- BEGIN GENERATED config-catalog:@deepseek-ai/dsh-subagent-dsh-sdk -->
2480
3239
  <a id="deepseek-aidsh-subagent-dsh-sdk"></a>
2481
3240
 
2482
3241
  ## `@deepseek-ai/dsh-subagent-dsh-sdk`
2483
3242
 
2484
- Requires: `subagents`
3243
+ - `inject`: `subagents`
3244
+ - `source`: [`packages/subagent/subagent-dsh-sdk/src/index.ts:34`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/subagent/subagent-dsh-sdk/src/index.ts)
2485
3245
 
2486
3246
  ```ts config-catalog
2487
3247
  /** Config: how to spawn and drive the child SDK runtime process. */
@@ -2530,14 +3290,15 @@ export interface Config {
2530
3290
  disposeGraceMs?: number
2531
3291
  }
2532
3292
  ```
3293
+ <!-- END GENERATED config-catalog:@deepseek-ai/dsh-subagent-dsh-sdk -->
2533
3294
 
2534
- Source: [`packages/subagent/subagent-dsh-sdk/src/index.ts:34`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/subagent/subagent-dsh-sdk/src/index.ts)
2535
-
3295
+ <!-- BEGIN GENERATED config-catalog:@deepseek-ai/dsh-subagent-fork-in-process -->
2536
3296
  <a id="deepseek-aidsh-subagent-fork-in-process"></a>
2537
3297
 
2538
3298
  ## `@deepseek-ai/dsh-subagent-fork-in-process`
2539
3299
 
2540
- Requires: `subagents`
3300
+ - `inject`: `subagents`
3301
+ - `source`: [`packages/subagent/subagent-fork-in-process/src/index.ts:31`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/subagent/subagent-fork-in-process/src/index.ts)
2541
3302
 
2542
3303
  ```ts config-catalog
2543
3304
  /** Config: the registry name to register the provider under. */
@@ -2546,14 +3307,15 @@ export interface Config {
2546
3307
  providerName: string
2547
3308
  }
2548
3309
  ```
3310
+ <!-- END GENERATED config-catalog:@deepseek-ai/dsh-subagent-fork-in-process -->
2549
3311
 
2550
- Source: [`packages/subagent/subagent-fork-in-process/src/index.ts:31`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/subagent/subagent-fork-in-process/src/index.ts)
2551
-
3312
+ <!-- BEGIN GENERATED config-catalog:@deepseek-ai/dsh-subagent-spawn-in-process -->
2552
3313
  <a id="deepseek-aidsh-subagent-spawn-in-process"></a>
2553
3314
 
2554
3315
  ## `@deepseek-ai/dsh-subagent-spawn-in-process`
2555
3316
 
2556
- Requires: `subagents`
3317
+ - `inject`: `subagents`
3318
+ - `source`: [`packages/subagent/subagent-spawn-in-process/src/index.ts:25`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/subagent/subagent-spawn-in-process/src/index.ts)
2557
3319
 
2558
3320
  ```ts config-catalog
2559
3321
  /** Config: the registry name to register the provider under. */
@@ -2562,29 +3324,15 @@ export interface Config {
2562
3324
  providerName: string
2563
3325
  }
2564
3326
  ```
3327
+ <!-- END GENERATED config-catalog:@deepseek-ai/dsh-subagent-spawn-in-process -->
2565
3328
 
2566
- Source: [`packages/subagent/subagent-spawn-in-process/src/index.ts:25`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/subagent/subagent-spawn-in-process/src/index.ts)
2567
-
2568
- <a id="deepseek-aidsh-subprocess-e2b"></a>
2569
-
2570
- ## `@deepseek-ai/dsh-subprocess-e2b`
2571
-
2572
- Requires: `e2b`
2573
-
2574
- ```ts config-catalog
2575
- /** Configuration for the E2B subprocess adapter. */
2576
- export interface Config {
2577
- /** Remote status/liveness poll cadence in milliseconds; each tick is one control-plane request. */
2578
- pollMs?: number
2579
- }
2580
- ```
2581
-
2582
- Source: [`packages/e2b/subprocess-e2b/src/index.ts:26`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/e2b/subprocess-e2b/src/index.ts)
2583
-
3329
+ <!-- BEGIN GENERATED config-catalog:@deepseek-ai/dsh-system-prompt -->
2584
3330
  <a id="deepseek-aidsh-system-prompt"></a>
2585
3331
 
2586
3332
  ## `@deepseek-ai/dsh-system-prompt`
2587
3333
 
3334
+ - `source`: [`packages/core/system-prompt/src/index.ts:247`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/core/system-prompt/src/index.ts)
3335
+
2588
3336
  ```ts config-catalog
2589
3337
  /** Plugin config: the deployment-authored fragment of the system prompt (see {@link Config.personaPrefix} for its contract). */
2590
3338
  export interface Config {
@@ -2610,14 +3358,15 @@ export interface Config {
2610
3358
  toolOrder?: string[]
2611
3359
  }
2612
3360
  ```
3361
+ <!-- END GENERATED config-catalog:@deepseek-ai/dsh-system-prompt -->
2613
3362
 
2614
- Source: [`packages/core/system-prompt/src/index.ts:242`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/core/system-prompt/src/index.ts)
2615
-
3363
+ <!-- BEGIN GENERATED config-catalog:@deepseek-ai/dsh-terminal-bash -->
2616
3364
  <a id="deepseek-aidsh-terminal-bash"></a>
2617
3365
 
2618
3366
  ## `@deepseek-ai/dsh-terminal-bash`
2619
3367
 
2620
- Requires: `terminals` · `sandboxPolicy` · `sessionProjections` · `subprocess`
3368
+ - `inject`: `terminals` · `sandboxPolicy` · `sessionProjections` · `subprocess`
3369
+ - `source`: [`packages/terminal/terminal-bash/src/config.ts:10`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/terminal/terminal-bash/src/config.ts)
2621
3370
 
2622
3371
  ```ts config-catalog
2623
3372
  /** Public plugin configuration. */
@@ -2651,6 +3400,15 @@ export interface Config {
2651
3400
  * regain the foreground before `inferred_idle` settles; at least one `pollIntervalMs`.
2652
3401
  */
2653
3402
  handoffGraceMs?: number
3403
+ /**
3404
+ * Extra wait beyond `idleSilenceMs` and `handoffGraceMs`, once a prompt marker was seen but
3405
+ * its printable tail has not arrived, before `inferred_idle` settles. The marker is written
3406
+ * by the shell's own prompt function and the tail by the same render, so a missing tail is a
3407
+ * delivery delay on a contended host rather than an absent prompt. Zero keeps the bound at
3408
+ * `idleSilenceMs + handoffGraceMs`; any other value covers at least one `pollIntervalMs`, so a
3409
+ * nonzero tolerance always contains a readiness poll.
3410
+ */
3411
+ promptTailGraceMs?: number
2654
3412
  /** Absolute bound for one send and the complete pwsh startup sequence. */
2655
3413
  timeoutMs?: number
2656
3414
  /** Grace before teardown escalates to `SIGKILL`. */
@@ -2660,32 +3418,34 @@ export interface Config {
2660
3418
  /** One supported interactive shell dialect. */
2661
3419
  export type ShellDialect = 'bash' | 'pwsh'
2662
3420
  ```
3421
+ <!-- END GENERATED config-catalog:@deepseek-ai/dsh-terminal-bash -->
2663
3422
 
2664
- Source: [`packages/terminal/terminal-bash/src/config.ts:10`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/terminal/terminal-bash/src/config.ts)
2665
-
3423
+ <!-- BEGIN GENERATED config-catalog:@deepseek-ai/dsh-time-context -->
2666
3424
  <a id="deepseek-aidsh-time-context"></a>
2667
3425
 
2668
3426
  ## `@deepseek-ai/dsh-time-context`
2669
3427
 
2670
- Requires: `agents` · `sessionProjections`
3428
+ - `inject`: `agents` · `sessionProjections`
3429
+ - `source`: [`packages/context/time-context/src/index.ts:56`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/context/time-context/src/index.ts)
2671
3430
 
2672
3431
  ```ts config-catalog
2673
3432
  /** Request-preparation clock formatting and append scheduling. Invalid values fail plugin load. */
2674
3433
  export interface Config {
2675
3434
  /** Fallback display zone when the open turn has no unique browser zone. Omit to use the process zone. */
2676
3435
  timeZone?: string
2677
- /** Minimum milliseconds between durable injections in one session. Omit or set to 0 to inject at every eligible step. */
3436
+ /** Minimum milliseconds between durable injections in one session. Defaults to 600000 (10 minutes); 0 injects at every eligible step. */
2678
3437
  refreshIntervalMs?: number
2679
3438
  }
2680
3439
  ```
3440
+ <!-- END GENERATED config-catalog:@deepseek-ai/dsh-time-context -->
2681
3441
 
2682
- Source: [`packages/context/time-context/src/index.ts:49`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/context/time-context/src/index.ts)
2683
-
3442
+ <!-- BEGIN GENERATED config-catalog:@deepseek-ai/dsh-tmux-context -->
2684
3443
  <a id="deepseek-aidsh-tmux-context"></a>
2685
3444
 
2686
3445
  ## `@deepseek-ai/dsh-tmux-context`
2687
3446
 
2688
- Requires: `agents` · `sessionProjections`
3447
+ - `inject`: `agents` · `sessionProjections`
3448
+ - `source`: [`packages/context/tmux-context/src/index.ts:47`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/context/tmux-context/src/index.ts)
2689
3449
 
2690
3450
  ```ts config-catalog
2691
3451
  /** Per-turn tmux-location scheduling. Invalid values fail plugin load. */
@@ -2694,43 +3454,78 @@ export interface Config {
2694
3454
  refreshIntervalMs?: number
2695
3455
  }
2696
3456
  ```
3457
+ <!-- END GENERATED config-catalog:@deepseek-ai/dsh-tmux-context -->
2697
3458
 
2698
- Source: [`packages/context/tmux-context/src/index.ts:36`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/context/tmux-context/src/index.ts)
2699
-
3459
+ <!-- BEGIN GENERATED config-catalog:@deepseek-ai/dsh-token-meter -->
2700
3460
  <a id="deepseek-aidsh-token-meter"></a>
2701
3461
 
2702
3462
  ## `@deepseek-ai/dsh-token-meter`
2703
3463
 
2704
- Requires: `sessionProjections`
3464
+ - `inject`: `sessionProjections`
3465
+ - `source`: [`packages/llm/token-meter/src/types.ts:13`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/llm/token-meter/src/types.ts)
2705
3466
 
2706
3467
  ```ts config-catalog
2707
3468
  /** Token-meter plugin configuration; the fixed estimator has no settings. */
2708
3469
  export type TokenMeterConfig = Record<string, never>
2709
3470
  ```
3471
+ <!-- END GENERATED config-catalog:@deepseek-ai/dsh-token-meter -->
3472
+
3473
+ <!-- BEGIN GENERATED config-catalog:@deepseek-ai/dsh-tool-ask-user -->
3474
+ <a id="deepseek-aidsh-tool-ask-user"></a>
2710
3475
 
2711
- Source: [`packages/llm/token-meter/src/types.ts:13`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/llm/token-meter/src/types.ts)
3476
+ ## `@deepseek-ai/dsh-tool-ask-user`
3477
+
3478
+ - `inject`: `tools` · `userQuestions`
3479
+ - `source`: [`packages/interaction/tool-ask-user/src/index.ts:16`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/interaction/tool-ask-user/src/index.ts)
3480
+
3481
+ ```ts config-catalog
3482
+ /** Cordis row selecting the tool schema and its default foreground wait. */
3483
+ export interface Config {
3484
+ /** Tool definition selected by this Cordis row. Defaults to the blocking legacy tool. */
3485
+ mode?: 'legacy' | 'timed'
3486
+ /** Foreground wait before automatic continuation. Defaults to 120 seconds. */
3487
+ timeout?: number
3488
+ }
3489
+ ```
3490
+ <!-- END GENERATED config-catalog:@deepseek-ai/dsh-tool-ask-user -->
2712
3491
 
3492
+ <!-- BEGIN GENERATED config-catalog:@deepseek-ai/dsh-tool-bash -->
2713
3493
  <a id="deepseek-aidsh-tool-bash"></a>
2714
3494
 
2715
3495
  ## `@deepseek-ai/dsh-tool-bash`
2716
3496
 
2717
- Requires: `tools` · `shell` · `systemPrompt` · `shellEnv`
3497
+ - `inject`: `tools` · `shell` · `systemPrompt` · `shellEnv`
3498
+ - `source`: [`packages/shell/tool-bash/src/index.ts:37`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/shell/tool-bash/src/index.ts)
2718
3499
 
2719
3500
  ```ts config-catalog
2720
3501
  /** Configuration for the bash tool. */
2721
3502
  export interface Config {
2722
- /** Expose `run_in_background` (default true); disabled calls are also rejected. */
3503
+ /**
3504
+ * Expose `run_in_background` while a job registry is composed (default
3505
+ * true); disabled calls are also rejected. Without a registry the tool is
3506
+ * foreground-only regardless.
3507
+ */
2723
3508
  enableRunInBackground?: boolean
3509
+ /**
3510
+ * Keep a foreground command that reaches its timeout running as a
3511
+ * background job instead of killing it (default true). Applies only while
3512
+ * background execution is available: with `enableRunInBackground` false or
3513
+ * no job registry, the executor's deadline kills the command. A foreground
3514
+ * command the registry refuses at its start (admission or a missing
3515
+ * controller) also runs under the deadline kill.
3516
+ */
3517
+ promoteOnTimeout?: boolean
2724
3518
  }
2725
3519
  ```
3520
+ <!-- END GENERATED config-catalog:@deepseek-ai/dsh-tool-bash -->
2726
3521
 
2727
- Source: [`packages/shell/tool-bash/src/index.ts:33`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/shell/tool-bash/src/index.ts)
2728
-
3522
+ <!-- BEGIN GENERATED config-catalog:@deepseek-ai/dsh-tool-bash-persistent -->
2729
3523
  <a id="deepseek-aidsh-tool-bash-persistent"></a>
2730
3524
 
2731
3525
  ## `@deepseek-ai/dsh-tool-bash-persistent`
2732
3526
 
2733
- Requires: `tools` · `terminals`
3527
+ - `inject`: `tools` · `terminals`
3528
+ - `source`: [`packages/shell/tool-bash-persistent/src/index.ts:444`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/shell/tool-bash-persistent/src/index.ts)
2734
3529
 
2735
3530
  ```ts config-catalog
2736
3531
  /** Configuration for the persistent Bash tool. */
@@ -2745,14 +3540,15 @@ export interface Config {
2745
3540
  description?: string
2746
3541
  }
2747
3542
  ```
3543
+ <!-- END GENERATED config-catalog:@deepseek-ai/dsh-tool-bash-persistent -->
2748
3544
 
2749
- Source: [`packages/shell/tool-bash-persistent/src/index.ts:435`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/shell/tool-bash-persistent/src/index.ts)
2750
-
3545
+ <!-- BEGIN GENERATED config-catalog:@deepseek-ai/dsh-tool-fs -->
2751
3546
  <a id="deepseek-aidsh-tool-fs"></a>
2752
3547
 
2753
3548
  ## `@deepseek-ai/dsh-tool-fs`
2754
3549
 
2755
- Requires: `tools` · `fs` · `systemPrompt`
3550
+ - `inject`: `tools` · `fs` · `systemPrompt`
3551
+ - `source`: [`packages/fs/tool-fs/src/index.ts:25`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/fs/tool-fs/src/index.ts)
2756
3552
 
2757
3553
  ```ts config-catalog
2758
3554
  /** Plugin config (all optional — `Config` supplies the defaults). */
@@ -2767,14 +3563,15 @@ export interface Config {
2767
3563
  readStreamMinSize?: number
2768
3564
  }
2769
3565
  ```
3566
+ <!-- END GENERATED config-catalog:@deepseek-ai/dsh-tool-fs -->
2770
3567
 
2771
- Source: [`packages/fs/tool-fs/src/index.ts:25`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/fs/tool-fs/src/index.ts)
2772
-
3568
+ <!-- BEGIN GENERATED config-catalog:@deepseek-ai/dsh-tool-fs-search -->
2773
3569
  <a id="deepseek-aidsh-tool-fs-search"></a>
2774
3570
 
2775
3571
  ## `@deepseek-ai/dsh-tool-fs-search`
2776
3572
 
2777
- Requires: `tools` · `systemPrompt` · `subprocess`
3573
+ - `inject`: `tools` · `systemPrompt` · `subprocess`
3574
+ - `source`: [`packages/fs/tool-fs-search/src/index.ts:73`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/fs/tool-fs-search/src/index.ts)
2778
3575
 
2779
3576
  ```ts config-catalog
2780
3577
  /** Plugin config; over-cap glob sampling is an explicit deployment choice and the remaining fields have defaults. */
@@ -2802,14 +3599,15 @@ export interface Config {
2802
3599
  timeoutMs?: number
2803
3600
  }
2804
3601
  ```
3602
+ <!-- END GENERATED config-catalog:@deepseek-ai/dsh-tool-fs-search -->
2805
3603
 
2806
- Source: [`packages/fs/tool-fs-search/src/index.ts:73`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/fs/tool-fs-search/src/index.ts)
2807
-
3604
+ <!-- BEGIN GENERATED config-catalog:@deepseek-ai/dsh-tool-goal -->
2808
3605
  <a id="deepseek-aidsh-tool-goal"></a>
2809
3606
 
2810
3607
  ## `@deepseek-ai/dsh-tool-goal`
2811
3608
 
2812
- Requires: `agents` · `goals` · `tools` · `systemPrompt` · `sessionProjections`
3609
+ - `inject`: `agents` · `goals` · `tools` · `systemPrompt` · `sessionProjections`
3610
+ - `source`: [`packages/goal/tool-goal/src/index.ts:32`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/goal/tool-goal/src/index.ts)
2813
3611
 
2814
3612
  ```ts config-catalog
2815
3613
  /** Model policy and hard lower bounds for goal-state updates. */
@@ -2818,14 +3616,15 @@ export interface Config {
2818
3616
  blockedAfterConsecutiveRounds?: number
2819
3617
  }
2820
3618
  ```
3619
+ <!-- END GENERATED config-catalog:@deepseek-ai/dsh-tool-goal -->
2821
3620
 
2822
- Source: [`packages/goal/tool-goal/src/index.ts:25`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/goal/tool-goal/src/index.ts)
2823
-
3621
+ <!-- BEGIN GENERATED config-catalog:@deepseek-ai/dsh-tool-jobs -->
2824
3622
  <a id="deepseek-aidsh-tool-jobs"></a>
2825
3623
 
2826
3624
  ## `@deepseek-ai/dsh-tool-jobs`
2827
3625
 
2828
- Requires: `tools` · `jobs` · `systemPrompt`
3626
+ - `inject`: `tools` · `jobs` · `systemPrompt`
3627
+ - `source`: [`packages/jobs/tool-jobs/src/index.ts:41`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/jobs/tool-jobs/src/index.ts)
2829
3628
 
2830
3629
  ```ts config-catalog
2831
3630
  /** Configures bounded `job_output` waits and completion-notice delivery. */
@@ -2838,28 +3637,31 @@ export interface Config {
2838
3637
  completionDelivery?: CompletionDelivery
2839
3638
  /**
2840
3639
  * Turns one owner may have opened by completion wakes before the next
2841
- * notice degrades to injection, reset by any user-authored input (default 3).
2842
- * Bounds the self-exciting chain where a woken turn starts the job whose
2843
- * completion wakes it again.
3640
+ * notice degrades to injection, reset by any user-authored input. Absent by
3641
+ * default: every idle completion wakes its owner. Set it to bound the
3642
+ * self-exciting chain where a woken turn starts the job whose completion
3643
+ * wakes it again, at the cost of notices past the cap waiting silently for
3644
+ * the next user input.
2844
3645
  */
2845
3646
  maxConsecutiveWakes?: number
2846
3647
  }
2847
3648
 
2848
3649
  /**
2849
- * How an unreported completion reaches an owner that is already idle: `wakeup`
3650
+ * How an uncollected completion reaches an owner that is already idle: `wakeup`
2850
3651
  * opens a turn for it, `quiet` leaves it pending until something else wakes the
2851
3652
  * owner. A busy owner is injected either way.
2852
3653
  */
2853
3654
  export type CompletionDelivery = 'quiet' | 'wakeup'
2854
3655
  ```
3656
+ <!-- END GENERATED config-catalog:@deepseek-ai/dsh-tool-jobs -->
2855
3657
 
2856
- Source: [`packages/jobs/tool-jobs/src/index.ts:31`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/jobs/tool-jobs/src/index.ts)
2857
-
3658
+ <!-- BEGIN GENERATED config-catalog:@deepseek-ai/dsh-tool-lsp -->
2858
3659
  <a id="deepseek-aidsh-tool-lsp"></a>
2859
3660
 
2860
3661
  ## `@deepseek-ai/dsh-tool-lsp`
2861
3662
 
2862
- Requires: `tools` · `lsp` · `systemPrompt`
3663
+ - `inject`: `tools` · `lsp` · `systemPrompt`
3664
+ - `source`: [`packages/lsp/tool-lsp/src/index.ts:57`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/lsp/tool-lsp/src/index.ts)
2863
3665
 
2864
3666
  ```ts config-catalog
2865
3667
  /** Plugin configuration: result caps and the timeout budget. */
@@ -2872,14 +3674,15 @@ export interface Config {
2872
3674
  timeoutMs?: number
2873
3675
  }
2874
3676
  ```
3677
+ <!-- END GENERATED config-catalog:@deepseek-ai/dsh-tool-lsp -->
2875
3678
 
2876
- Source: [`packages/lsp/tool-lsp/src/index.ts:57`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/lsp/tool-lsp/src/index.ts)
2877
-
3679
+ <!-- BEGIN GENERATED config-catalog:@deepseek-ai/dsh-tool-present -->
2878
3680
  <a id="deepseek-aidsh-tool-present"></a>
2879
3681
 
2880
3682
  ## `@deepseek-ai/dsh-tool-present`
2881
3683
 
2882
- Requires: `tools` · `fs` · `sessionProjections`
3684
+ - `inject`: `tools` · `fs` · `sessionProjections`
3685
+ - `source`: [`packages/deliverables/tool-present/src/index.ts:15`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/deliverables/tool-present/src/index.ts)
2883
3686
 
2884
3687
  ```ts config-catalog
2885
3688
  /** Per-call delivery limit. */
@@ -2888,30 +3691,45 @@ export interface Config {
2888
3691
  maxFiles: number
2889
3692
  }
2890
3693
  ```
3694
+ <!-- END GENERATED config-catalog:@deepseek-ai/dsh-tool-present -->
2891
3695
 
2892
- Source: [`packages/fs/tool-present/src/index.ts:15`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/fs/tool-present/src/index.ts)
2893
-
3696
+ <!-- BEGIN GENERATED config-catalog:@deepseek-ai/dsh-tool-pwsh -->
2894
3697
  <a id="deepseek-aidsh-tool-pwsh"></a>
2895
3698
 
2896
3699
  ## `@deepseek-ai/dsh-tool-pwsh`
2897
3700
 
2898
- Requires: `tools` · `shell` · `systemPrompt` · `shellEnv`
3701
+ - `inject`: `tools` · `shell` · `systemPrompt` · `shellEnv`
3702
+ - `source`: [`packages/shell/tool-pwsh/src/index.ts:54`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/shell/tool-pwsh/src/index.ts)
2899
3703
 
2900
3704
  ```ts config-catalog
2901
3705
  /** Configuration for the pwsh tool. */
2902
3706
  export interface Config {
2903
- /** Expose `run_in_background` (default true); disabled calls are also rejected. */
3707
+ /**
3708
+ * Expose `run_in_background` while a job registry is composed (default
3709
+ * true); disabled calls are also rejected. Without a registry the tool is
3710
+ * foreground-only regardless.
3711
+ */
2904
3712
  enableRunInBackground?: boolean
3713
+ /**
3714
+ * Keep a foreground command that reaches its timeout running as a
3715
+ * background job instead of killing it (default true). Applies only while
3716
+ * background execution is available: with `enableRunInBackground` false or
3717
+ * no job registry, the executor's deadline kills the command. A foreground
3718
+ * command the registry refuses at its start (admission or a missing
3719
+ * controller) also runs under the deadline kill.
3720
+ */
3721
+ promoteOnTimeout?: boolean
2905
3722
  }
2906
3723
  ```
3724
+ <!-- END GENERATED config-catalog:@deepseek-ai/dsh-tool-pwsh -->
2907
3725
 
2908
- Source: [`packages/shell/tool-pwsh/src/index.ts:51`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/shell/tool-pwsh/src/index.ts)
2909
-
3726
+ <!-- BEGIN GENERATED config-catalog:@deepseek-ai/dsh-tool-pwsh-persistent -->
2910
3727
  <a id="deepseek-aidsh-tool-pwsh-persistent"></a>
2911
3728
 
2912
3729
  ## `@deepseek-ai/dsh-tool-pwsh-persistent`
2913
3730
 
2914
- Requires: `tools` · `terminals`
3731
+ - `inject`: `tools` · `terminals`
3732
+ - `source`: [`packages/shell/tool-pwsh-persistent/src/index.ts:457`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/shell/tool-pwsh-persistent/src/index.ts)
2915
3733
 
2916
3734
  ```ts config-catalog
2917
3735
  /** Configuration for the persistent pwsh tool. */
@@ -2926,14 +3744,15 @@ export interface Config {
2926
3744
  description?: string
2927
3745
  }
2928
3746
  ```
3747
+ <!-- END GENERATED config-catalog:@deepseek-ai/dsh-tool-pwsh-persistent -->
2929
3748
 
2930
- Source: [`packages/shell/tool-pwsh-persistent/src/index.ts:472`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/shell/tool-pwsh-persistent/src/index.ts)
2931
-
3749
+ <!-- BEGIN GENERATED config-catalog:@deepseek-ai/dsh-tool-ralph -->
2932
3750
  <a id="deepseek-aidsh-tool-ralph"></a>
2933
3751
 
2934
3752
  ## `@deepseek-ai/dsh-tool-ralph`
2935
3753
 
2936
- Requires: `tools` · `workflowEngine` · `subagents` · `systemPrompt`
3754
+ - `inject`: `tools` · `workflowEngine` · `subagents` · `systemPrompt`
3755
+ - `source`: [`packages/workflow/tool-ralph/src/index.ts:21`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/workflow/tool-ralph/src/index.ts)
2937
3756
 
2938
3757
  ```ts config-catalog
2939
3758
  /** Deployment policy for the fixed Ralph workflow. */
@@ -2948,14 +3767,15 @@ export interface Config {
2948
3767
  maxResultChars?: number
2949
3768
  }
2950
3769
  ```
3770
+ <!-- END GENERATED config-catalog:@deepseek-ai/dsh-tool-ralph -->
2951
3771
 
2952
- Source: [`packages/workflow/tool-ralph/src/index.ts:21`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/workflow/tool-ralph/src/index.ts)
2953
-
3772
+ <!-- BEGIN GENERATED config-catalog:@deepseek-ai/dsh-tool-session-query -->
2954
3773
  <a id="deepseek-aidsh-tool-session-query"></a>
2955
3774
 
2956
3775
  ## `@deepseek-ai/dsh-tool-session-query`
2957
3776
 
2958
- Requires: `tools` · `systemPrompt` · `sessionQuery` · `sessionProjections`
3777
+ - `inject`: `tools` · `systemPrompt` · `sessionQuery` · `sessionProjections`
3778
+ - `source`: [`packages/session-query/tool-session-query/src/index.ts:28`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/session-query/tool-session-query/src/index.ts)
2959
3779
 
2960
3780
  ```ts config-catalog
2961
3781
  /** Deployment-owned search count and timeout bounds. */
@@ -2966,14 +3786,15 @@ export interface Config {
2966
3786
  searchTimeoutMs?: number
2967
3787
  }
2968
3788
  ```
3789
+ <!-- END GENERATED config-catalog:@deepseek-ai/dsh-tool-session-query -->
2969
3790
 
2970
- Source: [`packages/session-query/tool-session-query/src/index.ts:28`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/session-query/tool-session-query/src/index.ts)
2971
-
3791
+ <!-- BEGIN GENERATED config-catalog:@deepseek-ai/dsh-tool-skill -->
2972
3792
  <a id="deepseek-aidsh-tool-skill"></a>
2973
3793
 
2974
3794
  ## `@deepseek-ai/dsh-tool-skill`
2975
3795
 
2976
- Requires: `agents` · `tools` · `skills`
3796
+ - `inject`: `agents` · `tools` · `skills`
3797
+ - `source`: [`packages/skill/tool-skill/src/index.ts:61`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/skill/tool-skill/src/index.ts)
2977
3798
 
2978
3799
  ```ts config-catalog
2979
3800
  /** Model-facing skill catalog configuration. */
@@ -2982,14 +3803,15 @@ export interface Config {
2982
3803
  catalogDescriptionMaxLength?: number
2983
3804
  }
2984
3805
  ```
3806
+ <!-- END GENERATED config-catalog:@deepseek-ai/dsh-tool-skill -->
2985
3807
 
2986
- Source: [`packages/skill/tool-skill/src/index.ts:61`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/skill/tool-skill/src/index.ts)
2987
-
3808
+ <!-- BEGIN GENERATED config-catalog:@deepseek-ai/dsh-tool-str-replace-editor -->
2988
3809
  <a id="deepseek-aidsh-tool-str-replace-editor"></a>
2989
3810
 
2990
3811
  ## `@deepseek-ai/dsh-tool-str-replace-editor`
2991
3812
 
2992
- Requires: `tools` · `fs`
3813
+ - `inject`: `tools` · `fs`
3814
+ - `source`: [`packages/fs/tool-str-replace-editor/src/index.ts:506`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/fs/tool-str-replace-editor/src/index.ts)
2993
3815
 
2994
3816
  ```ts config-catalog
2995
3817
  /** Configuration for the string-replacement editor tool. */
@@ -3000,14 +3822,16 @@ export interface Config {
3000
3822
  description?: string
3001
3823
  }
3002
3824
  ```
3825
+ <!-- END GENERATED config-catalog:@deepseek-ai/dsh-tool-str-replace-editor -->
3003
3826
 
3004
- Source: [`packages/fs/tool-str-replace-editor/src/index.ts:505`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/fs/tool-str-replace-editor/src/index.ts)
3005
-
3827
+ <!-- BEGIN GENERATED config-catalog:@deepseek-ai/dsh-tool-subagent -->
3006
3828
  <a id="deepseek-aidsh-tool-subagent"></a>
3007
3829
 
3008
3830
  ## `@deepseek-ai/dsh-tool-subagent`
3009
3831
 
3010
- Requires: `tools` · `subagents` · `systemPrompt` · `sessionProjections`
3832
+ - `inject`: `tools` · `subagents` · `systemPrompt` · `sessionProjections`
3833
+ - `refs`: [`AgentOptions`](./subsystems/core.md)
3834
+ - `source`: [`packages/subagent/tool-subagent/src/index.ts:48`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/subagent/tool-subagent/src/index.ts)
3011
3835
 
3012
3836
  ```ts config-catalog
3013
3837
  /** Config: which registered provider this tool delegates to, plus child defaults. */
@@ -3057,27 +3881,27 @@ export interface Config {
3057
3881
  deny?: string[]
3058
3882
  }
3059
3883
  /**
3060
- * Maximum child depth: a non-negative safe integer (default `3`; `0` forbids
3061
- * delegation entirely), or `'provider-managed'` to send no cap. A numeric cap
3884
+ * Maximum child depth: a non-negative safe integer (`0` forbids delegation),
3885
+ * or `'provider-managed'` to send no cap. A numeric cap
3062
3886
  * requires the provider's `depthLimit` capability (mount fails loud
3063
3887
  * otherwise). The provider checks the calling agent's current depth at every
3064
3888
  * start; the tool remains model-visible so runtime policy owns rejection.
3065
3889
  * `'provider-managed'` is for an out-of-process provider whose recursion
3066
- * budget belongs to the child runtime or its own deployment.
3890
+ * budget belongs to the child runtime or its own deployment. Omission reads
3891
+ * the current Host subagent depth setting (default `1`) at each delegation.
3067
3892
  */
3068
3893
  maxDepth?: number | 'provider-managed'
3069
3894
  }
3070
3895
  ```
3896
+ <!-- END GENERATED config-catalog:@deepseek-ai/dsh-tool-subagent -->
3071
3897
 
3072
- Depends on: [`AgentOptions`](./subsystems/core.md)
3073
-
3074
- Source: [`packages/subagent/tool-subagent/src/index.ts:48`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/subagent/tool-subagent/src/index.ts)
3075
-
3898
+ <!-- BEGIN GENERATED config-catalog:@deepseek-ai/dsh-tool-terminal -->
3076
3899
  <a id="deepseek-aidsh-tool-terminal"></a>
3077
3900
 
3078
3901
  ## `@deepseek-ai/dsh-tool-terminal`
3079
3902
 
3080
- Requires: `terminals` · `tools` · `systemPrompt`
3903
+ - `inject`: `terminals` · `tools` · `systemPrompt`
3904
+ - `source`: [`packages/terminal/tool-terminal/src/index.ts:36`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/terminal/tool-terminal/src/index.ts)
3081
3905
 
3082
3906
  ```ts config-catalog
3083
3907
  /** Model-facing terminal tool configuration. */
@@ -3088,14 +3912,15 @@ export interface Config {
3088
3912
  maxResultBytes?: number
3089
3913
  }
3090
3914
  ```
3915
+ <!-- END GENERATED config-catalog:@deepseek-ai/dsh-tool-terminal -->
3091
3916
 
3092
- Source: [`packages/terminal/tool-terminal/src/index.ts:35`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/terminal/tool-terminal/src/index.ts)
3093
-
3917
+ <!-- BEGIN GENERATED config-catalog:@deepseek-ai/dsh-tool-todo -->
3094
3918
  <a id="deepseek-aidsh-tool-todo"></a>
3095
3919
 
3096
3920
  ## `@deepseek-ai/dsh-tool-todo`
3097
3921
 
3098
- Requires: `tools` · `sessionProjections`
3922
+ - `inject`: `tools` · `sessionProjections`
3923
+ - `source`: [`packages/todo/tool-todo/src/index.ts:29`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/todo/tool-todo/src/index.ts)
3099
3924
 
3100
3925
  ```ts config-catalog
3101
3926
  /** Model-facing todo tool configuration. */
@@ -3110,14 +3935,15 @@ export interface Config {
3110
3935
  allowParallelInProgress: boolean
3111
3936
  }
3112
3937
  ```
3938
+ <!-- END GENERATED config-catalog:@deepseek-ai/dsh-tool-todo -->
3113
3939
 
3114
- Source: [`packages/todo/tool-todo/src/index.ts:29`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/todo/tool-todo/src/index.ts)
3115
-
3940
+ <!-- BEGIN GENERATED config-catalog:@deepseek-ai/dsh-tool-web -->
3116
3941
  <a id="deepseek-aidsh-tool-web"></a>
3117
3942
 
3118
3943
  ## `@deepseek-ai/dsh-tool-web`
3119
3944
 
3120
- Requires: `tools` · `web` · `systemPrompt`
3945
+ - `inject`: `tools` · `web` · `systemPrompt`
3946
+ - `source`: [`packages/web/tool-web/src/index.ts:37`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/web/tool-web/src/index.ts)
3121
3947
 
3122
3948
  ```ts config-catalog
3123
3949
  /** Plugin config: which web tools to register, search bounds, per-tool budgets, and the fetch output cap. */
@@ -3138,14 +3964,15 @@ export interface Config {
3138
3964
  fetchMaxOutputChars?: number
3139
3965
  }
3140
3966
  ```
3967
+ <!-- END GENERATED config-catalog:@deepseek-ai/dsh-tool-web -->
3141
3968
 
3142
- Source: [`packages/web/tool-web/src/index.ts:37`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/web/tool-web/src/index.ts)
3143
-
3969
+ <!-- BEGIN GENERATED config-catalog:@deepseek-ai/dsh-tool-workflow -->
3144
3970
  <a id="deepseek-aidsh-tool-workflow"></a>
3145
3971
 
3146
3972
  ## `@deepseek-ai/dsh-tool-workflow`
3147
3973
 
3148
- Requires: `tools` · `workflowEngine` · `systemPrompt`
3974
+ - `inject`: `tools` · `workflowEngine` · `systemPrompt`
3975
+ - `source`: [`packages/workflow/tool-workflow/src/index.ts:44`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/workflow/tool-workflow/src/index.ts)
3149
3976
 
3150
3977
  ```ts config-catalog
3151
3978
  /** Config: the model-facing tool name plus result rendering caps. */
@@ -3154,16 +3981,48 @@ export interface Config {
3154
3981
  toolName?: string
3155
3982
  /** Rendered-result ceiling, in characters: a longer JSON value is truncated with a notice (default 50000). */
3156
3983
  maxResultChars?: number
3984
+ /**
3985
+ * Expose `run_in_background` (default true); disabled calls are also
3986
+ * rejected. A background run needs a live `ctx.jobs` registry with a
3987
+ * controller serving the caller (`dsh-jobs-local` plus `dsh-tool-jobs` in
3988
+ * the shipped composition); without one the call fails with the missing
3989
+ * piece named.
3990
+ */
3991
+ enableRunInBackground?: boolean
3157
3992
  }
3158
3993
  ```
3994
+ <!-- END GENERATED config-catalog:@deepseek-ai/dsh-tool-workflow -->
3159
3995
 
3160
- Source: [`packages/workflow/tool-workflow/src/index.ts:32`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/workflow/tool-workflow/src/index.ts)
3996
+ <!-- BEGIN GENERATED config-catalog:@deepseek-ai/dsh-tool-workspace-dependencies -->
3997
+ <a id="deepseek-aidsh-tool-workspace-dependencies"></a>
3998
+
3999
+ ## `@deepseek-ai/dsh-tool-workspace-dependencies`
4000
+
4001
+ - `inject`: `tools`
4002
+ - `source`: [`packages/skill/tool-workspace-dependencies/src/index.ts:15`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/skill/tool-workspace-dependencies/src/index.ts)
4003
+
4004
+ ```ts config-catalog
4005
+ /** Payload location and optional installation directory. */
4006
+ export interface Config {
4007
+ /** Payload directory carrying `runtime.json` and `dependencies/`. */
4008
+ readonly source: string
4009
+ /**
4010
+ * Installation directory under the Harness home. When set, the payload is copied there on the
4011
+ * first call (the Desktop behavior); when omitted, the payload is used in place without copying,
4012
+ * which suits read-only carriers such as container image layers.
4013
+ */
4014
+ readonly root?: string
4015
+ }
4016
+ ```
4017
+ <!-- END GENERATED config-catalog:@deepseek-ai/dsh-tool-workspace-dependencies -->
3161
4018
 
4019
+ <!-- BEGIN GENERATED config-catalog:@deepseek-ai/dsh-tools -->
3162
4020
  <a id="deepseek-aidsh-tools"></a>
3163
4021
 
3164
4022
  ## `@deepseek-ai/dsh-tools`
3165
4023
 
3166
- Requires: `systemPrompt`
4024
+ - `inject`: `systemPrompt`
4025
+ - `source`: [`packages/core/tools/src/index.ts:674`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/core/tools/src/index.ts)
3167
4026
 
3168
4027
  ```ts config-catalog
3169
4028
  /** Plugin config: how the registered tools are presented to the model. */
@@ -3173,7 +4032,7 @@ export interface Config {
3173
4032
  * sends only `run_code` plus a generated SDK prompt and collapses the
3174
4033
  * executor to the same surface (a model-direct call may only name
3175
4034
  * `run_code`; `run_code` SDK sub-dispatches keep every visible tool); `both`
3176
- * sends both forms. PTC mode requires a `ctx.codeRuntime` whose `language`
4035
+ * sends both forms. PTC mode requires a `ctx.ptcRuntime` whose `language`
3177
4036
  * has a registered SDK renderer (TypeScript or Python) and fail prompt
3178
4037
  * assembly when it is absent or has no renderer. Under `ptc`, native names
3179
4038
  * in `toolOrder` are invalid.
@@ -3192,14 +4051,15 @@ export interface Config {
3192
4051
  /** How the registry presents its tools to the model (see {@link Config.mode}). */
3193
4052
  export type ToolPresentationMode = 'native' | 'ptc' | 'both'
3194
4053
  ```
4054
+ <!-- END GENERATED config-catalog:@deepseek-ai/dsh-tools -->
3195
4055
 
3196
- Source: [`packages/core/tools/src/index.ts:647`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/core/tools/src/index.ts)
3197
-
4056
+ <!-- BEGIN GENERATED config-catalog:@deepseek-ai/dsh-typert-loader -->
3198
4057
  <a id="deepseek-aidsh-typert-loader"></a>
3199
4058
 
3200
4059
  ## `@deepseek-ai/dsh-typert-loader`
3201
4060
 
3202
- Requires: `typert` · `loader`
4061
+ - `inject`: `typert` · `loader`
4062
+ - `source`: [`packages/typert/loader/src/index.ts:48`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/typert/loader/src/index.ts)
3203
4063
 
3204
4064
  ```ts config-catalog
3205
4065
  /** Additional package artifacts whose owning plugins are nested behind another Loader entry. */
@@ -3208,13 +4068,15 @@ export interface Config {
3208
4068
  packages?: string[]
3209
4069
  }
3210
4070
  ```
4071
+ <!-- END GENERATED config-catalog:@deepseek-ai/dsh-typert-loader -->
3211
4072
 
3212
- Source: [`packages/typert/loader/src/index.ts:47`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/typert/loader/src/index.ts)
3213
-
4073
+ <!-- BEGIN GENERATED config-catalog:@deepseek-ai/dsh-user-approval -->
3214
4074
  <a id="deepseek-aidsh-user-approval"></a>
3215
4075
 
3216
4076
  ## `@deepseek-ai/dsh-user-approval`
3217
4077
 
4078
+ - `source`: [`packages/interaction/user-approval/src/index.ts:135`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/interaction/user-approval/src/index.ts)
4079
+
3218
4080
  ```ts config-catalog
3219
4081
  /** Plugin config. All optional — `static Config` supplies the defaults. */
3220
4082
  export interface Config {
@@ -3239,13 +4101,15 @@ export interface Config {
3239
4101
  */
3240
4102
  export type ApprovalPolicy = 'ask' | 'never'
3241
4103
  ```
4104
+ <!-- END GENERATED config-catalog:@deepseek-ai/dsh-user-approval -->
3242
4105
 
3243
- Source: [`packages/interaction/user-approval/src/index.ts:127`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/interaction/user-approval/src/index.ts)
3244
-
4106
+ <!-- BEGIN GENERATED config-catalog:@deepseek-ai/dsh-web -->
3245
4107
  <a id="deepseek-aidsh-web"></a>
3246
4108
 
3247
4109
  ## `@deepseek-ai/dsh-web`
3248
4110
 
4111
+ - `source`: [`packages/web/web/src/index.ts:55`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/web/web/src/index.ts)
4112
+
3249
4113
  ```ts config-catalog
3250
4114
  /**
3251
4115
  * Config for the web seam. `searchProvider` / `fetchProvider` pin which provider
@@ -3260,14 +4124,15 @@ export interface WebRuntimeConfig {
3260
4124
  readonly fetchProvider?: string
3261
4125
  }
3262
4126
  ```
4127
+ <!-- END GENERATED config-catalog:@deepseek-ai/dsh-web -->
3263
4128
 
3264
- Source: [`packages/web/web/src/index.ts:55`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/web/web/src/index.ts)
3265
-
4129
+ <!-- BEGIN GENERATED config-catalog:@deepseek-ai/dsh-web-app -->
3266
4130
  <a id="deepseek-aidsh-web-app"></a>
3267
4131
 
3268
4132
  ## `@deepseek-ai/dsh-web-app`
3269
4133
 
3270
- Requires: `webServer`
4134
+ - `inject`: `webServer`
4135
+ - `source`: [`packages/bundle/web-app/src/index.ts:46`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/bundle/web-app/src/index.ts)
3271
4136
 
3272
4137
  ```ts config-catalog
3273
4138
  /** Plugin config: composed deployment settings plus per-invocation command-line values. */
@@ -3283,18 +4148,27 @@ export interface Config {
3283
4148
  * orientation text would be false.
3284
4149
  */
3285
4150
  surfaceContext: boolean
4151
+ /**
4152
+ * Canonical HTTP(S) root to advertise in the printed and opened URL,
4153
+ * `DSH_WEB_URL`, and the web-surface orientation, e.g.
4154
+ * `https://app.example/ui/`, normalized to end in `/`. Advertisement only;
4155
+ * see [public deployments](../README.md#public-deployments). Absent or YAML
4156
+ * `null` advertises the loopback URL.
4157
+ */
4158
+ publicUrl?: string
3286
4159
  /** Explicit `--trusted-host` authorities from this invocation. */
3287
4160
  trustedHosts: string[]
3288
4161
  }
3289
4162
  ```
4163
+ <!-- END GENERATED config-catalog:@deepseek-ai/dsh-web-app -->
3290
4164
 
3291
- Source: [`packages/bundle/web-app/src/index.ts:44`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/bundle/web-app/src/index.ts)
3292
-
4165
+ <!-- BEGIN GENERATED config-catalog:@deepseek-ai/dsh-web-fetch-http -->
3293
4166
  <a id="deepseek-aidsh-web-fetch-http"></a>
3294
4167
 
3295
4168
  ## `@deepseek-ai/dsh-web-fetch-http`
3296
4169
 
3297
- Requires: `web`
4170
+ - `inject`: `web`
4171
+ - `source`: [`packages/web/web-fetch-http/src/index.ts:32`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/web/web-fetch-http/src/index.ts)
3298
4172
 
3299
4173
  ```ts config-catalog
3300
4174
  /** Plugin config: the provider's transport and size limits plus its `User-Agent` (all defaulted). */
@@ -3311,42 +4185,45 @@ export interface Config {
3311
4185
  userAgent?: string
3312
4186
  }
3313
4187
  ```
4188
+ <!-- END GENERATED config-catalog:@deepseek-ai/dsh-web-fetch-http -->
3314
4189
 
3315
- Source: [`packages/web/web-fetch-http/src/index.ts:32`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/web/web-fetch-http/src/index.ts)
3316
-
4190
+ <!-- BEGIN GENERATED config-catalog:@deepseek-ai/dsh-web-search-deepseek -->
3317
4191
  <a id="deepseek-aidsh-web-search-deepseek"></a>
3318
4192
 
3319
4193
  ## `@deepseek-ai/dsh-web-search-deepseek`
3320
4194
 
3321
- Requires: `web`
4195
+ - `inject`: `web`
4196
+ - `refs`: `Volatile` (`@deepseek-ai/cordis`)
4197
+ - `source`: [`packages/web/web-search-deepseek/src/index.ts:49`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/web/web-search-deepseek/src/index.ts)
3322
4198
 
3323
4199
  ```ts config-catalog
3324
4200
  /** Plugin config (all optional — `apply` fills env-var and constant defaults). */
3325
4201
  export interface Config {
3326
4202
  /** Literal DeepSeek API key; prefer {@link apiKeyEnv} so no secret enters configuration files. */
3327
- apiKey?: string
4203
+ apiKey: Volatile<string | undefined>
3328
4204
  /** Credential reference resolved for each search; defaults to `DEEPSEEK_API_KEY`. */
3329
- apiKeyEnv?: string
4205
+ apiKeyEnv: Volatile<string>
3330
4206
  /** Anthropic-compatible endpoint base; `/messages` is appended. */
3331
- baseURL?: string
4207
+ baseURL: Volatile<string | undefined>
3332
4208
  /** Anthropic-format model name. Defaults to `deepseek-v4-flash`. */
3333
- model?: string
4209
+ model: Volatile<string>
3334
4210
  /** `anthropic-version` header value. Defaults to `2023-06-01`. */
3335
- apiVersion?: string
4211
+ apiVersion: Volatile<string>
3336
4212
  /** Upper bound on generated tokens for the Messages request. Defaults to 4096. */
3337
- maxTokens?: number
4213
+ maxTokens: Volatile<number>
3338
4214
  /** Maximum `web_search` server-tool uses per request. Defaults to 5. */
3339
- maxUses?: number
4215
+ maxUses: Volatile<number>
3340
4216
  }
3341
4217
  ```
4218
+ <!-- END GENERATED config-catalog:@deepseek-ai/dsh-web-search-deepseek -->
3342
4219
 
3343
- Source: [`packages/web/web-search-deepseek/src/index.ts:46`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/web/web-search-deepseek/src/index.ts)
3344
-
4220
+ <!-- BEGIN GENERATED config-catalog:@deepseek-ai/dsh-web-search-exa -->
3345
4221
  <a id="deepseek-aidsh-web-search-exa"></a>
3346
4222
 
3347
4223
  ## `@deepseek-ai/dsh-web-search-exa`
3348
4224
 
3349
- Requires: `web`
4225
+ - `inject`: `web`
4226
+ - `source`: [`packages/web/web-search-exa/src/index.ts:35`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/web/web-search-exa/src/index.ts)
3350
4227
 
3351
4228
  ```ts config-catalog
3352
4229
  /** Plugin config (all optional — `apply` fills env-var and constant defaults). */
@@ -3363,14 +4240,15 @@ export interface Config {
3363
4240
  highlightsPerResult?: number
3364
4241
  }
3365
4242
  ```
4243
+ <!-- END GENERATED config-catalog:@deepseek-ai/dsh-web-search-exa -->
3366
4244
 
3367
- Source: [`packages/web/web-search-exa/src/index.ts:35`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/web/web-search-exa/src/index.ts)
3368
-
4245
+ <!-- BEGIN GENERATED config-catalog:@deepseek-ai/dsh-web-search-perplexity -->
3369
4246
  <a id="deepseek-aidsh-web-search-perplexity"></a>
3370
4247
 
3371
4248
  ## `@deepseek-ai/dsh-web-search-perplexity`
3372
4249
 
3373
- Requires: `web`
4250
+ - `inject`: `web`
4251
+ - `source`: [`packages/web/web-search-perplexity/src/index.ts:30`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/web/web-search-perplexity/src/index.ts)
3374
4252
 
3375
4253
  ```ts config-catalog
3376
4254
  /** Plugin config (all optional — `apply` fills env-var and constant defaults). */
@@ -3387,14 +4265,15 @@ export interface Config {
3387
4265
  searchRecency?: 'day' | 'week' | 'month' | 'year'
3388
4266
  }
3389
4267
  ```
4268
+ <!-- END GENERATED config-catalog:@deepseek-ai/dsh-web-search-perplexity -->
3390
4269
 
3391
- Source: [`packages/web/web-search-perplexity/src/index.ts:30`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/web/web-search-perplexity/src/index.ts)
3392
-
4270
+ <!-- BEGIN GENERATED config-catalog:@deepseek-ai/dsh-webhook-github -->
3393
4271
  <a id="deepseek-aidsh-webhook-github"></a>
3394
4272
 
3395
4273
  ## `@deepseek-ai/dsh-webhook-github`
3396
4274
 
3397
- Requires: `webServer` · `webhookRuntime` · `credentials`
4275
+ - `inject`: `webServer` · `webhookRuntime` · `credentials`
4276
+ - `source`: [`packages/webhook/webhook-github/src/index.ts:17`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/webhook/webhook-github/src/index.ts)
3398
4277
 
3399
4278
  ```ts config-catalog
3400
4279
  /** Required GitHub ingress configuration. */
@@ -3409,14 +4288,15 @@ export interface Config {
3409
4288
  readonly maxBodyBytes: number
3410
4289
  }
3411
4290
  ```
4291
+ <!-- END GENERATED config-catalog:@deepseek-ai/dsh-webhook-github -->
3412
4292
 
3413
- Source: [`packages/webhook/webhook-github/src/index.ts:17`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/webhook/webhook-github/src/index.ts)
4293
+ <!-- BEGIN GENERATED config-catalog:@deepseek-ai/dsh-workflow-ptc -->
4294
+ <a id="deepseek-aidsh-workflow-ptc"></a>
3414
4295
 
3415
- <a id="deepseek-aidsh-workflow-worker-thread"></a>
4296
+ ## `@deepseek-ai/dsh-workflow-ptc`
3416
4297
 
3417
- ## `@deepseek-ai/dsh-workflow-worker-thread`
3418
-
3419
- Requires: `subagents`
4298
+ - `inject`: `subagents` · `ptcRuntime` · `sandboxPolicy`
4299
+ - `source`: [`packages/workflow/workflow-ptc/src/index.ts:32`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/workflow/workflow-ptc/src/index.ts)
3420
4300
 
3421
4301
  ```ts config-catalog
3422
4302
  /** Plugin config (all optional — `static Config` supplies the defaults). */
@@ -3429,180 +4309,237 @@ export interface Config {
3429
4309
  maxTotalAgents?: number
3430
4310
  /** Items accepted by a single `parallel()`/`pipeline()` call (default 4096). */
3431
4311
  maxItemsPerCall?: number
3432
- /** vm timeout for the script's initial synchronous slice, inside the worker (default 5000 ms). */
4312
+ /** VM timeout for the script's initial synchronous slice (default 5000 ms). */
3433
4313
  syncTimeoutMs?: number
4314
+ }
4315
+ ```
4316
+ <!-- END GENERATED config-catalog:@deepseek-ai/dsh-workflow-ptc -->
4317
+
4318
+ <!-- BEGIN GENERATED config-catalog:@deepseek-ai/dsh-workspace-changes -->
4319
+ <a id="deepseek-aidsh-workspace-changes"></a>
4320
+
4321
+ ## `@deepseek-ai/dsh-workspace-changes`
4322
+
4323
+ - `inject`: `subprocess`
4324
+ - `source`: [`packages/deliverables/workspace-changes/src/index.ts:33`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/deliverables/workspace-changes/src/index.ts)
4325
+
4326
+ ```ts config-catalog
4327
+ /** Snapshot, capture, and comparison bounds. Invalid values fail plugin load. */
4328
+ export interface Config {
4329
+ /** Milliseconds one git command may run before the turn's record is abandoned. */
4330
+ timeoutMs: number
4331
+ /** Bytes of git output retained per command; a larger diff listing abandons the record. */
4332
+ outputMaxBytes: number
4333
+ /** Maximum files carried by one summary; `total` still reports the complete count. */
4334
+ maxFiles: number
3434
4335
  /**
3435
- * How long after a cancellation an unsettled script may keep running before
3436
- * the run force-settles `cancelled` and its worker is TERMINATED (default
3437
- * 5000 ms); also bounds `dispose()`.
4336
+ * Bytes a file may hold to be captured around a file-tool edit or read from a snapshot for its comparison.
4337
+ * A larger file gets no comparison; one captured around a file-tool edit is also listed without counts.
3438
4338
  */
3439
- disposeGraceMs?: number
4339
+ maxFileBytes: number
4340
+ /** Milliseconds a line comparison may run before it degrades to whole-file replacement. */
4341
+ diffTimeoutMs: number
3440
4342
  }
3441
4343
  ```
3442
-
3443
- Source: [`packages/workflow/workflow-worker-thread/src/index.ts:32`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/workflow/workflow-worker-thread/src/index.ts)
4344
+ <!-- END GENERATED config-catalog:@deepseek-ai/dsh-workspace-changes -->
3444
4345
 
3445
4346
  ## Loadable plugins with no config
3446
4347
 
3447
4348
  These load from a `cordis.yml` entry with no `config:` block; they declare no configuration API.
3448
4349
 
3449
- - `@deepseek-ai/dsh-acp-app` — requires `cmdlineArgs` ([`packages/bundle/acp-app/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/bundle/acp-app/src/index.ts))
3450
- - `@deepseek-ai/dsh-agent` ([`packages/core/agent/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/core/agent/src/index.ts))
3451
- - `@deepseek-ai/dsh-api-remotes` — requires `typertGateway` ([`packages/api/remotes/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/api/remotes/src/index.ts))
3452
- - `@deepseek-ai/dsh-api-workspace-controller` — requires `typert` · `workspaceRegistry` ([`packages/api/workspace-controller/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/api/workspace-controller/src/index.ts))
3453
- - `@deepseek-ai/dsh-authorization` — requires `credentials` ([`packages/credentials/authorization/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/credentials/authorization/src/index.ts))
3454
- - `@deepseek-ai/dsh-client-file-upload` — requires `agents` · `attachments` · `commands` · `connection` ([`packages/client/file-upload/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/client/file-upload/src/index.ts))
3455
- - `@deepseek-ai/dsh-client-locale` ([`packages/client/locale/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/client/locale/src/index.ts))
3456
- - `@deepseek-ai/dsh-client-modules` — requires `loader` ([`packages/client/modules/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/client/modules/src/index.ts))
3457
- - `@deepseek-ai/dsh-client-resources` ([`packages/client/resources/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/client/resources/src/index.ts))
3458
- - `@deepseek-ai/dsh-client-ui-agent-preset` ([`packages/client/ui-agent-preset/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/client/ui-agent-preset/src/index.ts))
3459
- - `@deepseek-ai/dsh-client-ui-approval` ([`packages/client/ui-approval/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/client/ui-approval/src/index.ts))
3460
- - `@deepseek-ai/dsh-client-ui-attachment` ([`packages/client/ui-attachment/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/client/ui-attachment/src/index.ts))
3461
- - `@deepseek-ai/dsh-client-ui-brand-official` ([`packages/client/ui-brand-official/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/client/ui-brand-official/src/index.ts))
3462
- - `@deepseek-ai/dsh-client-ui-chat` ([`packages/client/ui-chat/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/client/ui-chat/src/index.ts))
3463
- - `@deepseek-ai/dsh-client-ui-commands` ([`packages/client/ui-commands/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/client/ui-commands/src/index.ts))
3464
- - `@deepseek-ai/dsh-client-ui-conversation` ([`packages/client/ui-conversation/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/client/ui-conversation/src/index.ts))
3465
- - `@deepseek-ai/dsh-client-ui-cordis` ([`packages/extensions/ui-cordis/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/extensions/ui-cordis/src/index.ts))
3466
- - `@deepseek-ai/dsh-client-ui-deliverables` — requires `systemPrompt` · `connection` · `sessionQuery` · `sessionController` · `workspaceFiles` · `fs` · `sandboxPolicy` ([`packages/client/ui-deliverables/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/client/ui-deliverables/src/index.ts))
3467
- - `@deepseek-ai/dsh-client-ui-directory-picker-browse` ([`packages/client/ui-directory-picker-browse/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/client/ui-directory-picker-browse/src/index.ts))
3468
- - `@deepseek-ai/dsh-client-ui-directory-picker-native` ([`packages/client/ui-directory-picker-native/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/client/ui-directory-picker-native/src/index.ts))
3469
- - `@deepseek-ai/dsh-client-ui-goal` ([`packages/client/ui-goal/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/client/ui-goal/src/index.ts))
3470
- - `@deepseek-ai/dsh-client-ui-input-trigger` ([`packages/client/ui-input-trigger/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/client/ui-input-trigger/src/index.ts))
3471
- - `@deepseek-ai/dsh-client-ui-jobs` ([`packages/client/ui-jobs/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/client/ui-jobs/src/index.ts))
3472
- - `@deepseek-ai/dsh-client-ui-layout` ([`packages/client/ui-layout/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/client/ui-layout/src/index.ts))
3473
- - `@deepseek-ai/dsh-client-ui-message-feedback` ([`packages/client/ui-message-feedback/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/client/ui-message-feedback/src/index.ts))
3474
- - `@deepseek-ai/dsh-client-ui-model-selection` ([`packages/client/ui-model-selection/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/client/ui-model-selection/src/index.ts))
3475
- - `@deepseek-ai/dsh-client-ui-open-in-app` ([`packages/client/ui-open-in-app/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/client/ui-open-in-app/src/index.ts))
3476
- - `@deepseek-ai/dsh-client-ui-permission-presets` ([`packages/client/ui-permission-presets/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/client/ui-permission-presets/src/index.ts))
3477
- - `@deepseek-ai/dsh-client-ui-plan` ([`packages/client/ui-plan/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/client/ui-plan/src/index.ts))
3478
- - `@deepseek-ai/dsh-client-ui-reference` ([`packages/client/ui-reference/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/client/ui-reference/src/index.ts))
3479
- - `@deepseek-ai/dsh-client-ui-renderer` ([`packages/client/ui-renderer/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/client/ui-renderer/src/index.ts))
3480
- - `@deepseek-ai/dsh-client-ui-schedule` ([`packages/client/ui-schedule/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/client/ui-schedule/src/index.ts))
3481
- - `@deepseek-ai/dsh-client-ui-session` ([`packages/client/ui-session/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/client/ui-session/src/index.ts))
3482
- - `@deepseek-ai/dsh-client-ui-settings` ([`packages/client/ui-settings/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/client/ui-settings/src/index.ts))
3483
- - `@deepseek-ai/dsh-client-ui-settings-general` ([`packages/client/ui-settings-general/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/client/ui-settings-general/src/index.ts))
3484
- - `@deepseek-ai/dsh-client-ui-settings-models` ([`packages/client/ui-settings-models/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/client/ui-settings-models/src/index.ts))
3485
- - `@deepseek-ai/dsh-client-ui-settings-plugin-inventory` ([`packages/client/ui-settings-plugin-inventory/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/client/ui-settings-plugin-inventory/src/index.ts))
3486
- - `@deepseek-ai/dsh-client-ui-settings-plugins` ([`packages/client/ui-settings-plugins/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/client/ui-settings-plugins/src/index.ts))
3487
- - `@deepseek-ai/dsh-client-ui-sidebar` ([`packages/client/ui-sidebar/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/client/ui-sidebar/src/index.ts))
3488
- - `@deepseek-ai/dsh-client-ui-sidebar-documentpreview` ([`packages/client/ui-sidebar-documentpreview/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/client/ui-sidebar-documentpreview/src/index.ts))
3489
- - `@deepseek-ai/dsh-client-ui-sidebar-files` ([`packages/client/ui-sidebar-files/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/client/ui-sidebar-files/src/index.ts))
3490
- - `@deepseek-ai/dsh-client-ui-sidebar-right` ([`packages/client/ui-sidebar-right/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/client/ui-sidebar-right/src/index.ts))
3491
- - `@deepseek-ai/dsh-client-ui-skill` ([`packages/client/ui-skill/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/client/ui-skill/src/index.ts))
3492
- - `@deepseek-ai/dsh-client-ui-subagent` ([`packages/client/ui-subagent/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/client/ui-subagent/src/index.ts))
3493
- - `@deepseek-ai/dsh-client-ui-theme` ([`packages/client/ui-theme/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/client/ui-theme/src/index.ts))
3494
- - `@deepseek-ai/dsh-client-ui-tool` ([`packages/client/ui-tool/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/client/ui-tool/src/index.ts))
3495
- - `@deepseek-ai/dsh-client-ui-trajectory` ([`packages/client/ui-trajectory/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/client/ui-trajectory/src/index.ts))
3496
- - `@deepseek-ai/dsh-client-ui-user-questions` ([`packages/client/ui-user-questions/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/client/ui-user-questions/src/index.ts))
3497
- - `@deepseek-ai/dsh-client-ui-workflow-run` ([`packages/client/ui-workflow-run/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/client/ui-workflow-run/src/index.ts))
3498
- - `@deepseek-ai/dsh-client-ui-workspace` ([`packages/client/ui-workspace/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/client/ui-workspace/src/index.ts))
3499
- - `@deepseek-ai/dsh-command-compact` — requires `commands` · `compaction` ([`packages/compaction/command-compact/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/compaction/command-compact/src/index.ts))
3500
- - `@deepseek-ai/dsh-command-feedback` — requires `commands` ([`packages/feedback/command-feedback/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/feedback/command-feedback/src/index.ts))
3501
- - `@deepseek-ai/dsh-command-goal` — requires `commands` · `goals` ([`packages/goal/command-goal/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/goal/command-goal/src/index.ts))
3502
- - `@deepseek-ai/dsh-commands` ([`packages/interaction/commands/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/interaction/commands/src/index.ts))
3503
- - `@deepseek-ai/dsh-cordis-client-runner` ([`packages/extensions/cordis-client-runner/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/extensions/cordis-client-runner/src/index.ts))
3504
- - `@deepseek-ai/dsh-deepseek-llm-api-extensions` ([`packages/llm/deepseek-llm-api-extensions/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/llm/deepseek-llm-api-extensions/src/index.ts))
3505
- - `@deepseek-ai/dsh-experimental-client-ui-agent-team` ([`packages/experimental/client-ui-agent-team/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/experimental/client-ui-agent-team/src/index.ts))
3506
- - `@deepseek-ai/dsh-fs-e2b` — requires `e2b` ([`packages/e2b/fs-e2b/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/e2b/fs-e2b/src/index.ts))
3507
- - `@deepseek-ai/dsh-fs-observation-policy` ([`packages/fs/fs-observation-policy/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/fs/fs-observation-policy/src/index.ts))
3508
- - `@deepseek-ai/dsh-goal-round-driver` — requires `agents` · `goals` · `sessions` ([`packages/goal/goal-round-driver/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/goal/goal-round-driver/src/index.ts))
3509
- - `@deepseek-ai/dsh-host-directory-picker-auto` — requires `webServer` · `loader` ([`packages/host/directory-picker-auto/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/host/directory-picker-auto/src/index.ts))
3510
- - `@deepseek-ai/dsh-host-directory-picker-native` ([`packages/host/directory-picker-native/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/host/directory-picker-native/src/index.ts))
3511
- - `@deepseek-ai/dsh-host-plugin-inventory` — requires `loader` ([`packages/host/plugin-inventory/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/host/plugin-inventory/src/index.ts))
3512
- - `@deepseek-ai/dsh-llm` ([`packages/llm/llm/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/llm/llm/src/index.ts))
3513
- - `@deepseek-ai/dsh-lsp` ([`packages/lsp/lsp/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/lsp/lsp/src/index.ts))
3514
- - `@deepseek-ai/dsh-schedule` — requires `agents` · `sessions` · `tools` · `sessionPersistence` ([`packages/schedule/schedule/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/schedule/schedule/src/index.ts))
3515
- - `@deepseek-ai/dsh-session` ([`packages/core/session/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/core/session/src/index.ts))
3516
- - `@deepseek-ai/dsh-session-checkpoint-policy` — requires `llm` · `sessionPersistence` · `sessions` · `tools` ([`packages/session/session-checkpoint-policy/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/session/session-checkpoint-policy/src/index.ts))
3517
- - `@deepseek-ai/dsh-session-projection` ([`packages/session/session-projection/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/session/session-projection/src/index.ts))
3518
- - `@deepseek-ai/dsh-session-stats` — requires `sessionProjections` ([`packages/session/session-stats/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/session/session-stats/src/index.ts))
3519
- - `@deepseek-ai/dsh-session-turn-outline` — requires `sessionProjections` ([`packages/session/session-turn-outline/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/session/session-turn-outline/src/index.ts))
3520
- - `@deepseek-ai/dsh-skill-badge` — requires `skills` ([`packages/skill/skill-badge/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/skill/skill-badge/src/index.ts))
3521
- - `@deepseek-ai/dsh-storage` ([`packages/storage/storage/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/storage/storage/src/index.ts))
3522
- - `@deepseek-ai/dsh-subagent` ([`packages/subagent/subagent/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/subagent/subagent/src/index.ts))
3523
- - `@deepseek-ai/dsh-subprocess-local` ([`packages/subprocess/subprocess-local/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/subprocess/subprocess-local/src/index.ts))
3524
- - `@deepseek-ai/dsh-terminal` ([`packages/terminal/terminal/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/terminal/terminal/src/index.ts))
3525
- - `@deepseek-ai/dsh-tool-ask-user` — requires `tools` · `userQuestions` ([`packages/interaction/tool-ask-user/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/interaction/tool-ask-user/src/index.ts))
3526
- - `@deepseek-ai/dsh-tool-call-timeout-policy` — requires `tools` ([`packages/guard/timeout-policy/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/guard/timeout-policy/src/index.ts))
3527
- - `@deepseek-ai/dsh-tool-cordis` — requires `tools` · `systemPrompt` · `dynamicCordisRunner` · `cordisInspect` ([`packages/extensions/tool-cordis/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/extensions/tool-cordis/src/index.ts))
3528
- - `@deepseek-ai/dsh-tool-subagent-control` — requires `tools` · `subagents` ([`packages/subagent/tool-subagent-control/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/subagent/tool-subagent-control/src/index.ts))
3529
- - `@deepseek-ai/dsh-user-questions` ([`packages/interaction/user-questions/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/interaction/user-questions/src/index.ts))
3530
- - `@deepseek-ai/dsh-webhook` — requires `agents` · `agentDefaultModel` · `agentPresets` · `permissionPresets` · `sessionTitle` · `workspaceRegistry` ([`packages/webhook/webhook/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/webhook/webhook/src/index.ts))
3531
- - `@deepseek-ai/dsh-workspace` — requires `storageDomain` · `sessionPersistence` ([`packages/workspace/workspace/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/workspace/workspace/src/index.ts))
4350
+ <!-- BEGIN GENERATED config-catalog:no-config -->
4351
+ | `package` | `inject` | `source` |
4352
+ | --- | --- | --- |
4353
+ | `@deepseek-ai/dsh-acp-app` | `cmdlineArgs` | [`packages/bundle/acp-app/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/bundle/acp-app/src/index.ts) |
4354
+ | `@deepseek-ai/dsh-agent` | — | [`packages/core/agent/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/core/agent/src/index.ts) |
4355
+ | `@deepseek-ai/dsh-api-account-controller` | `deepseekAccount` · `agents` | [`packages/api/account-controller/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/api/account-controller/src/index.ts) |
4356
+ | `@deepseek-ai/dsh-api-remotes` | `typertGateway` | [`packages/api/remotes/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/api/remotes/src/index.ts) |
4357
+ | `@deepseek-ai/dsh-authorization` | `credentials` | [`packages/credentials/authorization/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/credentials/authorization/src/index.ts) |
4358
+ | `@deepseek-ai/dsh-browser-use` | — | [`packages/browser-use/browser-use/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/browser-use/browser-use/src/index.ts) |
4359
+ | `@deepseek-ai/dsh-client-file-upload` | `agents` · `attachments` · `commands` · `connection` | [`packages/client/file-upload/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/client/file-upload/src/index.ts) |
4360
+ | `@deepseek-ai/dsh-client-locale` | — | [`packages/client/locale/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/client/locale/src/index.ts) |
4361
+ | `@deepseek-ai/dsh-client-modules` | `loader` | [`packages/client/modules/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/client/modules/src/index.ts) |
4362
+ | `@deepseek-ai/dsh-client-resources` | — | [`packages/client/resources/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/client/resources/src/index.ts) |
4363
+ | `@deepseek-ai/dsh-client-ui-agent-preset` | — | [`packages/client/ui-agent-preset/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/client/ui-agent-preset/src/index.ts) |
4364
+ | `@deepseek-ai/dsh-client-ui-approval` | — | [`packages/client/ui-approval/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/client/ui-approval/src/index.ts) |
4365
+ | `@deepseek-ai/dsh-client-ui-attachment` | — | [`packages/client/ui-attachment/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/client/ui-attachment/src/index.ts) |
4366
+ | `@deepseek-ai/dsh-client-ui-brand-official` | — | [`packages/client/ui-brand-official/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/client/ui-brand-official/src/index.ts) |
4367
+ | `@deepseek-ai/dsh-client-ui-chat` | — | [`packages/client/ui-chat/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/client/ui-chat/src/index.ts) |
4368
+ | `@deepseek-ai/dsh-client-ui-commands` | — | [`packages/client/ui-commands/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/client/ui-commands/src/index.ts) |
4369
+ | `@deepseek-ai/dsh-client-ui-conversation` | — | [`packages/client/ui-conversation/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/client/ui-conversation/src/index.ts) |
4370
+ | `@deepseek-ai/dsh-client-ui-cordis` | — | [`packages/extensions/ui-cordis/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/extensions/ui-cordis/src/index.ts) |
4371
+ | `@deepseek-ai/dsh-client-ui-deliverables` | `systemPrompt` · `connection` · `sessionQuery` · `sessionController` · `workspaceFiles` · `fs` · `sandboxPolicy` · `workspaceChanges` | [`packages/client/ui-deliverables/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/client/ui-deliverables/src/index.ts) |
4372
+ | `@deepseek-ai/dsh-client-ui-directory-picker-browse` | — | [`packages/client/ui-directory-picker-browse/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/client/ui-directory-picker-browse/src/index.ts) |
4373
+ | `@deepseek-ai/dsh-client-ui-directory-picker-native` | — | [`packages/client/ui-directory-picker-native/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/client/ui-directory-picker-native/src/index.ts) |
4374
+ | `@deepseek-ai/dsh-client-ui-goal` | — | [`packages/client/ui-goal/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/client/ui-goal/src/index.ts) |
4375
+ | `@deepseek-ai/dsh-client-ui-input-trigger` | — | [`packages/client/ui-input-trigger/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/client/ui-input-trigger/src/index.ts) |
4376
+ | `@deepseek-ai/dsh-client-ui-jobs` | — | [`packages/client/ui-jobs/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/client/ui-jobs/src/index.ts) |
4377
+ | `@deepseek-ai/dsh-client-ui-layout` | — | [`packages/client/ui-layout/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/client/ui-layout/src/index.ts) |
4378
+ | `@deepseek-ai/dsh-client-ui-message-feedback` | — | [`packages/client/ui-message-feedback/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/client/ui-message-feedback/src/index.ts) |
4379
+ | `@deepseek-ai/dsh-client-ui-model-selection` | — | [`packages/client/ui-model-selection/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/client/ui-model-selection/src/index.ts) |
4380
+ | `@deepseek-ai/dsh-client-ui-open-in-app` | — | [`packages/client/ui-open-in-app/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/client/ui-open-in-app/src/index.ts) |
4381
+ | `@deepseek-ai/dsh-client-ui-permission-presets` | — | [`packages/client/ui-permission-presets/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/client/ui-permission-presets/src/index.ts) |
4382
+ | `@deepseek-ai/dsh-client-ui-plan` | — | [`packages/client/ui-plan/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/client/ui-plan/src/index.ts) |
4383
+ | `@deepseek-ai/dsh-client-ui-reference` | — | [`packages/client/ui-reference/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/client/ui-reference/src/index.ts) |
4384
+ | `@deepseek-ai/dsh-client-ui-renderer` | — | [`packages/client/ui-renderer/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/client/ui-renderer/src/index.ts) |
4385
+ | `@deepseek-ai/dsh-client-ui-schedule` | — | [`packages/client/ui-schedule/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/client/ui-schedule/src/index.ts) |
4386
+ | `@deepseek-ai/dsh-client-ui-session` | — | [`packages/client/ui-session/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/client/ui-session/src/index.ts) |
4387
+ | `@deepseek-ai/dsh-client-ui-settings` | — | [`packages/client/ui-settings/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/client/ui-settings/src/index.ts) |
4388
+ | `@deepseek-ai/dsh-client-ui-settings-agent-loop` | — | [`packages/client/ui-settings-agent-loop/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/client/ui-settings-agent-loop/src/index.ts) |
4389
+ | `@deepseek-ai/dsh-client-ui-settings-general` | — | [`packages/client/ui-settings-general/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/client/ui-settings-general/src/index.ts) |
4390
+ | `@deepseek-ai/dsh-client-ui-settings-plugin-inventory` | — | [`packages/client/ui-settings-plugin-inventory/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/client/ui-settings-plugin-inventory/src/index.ts) |
4391
+ | `@deepseek-ai/dsh-client-ui-settings-plugins` | — | [`packages/client/ui-settings-plugins/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/client/ui-settings-plugins/src/index.ts) |
4392
+ | `@deepseek-ai/dsh-client-ui-settings-session-log` | — | [`packages/client/ui-settings-session-log/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/client/ui-settings-session-log/src/index.ts) |
4393
+ | `@deepseek-ai/dsh-client-ui-settings-shell` | — | [`packages/client/ui-settings-shell/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/client/ui-settings-shell/src/index.ts) |
4394
+ | `@deepseek-ai/dsh-client-ui-settings-subagent` | — | [`packages/client/ui-settings-subagent/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/client/ui-settings-subagent/src/index.ts) |
4395
+ | `@deepseek-ai/dsh-client-ui-settings-web-search` | — | [`packages/client/ui-settings-web-search/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/client/ui-settings-web-search/src/index.ts) |
4396
+ | `@deepseek-ai/dsh-client-ui-shortcuts` | — | [`packages/client/ui-shortcuts/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/client/ui-shortcuts/src/index.ts) |
4397
+ | `@deepseek-ai/dsh-client-ui-sidebar` | — | [`packages/client/ui-sidebar/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/client/ui-sidebar/src/index.ts) |
4398
+ | `@deepseek-ai/dsh-client-ui-sidebar-browser` | — | [`packages/client/ui-sidebar-browser/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/client/ui-sidebar-browser/src/index.ts) |
4399
+ | `@deepseek-ai/dsh-client-ui-sidebar-files` | — | [`packages/client/ui-sidebar-files/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/client/ui-sidebar-files/src/index.ts) |
4400
+ | `@deepseek-ai/dsh-client-ui-sidebar-right` | — | [`packages/client/ui-sidebar-right/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/client/ui-sidebar-right/src/index.ts) |
4401
+ | `@deepseek-ai/dsh-client-ui-sidebar-terminal` | — | [`packages/client/ui-sidebar-terminal/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/client/ui-sidebar-terminal/src/index.ts) |
4402
+ | `@deepseek-ai/dsh-client-ui-skill` | — | [`packages/client/ui-skill/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/client/ui-skill/src/index.ts) |
4403
+ | `@deepseek-ai/dsh-client-ui-subagent` | — | [`packages/client/ui-subagent/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/client/ui-subagent/src/index.ts) |
4404
+ | `@deepseek-ai/dsh-client-ui-tool` | — | [`packages/client/ui-tool/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/client/ui-tool/src/index.ts) |
4405
+ | `@deepseek-ai/dsh-client-ui-trajectory` | — | [`packages/client/ui-trajectory/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/client/ui-trajectory/src/index.ts) |
4406
+ | `@deepseek-ai/dsh-client-ui-user-questions` | — | [`packages/client/ui-user-questions/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/client/ui-user-questions/src/index.ts) |
4407
+ | `@deepseek-ai/dsh-client-ui-workflow-run` | — | [`packages/client/ui-workflow-run/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/client/ui-workflow-run/src/index.ts) |
4408
+ | `@deepseek-ai/dsh-client-ui-workspace` | — | [`packages/client/ui-workspace/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/client/ui-workspace/src/index.ts) |
4409
+ | `@deepseek-ai/dsh-command-compact` | `commands` · `compaction` | [`packages/compaction/command-compact/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/compaction/command-compact/src/index.ts) |
4410
+ | `@deepseek-ai/dsh-command-feedback` | `commands` | [`packages/feedback/command-feedback/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/feedback/command-feedback/src/index.ts) |
4411
+ | `@deepseek-ai/dsh-command-goal` | `commands` · `goals` | [`packages/goal/command-goal/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/goal/command-goal/src/index.ts) |
4412
+ | `@deepseek-ai/dsh-commands` | — | [`packages/interaction/commands/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/interaction/commands/src/index.ts) |
4413
+ | `@deepseek-ai/dsh-compaction-image-offload` | `agents` · `sessions` | [`packages/compaction/compaction-image-offload/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/compaction/compaction-image-offload/src/index.ts) |
4414
+ | `@deepseek-ai/dsh-computer-use` | — | [`packages/computer-use/computer-use/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/computer-use/computer-use/src/index.ts) |
4415
+ | `@deepseek-ai/dsh-config-editor` | `loader` · `profileContext` | [`packages/boot/config-editor/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/boot/config-editor/src/index.ts) |
4416
+ | `@deepseek-ai/dsh-cordis-client-runner` | — | [`packages/extensions/cordis-client-runner/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/extensions/cordis-client-runner/src/index.ts) |
4417
+ | `@deepseek-ai/dsh-deepseek-llm-api-extensions` | — | [`packages/llm/deepseek-llm-api-extensions/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/llm/deepseek-llm-api-extensions/src/index.ts) |
4418
+ | `@deepseek-ai/dsh-experimental-auto-review` | `approval` · `llm` · `permissionPresets` · `sessions` · `tools` | [`packages/experimental/auto-review/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/experimental/auto-review/src/index.ts) |
4419
+ | `@deepseek-ai/dsh-experimental-client-ui-agent-team` | — | [`packages/experimental/client-ui-agent-team/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/experimental/client-ui-agent-team/src/index.ts) |
4420
+ | `@deepseek-ai/dsh-experimental-client-ui-claude-code-mods` | — | [`packages/experimental/client-ui-claude-code-mods/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/experimental/client-ui-claude-code-mods/src/index.ts) |
4421
+ | `@deepseek-ai/dsh-experimental-client-ui-voice-input` | — | [`packages/experimental/client-ui-voice-input/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/experimental/client-ui-voice-input/src/index.ts) |
4422
+ | `@deepseek-ai/dsh-experimental-computer-use-cua-driver-native` | `computerUse` · `tools` · `systemPrompt` | [`packages/experimental/computer-use-cua-driver-native/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/experimental/computer-use-cua-driver-native/src/index.ts) |
4423
+ | `@deepseek-ai/dsh-experimental-session-inspector` | — | [`packages/experimental/session-inspector/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/experimental/session-inspector/src/index.ts) |
4424
+ | `@deepseek-ai/dsh-fs-observation-policy` | — | [`packages/fs/fs-observation-policy/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/fs/fs-observation-policy/src/index.ts) |
4425
+ | `@deepseek-ai/dsh-fs-ssh` | `ssh` · `sandboxPolicy` | [`packages/ssh/fs-ssh/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/ssh/fs-ssh/src/index.ts) |
4426
+ | `@deepseek-ai/dsh-goal-round-driver` | `agents` · `goals` · `sessions` | [`packages/goal/goal-round-driver/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/goal/goal-round-driver/src/index.ts) |
4427
+ | `@deepseek-ai/dsh-host-directory-picker-auto` | `webServer` · `loader` | [`packages/host/directory-picker-auto/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/host/directory-picker-auto/src/index.ts) |
4428
+ | `@deepseek-ai/dsh-host-directory-picker-native` | — | [`packages/host/directory-picker-native/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/host/directory-picker-native/src/index.ts) |
4429
+ | `@deepseek-ai/dsh-host-plugin-inventory` | `loader` | [`packages/host/plugin-inventory/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/host/plugin-inventory/src/index.ts) |
4430
+ | `@deepseek-ai/dsh-llm` | — | [`packages/llm/llm/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/llm/llm/src/index.ts) |
4431
+ | `@deepseek-ai/dsh-lsp` | — | [`packages/lsp/lsp/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/lsp/lsp/src/index.ts) |
4432
+ | `@deepseek-ai/dsh-mcp-resources` | `tools` | [`packages/mcp/mcp-resources/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/mcp/mcp-resources/src/index.ts) |
4433
+ | `@deepseek-ai/dsh-otel` | — | [`packages/telemetry/otel/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/telemetry/otel/src/index.ts) |
4434
+ | `@deepseek-ai/dsh-sandbox-ssh` | `ssh` | [`packages/ssh/sandbox-ssh/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/ssh/sandbox-ssh/src/index.ts) |
4435
+ | `@deepseek-ai/dsh-session` | — | [`packages/core/session/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/core/session/src/index.ts) |
4436
+ | `@deepseek-ai/dsh-session-checkpoint-policy` | `llm` · `sessionPersistence` · `sessions` · `tools` | [`packages/session/session-checkpoint-policy/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/session/session-checkpoint-policy/src/index.ts) |
4437
+ | `@deepseek-ai/dsh-session-projection` | — | [`packages/session/session-projection/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/session/session-projection/src/index.ts) |
4438
+ | `@deepseek-ai/dsh-session-stats` | `sessionProjections` | [`packages/session/session-stats/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/session/session-stats/src/index.ts) |
4439
+ | `@deepseek-ai/dsh-session-turn-outline` | `sessionProjections` | [`packages/session/session-turn-outline/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/session/session-turn-outline/src/index.ts) |
4440
+ | `@deepseek-ai/dsh-settings` | `configEditor` · `profileContext` | [`packages/settings/settings/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/settings/settings/src/index.ts) |
4441
+ | `@deepseek-ai/dsh-skill-badge` | `skills` | [`packages/skill/skill-badge/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/skill/skill-badge/src/index.ts) |
4442
+ | `@deepseek-ai/dsh-storage` | — | [`packages/storage/storage/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/storage/storage/src/index.ts) |
4443
+ | `@deepseek-ai/dsh-subprocess-local` | — | [`packages/subprocess/subprocess-local/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/subprocess/subprocess-local/src/index.ts) |
4444
+ | `@deepseek-ai/dsh-subprocess-ssh` | `ssh` | [`packages/ssh/subprocess-ssh/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/ssh/subprocess-ssh/src/index.ts) |
4445
+ | `@deepseek-ai/dsh-terminal` | — | [`packages/terminal/terminal/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/terminal/terminal/src/index.ts) |
4446
+ | `@deepseek-ai/dsh-tool-call-timeout-policy` | `tools` | [`packages/guard/timeout-policy/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/guard/timeout-policy/src/index.ts) |
4447
+ | `@deepseek-ai/dsh-tool-cordis` | `tools` · `cordisInspect` | [`packages/extensions/tool-cordis/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/extensions/tool-cordis/src/index.ts) |
4448
+ | `@deepseek-ai/dsh-tool-schedule` | `tools` | [`packages/schedule/tool-schedule/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/schedule/tool-schedule/src/index.ts) |
4449
+ | `@deepseek-ai/dsh-tool-subagent-control` | `tools` · `subagents` | [`packages/subagent/tool-subagent-control/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/subagent/tool-subagent-control/src/index.ts) |
4450
+ | `@deepseek-ai/dsh-user-questions` | — | [`packages/interaction/user-questions/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/interaction/user-questions/src/index.ts) |
4451
+ | `@deepseek-ai/dsh-webhook` | `agents` · `agentDefaultModel` · `agentPresets` · `permissionPresets` · `sessionTitle` · `workspaceRegistry` | [`packages/webhook/webhook/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/webhook/webhook/src/index.ts) |
4452
+ | `@deepseek-ai/dsh-workspace` | `storageDomain` · `sessionPersistence` | [`packages/workspace/workspace/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/workspace/workspace/src/index.ts) |
4453
+ <!-- END GENERATED config-catalog:no-config -->
3532
4454
 
3533
4455
  ## Seam packages (not directly loadable)
3534
4456
 
3535
4457
  Abstract service classes — a deployment loads a concrete implementation package instead ([capability seams](https://github.com/deepseek-ai/deepseek-harness/blob/master/.agents/notes/implemented/architecture/2026-06-13-capability-seams.md)).
3536
4458
 
3537
- - `@deepseek-ai/dsh-attachment` — abstract `AttachmentStore` ([`packages/attachment/attachment/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/attachment/attachment/src/index.ts))
3538
- - `@deepseek-ai/dsh-code-runtime` — abstract `CodeRuntime` ([`packages/code-runtime/code-runtime/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/code-runtime/code-runtime/src/index.ts))
3539
- - `@deepseek-ai/dsh-compaction` — abstract `CompactionEngine` ([`packages/compaction/compaction/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/compaction/compaction/src/index.ts))
3540
- - `@deepseek-ai/dsh-credentials` — abstract `CredentialProvider` ([`packages/credentials/credentials/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/credentials/credentials/src/index.ts))
3541
- - `@deepseek-ai/dsh-file-reference` — abstract `FileReferenceService` ([`packages/context/file-reference/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/context/file-reference/src/index.ts))
3542
- - `@deepseek-ai/dsh-fs` — abstract `FileSystem` ([`packages/fs/fs/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/fs/fs/src/index.ts))
3543
- - `@deepseek-ai/dsh-host-directory-picker` — abstract `DirectoryPicker` ([`packages/host/directory-picker/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/host/directory-picker/src/index.ts))
3544
- - `@deepseek-ai/dsh-jobs` — abstract `JobRegistry` ([`packages/jobs/jobs/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/jobs/jobs/src/index.ts))
3545
- - `@deepseek-ai/dsh-sandbox` — abstract `SandboxProvider` ([`packages/sandbox/sandbox/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/sandbox/sandbox/src/index.ts))
3546
- - `@deepseek-ai/dsh-session-persistence` — abstract `SessionPersistence` ([`packages/session/session-persistence/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/session/session-persistence/src/index.ts))
3547
- - `@deepseek-ai/dsh-session-query` — abstract `SessionQueryEngine` ([`packages/session-query/session-query/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/session-query/session-query/src/index.ts))
3548
- - `@deepseek-ai/dsh-settings` — abstract `SettingsProvider` ([`packages/settings/settings/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/settings/settings/src/index.ts))
3549
- - `@deepseek-ai/dsh-shell` — abstract `ShellExecutor` ([`packages/shell/shell/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/shell/shell/src/index.ts))
3550
- - `@deepseek-ai/dsh-spill` — abstract `SpillStore` ([`packages/spill/spill/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/spill/spill/src/index.ts))
3551
- - `@deepseek-ai/dsh-subprocess` — abstract `SubprocessRuntime` ([`packages/subprocess/subprocess/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/subprocess/subprocess/src/index.ts))
3552
- - `@deepseek-ai/dsh-workflow` — abstract `WorkflowEngine` ([`packages/workflow/workflow/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/workflow/workflow/src/index.ts))
4459
+ <!-- BEGIN GENERATED config-catalog:seam -->
4460
+ | `package` | `class` | `inject` | `source` |
4461
+ | --- | --- | --- | --- |
4462
+ | `@deepseek-ai/dsh-attachment` | `AttachmentStore` | — | [`packages/attachment/attachment/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/attachment/attachment/src/index.ts) |
4463
+ | `@deepseek-ai/dsh-compaction` | `CompactionEngine` | — | [`packages/compaction/compaction/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/compaction/compaction/src/index.ts) |
4464
+ | `@deepseek-ai/dsh-credentials` | `CredentialProvider` | — | [`packages/credentials/credentials/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/credentials/credentials/src/index.ts) |
4465
+ | `@deepseek-ai/dsh-deepseek-account` | `DeepSeekAccount` | — | [`packages/credentials/deepseek-account/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/credentials/deepseek-account/src/index.ts) |
4466
+ | `@deepseek-ai/dsh-file-reference` | `FileReferenceService` | — | [`packages/context/file-reference/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/context/file-reference/src/index.ts) |
4467
+ | `@deepseek-ai/dsh-fs` | `FileSystem` | — | [`packages/fs/fs/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/fs/fs/src/index.ts) |
4468
+ | `@deepseek-ai/dsh-host-directory-picker` | `DirectoryPicker` | — | [`packages/host/directory-picker/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/host/directory-picker/src/index.ts) |
4469
+ | `@deepseek-ai/dsh-jobs` | `JobRegistry` | — | [`packages/jobs/jobs/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/jobs/jobs/src/index.ts) |
4470
+ | `@deepseek-ai/dsh-ptc-runtime` | `PtcRuntime` | — | [`packages/ptc-runtime/ptc-runtime/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/ptc-runtime/ptc-runtime/src/index.ts) |
4471
+ | `@deepseek-ai/dsh-sandbox` | `SandboxProvider` | — | [`packages/sandbox/sandbox/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/sandbox/sandbox/src/index.ts) |
4472
+ | `@deepseek-ai/dsh-session-persistence` | `SessionPersistence` | — | [`packages/session/session-persistence/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/session/session-persistence/src/index.ts) |
4473
+ | `@deepseek-ai/dsh-session-query` | `SessionQueryEngine` | — | [`packages/session-query/session-query/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/session-query/session-query/src/index.ts) |
4474
+ | `@deepseek-ai/dsh-shell` | `ShellExecutor` | — | [`packages/shell/shell/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/shell/shell/src/index.ts) |
4475
+ | `@deepseek-ai/dsh-spill` | `SpillStore` | — | [`packages/spill/spill/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/spill/spill/src/index.ts) |
4476
+ | `@deepseek-ai/dsh-subprocess` | `SubprocessRuntime` | — | [`packages/subprocess/subprocess/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/subprocess/subprocess/src/index.ts) |
4477
+ | `@deepseek-ai/dsh-workflow` | `WorkflowEngine` | — | [`packages/workflow/workflow/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/workflow/workflow/src/index.ts) |
4478
+ <!-- END GENERATED config-catalog:seam -->
3553
4479
 
3554
4480
  ## Library packages (no plugin entry)
3555
4481
 
3556
4482
  Imported as libraries by other packages; a `cordis.yml` cannot load them.
3557
4483
 
3558
- - `@deepseek-ai/dsh-agent-loop-testkit` ([`packages/test-support/agent-loop-testkit/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/test-support/agent-loop-testkit/src/index.ts))
3559
- - `@deepseek-ai/dsh-anonymous-user-id` ([`packages/identity/anonymous-user-id/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/identity/anonymous-user-id/src/index.ts))
3560
- - `@deepseek-ai/dsh-app-boot` ([`packages/boot/app-boot/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/boot/app-boot/src/index.ts))
3561
- - `@deepseek-ai/dsh-atomic-write` ([`packages/util/atomic-write/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/util/atomic-write/src/index.ts))
3562
- - `@deepseek-ai/dsh-base` ([`packages/bundle/base/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/bundle/base/src/index.ts))
3563
- - `@deepseek-ai/dsh-brand` ([`packages/util/brand/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/util/brand/src/index.ts))
3564
- - `@deepseek-ai/dsh-chunked-list` ([`packages/util/chunked-list/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/util/chunked-list/src/index.ts))
3565
- - `@deepseek-ai/dsh-client-store` ([`packages/client/store/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/client/store/src/index.ts))
3566
- - `@deepseek-ai/dsh-client-test-runtime` ([`packages/test-support/client-runtime/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/test-support/client-runtime/src/index.ts))
3567
- - `@deepseek-ai/dsh-client-ui-dockkit` ([`packages/client/ui-dockkit/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/client/ui-dockkit/src/index.ts))
3568
- - `@deepseek-ai/dsh-client-ui-primitives` ([`packages/client/ui-primitives/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/client/ui-primitives/src/index.ts))
3569
- - `@deepseek-ai/dsh-client-ui-slots` ([`packages/client/ui-slots/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/client/ui-slots/src/index.ts))
3570
- - `@deepseek-ai/dsh-client-web` ([`packages/client/web/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/client/web/src/index.ts))
3571
- - `@deepseek-ai/dsh-cmdline` ([`packages/boot/cmdline/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/boot/cmdline/src/index.ts))
3572
- - `@deepseek-ai/dsh-deque` ([`packages/util/deque/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/util/deque/src/index.ts))
3573
- - `@deepseek-ai/dsh-experimental-agent-team-profile` ([`packages/experimental/agent-team-profile/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/experimental/agent-team-profile/src/index.ts))
3574
- - `@deepseek-ai/dsh-experimental-agent-team-web-profile` ([`packages/experimental/agent-team-web-profile/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/experimental/agent-team-web-profile/src/index.ts))
3575
- - `@deepseek-ai/dsh-experimental-webworker-packer` ([`packages/experimental/webworker-packer/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/experimental/webworker-packer/src/index.ts))
3576
- - `@deepseek-ai/dsh-experimental-webworker-runtime` ([`packages/experimental/webworker-runtime/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/experimental/webworker-runtime/src/index.ts))
3577
- - `@deepseek-ai/dsh-home-paths` ([`packages/util/home-paths/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/util/home-paths/src/index.ts))
3578
- - `@deepseek-ai/dsh-hook-protocol` ([`packages/hooks/hook-protocol/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/hooks/hook-protocol/src/index.ts))
3579
- - `@deepseek-ai/dsh-http-proxy` ([`packages/util/http-proxy/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/util/http-proxy/src/index.ts))
3580
- - `@deepseek-ai/dsh-launch-environment` ([`packages/util/launch-environment/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/util/launch-environment/src/index.ts))
3581
- - `@deepseek-ai/dsh-llm-mock-server` ([`packages/test-support/llm-mock-server/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/test-support/llm-mock-server/src/index.ts))
3582
- - `@deepseek-ai/dsh-loader-smoke` ([`packages/test-support/loader-smoke/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/test-support/loader-smoke/src/index.ts))
3583
- - `@deepseek-ai/dsh-native-command` ([`packages/util/native-command/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/util/native-command/src/index.ts))
3584
- - `@deepseek-ai/dsh-output-retention` ([`packages/util/output-retention/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/util/output-retention/src/index.ts))
3585
- - `@deepseek-ai/dsh-package-manifest` ([`packages/util/package-manifest/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/util/package-manifest/src/index.ts))
3586
- - `@deepseek-ai/dsh-sandbox-windows-acl` ([`packages/sandbox/sandbox-windows-acl/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/sandbox/sandbox-windows-acl/src/index.ts))
3587
- - `@deepseek-ai/dsh-scope` ([`packages/core/scope/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/core/scope/src/index.ts))
3588
- - `@deepseek-ai/dsh-sdk-client` ([`packages/sdk/client/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/sdk/client/src/index.ts))
3589
- - `@deepseek-ai/dsh-sdk-minimal` ([`packages/bundle/sdk-minimal/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/bundle/sdk-minimal/src/index.ts))
3590
- - `@deepseek-ai/dsh-sdk-protocol` ([`packages/sdk/protocol/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/sdk/protocol/src/index.ts))
3591
- - `@deepseek-ai/dsh-session-format` ([`packages/session/session-format/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/session/session-format/src/index.ts))
3592
- - `@deepseek-ai/dsh-session-format-catalog` ([`packages/session/session-format-catalog/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/session/session-format-catalog/src/index.ts))
3593
- - `@deepseek-ai/dsh-session-format-v0-to-v1` ([`packages/session/session-format-v0-to-v1/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/session/session-format-v0-to-v1/src/index.ts))
3594
- - `@deepseek-ai/dsh-session-format-v1-to-v2` ([`packages/session/session-format-v1-to-v2/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/session/session-format-v1-to-v2/src/index.ts))
3595
- - `@deepseek-ai/dsh-session-format-v2-to-v3` ([`packages/session/session-format-v2-to-v3/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/session/session-format-v2-to-v3/src/index.ts))
3596
- - `@deepseek-ai/dsh-session-snapshot` ([`packages/test-support/session-snapshot/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/test-support/session-snapshot/src/index.ts))
3597
- - `@deepseek-ai/dsh-session-telemetry` ([`packages/session/session-telemetry/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/session/session-telemetry/src/index.ts))
3598
- - `@deepseek-ai/dsh-session-title-llm` ([`packages/session/session-title-llm/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/session/session-title-llm/src/index.ts))
3599
- - `@deepseek-ai/dsh-subagent-in-process-driver` ([`packages/subagent/subagent-in-process-driver/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/subagent/subagent-in-process-driver/src/index.ts))
3600
- - `@deepseek-ai/dsh-timeout` ([`packages/util/timeout/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/util/timeout/src/index.ts))
3601
- - `@deepseek-ai/dsh-typert-generator` ([`packages/typert/generator/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/typert/generator/src/index.ts))
3602
- - `@deepseek-ai/dsh-typert-protocol` ([`packages/typert/protocol/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/typert/protocol/src/index.ts))
3603
- - `@deepseek-ai/dsh-typert-registry` ([`packages/typert/registry/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/typert/registry/src/index.ts))
3604
- - `@deepseek-ai/dsh-util-crypto` ([`packages/util/crypto/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/util/crypto/src/index.ts))
3605
- - `@deepseek-ai/dsh-util-time` ([`packages/util/time/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/util/time/src/index.ts))
3606
- - `@deepseek-ai/dsh-util-values` ([`packages/util/values/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/util/values/src/index.ts))
3607
- - `@deepseek-ai/dsh-util-workspace-path` ([`packages/util/workspace-path/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/util/workspace-path/src/index.ts))
3608
- - `@deepseek-ai/dsh-win32-process` ([`packages/subprocess/win32-process/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/subprocess/win32-process/src/index.ts))
4484
+ <!-- BEGIN GENERATED config-catalog:library -->
4485
+ | `package` | `inject` | `source` |
4486
+ | --- | --- | --- |
4487
+ | `@deepseek-ai/dsh-agent-loop-testkit` | — | [`packages/test-support/agent-loop-testkit/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/test-support/agent-loop-testkit/src/index.ts) |
4488
+ | `@deepseek-ai/dsh-anonymous-user-id` | — | [`packages/identity/anonymous-user-id/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/identity/anonymous-user-id/src/index.ts) |
4489
+ | `@deepseek-ai/dsh-app-boot` | — | [`packages/boot/app-boot/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/boot/app-boot/src/index.ts) |
4490
+ | `@deepseek-ai/dsh-atomic-write` | — | [`packages/util/atomic-write/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/util/atomic-write/src/index.ts) |
4491
+ | `@deepseek-ai/dsh-base` | — | [`packages/bundle/base/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/bundle/base/src/index.ts) |
4492
+ | `@deepseek-ai/dsh-brand` | — | [`packages/util/brand/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/util/brand/src/index.ts) |
4493
+ | `@deepseek-ai/dsh-chunked-list` | — | [`packages/util/chunked-list/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/util/chunked-list/src/index.ts) |
4494
+ | `@deepseek-ai/dsh-client-store` | — | [`packages/client/store/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/client/store/src/index.ts) |
4495
+ | `@deepseek-ai/dsh-client-test-runtime` | — | [`packages/test-support/client-runtime/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/test-support/client-runtime/src/index.ts) |
4496
+ | `@deepseek-ai/dsh-client-ui-dockkit` | — | [`packages/client/ui-dockkit/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/client/ui-dockkit/src/index.ts) |
4497
+ | `@deepseek-ai/dsh-client-ui-primitives` | — | [`packages/client/ui-primitives/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/client/ui-primitives/src/index.ts) |
4498
+ | `@deepseek-ai/dsh-client-ui-slots` | — | [`packages/client/ui-slots/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/client/ui-slots/src/index.ts) |
4499
+ | `@deepseek-ai/dsh-client-web` | — | [`packages/client/web/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/client/web/src/index.ts) |
4500
+ | `@deepseek-ai/dsh-cmdline` | — | [`packages/boot/cmdline/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/boot/cmdline/src/index.ts) |
4501
+ | `@deepseek-ai/dsh-deque` | — | [`packages/util/deque/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/util/deque/src/index.ts) |
4502
+ | `@deepseek-ai/dsh-experimental-agent-team-profile` | — | [`packages/experimental/agent-team-profile/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/experimental/agent-team-profile/src/index.ts) |
4503
+ | `@deepseek-ai/dsh-experimental-browser-use-runtime` | — | [`packages/experimental/browser-use-runtime/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/experimental/browser-use-runtime/src/index.ts) |
4504
+ | `@deepseek-ai/dsh-experimental-inspector-profile` | — | [`packages/experimental/inspector-profile/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/experimental/inspector-profile/src/index.ts) |
4505
+ | `@deepseek-ai/dsh-experimental-voice-input-bundle` | — | [`packages/experimental/voice-input-bundle/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/experimental/voice-input-bundle/src/index.ts) |
4506
+ | `@deepseek-ai/dsh-experimental-webworker-packer` | — | [`packages/experimental/webworker-packer/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/experimental/webworker-packer/src/index.ts) |
4507
+ | `@deepseek-ai/dsh-experimental-webworker-runtime` | — | [`packages/experimental/webworker-runtime/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/experimental/webworker-runtime/src/index.ts) |
4508
+ | `@deepseek-ai/dsh-home-paths` | — | [`packages/util/home-paths/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/util/home-paths/src/index.ts) |
4509
+ | `@deepseek-ai/dsh-hook-protocol` | — | [`packages/hooks/hook-protocol/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/hooks/hook-protocol/src/index.ts) |
4510
+ | `@deepseek-ai/dsh-http-proxy` | — | [`packages/util/http-proxy/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/util/http-proxy/src/index.ts) |
4511
+ | `@deepseek-ai/dsh-launch-environment` | — | [`packages/util/launch-environment/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/util/launch-environment/src/index.ts) |
4512
+ | `@deepseek-ai/dsh-lazy-require` | — | [`packages/util/lazy-require/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/util/lazy-require/src/index.ts) |
4513
+ | `@deepseek-ai/dsh-llm-deepseek` | — | [`packages/llm/llm-deepseek/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/llm/llm-deepseek/src/index.ts) |
4514
+ | `@deepseek-ai/dsh-llm-mock-server` | — | [`packages/test-support/llm-mock-server/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/test-support/llm-mock-server/src/index.ts) |
4515
+ | `@deepseek-ai/dsh-loader-smoke` | — | [`packages/test-support/loader-smoke/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/test-support/loader-smoke/src/index.ts) |
4516
+ | `@deepseek-ai/dsh-native-command` | — | [`packages/util/native-command/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/util/native-command/src/index.ts) |
4517
+ | `@deepseek-ai/dsh-output-retention` | — | [`packages/util/output-retention/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/util/output-retention/src/index.ts) |
4518
+ | `@deepseek-ai/dsh-package-manifest` | — | [`packages/util/package-manifest/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/util/package-manifest/src/index.ts) |
4519
+ | `@deepseek-ai/dsh-remote-mock` | — | [`packages/test-support/remote-mock/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/test-support/remote-mock/src/index.ts) |
4520
+ | `@deepseek-ai/dsh-sandbox-windows-acl` | — | [`packages/sandbox/sandbox-windows-acl/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/sandbox/sandbox-windows-acl/src/index.ts) |
4521
+ | `@deepseek-ai/dsh-scope` | — | [`packages/core/scope/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/core/scope/src/index.ts) |
4522
+ | `@deepseek-ai/dsh-sdk-client` | — | [`packages/sdk/client/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/sdk/client/src/index.ts) |
4523
+ | `@deepseek-ai/dsh-sdk-minimal` | — | [`packages/bundle/sdk-minimal/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/bundle/sdk-minimal/src/index.ts) |
4524
+ | `@deepseek-ai/dsh-sdk-protocol` | — | [`packages/sdk/protocol/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/sdk/protocol/src/index.ts) |
4525
+ | `@deepseek-ai/dsh-session-format` | — | [`packages/session/session-format/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/session/session-format/src/index.ts) |
4526
+ | `@deepseek-ai/dsh-session-format-catalog` | — | [`packages/session/session-format-catalog/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/session/session-format-catalog/src/index.ts) |
4527
+ | `@deepseek-ai/dsh-session-format-v0-to-v1` | — | [`packages/session/session-format-v0-to-v1/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/session/session-format-v0-to-v1/src/index.ts) |
4528
+ | `@deepseek-ai/dsh-session-format-v1-to-v2` | — | [`packages/session/session-format-v1-to-v2/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/session/session-format-v1-to-v2/src/index.ts) |
4529
+ | `@deepseek-ai/dsh-session-format-v2-to-v3` | — | [`packages/session/session-format-v2-to-v3/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/session/session-format-v2-to-v3/src/index.ts) |
4530
+ | `@deepseek-ai/dsh-session-format-v3-to-v4` | — | [`packages/session/session-format-v3-to-v4/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/session/session-format-v3-to-v4/src/index.ts) |
4531
+ | `@deepseek-ai/dsh-session-snapshot` | — | [`packages/test-support/session-snapshot/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/test-support/session-snapshot/src/index.ts) |
4532
+ | `@deepseek-ai/dsh-session-telemetry` | — | [`packages/session/session-telemetry/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/session/session-telemetry/src/index.ts) |
4533
+ | `@deepseek-ai/dsh-session-title-llm` | — | [`packages/session/session-title-llm/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/session/session-title-llm/src/index.ts) |
4534
+ | `@deepseek-ai/dsh-subagent-in-process-driver` | — | [`packages/subagent/subagent-in-process-driver/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/subagent/subagent-in-process-driver/src/index.ts) |
4535
+ | `@deepseek-ai/dsh-timeout` | — | [`packages/util/timeout/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/util/timeout/src/index.ts) |
4536
+ | `@deepseek-ai/dsh-typert-generator` | — | [`packages/typert/generator/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/typert/generator/src/index.ts) |
4537
+ | `@deepseek-ai/dsh-typert-protocol` | — | [`packages/typert/protocol/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/typert/protocol/src/index.ts) |
4538
+ | `@deepseek-ai/dsh-typert-registry` | — | [`packages/typert/registry/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/typert/registry/src/index.ts) |
4539
+ | `@deepseek-ai/dsh-util-code-language` | — | [`packages/util/code-language/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/util/code-language/src/index.ts) |
4540
+ | `@deepseek-ai/dsh-util-crypto` | — | [`packages/util/crypto/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/util/crypto/src/index.ts) |
4541
+ | `@deepseek-ai/dsh-util-time` | — | [`packages/util/time/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/util/time/src/index.ts) |
4542
+ | `@deepseek-ai/dsh-util-values` | — | [`packages/util/values/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/util/values/src/index.ts) |
4543
+ | `@deepseek-ai/dsh-util-workspace-path` | — | [`packages/util/workspace-path/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/util/workspace-path/src/index.ts) |
4544
+ | `@deepseek-ai/dsh-win32-process` | — | [`packages/subprocess/win32-process/src/index.ts`](https://github.com/deepseek-ai/deepseek-harness/blob/master/packages/subprocess/win32-process/src/index.ts) |
4545
+ <!-- END GENERATED config-catalog:library -->