super-dsh 0.1.12 → 0.3.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 (856) hide show
  1. package/README.md +50 -13
  2. package/agent-agy/dist/world-plugin.d.ts +1 -1
  3. package/agent-agy/dist/world-plugin.js +14 -27
  4. package/agent-agy-sdk/dist/world-plugin.d.ts +1 -1
  5. package/agent-agy-sdk/dist/world-plugin.js +14 -27
  6. package/agent-codex/dist/world-plugin.js +14 -27
  7. package/agent-codex-sdk/dist/world-plugin.js +14 -43
  8. package/agent-hermes/dist/world-plugin.js +14 -27
  9. package/agent-omp/dist/world-plugin.js +14 -39
  10. package/agent-omp/lib/client/index.js +258 -0
  11. package/agent-omp-sdk/dist/world-plugin.d.ts +1 -1
  12. package/agent-omp-sdk/dist/world-plugin.js +14 -43
  13. package/agent-pi/dist/world-plugin.js +14 -27
  14. package/bundles/better-dsh.tgz +0 -0
  15. package/bundles/manifest.json +10 -0
  16. package/client/index.js +434 -307
  17. package/cordis.patch.yml +7 -16
  18. package/node_modules/better-dsh/LICENSE +24 -0
  19. package/node_modules/better-dsh/README.md +323 -0
  20. package/node_modules/better-dsh/THIRD_PARTY_NOTICES.md +52 -0
  21. package/node_modules/better-dsh/cordis.patch.yml +139 -0
  22. package/node_modules/better-dsh/docs/00_adr/0001-bridge-tool-layer-not-service-layer.md +14 -0
  23. package/node_modules/better-dsh/docs/00_adr/0002-masking-is-presentation-only.md +15 -0
  24. package/node_modules/better-dsh/docs/10_plans/2026-09-23-remote-execution-framework.md +236 -0
  25. package/node_modules/better-dsh/docs/10_plans/2026-09-23-remote-framework-impl.md +2083 -0
  26. package/node_modules/better-dsh/docs/10_plans/2026-09-26-lsp-ast-reminder.md +64 -0
  27. package/node_modules/better-dsh/docs/10_plans/A2A-messaging-channel-test-archive.md +256 -0
  28. package/node_modules/better-dsh/docs/10_plans/code-mode-vs-rlm-ipython-comparison.md +137 -0
  29. package/node_modules/better-dsh/docs/10_plans/dashr-blueprint-review.md +201 -0
  30. package/node_modules/better-dsh/docs/10_plans/dashr-blueprint.md +561 -0
  31. package/node_modules/better-dsh/docs/10_plans/dashr-compaction-window-and-archive.md +307 -0
  32. package/node_modules/better-dsh/docs/10_plans/dashr-profile-layer-feasibility.md +367 -0
  33. package/node_modules/better-dsh/docs/10_plans/dashr-sandbox-escalation-semantics-gap.md +171 -0
  34. package/node_modules/better-dsh/docs/10_plans/dashr-security-sandbox-analysis.md +187 -0
  35. package/node_modules/better-dsh/docs/10_plans/dashr-surface-invariant-and-omp-imports.md +97 -0
  36. package/node_modules/better-dsh/docs/10_plans/ipython-kernel-interactive-interface-test-report.md +152 -0
  37. package/node_modules/better-dsh/docs/10_plans/kernel-refactoring/Dash-IPython-Control-Prompt-draft.md +146 -0
  38. package/node_modules/better-dsh/docs/10_plans/kernel-refactoring/Dash-IPython-Control-Prompt-draft_v3.md +50 -0
  39. package/node_modules/better-dsh/docs/10_plans/kernel-refactoring/Dash-IPython-Control-Prompt-draft_v4.md +79 -0
  40. package/node_modules/better-dsh/docs/10_plans/kernel-refactoring/Dash-vs-PrimeAgent-systemprompt-toolcatalog-comparison.md +138 -0
  41. package/node_modules/better-dsh/docs/10_plans/kernel-refactoring/RLM-system-prompt-injection-gap-report.md +161 -0
  42. package/node_modules/better-dsh/docs/10_plans/kernel-refactoring/V0.1.5-development-plan.md +109 -0
  43. package/node_modules/better-dsh/docs/10_plans/kernel-refactoring/actinoable-surface-to-llm-in-agent-runtime_dsh.md +50 -0
  44. package/node_modules/better-dsh/docs/10_plans/kernel-refactoring/actinoable-surface-to-llm-in-agent-runtime_prime.md +113 -0
  45. package/node_modules/better-dsh/docs/10_plans/recallable-compaction.md +147 -0
  46. package/node_modules/better-dsh/docs/10_plans/spike-tag-repro.mjs +102 -0
  47. package/node_modules/better-dsh/docs/10_plans/upstream-analysis.md +128 -0
  48. package/node_modules/better-dsh/docs/20_specs/agent/spec.md +54 -0
  49. package/node_modules/better-dsh/docs/20_specs/ast/spec.md +57 -0
  50. package/node_modules/better-dsh/docs/20_specs/compaction-recall/spec.md +46 -0
  51. package/node_modules/better-dsh/docs/20_specs/ctx/spec.md +107 -0
  52. package/node_modules/better-dsh/docs/20_specs/dsh/spec.md +47 -0
  53. package/node_modules/better-dsh/docs/20_specs/dvc/spec.md +106 -0
  54. package/node_modules/better-dsh/docs/20_specs/escalation-guidance/spec.md +44 -0
  55. package/node_modules/better-dsh/docs/20_specs/fs-scheme-resolution/spec.md +37 -0
  56. package/node_modules/better-dsh/docs/20_specs/hash-edit/spec.md +41 -0
  57. package/node_modules/better-dsh/docs/20_specs/http-read/spec.md +73 -0
  58. package/node_modules/better-dsh/docs/20_specs/kernel-provisioning/spec.md +53 -0
  59. package/node_modules/better-dsh/docs/20_specs/lsp/spec.md +121 -0
  60. package/node_modules/better-dsh/docs/20_specs/mobile-layout/spec.md +108 -0
  61. package/node_modules/better-dsh/docs/20_specs/model-failover/spec.md +20 -0
  62. package/node_modules/better-dsh/docs/20_specs/plugins-page-components/spec.md +79 -0
  63. package/node_modules/better-dsh/docs/20_specs/preact-ui-shell/spec.md +22 -0
  64. package/node_modules/better-dsh/docs/20_specs/repl-dispatch-resilience/spec.md +21 -0
  65. package/node_modules/better-dsh/docs/20_specs/skill/spec.md +58 -0
  66. package/node_modules/better-dsh/docs/20_specs/tool-surface/spec.md +222 -0
  67. package/node_modules/better-dsh/docs/20_specs/url-schema/spec.md +148 -0
  68. package/node_modules/better-dsh/docs/20_specs/web-trust-fence/spec.md +43 -0
  69. package/node_modules/better-dsh/docs/50_test-reports/2026-09-06-write/345/267/245/345/205/267sandbox/345/215/207/347/272/247/351/200/217/344/274/240bug/345/244/215/345/217/221/345/217/212/346/214/202/350/265/267-/344/272/213/344/273/266/346/212/245/345/221/212.md +176 -0
  70. package/node_modules/better-dsh/docs/50_test-reports/2026-09-08-hashline-edit-E_RANGE_UNVERIFIED/350/267/250/350/275/256/344/274/232/350/257/235/351/224/256/345/244/261/346/225/210-/350/257/212/346/226/255/346/212/245/345/221/212.md +226 -0
  71. package/node_modules/better-dsh/docs/50_test-reports/2026-09-11-control-prompt-into-eval-description/345/256/236/346/265/213/346/212/245/345/221/212.md +222 -0
  72. package/node_modules/better-dsh/docs/50_test-reports/2026-09-12-fs-scheme-resolution-/345/256/236/346/265/213/346/212/245/345/221/212.md +81 -0
  73. package/node_modules/better-dsh/docs/50_test-reports/2026-09-12-url-schemes-grammar-matrix/344/270/216catalog-centralize-/345/256/236/346/265/213/346/212/245/345/221/212.md +234 -0
  74. package/node_modules/better-dsh/docs/50_test-reports/2026-09-12-url-schemes-recallable-context-design/351/252/214/350/257/201/346/212/245/345/221/212.md +160 -0
  75. package/node_modules/better-dsh/docs/50_test-reports/2026-09-12-url-schemes-recallable-context-/345/256/236/346/265/213/345/211/247/346/234/254.md +44 -0
  76. package/node_modules/better-dsh/docs/50_test-reports/2026-09-12-url-schemes-recallable-context-/345/256/236/346/265/213/346/212/245/345/221/212.md +89 -0
  77. package/node_modules/better-dsh/docs/50_test-reports/2026-09-12-url-schemes-/345/205/255scheme/345/206/222/347/203/237/344/270/216/350/276/271/347/225/214/345/256/236/346/265/213/346/212/245/345/221/212.md +198 -0
  78. package/node_modules/better-dsh/docs/50_test-reports/2026-09-13-hashline-off/344/270/213scheme/345/217/257/350/276/276/346/200/247/345/267/245/345/205/267/351/235/242/344/270/215/345/257/271/347/247/260-/345/256/236/346/265/213/346/212/245/345/221/212.md +246 -0
  79. package/node_modules/better-dsh/docs/50_test-reports/2026-09-13-preact-ui-shell/345/256/236/346/265/213/346/212/245/345/221/212.md +50 -0
  80. package/node_modules/better-dsh/docs/50_test-reports/2026-09-14-4999-skill/346/270/205/345/215/225/344/270/216lsp-gate/345/256/236/346/265/213/346/212/245/345/221/212.md +63 -0
  81. package/node_modules/better-dsh/docs/50_test-reports/2026-09-17-plugins/351/241/265/345/205/255/347/273/204/344/273/266/346/213/206/345/210/206/345/256/236/346/265/213/346/212/245/345/221/212.md +76 -0
  82. package/node_modules/better-dsh/docs/50_test-reports/2026-09-22-4988/345/217/214/345/271/263/351/235/242/345/220/257/345/212/250/344/277/256/345/244/215/345/256/236/346/265/213/346/212/245/345/221/212.md +76 -0
  83. package/node_modules/better-dsh/docs/50_test-reports/2026-09-22-better-dsh/347/273/204/344/273/266/347/203/255/346/217/222/346/213/224/344/270/216/344/276/235/350/265/226/347/272/247/350/201/224/345/256/236/346/265/213/346/212/245/345/221/212.md +134 -0
  84. package/node_modules/better-dsh/docs/50_test-reports/2026-09-23-remote-framework/345/256/236/346/265/213/346/212/245/345/221/212.md +92 -0
  85. package/node_modules/better-dsh/docs/50_test-reports/2026-09-23-remote-framework/347/254/254/344/270/200/344/272/272/347/247/260/345/244/215/346/265/213/346/212/245/345/221/212.md +125 -0
  86. package/node_modules/better-dsh/docs/50_test-reports/2026-09-23-ssh/345/267/245/345/205/267assisted-pty/344/274/232/350/257/235framing/345/256/236/346/265/213/346/212/245/345/221/212.md +207 -0
  87. package/node_modules/better-dsh/docs/50_test-reports/2026-09-24-v0.1.7-rc.1/345/257/271/351/275/220/350/275/256-compaction/344/270/216failover/350/256/276/347/275/256/351/235/242/344/277/256/345/244/215/345/256/236/346/265/213/346/212/245/345/221/212.md +65 -0
  88. package/node_modules/better-dsh/docs/50_test-reports/2026-09-27-lsp-ast-reminder-4999/345/256/236/346/265/213/346/212/245/345/221/212.md +53 -0
  89. package/node_modules/better-dsh/docs/50_test-reports/2026-09-28-ctx-scheme/351/225/277/344/274/232/350/257/235utility/345/256/236/346/265/213/346/212/245/345/221/212.md +155 -0
  90. package/node_modules/better-dsh/docs/50_test-reports/2026-10-01-v0.2.4d-web-password-gate/345/256/236/346/265/213/346/212/245/345/221/212.md +105 -0
  91. package/node_modules/better-dsh/docs/50_test-reports/2026-10-02-better-dsh-schemastery/344/276/235/350/265/226/345/243/260/346/230/216/344/277/256/345/244/215/345/256/236/346/265/213/346/212/245/345/221/212.md +62 -0
  92. package/node_modules/better-dsh/docs/50_test-reports/2026-10-02-ctx-navigation/345/256/236/346/265/213/346/212/245/345/221/212.md +137 -0
  93. package/node_modules/better-dsh/docs/50_test-reports/2026-10-02-v0.2.0-rc.2/345/257/271/351/275/220/350/275/256/345/256/236/346/265/213/346/212/245/345/221/212.md +38 -0
  94. package/node_modules/better-dsh/docs/50_test-reports/2026-10-03-ast-engine-deomp-4999/345/256/236/346/265/213/346/212/245/345/221/212.md +325 -0
  95. package/node_modules/better-dsh/docs/50_test-reports/2026-10-03-better-dsh-tool-surface-repl-dvc-browser-ast-lsp-4999/345/256/236/346/265/213/346/212/245/345/221/212.md +185 -0
  96. package/node_modules/better-dsh/docs/50_test-reports/2026-10-03-docs-packaging-trim/345/256/236/346/265/213/346/212/245/345/221/212.md +82 -0
  97. package/node_modules/better-dsh/docs/50_test-reports/2026-10-03-physical-import/344/270/216llm-completion-ast/347/233/270/345/257/271/350/267/257/345/276/204/344/277/256/345/244/215/345/256/236/346/265/213/346/212/245/345/221/212.md +101 -0
  98. package/node_modules/better-dsh/docs/50_test-reports/2026-10-03-pnpm11/345/271/264/351/276/204/351/227/250/351/224/201/346/226/207/344/273/266/347/233/270/344/275/215/345/256/236/350/257/201.md +54 -0
  99. package/node_modules/better-dsh/docs/50_test-reports/2026-10-03-remote-BYO-PTY-label/351/207/215/346/236/204/347/254/254/344/270/200/344/272/272/347/247/260/345/256/236/346/265/213/346/212/245/345/221/212.md +447 -0
  100. package/node_modules/better-dsh/docs/50_test-reports/2026-10-03-schemastery-cosmokit/346/272/220/347/240/201/345/206/205/350/201/224/345/256/236/346/265/213/346/212/245/345/221/212.md +63 -0
  101. package/node_modules/better-dsh/docs/50_test-reports/2026-10-03-zero-npm-runtime-deps/345/256/236/346/265/213/346/212/245/345/221/212.md +82 -0
  102. package/node_modules/better-dsh/docs/50_test-reports/2026-10-04-ast-engine-deomp-0.2.5-d/345/217/221/345/270/203/351/252/214/346/224/266/346/212/245/345/221/212.md +220 -0
  103. package/node_modules/better-dsh/docs/50_test-reports/2026-10-04-ast_grep/344/270/216ast_edit/345/245/221/347/272/246/344/270/216/350/276/271/347/225/214/345/256/236/346/265/213/346/212/245/345/221/212.md +151 -0
  104. package/node_modules/better-dsh/docs/50_test-reports/2026-10-06-authentication-only-web-admission-4999.md +63 -0
  105. package/node_modules/better-dsh/docs/50_test-reports/2026-10-07-better-dsh-welcome-self-contained-4999.md +52 -0
  106. package/node_modules/better-dsh/docs/50_test-reports/REPL-/345/267/245/345/205/267/350/260/203/347/224/250-/346/210/252/346/226/255/350/257/212/346/226/255.md +110 -0
  107. package/node_modules/better-dsh/docs/50_test-reports/kernel-provisioning.md +44 -0
  108. package/node_modules/better-dsh/docs/50_test-reports/repl-kernel-provisioning-test-report.md +87 -0
  109. package/node_modules/better-dsh/docs/50_test-reports/upstream-dsh-0.1.2-alpha.5-local-test-report.md +81 -0
  110. package/node_modules/better-dsh/docs/50_test-reports/upstream-dsh-0.1.2-alpha.5-report.md +93 -0
  111. package/node_modules/better-dsh/docs/50_test-reports/upstream-dsh-0.1.3-alpha.2-local-test-report.md +44 -0
  112. package/node_modules/better-dsh/docs/50_test-reports/upstream-dsh-0.1.3-alpha.2-report.md +110 -0
  113. package/node_modules/better-dsh/docs/50_test-reports/upstream-dsh-0.1.5-rc.2-local-test-report.md +79 -0
  114. package/node_modules/better-dsh/docs/50_test-reports/v0.1.8-improved-/345/256/236/346/265/213/346/212/245/345/221/212.md +142 -0
  115. package/node_modules/better-dsh/docs/50_test-reports/v0.1.8-/345/256/236/346/265/213/346/212/245/345/221/212.md +193 -0
  116. package/node_modules/better-dsh/docs/50_test-reports/v0.1.8b-/345/256/236/346/265/213/346/212/245/345/221/212.md +96 -0
  117. package/node_modules/better-dsh/docs/50_test-reports/v0.1.8c-/345/256/236/346/265/213/346/212/245/345/221/212.md +127 -0
  118. package/node_modules/better-dsh/docs/50_test-reports/v0.1.8d-/345/256/236/346/265/213/346/212/245/345/221/212.md +150 -0
  119. package/node_modules/better-dsh/docs/50_test-reports/v0.1.8e-/345/256/236/346/265/213/346/212/245/345/221/212.md +224 -0
  120. package/node_modules/better-dsh/docs/50_test-reports/v0.1.9a-/345/256/236/346/265/213/346/212/245/345/221/212.md +168 -0
  121. package/node_modules/better-dsh/docs/50_test-reports/v0.2.0b-/345/256/236/346/265/213/346/212/245/345/221/212.md +123 -0
  122. package/node_modules/better-dsh/docs/50_test-reports/v0.2.1-/345/256/236/346/265/213/346/212/245/345/221/212.md +110 -0
  123. package/node_modules/better-dsh/docs/50_test-reports/v0.2.1b-/345/256/236/346/265/213/346/212/245/345/221/212.md +86 -0
  124. package/node_modules/better-dsh/docs/50_test-reports/v0.2.1c-/345/256/236/346/265/213/346/212/245/345/221/212.md +66 -0
  125. package/node_modules/better-dsh/docs/50_test-reports/v0.2.1d-/345/256/236/346/265/213/346/212/245/345/221/212.md +67 -0
  126. package/node_modules/better-dsh/docs/50_test-reports/v0.2.1e-P1-/345/256/236/346/265/213/346/212/245/345/221/212.md +136 -0
  127. package/node_modules/better-dsh/docs/50_test-reports/v0.2.1ef-dev-audit-report.md +73 -0
  128. package/node_modules/better-dsh/docs/50_test-reports/v0.2.1f-plugin-shipped-ui-patches/345/256/236/346/265/213/346/212/245/345/221/212.md +102 -0
  129. package/node_modules/better-dsh/docs/50_test-reports/v0.2.3b-hashline-content-locator/345/256/236/346/265/213/346/212/245/345/221/212.md +73 -0
  130. package/node_modules/better-dsh/docs/50_test-reports/v0.2.3c-mobile-wave/345/256/236/346/265/213/346/212/245/345/221/212.md +47 -0
  131. package/node_modules/better-dsh/docs/50_test-reports/v0.2.4-ios-focus-zoom-suppression/345/256/236/346/265/213/346/212/245/345/221/212.md +158 -0
  132. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/skill/SKILL.md +147 -0
  133. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/skill/chapters/ch01-user-guide.md +123 -0
  134. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/skill/chapters/ch02-plugin-basics.md +127 -0
  135. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/skill/chapters/ch03-plugin-framework-practice.md +120 -0
  136. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/skill/chapters/ch04-cordis-fundamentals.md +129 -0
  137. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/skill/chapters/ch05-cordis-api.md +115 -0
  138. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/skill/chapters/ch06-architecture.md +109 -0
  139. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/skill/chapters/ch07-capability-seams.md +97 -0
  140. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/skill/chapters/ch08-internals-pipelines.md +111 -0
  141. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/skill/chapters/ch09-api-gateway.md +106 -0
  142. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/skill/chapters/ch10-config-catalog.md +97 -0
  143. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/skill/chapters/ch11-tool-catalog.md +121 -0
  144. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/skill/chapters/ch12-persistence-catalog.md +109 -0
  145. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/skill/chapters/ch13-subsystems-core-session.md +106 -0
  146. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/skill/chapters/ch14-subsystems-agent-loop.md +111 -0
  147. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/skill/chapters/ch15-subsystems-tool-execution.md +106 -0
  148. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/skill/chapters/ch16-subsystems-session-data.md +132 -0
  149. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/skill/chapters/ch17-subsystems-llm-streaming.md +128 -0
  150. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/skill/chapters/ch18-subsystems-web-ui.md +142 -0
  151. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/skill/chapters/ch19-cookbook.md +149 -0
  152. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/skill/chapters/ch20-development-testing.md +87 -0
  153. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/skill/chapters/ch21-postmortems.md +82 -0
  154. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/skill/chapters/ch22-i18n.md +86 -0
  155. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/skill/cheatsheet.md +67 -0
  156. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/skill/glossary.md +57 -0
  157. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/skill/patterns.md +88 -0
  158. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/AGENTS.md +75 -0
  159. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/agent-lifecycle.md +84 -0
  160. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/agent-lifecycle.zh.md +86 -0
  161. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/api-gateway.md +164 -0
  162. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/api-gateway.zh.md +164 -0
  163. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/architecture.md +150 -0
  164. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/architecture.zh.md +154 -0
  165. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/capability-seams.md +543 -0
  166. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/capability-seams.zh.md +545 -0
  167. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/config-catalog.md +3473 -0
  168. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/config-catalog.zh.md +3474 -0
  169. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/cookbook/adding-a-package.md +117 -0
  170. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/cookbook/adding-a-package.zh.md +119 -0
  171. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/cookbook/adding-a-remote-api.md +197 -0
  172. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/cookbook/adding-a-remote-api.zh.md +197 -0
  173. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/cookbook/adding-a-settings-card.md +102 -0
  174. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/cookbook/adding-a-settings-card.zh.md +102 -0
  175. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/cookbook/adding-a-tool.md +101 -0
  176. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/cookbook/adding-a-tool.zh.md +103 -0
  177. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/cookbook/adding-a-vendored-package.md +59 -0
  178. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/cookbook/adding-a-vendored-package.zh.md +59 -0
  179. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/cookbook/adding-an-llm-adapter.md +43 -0
  180. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/cookbook/adding-an-llm-adapter.zh.md +43 -0
  181. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/cookbook/extension-cookbook.md +132 -0
  182. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/cookbook/extension-cookbook.zh.md +136 -0
  183. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/cookbook/maintaining-dsh-code-review.md +64 -0
  184. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/cookbook/maintaining-dsh-code-review.zh.md +64 -0
  185. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/cookbook/responding-to-pr-review-on-a-stack.md +32 -0
  186. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/cookbook/responding-to-pr-review-on-a-stack.zh.md +32 -0
  187. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/cordis-api/context.md +364 -0
  188. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/cordis-api/context.zh.md +366 -0
  189. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/cordis-api/events.md +207 -0
  190. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/cordis-api/events.zh.md +209 -0
  191. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/cordis-api/fiber.md +375 -0
  192. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/cordis-api/fiber.zh.md +377 -0
  193. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/cordis-api/inherited.md +39 -0
  194. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/cordis-api/registry.md +152 -0
  195. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/cordis-api/registry.zh.md +154 -0
  196. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/cordis-api/service.md +102 -0
  197. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/cordis-api/service.zh.md +104 -0
  198. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/cordis-primer.md +45 -0
  199. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/cordis-primer.zh.md +51 -0
  200. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/cordis-tutorial/01-first-plugin.md +95 -0
  201. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/cordis-tutorial/01-first-plugin.zh.md +95 -0
  202. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/cordis-tutorial/02-lifecycle-and-effects.md +98 -0
  203. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/cordis-tutorial/02-lifecycle-and-effects.zh.md +98 -0
  204. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/cordis-tutorial/03-services.md +98 -0
  205. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/cordis-tutorial/03-services.zh.md +98 -0
  206. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/cordis-tutorial/04-events.md +144 -0
  207. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/cordis-tutorial/04-events.zh.md +144 -0
  208. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/cordis-tutorial/05-config.md +84 -0
  209. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/cordis-tutorial/05-config.zh.md +84 -0
  210. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/cordis-tutorial/06-composition-and-hmr.md +113 -0
  211. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/cordis-tutorial/06-composition-and-hmr.zh.md +113 -0
  212. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/cordis-tutorial/07-into-the-harness.md +108 -0
  213. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/cordis-tutorial/07-into-the-harness.zh.md +108 -0
  214. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/cordis-tutorial/index.md +60 -0
  215. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/cordis-tutorial/index.zh.md +62 -0
  216. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/deepseek-llm-api-wire-extensions.md +163 -0
  217. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/deepseek-llm-api-wire-extensions.zh.md +163 -0
  218. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/defensive-patterns.md +33 -0
  219. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/defensive-patterns.zh.md +35 -0
  220. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/development.md +167 -0
  221. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/development.zh.md +173 -0
  222. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/event-producer-consumer.md +86 -0
  223. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/event-producer-consumer.zh.md +88 -0
  224. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/glossary.md +45 -0
  225. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/glossary.zh.md +45 -0
  226. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/graph-atlas.md +22 -0
  227. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/graph-atlas.zh.md +24 -0
  228. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/i18n/README.md +60 -0
  229. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/i18n/README.zh.md +62 -0
  230. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/i18n/style-samples.md +87 -0
  231. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/i18n/terminology.md +214 -0
  232. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/i18n/translation-prompt.md +263 -0
  233. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/i18n/translation-rules.md +69 -0
  234. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/i18n/translation-rules.zh.md +69 -0
  235. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/module-graph.md +1411 -0
  236. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/module-graph.zh.md +1413 -0
  237. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/persistence-catalog.md +1075 -0
  238. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/persistence-catalog.zh.md +1077 -0
  239. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/postmortem/0001-acp-default-export-drops-inject.md +113 -0
  240. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/postmortem/0001-acp-default-export-drops-inject.zh.md +113 -0
  241. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/postmortem/0002-js-expression-disabled-filesystem-tools.md +47 -0
  242. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/postmortem/0002-js-expression-disabled-filesystem-tools.zh.md +47 -0
  243. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/postmortem/0003-web-agent-gui-feedback-loop.md +53 -0
  244. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/postmortem/0003-web-agent-gui-feedback-loop.zh.md +53 -0
  245. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/postmortem/0004-landlock-partial-notice-misclassified-child-failures.md +55 -0
  246. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/postmortem/0004-landlock-partial-notice-misclassified-child-failures.zh.md +55 -0
  247. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/postmortem/README.md +18 -0
  248. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/postmortem/README.zh.md +18 -0
  249. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/rescope.md +53 -0
  250. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/rescope.zh.md +53 -0
  251. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/README.md +61 -0
  252. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/README.zh.md +61 -0
  253. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/agent-team.md +207 -0
  254. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/agent-team.zh.md +207 -0
  255. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/approval.md +170 -0
  256. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/approval.zh.md +170 -0
  257. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/attachment.md +351 -0
  258. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/attachment.zh.md +351 -0
  259. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/client-modules.md +168 -0
  260. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/client-modules.zh.md +168 -0
  261. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/code-runtime.md +195 -0
  262. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/code-runtime.zh.md +195 -0
  263. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/commands.md +219 -0
  264. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/commands.zh.md +219 -0
  265. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/compaction.md +238 -0
  266. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/compaction.zh.md +238 -0
  267. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/conversation.md +258 -0
  268. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/conversation.zh.md +258 -0
  269. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/core.md +1209 -0
  270. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/core.zh.md +1219 -0
  271. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/credentials.md +329 -0
  272. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/credentials.zh.md +329 -0
  273. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/extensions.md +382 -0
  274. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/extensions.zh.md +382 -0
  275. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/feedback.md +266 -0
  276. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/feedback.zh.md +266 -0
  277. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/filesystem.md +505 -0
  278. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/filesystem.zh.md +505 -0
  279. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/goal.md +277 -0
  280. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/goal.zh.md +277 -0
  281. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/invariants.md +88 -0
  282. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/invariants.zh.md +88 -0
  283. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/jobs.md +290 -0
  284. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/jobs.zh.md +290 -0
  285. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/llm-streaming.md +1080 -0
  286. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/llm-streaming.zh.md +1086 -0
  287. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/lsp.md +202 -0
  288. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/lsp.zh.md +202 -0
  289. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/permission-presets.md +131 -0
  290. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/permission-presets.zh.md +131 -0
  291. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/persistence.md +395 -0
  292. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/persistence.zh.md +395 -0
  293. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/plan.md +87 -0
  294. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/plan.zh.md +87 -0
  295. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/sandbox.md +220 -0
  296. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/sandbox.zh.md +220 -0
  297. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/schedule.md +192 -0
  298. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/schedule.zh.md +192 -0
  299. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/scope.md +59 -0
  300. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/scope.zh.md +59 -0
  301. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/session-projection.md +354 -0
  302. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/session-projection.zh.md +354 -0
  303. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/session-query.md +509 -0
  304. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/session-query.zh.md +509 -0
  305. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/session-reference.md +219 -0
  306. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/session-reference.zh.md +219 -0
  307. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/session-telemetry.md +194 -0
  308. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/session-telemetry.zh.md +194 -0
  309. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/session-title.md +204 -0
  310. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/session-title.zh.md +204 -0
  311. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/session.md +1155 -0
  312. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/session.zh.md +1159 -0
  313. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/settings.md +405 -0
  314. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/settings.zh.md +405 -0
  315. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/shell.md +303 -0
  316. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/shell.zh.md +303 -0
  317. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/skills.md +354 -0
  318. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/skills.zh.md +354 -0
  319. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/slots.md +175 -0
  320. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/slots.zh.md +175 -0
  321. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/spill.md +117 -0
  322. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/spill.zh.md +117 -0
  323. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/storage.md +260 -0
  324. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/storage.zh.md +260 -0
  325. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/subagent.md +766 -0
  326. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/subagent.zh.md +770 -0
  327. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/subprocess.md +324 -0
  328. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/subprocess.zh.md +324 -0
  329. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/system-prompt.md +220 -0
  330. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/system-prompt.zh.md +220 -0
  331. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/terminal.md +184 -0
  332. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/terminal.zh.md +184 -0
  333. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/todo.md +32 -0
  334. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/todo.zh.md +32 -0
  335. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/token-meter.md +105 -0
  336. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/token-meter.zh.md +105 -0
  337. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/tools.md +720 -0
  338. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/tools.zh.md +720 -0
  339. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/typert.md +343 -0
  340. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/typert.zh.md +343 -0
  341. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/user-questions.md +178 -0
  342. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/user-questions.zh.md +178 -0
  343. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/web-client.md +95 -0
  344. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/web-client.zh.md +95 -0
  345. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/web-server.md +154 -0
  346. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/web-server.zh.md +154 -0
  347. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/web.md +206 -0
  348. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/web.zh.md +206 -0
  349. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/webhook.md +70 -0
  350. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/webhook.zh.md +70 -0
  351. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/workflow.md +278 -0
  352. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/workflow.zh.md +278 -0
  353. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/workspace.md +321 -0
  354. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/workspace.zh.md +321 -0
  355. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/testing.md +54 -0
  356. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/testing.zh.md +54 -0
  357. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/tool-catalog.md +2225 -0
  358. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/tool-catalog.zh.md +2233 -0
  359. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/tool-execution-pipeline.md +62 -0
  360. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/tool-execution-pipeline.zh.md +64 -0
  361. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/user/develop/basic/config.md +106 -0
  362. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/user/develop/basic/config.zh.md +106 -0
  363. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/user/develop/basic/index.md +144 -0
  364. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/user/develop/basic/index.zh.md +144 -0
  365. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/user/develop/basic/publish.md +183 -0
  366. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/user/develop/basic/publish.zh.md +183 -0
  367. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/user/develop/basic/tool.md +52 -0
  368. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/user/develop/basic/tool.zh.md +52 -0
  369. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/user/develop/framework/events.md +143 -0
  370. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/user/develop/framework/events.zh.md +143 -0
  371. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/user/develop/framework/index.md +137 -0
  372. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/user/develop/framework/index.zh.md +137 -0
  373. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/user/develop/framework/service.md +148 -0
  374. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/user/develop/framework/service.zh.md +150 -0
  375. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/user/develop/practice/dynamic-cordis.md +15 -0
  376. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/user/develop/practice/dynamic-cordis.zh.md +15 -0
  377. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/user/develop/practice/index.md +155 -0
  378. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/user/develop/practice/index.zh.md +155 -0
  379. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/user/develop/practice/llm-adapter.md +189 -0
  380. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/user/develop/practice/llm-adapter.zh.md +189 -0
  381. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/user/guide/github-review.md +102 -0
  382. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/user/guide/github-review.zh.md +102 -0
  383. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/user/guide/index.md +30 -0
  384. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/user/guide/index.zh.md +30 -0
  385. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/user/guide/mcp-memory.md +101 -0
  386. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/user/guide/mcp-memory.zh.md +101 -0
  387. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/user/guide/network-proxy.md +85 -0
  388. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/user/guide/network-proxy.zh.md +85 -0
  389. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/user/guide/providers.md +190 -0
  390. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/user/guide/providers.zh.md +190 -0
  391. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/user/guide/python-sdk.md +150 -0
  392. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/user/guide/python-sdk.zh.md +150 -0
  393. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/user/guide/schedule.md +21 -0
  394. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/user/guide/schedule.zh.md +21 -0
  395. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/user/index.md +11 -0
  396. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/user/index.zh.md +11 -0
  397. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/web-styling.md +29 -0
  398. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/web-styling.zh.md +29 -0
  399. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/site-pages-map.txt +234 -0
  400. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/site-pages.json +232 -0
  401. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src-README.md +63 -0
  402. package/node_modules/better-dsh/docs/dev-test-environment-notes.md +137 -0
  403. package/node_modules/better-dsh/docs/distro-blueprint.md +81 -0
  404. package/node_modules/better-dsh/docs/dsh-webUI-with-rlm-mode.png +0 -0
  405. package/node_modules/better-dsh/docs/repositioning-and-rebranding.md +102 -0
  406. package/node_modules/better-dsh/docs/specs/agent/spec.md +54 -0
  407. package/node_modules/better-dsh/docs/specs/ast/spec.md +57 -0
  408. package/node_modules/better-dsh/docs/specs/ast-engine-deomp/spec.md +170 -0
  409. package/node_modules/better-dsh/docs/specs/authentication-only-web-admission/spec.md +51 -0
  410. package/node_modules/better-dsh/docs/specs/compaction-recall/spec.md +46 -0
  411. package/node_modules/better-dsh/docs/specs/ctx/spec.md +179 -0
  412. package/node_modules/better-dsh/docs/specs/docs-packaging-trim/spec.md +110 -0
  413. package/node_modules/better-dsh/docs/specs/dsh/spec.md +47 -0
  414. package/node_modules/better-dsh/docs/specs/dvc/spec.md +106 -0
  415. package/node_modules/better-dsh/docs/specs/escalation-guidance/spec.md +44 -0
  416. package/node_modules/better-dsh/docs/specs/fs-scheme-resolution/spec.md +37 -0
  417. package/node_modules/better-dsh/docs/specs/hash-edit/spec.md +41 -0
  418. package/node_modules/better-dsh/docs/specs/http-read/spec.md +73 -0
  419. package/node_modules/better-dsh/docs/specs/kernel-provisioning/spec.md +53 -0
  420. package/node_modules/better-dsh/docs/specs/lsp/spec.md +121 -0
  421. package/node_modules/better-dsh/docs/specs/mobile-layout/spec.md +108 -0
  422. package/node_modules/better-dsh/docs/specs/model-failover/spec.md +20 -0
  423. package/node_modules/better-dsh/docs/specs/model-picker-ios-blur/spec.md +168 -0
  424. package/node_modules/better-dsh/docs/specs/plugins-page-components/spec.md +79 -0
  425. package/node_modules/better-dsh/docs/specs/preact-ui-shell/spec.md +22 -0
  426. package/node_modules/better-dsh/docs/specs/remote-pty-label/spec.md +126 -0
  427. package/node_modules/better-dsh/docs/specs/repl-dispatch-resilience/spec.md +21 -0
  428. package/node_modules/better-dsh/docs/specs/skill/spec.md +58 -0
  429. package/node_modules/better-dsh/docs/specs/tool-surface/spec.md +222 -0
  430. package/node_modules/better-dsh/docs/specs/url-schema/spec.md +148 -0
  431. package/node_modules/better-dsh/docs/specs/web-trust-fence/spec.md +43 -0
  432. package/node_modules/better-dsh/docs/specs/welcome-self-contained/spec.md +13 -0
  433. package/node_modules/better-dsh/docs/specs/zero-npm-runtime-deps/spec.md +85 -0
  434. package/node_modules/better-dsh/docs/superpowers/plans/2026-10-02-ctx-navigation.md +319 -0
  435. package/node_modules/better-dsh/docs/superpowers/plans/2026-10-03-ast-engine-deomp.md +1214 -0
  436. package/node_modules/better-dsh/docs/superpowers/plans/2026-10-03-docs-packaging-trim.md +181 -0
  437. package/node_modules/better-dsh/docs/superpowers/specs/2026-10-02-ctx-navigation-design.md +209 -0
  438. package/node_modules/better-dsh/docs/upstream-dsh-0.1.5-rc.2-report.md +156 -0
  439. package/node_modules/better-dsh/dsh-docs/AGENTS.md +75 -0
  440. package/node_modules/better-dsh/dsh-docs/agent-lifecycle.md +84 -0
  441. package/node_modules/better-dsh/dsh-docs/agent-lifecycle.zh.md +86 -0
  442. package/node_modules/better-dsh/dsh-docs/api-gateway.md +164 -0
  443. package/node_modules/better-dsh/dsh-docs/api-gateway.zh.md +164 -0
  444. package/node_modules/better-dsh/dsh-docs/architecture.md +150 -0
  445. package/node_modules/better-dsh/dsh-docs/architecture.zh.md +154 -0
  446. package/node_modules/better-dsh/dsh-docs/capability-seams.md +543 -0
  447. package/node_modules/better-dsh/dsh-docs/capability-seams.zh.md +545 -0
  448. package/node_modules/better-dsh/dsh-docs/config-catalog.md +3473 -0
  449. package/node_modules/better-dsh/dsh-docs/config-catalog.zh.md +3474 -0
  450. package/node_modules/better-dsh/dsh-docs/cookbook/adding-a-package.md +117 -0
  451. package/node_modules/better-dsh/dsh-docs/cookbook/adding-a-package.zh.md +119 -0
  452. package/node_modules/better-dsh/dsh-docs/cookbook/adding-a-remote-api.md +197 -0
  453. package/node_modules/better-dsh/dsh-docs/cookbook/adding-a-remote-api.zh.md +197 -0
  454. package/node_modules/better-dsh/dsh-docs/cookbook/adding-a-session-format-version.md +109 -0
  455. package/node_modules/better-dsh/dsh-docs/cookbook/adding-a-session-format-version.zh.md +109 -0
  456. package/node_modules/better-dsh/dsh-docs/cookbook/adding-a-settings-card.md +102 -0
  457. package/node_modules/better-dsh/dsh-docs/cookbook/adding-a-settings-card.zh.md +102 -0
  458. package/node_modules/better-dsh/dsh-docs/cookbook/adding-a-tool.md +101 -0
  459. package/node_modules/better-dsh/dsh-docs/cookbook/adding-a-tool.zh.md +103 -0
  460. package/node_modules/better-dsh/dsh-docs/cookbook/adding-a-vendored-package.md +59 -0
  461. package/node_modules/better-dsh/dsh-docs/cookbook/adding-a-vendored-package.zh.md +59 -0
  462. package/node_modules/better-dsh/dsh-docs/cookbook/adding-an-llm-adapter.md +43 -0
  463. package/node_modules/better-dsh/dsh-docs/cookbook/adding-an-llm-adapter.zh.md +43 -0
  464. package/node_modules/better-dsh/dsh-docs/cookbook/extension-cookbook.md +132 -0
  465. package/node_modules/better-dsh/dsh-docs/cookbook/extension-cookbook.zh.md +136 -0
  466. package/node_modules/better-dsh/dsh-docs/cookbook/maintaining-dsh-code-review.md +64 -0
  467. package/node_modules/better-dsh/dsh-docs/cookbook/maintaining-dsh-code-review.zh.md +64 -0
  468. package/node_modules/better-dsh/dsh-docs/cookbook/responding-to-pr-review-on-a-stack.md +32 -0
  469. package/node_modules/better-dsh/dsh-docs/cookbook/responding-to-pr-review-on-a-stack.zh.md +32 -0
  470. package/node_modules/better-dsh/dsh-docs/cordis-api/context.md +364 -0
  471. package/node_modules/better-dsh/dsh-docs/cordis-api/context.zh.md +366 -0
  472. package/node_modules/better-dsh/dsh-docs/cordis-api/events.md +207 -0
  473. package/node_modules/better-dsh/dsh-docs/cordis-api/events.zh.md +209 -0
  474. package/node_modules/better-dsh/dsh-docs/cordis-api/fiber.md +375 -0
  475. package/node_modules/better-dsh/dsh-docs/cordis-api/fiber.zh.md +377 -0
  476. package/node_modules/better-dsh/dsh-docs/cordis-api/inherited.md +39 -0
  477. package/node_modules/better-dsh/dsh-docs/cordis-api/registry.md +152 -0
  478. package/node_modules/better-dsh/dsh-docs/cordis-api/registry.zh.md +154 -0
  479. package/node_modules/better-dsh/dsh-docs/cordis-api/service.md +102 -0
  480. package/node_modules/better-dsh/dsh-docs/cordis-api/service.zh.md +104 -0
  481. package/node_modules/better-dsh/dsh-docs/cordis-primer.md +45 -0
  482. package/node_modules/better-dsh/dsh-docs/cordis-primer.zh.md +51 -0
  483. package/node_modules/better-dsh/dsh-docs/cordis-tutorial/01-first-plugin.md +95 -0
  484. package/node_modules/better-dsh/dsh-docs/cordis-tutorial/01-first-plugin.zh.md +95 -0
  485. package/node_modules/better-dsh/dsh-docs/cordis-tutorial/02-lifecycle-and-effects.md +98 -0
  486. package/node_modules/better-dsh/dsh-docs/cordis-tutorial/02-lifecycle-and-effects.zh.md +98 -0
  487. package/node_modules/better-dsh/dsh-docs/cordis-tutorial/03-services.md +98 -0
  488. package/node_modules/better-dsh/dsh-docs/cordis-tutorial/03-services.zh.md +98 -0
  489. package/node_modules/better-dsh/dsh-docs/cordis-tutorial/04-events.md +144 -0
  490. package/node_modules/better-dsh/dsh-docs/cordis-tutorial/04-events.zh.md +144 -0
  491. package/node_modules/better-dsh/dsh-docs/cordis-tutorial/05-config.md +84 -0
  492. package/node_modules/better-dsh/dsh-docs/cordis-tutorial/05-config.zh.md +84 -0
  493. package/node_modules/better-dsh/dsh-docs/cordis-tutorial/06-composition-and-hmr.md +113 -0
  494. package/node_modules/better-dsh/dsh-docs/cordis-tutorial/06-composition-and-hmr.zh.md +113 -0
  495. package/node_modules/better-dsh/dsh-docs/cordis-tutorial/07-into-the-harness.md +108 -0
  496. package/node_modules/better-dsh/dsh-docs/cordis-tutorial/07-into-the-harness.zh.md +108 -0
  497. package/node_modules/better-dsh/dsh-docs/cordis-tutorial/index.md +60 -0
  498. package/node_modules/better-dsh/dsh-docs/cordis-tutorial/index.zh.md +62 -0
  499. package/node_modules/better-dsh/dsh-docs/deepseek-llm-api-wire-extensions.md +163 -0
  500. package/node_modules/better-dsh/dsh-docs/deepseek-llm-api-wire-extensions.zh.md +163 -0
  501. package/node_modules/better-dsh/dsh-docs/defensive-patterns.md +33 -0
  502. package/node_modules/better-dsh/dsh-docs/defensive-patterns.zh.md +35 -0
  503. package/node_modules/better-dsh/dsh-docs/development.md +167 -0
  504. package/node_modules/better-dsh/dsh-docs/development.zh.md +173 -0
  505. package/node_modules/better-dsh/dsh-docs/event-producer-consumer.md +86 -0
  506. package/node_modules/better-dsh/dsh-docs/event-producer-consumer.zh.md +88 -0
  507. package/node_modules/better-dsh/dsh-docs/glossary.md +45 -0
  508. package/node_modules/better-dsh/dsh-docs/glossary.zh.md +45 -0
  509. package/node_modules/better-dsh/dsh-docs/graph-atlas.md +22 -0
  510. package/node_modules/better-dsh/dsh-docs/graph-atlas.zh.md +24 -0
  511. package/node_modules/better-dsh/dsh-docs/i18n/README.md +60 -0
  512. package/node_modules/better-dsh/dsh-docs/i18n/README.zh.md +62 -0
  513. package/node_modules/better-dsh/dsh-docs/i18n/style-samples.md +87 -0
  514. package/node_modules/better-dsh/dsh-docs/i18n/terminology.md +214 -0
  515. package/node_modules/better-dsh/dsh-docs/i18n/translation-prompt.md +263 -0
  516. package/node_modules/better-dsh/dsh-docs/i18n/translation-rules.md +69 -0
  517. package/node_modules/better-dsh/dsh-docs/i18n/translation-rules.zh.md +69 -0
  518. package/node_modules/better-dsh/dsh-docs/module-graph.md +1411 -0
  519. package/node_modules/better-dsh/dsh-docs/module-graph.zh.md +1413 -0
  520. package/node_modules/better-dsh/dsh-docs/persistence-catalog.md +1075 -0
  521. package/node_modules/better-dsh/dsh-docs/persistence-catalog.zh.md +1077 -0
  522. package/node_modules/better-dsh/dsh-docs/postmortem/0001-acp-default-export-drops-inject.md +113 -0
  523. package/node_modules/better-dsh/dsh-docs/postmortem/0001-acp-default-export-drops-inject.zh.md +113 -0
  524. package/node_modules/better-dsh/dsh-docs/postmortem/0002-js-expression-disabled-filesystem-tools.md +47 -0
  525. package/node_modules/better-dsh/dsh-docs/postmortem/0002-js-expression-disabled-filesystem-tools.zh.md +47 -0
  526. package/node_modules/better-dsh/dsh-docs/postmortem/0003-web-agent-gui-feedback-loop.md +53 -0
  527. package/node_modules/better-dsh/dsh-docs/postmortem/0003-web-agent-gui-feedback-loop.zh.md +53 -0
  528. package/node_modules/better-dsh/dsh-docs/postmortem/0004-landlock-partial-notice-misclassified-child-failures.md +55 -0
  529. package/node_modules/better-dsh/dsh-docs/postmortem/0004-landlock-partial-notice-misclassified-child-failures.zh.md +55 -0
  530. package/node_modules/better-dsh/dsh-docs/postmortem/README.md +18 -0
  531. package/node_modules/better-dsh/dsh-docs/postmortem/README.zh.md +18 -0
  532. package/node_modules/better-dsh/dsh-docs/rescope.md +53 -0
  533. package/node_modules/better-dsh/dsh-docs/rescope.zh.md +53 -0
  534. package/node_modules/better-dsh/dsh-docs/session-format-status.md +47 -0
  535. package/node_modules/better-dsh/dsh-docs/session-format-status.zh.md +47 -0
  536. package/node_modules/better-dsh/dsh-docs/subsystems/README.md +61 -0
  537. package/node_modules/better-dsh/dsh-docs/subsystems/README.zh.md +61 -0
  538. package/node_modules/better-dsh/dsh-docs/subsystems/agent-team.md +207 -0
  539. package/node_modules/better-dsh/dsh-docs/subsystems/agent-team.zh.md +207 -0
  540. package/node_modules/better-dsh/dsh-docs/subsystems/approval.md +170 -0
  541. package/node_modules/better-dsh/dsh-docs/subsystems/approval.zh.md +170 -0
  542. package/node_modules/better-dsh/dsh-docs/subsystems/attachment.md +351 -0
  543. package/node_modules/better-dsh/dsh-docs/subsystems/attachment.zh.md +351 -0
  544. package/node_modules/better-dsh/dsh-docs/subsystems/client-modules.md +168 -0
  545. package/node_modules/better-dsh/dsh-docs/subsystems/client-modules.zh.md +168 -0
  546. package/node_modules/better-dsh/dsh-docs/subsystems/client-resources.md +91 -0
  547. package/node_modules/better-dsh/dsh-docs/subsystems/client-resources.zh.md +91 -0
  548. package/node_modules/better-dsh/dsh-docs/subsystems/code-runtime.md +195 -0
  549. package/node_modules/better-dsh/dsh-docs/subsystems/code-runtime.zh.md +195 -0
  550. package/node_modules/better-dsh/dsh-docs/subsystems/commands.md +219 -0
  551. package/node_modules/better-dsh/dsh-docs/subsystems/commands.zh.md +219 -0
  552. package/node_modules/better-dsh/dsh-docs/subsystems/compaction.md +238 -0
  553. package/node_modules/better-dsh/dsh-docs/subsystems/compaction.zh.md +238 -0
  554. package/node_modules/better-dsh/dsh-docs/subsystems/conversation.md +258 -0
  555. package/node_modules/better-dsh/dsh-docs/subsystems/conversation.zh.md +258 -0
  556. package/node_modules/better-dsh/dsh-docs/subsystems/core.md +1209 -0
  557. package/node_modules/better-dsh/dsh-docs/subsystems/core.zh.md +1219 -0
  558. package/node_modules/better-dsh/dsh-docs/subsystems/credentials.md +329 -0
  559. package/node_modules/better-dsh/dsh-docs/subsystems/credentials.zh.md +329 -0
  560. package/node_modules/better-dsh/dsh-docs/subsystems/extensions.md +382 -0
  561. package/node_modules/better-dsh/dsh-docs/subsystems/extensions.zh.md +382 -0
  562. package/node_modules/better-dsh/dsh-docs/subsystems/feedback.md +266 -0
  563. package/node_modules/better-dsh/dsh-docs/subsystems/feedback.zh.md +266 -0
  564. package/node_modules/better-dsh/dsh-docs/subsystems/filesystem.md +505 -0
  565. package/node_modules/better-dsh/dsh-docs/subsystems/filesystem.zh.md +505 -0
  566. package/node_modules/better-dsh/dsh-docs/subsystems/goal.md +277 -0
  567. package/node_modules/better-dsh/dsh-docs/subsystems/goal.zh.md +277 -0
  568. package/node_modules/better-dsh/dsh-docs/subsystems/invariants.md +88 -0
  569. package/node_modules/better-dsh/dsh-docs/subsystems/invariants.zh.md +88 -0
  570. package/node_modules/better-dsh/dsh-docs/subsystems/jobs.md +290 -0
  571. package/node_modules/better-dsh/dsh-docs/subsystems/jobs.zh.md +290 -0
  572. package/node_modules/better-dsh/dsh-docs/subsystems/llm-streaming.md +1080 -0
  573. package/node_modules/better-dsh/dsh-docs/subsystems/llm-streaming.zh.md +1086 -0
  574. package/node_modules/better-dsh/dsh-docs/subsystems/lsp.md +202 -0
  575. package/node_modules/better-dsh/dsh-docs/subsystems/lsp.zh.md +202 -0
  576. package/node_modules/better-dsh/dsh-docs/subsystems/permission-presets.md +131 -0
  577. package/node_modules/better-dsh/dsh-docs/subsystems/permission-presets.zh.md +131 -0
  578. package/node_modules/better-dsh/dsh-docs/subsystems/persistence.md +395 -0
  579. package/node_modules/better-dsh/dsh-docs/subsystems/persistence.zh.md +395 -0
  580. package/node_modules/better-dsh/dsh-docs/subsystems/plan.md +87 -0
  581. package/node_modules/better-dsh/dsh-docs/subsystems/plan.zh.md +87 -0
  582. package/node_modules/better-dsh/dsh-docs/subsystems/sandbox.md +220 -0
  583. package/node_modules/better-dsh/dsh-docs/subsystems/sandbox.zh.md +220 -0
  584. package/node_modules/better-dsh/dsh-docs/subsystems/schedule.md +192 -0
  585. package/node_modules/better-dsh/dsh-docs/subsystems/schedule.zh.md +192 -0
  586. package/node_modules/better-dsh/dsh-docs/subsystems/scope.md +59 -0
  587. package/node_modules/better-dsh/dsh-docs/subsystems/scope.zh.md +59 -0
  588. package/node_modules/better-dsh/dsh-docs/subsystems/session-projection.md +354 -0
  589. package/node_modules/better-dsh/dsh-docs/subsystems/session-projection.zh.md +354 -0
  590. package/node_modules/better-dsh/dsh-docs/subsystems/session-query.md +509 -0
  591. package/node_modules/better-dsh/dsh-docs/subsystems/session-query.zh.md +509 -0
  592. package/node_modules/better-dsh/dsh-docs/subsystems/session-reference.md +219 -0
  593. package/node_modules/better-dsh/dsh-docs/subsystems/session-reference.zh.md +219 -0
  594. package/node_modules/better-dsh/dsh-docs/subsystems/session-telemetry.md +194 -0
  595. package/node_modules/better-dsh/dsh-docs/subsystems/session-telemetry.zh.md +194 -0
  596. package/node_modules/better-dsh/dsh-docs/subsystems/session-title.md +204 -0
  597. package/node_modules/better-dsh/dsh-docs/subsystems/session-title.zh.md +204 -0
  598. package/node_modules/better-dsh/dsh-docs/subsystems/session.md +1155 -0
  599. package/node_modules/better-dsh/dsh-docs/subsystems/session.zh.md +1159 -0
  600. package/node_modules/better-dsh/dsh-docs/subsystems/settings.md +405 -0
  601. package/node_modules/better-dsh/dsh-docs/subsystems/settings.zh.md +405 -0
  602. package/node_modules/better-dsh/dsh-docs/subsystems/shell.md +303 -0
  603. package/node_modules/better-dsh/dsh-docs/subsystems/shell.zh.md +303 -0
  604. package/node_modules/better-dsh/dsh-docs/subsystems/sidebar-right.md +148 -0
  605. package/node_modules/better-dsh/dsh-docs/subsystems/sidebar-right.zh.md +148 -0
  606. package/node_modules/better-dsh/dsh-docs/subsystems/skills.md +354 -0
  607. package/node_modules/better-dsh/dsh-docs/subsystems/skills.zh.md +354 -0
  608. package/node_modules/better-dsh/dsh-docs/subsystems/slots.md +175 -0
  609. package/node_modules/better-dsh/dsh-docs/subsystems/slots.zh.md +175 -0
  610. package/node_modules/better-dsh/dsh-docs/subsystems/spill.md +117 -0
  611. package/node_modules/better-dsh/dsh-docs/subsystems/spill.zh.md +117 -0
  612. package/node_modules/better-dsh/dsh-docs/subsystems/storage.md +260 -0
  613. package/node_modules/better-dsh/dsh-docs/subsystems/storage.zh.md +260 -0
  614. package/node_modules/better-dsh/dsh-docs/subsystems/subagent.md +766 -0
  615. package/node_modules/better-dsh/dsh-docs/subsystems/subagent.zh.md +770 -0
  616. package/node_modules/better-dsh/dsh-docs/subsystems/subprocess.md +324 -0
  617. package/node_modules/better-dsh/dsh-docs/subsystems/subprocess.zh.md +324 -0
  618. package/node_modules/better-dsh/dsh-docs/subsystems/system-prompt.md +220 -0
  619. package/node_modules/better-dsh/dsh-docs/subsystems/system-prompt.zh.md +220 -0
  620. package/node_modules/better-dsh/dsh-docs/subsystems/terminal.md +184 -0
  621. package/node_modules/better-dsh/dsh-docs/subsystems/terminal.zh.md +184 -0
  622. package/node_modules/better-dsh/dsh-docs/subsystems/todo.md +32 -0
  623. package/node_modules/better-dsh/dsh-docs/subsystems/todo.zh.md +32 -0
  624. package/node_modules/better-dsh/dsh-docs/subsystems/token-meter.md +105 -0
  625. package/node_modules/better-dsh/dsh-docs/subsystems/token-meter.zh.md +105 -0
  626. package/node_modules/better-dsh/dsh-docs/subsystems/tools.md +720 -0
  627. package/node_modules/better-dsh/dsh-docs/subsystems/tools.zh.md +720 -0
  628. package/node_modules/better-dsh/dsh-docs/subsystems/typert.md +343 -0
  629. package/node_modules/better-dsh/dsh-docs/subsystems/typert.zh.md +343 -0
  630. package/node_modules/better-dsh/dsh-docs/subsystems/user-questions.md +178 -0
  631. package/node_modules/better-dsh/dsh-docs/subsystems/user-questions.zh.md +178 -0
  632. package/node_modules/better-dsh/dsh-docs/subsystems/web-client.md +95 -0
  633. package/node_modules/better-dsh/dsh-docs/subsystems/web-client.zh.md +95 -0
  634. package/node_modules/better-dsh/dsh-docs/subsystems/web-server.md +154 -0
  635. package/node_modules/better-dsh/dsh-docs/subsystems/web-server.zh.md +154 -0
  636. package/node_modules/better-dsh/dsh-docs/subsystems/web.md +206 -0
  637. package/node_modules/better-dsh/dsh-docs/subsystems/web.zh.md +206 -0
  638. package/node_modules/better-dsh/dsh-docs/subsystems/webhook.md +70 -0
  639. package/node_modules/better-dsh/dsh-docs/subsystems/webhook.zh.md +70 -0
  640. package/node_modules/better-dsh/dsh-docs/subsystems/workflow.md +278 -0
  641. package/node_modules/better-dsh/dsh-docs/subsystems/workflow.zh.md +278 -0
  642. package/node_modules/better-dsh/dsh-docs/subsystems/workspace.md +321 -0
  643. package/node_modules/better-dsh/dsh-docs/subsystems/workspace.zh.md +321 -0
  644. package/node_modules/better-dsh/dsh-docs/testing.md +54 -0
  645. package/node_modules/better-dsh/dsh-docs/testing.zh.md +54 -0
  646. package/node_modules/better-dsh/dsh-docs/tool-catalog.md +2225 -0
  647. package/node_modules/better-dsh/dsh-docs/tool-catalog.zh.md +2233 -0
  648. package/node_modules/better-dsh/dsh-docs/tool-execution-pipeline.md +62 -0
  649. package/node_modules/better-dsh/dsh-docs/tool-execution-pipeline.zh.md +64 -0
  650. package/node_modules/better-dsh/dsh-docs/user/develop/basic/config.md +106 -0
  651. package/node_modules/better-dsh/dsh-docs/user/develop/basic/config.zh.md +106 -0
  652. package/node_modules/better-dsh/dsh-docs/user/develop/basic/index.md +144 -0
  653. package/node_modules/better-dsh/dsh-docs/user/develop/basic/index.zh.md +144 -0
  654. package/node_modules/better-dsh/dsh-docs/user/develop/basic/publish.md +183 -0
  655. package/node_modules/better-dsh/dsh-docs/user/develop/basic/publish.zh.md +183 -0
  656. package/node_modules/better-dsh/dsh-docs/user/develop/basic/tool.md +52 -0
  657. package/node_modules/better-dsh/dsh-docs/user/develop/basic/tool.zh.md +52 -0
  658. package/node_modules/better-dsh/dsh-docs/user/develop/framework/events.md +143 -0
  659. package/node_modules/better-dsh/dsh-docs/user/develop/framework/events.zh.md +143 -0
  660. package/node_modules/better-dsh/dsh-docs/user/develop/framework/index.md +137 -0
  661. package/node_modules/better-dsh/dsh-docs/user/develop/framework/index.zh.md +137 -0
  662. package/node_modules/better-dsh/dsh-docs/user/develop/framework/service.md +148 -0
  663. package/node_modules/better-dsh/dsh-docs/user/develop/framework/service.zh.md +150 -0
  664. package/node_modules/better-dsh/dsh-docs/user/develop/practice/dynamic-cordis.md +15 -0
  665. package/node_modules/better-dsh/dsh-docs/user/develop/practice/dynamic-cordis.zh.md +15 -0
  666. package/node_modules/better-dsh/dsh-docs/user/develop/practice/index.md +155 -0
  667. package/node_modules/better-dsh/dsh-docs/user/develop/practice/index.zh.md +155 -0
  668. package/node_modules/better-dsh/dsh-docs/user/develop/practice/llm-adapter.md +189 -0
  669. package/node_modules/better-dsh/dsh-docs/user/develop/practice/llm-adapter.zh.md +189 -0
  670. package/node_modules/better-dsh/dsh-docs/user/guide/github-review.md +102 -0
  671. package/node_modules/better-dsh/dsh-docs/user/guide/github-review.zh.md +102 -0
  672. package/node_modules/better-dsh/dsh-docs/user/guide/index.md +30 -0
  673. package/node_modules/better-dsh/dsh-docs/user/guide/index.zh.md +30 -0
  674. package/node_modules/better-dsh/dsh-docs/user/guide/mcp-memory.md +101 -0
  675. package/node_modules/better-dsh/dsh-docs/user/guide/mcp-memory.zh.md +101 -0
  676. package/node_modules/better-dsh/dsh-docs/user/guide/network-proxy.md +85 -0
  677. package/node_modules/better-dsh/dsh-docs/user/guide/network-proxy.zh.md +85 -0
  678. package/node_modules/better-dsh/dsh-docs/user/guide/providers.md +190 -0
  679. package/node_modules/better-dsh/dsh-docs/user/guide/providers.zh.md +190 -0
  680. package/node_modules/better-dsh/dsh-docs/user/guide/python-sdk.md +150 -0
  681. package/node_modules/better-dsh/dsh-docs/user/guide/python-sdk.zh.md +150 -0
  682. package/node_modules/better-dsh/dsh-docs/user/guide/schedule.md +21 -0
  683. package/node_modules/better-dsh/dsh-docs/user/guide/schedule.zh.md +21 -0
  684. package/node_modules/better-dsh/dsh-docs/user/index.md +11 -0
  685. package/node_modules/better-dsh/dsh-docs/user/index.zh.md +11 -0
  686. package/node_modules/better-dsh/dsh-docs/web-styling.md +29 -0
  687. package/node_modules/better-dsh/dsh-docs/web-styling.zh.md +29 -0
  688. package/node_modules/better-dsh/eval-description.md +33 -0
  689. package/node_modules/better-dsh/lib/BrowserWebSocketTransport-D1aFReu_.js +4 -0
  690. package/node_modules/better-dsh/lib/BrowserWebSocketTransport-wm99h94r.js +39 -0
  691. package/node_modules/better-dsh/lib/LaunchOptions-B874eBu2.js +4 -0
  692. package/node_modules/better-dsh/lib/LaunchOptions-kGXcZOe0.js +17 -0
  693. package/node_modules/better-dsh/lib/NodeWebSocketTransport-BRLjmu2R.js +4 -0
  694. package/node_modules/better-dsh/lib/NodeWebSocketTransport-D9ysYGLM.js +3634 -0
  695. package/node_modules/better-dsh/lib/ast-assets/ast-grep.wasm +0 -0
  696. package/node_modules/better-dsh/lib/ast-assets/tree-sitter-bash.wasm +0 -0
  697. package/node_modules/better-dsh/lib/ast-assets/tree-sitter-c.wasm +0 -0
  698. package/node_modules/better-dsh/lib/ast-assets/tree-sitter-cpp.wasm +0 -0
  699. package/node_modules/better-dsh/lib/ast-assets/tree-sitter-css.wasm +0 -0
  700. package/node_modules/better-dsh/lib/ast-assets/tree-sitter-go.wasm +0 -0
  701. package/node_modules/better-dsh/lib/ast-assets/tree-sitter-html.wasm +0 -0
  702. package/node_modules/better-dsh/lib/ast-assets/tree-sitter-javascript.wasm +0 -0
  703. package/node_modules/better-dsh/lib/ast-assets/tree-sitter-json.wasm +0 -0
  704. package/node_modules/better-dsh/lib/ast-assets/tree-sitter-python.wasm +0 -0
  705. package/node_modules/better-dsh/lib/ast-assets/tree-sitter-ruby.wasm +0 -0
  706. package/node_modules/better-dsh/lib/ast-assets/tree-sitter-rust.wasm +0 -0
  707. package/node_modules/better-dsh/lib/ast-assets/tree-sitter-tsx.wasm +0 -0
  708. package/node_modules/better-dsh/lib/ast-assets/tree-sitter-typescript.wasm +0 -0
  709. package/node_modules/better-dsh/lib/ast-assets/tree-sitter-yaml.wasm +0 -0
  710. package/node_modules/better-dsh/lib/ast-assets/tree-sitter.wasm +0 -0
  711. package/node_modules/better-dsh/lib/bidi-BalpKaJc.js +16106 -0
  712. package/node_modules/better-dsh/lib/bundle-delivery.d.ts +20 -0
  713. package/node_modules/better-dsh/lib/bundle-delivery.js +209 -0
  714. package/node_modules/better-dsh/lib/chunk-DQxbwPpZ.js +30 -0
  715. package/node_modules/better-dsh/lib/client/index.js +712 -0
  716. package/node_modules/better-dsh/lib/compaction/index.d.ts +57 -0
  717. package/node_modules/better-dsh/lib/compaction/index.js +145 -0
  718. package/node_modules/better-dsh/lib/failover/index.d.ts +59 -0
  719. package/node_modules/better-dsh/lib/failover/index.js +147 -0
  720. package/node_modules/better-dsh/lib/fs-aware/sandbox-plugin.d.ts +71 -0
  721. package/node_modules/better-dsh/lib/fs-aware/sandbox-plugin.js +249 -0
  722. package/node_modules/better-dsh/lib/hmr.d.ts +32 -0
  723. package/node_modules/better-dsh/lib/hmr.js +49 -0
  724. package/node_modules/better-dsh/lib/index-DTDXUe6m.d.ts +208 -0
  725. package/node_modules/better-dsh/lib/index-browser-CysrjMyM.js +21061 -0
  726. package/node_modules/better-dsh/lib/index.d.ts +705 -0
  727. package/node_modules/better-dsh/lib/index.js +3816 -0
  728. package/node_modules/better-dsh/lib/kernel-bridge.py +172 -0
  729. package/node_modules/better-dsh/lib/kernel-env-D8UOWeji.js +195 -0
  730. package/node_modules/better-dsh/lib/kernel-env.d.ts +80 -0
  731. package/node_modules/better-dsh/lib/kernel-env.js +3 -0
  732. package/node_modules/better-dsh/lib/lib-C8_jXvwA.js +894 -0
  733. package/node_modules/better-dsh/lib/lsp-server-registry-BXvUTBY7.js +3 -0
  734. package/node_modules/better-dsh/lib/lsp-server-registry-CH9WNFFt.js +972 -0
  735. package/node_modules/better-dsh/lib/main-BQeFrBM1.js +3 -0
  736. package/node_modules/better-dsh/lib/main-CupOhMp5.js +1432 -0
  737. package/node_modules/better-dsh/lib/mobile/plugin.d.ts +29 -0
  738. package/node_modules/better-dsh/lib/mobile/plugin.js +54 -0
  739. package/node_modules/better-dsh/lib/native-capture-BEByDXYM.js +68 -0
  740. package/node_modules/better-dsh/lib/puppeteer-core-CSk2PtSm.js +1136 -0
  741. package/node_modules/better-dsh/lib/py-sdk-D7klhpWb.js +178 -0
  742. package/node_modules/better-dsh/lib/py-sdk.d.ts +19 -0
  743. package/node_modules/better-dsh/lib/py-sdk.js +3 -0
  744. package/node_modules/better-dsh/lib/remote/plugin.d.ts +24 -0
  745. package/node_modules/better-dsh/lib/remote/plugin.js +1190 -0
  746. package/node_modules/better-dsh/lib/url-schemes/index.d.ts +88 -0
  747. package/node_modules/better-dsh/lib/url-schemes/index.js +12229 -0
  748. package/node_modules/better-dsh/lib/util-BHL_dfV_.js +2953 -0
  749. package/node_modules/better-dsh/lib/wasm_bg-CNXhHjVg.js +1291 -0
  750. package/node_modules/better-dsh/lib/web-password.d.ts +156 -0
  751. package/node_modules/better-dsh/lib/web-password.js +562 -0
  752. package/node_modules/better-dsh/lib/web-tree-sitter-CPrPD4J2.js +3440 -0
  753. package/node_modules/better-dsh/lib/web-trust-D6gJpUMf.js +393 -0
  754. package/node_modules/better-dsh/lib/web-trust-Dej_RI2B.d.ts +113 -0
  755. package/node_modules/better-dsh/lib/web-trust.d.ts +3 -0
  756. package/node_modules/better-dsh/lib/web-trust.js +4 -0
  757. package/node_modules/better-dsh/lib/webserver.d.ts +10 -0
  758. package/node_modules/better-dsh/lib/webserver.js +19 -0
  759. package/node_modules/better-dsh/lib/welcome-notice.d.ts +18 -0
  760. package/node_modules/better-dsh/lib/welcome-notice.js +59 -0
  761. package/node_modules/better-dsh/lib/wrap-T4I0nfPM.js +750 -0
  762. package/node_modules/better-dsh/package.json +430 -0
  763. package/node_modules/better-dsh/scripts/kernel-provision.mjs +35 -0
  764. package/node_modules/better-dsh/scripts/register-bundle.mjs +80 -0
  765. package/node_modules/better-dsh/url-schemes-instruction.md +22 -0
  766. package/package.json +21 -6
  767. package/superd-hub/assets/icons/README.md +20 -0
  768. package/superd-hub/assets/icons/amp.png +0 -0
  769. package/superd-hub/assets/icons/ante.png +0 -0
  770. package/superd-hub/assets/icons/antigravity.png +0 -0
  771. package/superd-hub/assets/icons/aug.png +0 -0
  772. package/superd-hub/assets/icons/autohand.png +0 -0
  773. package/superd-hub/assets/icons/claude.svg +1 -0
  774. package/superd-hub/assets/icons/cline.png +0 -0
  775. package/superd-hub/assets/icons/codebuddy.png +0 -0
  776. package/superd-hub/assets/icons/codebuff.png +0 -0
  777. package/superd-hub/assets/icons/codex.svg +1 -0
  778. package/superd-hub/assets/icons/command-code.png +0 -0
  779. package/superd-hub/assets/icons/continue.png +0 -0
  780. package/superd-hub/assets/icons/copilot.png +0 -0
  781. package/superd-hub/assets/icons/crush.png +0 -0
  782. package/superd-hub/assets/icons/cursor.png +0 -0
  783. package/superd-hub/assets/icons/devin.png +0 -0
  784. package/superd-hub/assets/icons/droid.png +0 -0
  785. package/superd-hub/assets/icons/dsh-fish.svg +3 -0
  786. package/superd-hub/assets/icons/dsh.png +0 -0
  787. package/superd-hub/assets/icons/freebuff.png +0 -0
  788. package/superd-hub/assets/icons/gemini.png +0 -0
  789. package/superd-hub/assets/icons/goose.png +0 -0
  790. package/superd-hub/assets/icons/grok.png +0 -0
  791. package/superd-hub/assets/icons/hermes.png +0 -0
  792. package/superd-hub/assets/icons/jcode.png +0 -0
  793. package/superd-hub/assets/icons/kilo.png +0 -0
  794. package/superd-hub/assets/icons/kimi.png +0 -0
  795. package/superd-hub/assets/icons/kiro.png +0 -0
  796. package/superd-hub/assets/icons/manifest.json +20 -0
  797. package/superd-hub/assets/icons/mimo-code.png +0 -0
  798. package/superd-hub/assets/icons/mistral-vibe.png +0 -0
  799. package/superd-hub/assets/icons/muse.png +0 -0
  800. package/superd-hub/assets/icons/omp.svg +1 -0
  801. package/superd-hub/assets/icons/openclaude.png +0 -0
  802. package/superd-hub/assets/icons/openclaw.png +0 -0
  803. package/superd-hub/assets/icons/opencode.png +0 -0
  804. package/superd-hub/assets/icons/pi.svg +1 -0
  805. package/superd-hub/assets/icons/prime-agent.png +0 -0
  806. package/superd-hub/assets/icons/qoder-cn.png +0 -0
  807. package/superd-hub/assets/icons/qoder.png +0 -0
  808. package/superd-hub/assets/icons/qwen-code.png +0 -0
  809. package/superd-hub/assets/icons/rovo.png +0 -0
  810. package/superd-hub/assets/icons/trae.png +0 -0
  811. package/superd-hub/assets/icons/zcode.png +0 -0
  812. package/superd-hub/dist/a2a-row.js +1 -1
  813. package/superd-hub/dist/agent-roster.d.ts +8 -3
  814. package/superd-hub/dist/agent-roster.js +19 -7
  815. package/superd-hub/dist/bundle-setup.d.ts +2 -0
  816. package/superd-hub/dist/bundle-setup.js +2 -0
  817. package/superd-hub/dist/client/icon-assets.gen.d.ts +16 -0
  818. package/superd-hub/dist/client/icon-assets.gen.js +54 -0
  819. package/superd-hub/dist/client/mesh-api.d.ts +28 -17
  820. package/superd-hub/dist/client/mesh-api.js +44 -31
  821. package/superd-hub/dist/client/mesh-groups.d.ts +13 -11
  822. package/superd-hub/dist/client/mesh-groups.js +30 -10
  823. package/superd-hub/dist/client/roster.d.ts +7 -16
  824. package/superd-hub/dist/client/roster.js +5 -3
  825. package/superd-hub/dist/fusion-transport.d.ts +11 -10
  826. package/superd-hub/dist/fusion-transport.js +21 -11
  827. package/superd-hub/dist/index.d.ts +0 -1
  828. package/superd-hub/dist/index.js +0 -1
  829. package/superd-hub/dist/machines.d.ts +6 -3
  830. package/superd-hub/dist/machines.js +15 -3
  831. package/superd-hub/dist/mesh-federate.d.ts +18 -8
  832. package/superd-hub/dist/mesh-federate.js +14 -9
  833. package/superd-hub/dist/mesh-link.d.ts +37 -3
  834. package/superd-hub/dist/mesh-link.js +49 -4
  835. package/superd-hub/dist/mesh-rpc.d.ts +48 -16
  836. package/superd-hub/dist/mesh-rpc.js +139 -14
  837. package/superd-hub/dist/roster.d.ts +20 -0
  838. package/superd-hub/dist/roster.js +24 -0
  839. package/superd-hub/dist/switch-core.d.ts +3 -2
  840. package/superd-hub/dist/switch-core.js +1 -1
  841. package/superd-hub/dist/world-entry.d.ts +3 -0
  842. package/superd-hub/dist/world-entry.js +4 -1
  843. package/superd-hub/dist/world-host.d.ts +5 -2
  844. package/superd-hub/dist/world-host.js +6 -2
  845. package/superd-hub/dist/world-join.d.ts +1 -1
  846. package/superd-hub/dist/world-join.js +14 -32
  847. package/superd-hub/dist/world-lifecycle.d.ts +20 -0
  848. package/superd-hub/dist/world-lifecycle.js +69 -0
  849. package/superd-hub/dist/world-mount.d.ts +1 -1
  850. package/superd-hub/dist/world-mount.js +2 -2
  851. package/superd-hub/lib/client/index.js +434 -307
  852. package/superd-hub/package.json +3 -2
  853. package/superd-hub/dist/connection-trust.d.ts +0 -8
  854. package/superd-hub/dist/connection-trust.js +0 -16
  855. package/superd-hub/dist/web-trust.d.ts +0 -84
  856. package/superd-hub/dist/web-trust.js +0 -101
@@ -0,0 +1,367 @@
1
+ # 可行性研究:DASHR 从 Agent Preset 层上升到 Profile 层
2
+
3
+ > 日期:2026-08-16 · 类型:纯可行性研究(不干预开发、不改 v0.5 蓝图)
4
+ > 触发:用户提出——Dash 有 Profile(`dsh --profile`)与 Agent Preset 两层,
5
+ > 现蓝图把 DASHR 做成"与内建 PTC 编码模式同级的第五 preset",能否再拔高
6
+ > 一层,到 Profile 层面去做?
7
+ > 方法:直读 `deepseek-harness @47f9438` 的 boot / bundle / preset 三层源码 +
8
+ > 活体 profile 目录(`~/.dsh/profiles/`)+ DASHR 两包实测,逐条取证。
9
+ > v1.1(2026-08-16 补):新增 §9 决策附录(四模式核实/隔离实测/Web UI 复用)、
10
+ > §10 形态收敛(直接做成 Profile)+ TUI 可行性(三条思路源码取证 + 生态实证)。
11
+ > 一句话结论:**可行,且机制已内置——Profile 层的可分发原子是 bundle
12
+ > (声明 `dsh.bundle.patch` 的包);"上升到 Profile 层"精确等价于"把
13
+ > DASHR 从 plugin+preset 变成 bundle(甚至一个 headless 式的独立运行时
14
+ > profile)"。内建先例就是 headless。**
15
+
16
+ ---
17
+
18
+ ## 0. 结论摘要(TL;DR)
19
+
20
+ 1. **用户"两层"直觉需修正为四层 + 一个正交层**(§1)。Profile 与 Agent
21
+ Preset **不是上下级**,而是两个不同阶段的层:Profile 是 boot 层(决定
22
+ 挂哪些 bundle/插件),Agent Preset 是 session 层(决定模型看到哪些
23
+ 工具/提示)。真正的"Profile 层的可分发插件"原语是 **bundle**。
24
+ 2. **"上升到 Profile 层" = 成为 bundle**。精确语义是:DASHR 的 runtime
25
+ 半边(`rlmRuntime` 服务 + presentation + 生命周期)从 preset 的
26
+ per-session scope 移到 **boot 层 / host realm**;模型面半边(工具 +
27
+ 提示)仍是 preset,但借 bundle 覆盖 `agent-presets.default` 变成
28
+ **默认 preset**(甚至像 headless 那样干脆不需要 preset 名册)。
29
+ 3. **最硬的实证支点**:DASHR 现在两个包 `dsh: null`(非 bundle),装包后
30
+ preset 连注册都要靠手动 `--patch` overlay(`dashr-presentation/README`
31
+ L48-73 实证)。升 bundle 后这一步由 bundle 自己的 `cordis.patch.yml`
32
+ 在 boot 时自动完成——一次 `dsh plugin add` 全落。
33
+ 4. **内建先例 = headless**:`headless` bundle 就是"编码模式做成运行时"的
34
+ 官方示范——boot 层直接挂 `code-runtime` worker-thread,无 preset 名册,
35
+ `tools.mode` 走 `DSH_TOOLS_MODE`。DASHR 的"Profile 层"完全可以照抄这
36
+ 条,做一个 `dashr` profile:boot 挂 `rlmRuntime`,运行时即 RLM 模式。
37
+ 5. **代价**:boot 层耦合面变宽(依赖 `agent-presets`/`session`/`sandbox`
38
+ 等行 id 稳定),与 v0.5 §7.6"运行时零上游依赖"决策存在**真实张力**,
39
+ 需重新权衡(§6)。
40
+
41
+ ---
42
+
43
+ ## 1. 源码证实的真实分层(修正"两层"直觉)
44
+
45
+ 活体 `~/.dsh/profiles/web/package.json` + `packages/boot/app-boot/src/profile.ts`
46
+ + `packages/preset/agent-presets/` 三处对读,实际是**四层 + 一个正交层**:
47
+
48
+ ```
49
+ boot 阶段(决定"装了什么运行时") session 阶段(决定"模型看到什么")
50
+ ┌─ Profile ~/.dsh/profiles/<name>/ ┌─ Agent Preset(正交,非下级)
51
+ │ package.json: dsh.profile.bundles[] agent.cordis.yml 列表 = 面向模型的
52
+ │ cordis.patch.yml(用户层) 工具行 + 提示行 + scoped 服务
53
+ │ └─ Bundle npm 包,声明 dsh.bundle.patch 发现:roots 扫描(system shipped
54
+ │ cordis.patch.yml = insert 行 + 覆盖行 + ~/.dsh/.agent-presets/)
55
+ │ └─ Plugin 单个 Cordis entry(id+name+config) 选择:default + 会话头 + 事件,锁
56
+ ```
57
+
58
+ **证据**:
59
+ - Profile 本体:`profile.ts` L36-96(`Profile`/`ProfileLayer`/`bundles`);
60
+ `PROFILE_TEMPLATES` L114-117(`web`/`headless` 自动初始化);
61
+ `DEFAULT_PROFILE_BUNDLES = ['@deepseek-ai/dsh-base']` L125。
62
+ - Bundle 声明:`profile.ts` L42-45(`dsh.bundle.patch`);L371-397
63
+ (`loadProfile` 解析 bundle patch,缺 `dsh.bundle` 则 fail-loud L392-394)。
64
+ - 装配:空根 `[]` + bundle 层按序 + profile 层 + home 层 + overlay
65
+ (`apps/cli/src/profile-boot.ts` `composeProfile`)。
66
+ - Preset 发现:`discovery.ts` `COMPOSITION_FILE='agent.cordis.yml'` L26、
67
+ `USER_PRESET_DIR='.agent-presets'` L41、`discoverPresets` 按 roots 优先级
68
+ L177-186;`preset.ts` `Config{default,roots,includeUserRoot}` L51-62。
69
+
70
+ ---
71
+
72
+ ## 2. 各层"能做什么 / 不能做什么"(层级决定能力)
73
+
74
+ | 层 | 挂载时机 | realm | 能贡献 | 不能贡献 |
75
+ |---|---|---|---|---|
76
+ | **Bundle** | boot(进程启动) | root/host | **任何行**:llm、session、sandbox、subagent、system-prompt、`agent-presets` 本身、以及新 runtime 服务 | — |
77
+ | **Agent Preset** | session(每会话挂) | scoped(per-session) | 工具行、system-prompt 段、`isolate` realm 的 scoped 服务 | **root realm 服务被拒**(`mount.ts` 头注 + `leakedServices`:泄露到 root realm 的行直接拒载) |
78
+
79
+ **推论(本研究的核心)**:
80
+ - runtime 服务(`rlmRuntime`、kernel 生命周期、sandbox 套壳、subagent 桥)
81
+ **天生是 bundle 的事**——它们要在 boot 时进 host realm、按 Session/Agent
82
+ 键控,而不是挤进 preset 的 per-session scope。
83
+ - 模型面(`run_cell` transport、py-sdk、工具 schema 抑制)**天生是 preset
84
+ 的事**——它们本来就是 per-session 组合。
85
+ - DASHR 现状把**两者都塞进 preset**,正是 §7.4.1 realm 勘误(isolate 是
86
+ per-mount 非 per-session)与 root-realm-reject 风险的根因。分层错位,
87
+ 不是缺能力。
88
+
89
+ ---
90
+
91
+ ## 3. DASHR 现在到底在哪一层(实测)
92
+
93
+ | 项 | 实测 | 层 |
94
+ |---|---|---|
95
+ | `dashr/package.json` | `dsh: null`,deps 仅 schemastery + zeromq | **非 bundle** → plain dependency |
96
+ | `dashr-presentation/package.json` | `dsh: null` | **非 bundle** → plain dependency |
97
+ | preset 文件 | `dashr-presentation/preset/dashr/{agent.cordis.yml,preset.yml}` | session 层 |
98
+ | preset 注册方式 | README L48-73:**手动 `--patch` overlay** 给 `agent-presets` 加 `roots` 指到 `node_modules/dashr-tool-presentation/preset`,再手动设 default | **手动的 boot overlay** |
99
+
100
+ 即现状 = **plugin(依赖)+ preset(会话模式),且 preset 注册是手动的
101
+ boot overlay**。`dsh plugin add <pkg>` 对 `dsh: null` 的包只会装成
102
+ "plain dependency, not a profile layer"(`plugin.ts` `reconcilePlugins`
103
+ L44-47 的 warning 分支),preset 名册根本不会自动知道它。
104
+
105
+ ---
106
+
107
+ ## 4. 上升方案:两级目标
108
+
109
+ ### 4.1 Target 1 — DASHR 成为 bundle(Profile 层,叠加到既有 profile)
110
+
111
+ 最小改动:给一个包声明 bundle,其 `cordis.patch.yml` 在 boot 时完成三件事:
112
+
113
+ ```yaml
114
+ # dashr 包 package.json
115
+ "dsh": { "bundle": { "patch": "./cordis.patch.yml" } }
116
+
117
+ # dashr 包 cordis.patch.yml(boot 层,root realm)
118
+ - insert:
119
+ - id: rlm-runtime
120
+ name: 'dashr-code-runtime-ipython' # ① runtime 服务,boot 时 host realm
121
+ - id: rlm-presentation
122
+ name: 'dashr-tool-presentation' # ② run_cell transport + py-sdk
123
+
124
+ - id: agent-presets # ③ 覆盖 preset 名册(web 才有此行)
125
+ config:
126
+ default: dashr
127
+ roots:
128
+ - path: <bundle-dir>/preset # 本包自带 preset 目录
129
+ trust: system
130
+ ```
131
+
132
+ 效果:`dsh plugin add dashr-code-runtime-ipython` 一次命令 → `reconcilePlugins`
133
+ 检测到 `dsh.bundle.patch` → 自动追加进 `dsh.profile.bundles` → boot 时
134
+ runtime + presentation 挂 host realm、preset root 注册、default 翻到 dashr。
135
+ **手动 `--patch` 消失**。
136
+
137
+ ### 4.2 Target 2 — DASHR 成为独立运行时 profile(headless 式一等运行时)
138
+
139
+ **没有"profile package"这种可分发原语**——profile 是用户本地目录,创建靠
140
+ `dsh plugin --profile dashr add <pkg>`(`DEFAULT_PROFILE_BUNDLES=[dsh-base]`)。
141
+ 所以"发一个 profile"实际是**发一个 bundle + 安装器/文档**。但语义上可以做
142
+ 成 headless 的镜像:
143
+
144
+ ```
145
+ dashr bundle(照抄 headless/cordis.patch.yml 的结构,~25 行)
146
+ - id: system-prompt → RLM persona 覆盖
147
+ - id: tools → 呈现 RLM cell 界面(对应 headless 的 mode: DSH_TOOLS_MODE)
148
+ - insert: rlm-runtime + rlm-presentation + dashr-startup + dashr-runner
149
+ ```
150
+
151
+ 对比 headless(`packages/bundle/headless/cordis.patch.yml` 全文仅 ~25 行):
152
+ 它 **boot 层直接挂 `code-runtime` worker-thread,无 preset 名册**,
153
+ `dsh --profile headless "<task>"` 即"编码模式做成一等运行时"。DASHR 照此做
154
+ `dsh --profile dashr "<task>"`,即"RLM 做成一等运行时"。这比 Target 1
155
+ 更进一步:**连 preset 名册都可有可无**(像 headless 那样 tools.mode 直给)。
156
+
157
+ ---
158
+
159
+ ## 5. 价值(为什么上升,按权重)
160
+
161
+ 1. **runtime 逃出 preset scope**(最大):`rlmRuntime` 从 per-session 的
162
+ isolate realm 挤迫,改为 boot 层 host realm + 显式 Session/Agent 键控。
163
+ 直接消除 §7.4.1 的 realm-per-mount 勘误与 root-realm-reject 风险。
164
+ 2. **身份对齐乃至超越**:PTC 编码模式在 web 里**仍只是五选一的 preset**
165
+ (`default: standard`,会话内切换);而 DASHR 升 bundle 后拥有 boot 层,
166
+ 是"运行时"而非"模式"——比"与 PTC 同级"更进一步,对标的是 headless。
167
+ 3. **boot 级能力组合解锁**:sandbox 套 kernel、subagent 桥 boot 化、snapshot
168
+ store、persona、compaction——这些现在被 preset 边界挡住的项,全部可在
169
+ bundle 层落地。
170
+ 4. **装包摩擦归零**:手动 `--patch` overlay(§3 实证痛点)→ 一次
171
+ `dsh plugin add` 自动全落。
172
+
173
+ ## 6. 代价与风险(诚实记录,与 v0.5 决策的张力)
174
+
175
+ 1. **boot 层耦合面变宽**:bundle 依赖 `agent-presets`/`session`/`sandbox`/
176
+ `system-prompt` 等**行 id 与 config 形状稳定**。这与 v0.5 §7.6 换键 +
177
+ vendored SD 换来的"运行时零上游依赖"是**相反方向**——前者买自主,后者
178
+ 买 boot 杠杆。这是本路线最需要用户拍板的一处权衡。
179
+ 2. **`agent-presets` 行只在 `web-app` bundle**(L421-424,`default: standard`),
180
+ `dsh-base` 与 `headless` 都没有(实测)。→ Target 1 的"覆盖 default"只在
181
+ web profile 成立;headless 场景要走 Target 2(tools.mode 直给),不依赖
182
+ preset 名册。这是关键的平台分叉,必须写进方案。
183
+ 3. **root realm 服务 = process-global**:per-session 键控从"preset 隔离"变为
184
+ "自己 key"。M3-A 已交付 `Map<principal,kernel>` + lazy per-key +
185
+ `agent/disposed` per-key teardown,机械件已具备,语义要重述。
186
+ 4. **发行面**:bundle 需声明 `dsh.bundle.patch`,且行 id 与 dsh 实际一致
187
+ (pre-release 漂移面,比现在宽)。
188
+ 5. **两包形态**:bundle 的 patch 按"行名→包名"引用插件,runtime 与
189
+ presentation 两包需一个 bundle 包(或 meta-bundle)统一 insert;要么合并
190
+ 成单包,要么增一个壳包。
191
+
192
+ ## 7. 与 v0.5 蓝图的关系
193
+
194
+ - **不改 v0.5 蓝图**;本研究是**平行的"再拔高"路线**,可作为 M4 之后
195
+ (或独立分支)的选型输入,不排入当前 M3-B/M4 计划。
196
+ - 与 §7.4"第五 preset"不冲突:Target 1 把 runtime 半边升到 bundle、preset
197
+ 保留为默认 face;Target 2 把 DASHR 整个做成 headless 式运行时 profile。
198
+ 两者都是从"五选一模式"走向"一等运行时"的同一条路上不同深度。
199
+
200
+ ## 8. 待决 / 待核清单(供讨论,非本文结论)
201
+
202
+ | # | 问题 | 现状 |
203
+ |---|---|---|
204
+ | 1 | 目标选 Target 1(bundle 叠加)还是 Target 2(headless 式独立 profile)? | 开放 |
205
+ | 2 | bundle 内 `rlmRuntime` 用 root realm 还是 isolate realm 的正确 boot 语义 | 开放 |
206
+ | 3 | 是否接受 boot 层耦合 dsh 行 id(与 §7.6 零依赖决策的权衡) | 开放,需拍板 |
207
+ | 4 | 发行形态:runtime+presentation 两包 + 壳 bundle,还是合并单包 | 开放(包名 scope 仍悬置) |
208
+ | 5 | web(Target 1)与 headless(Target 2)是否两条都要,还是先一条 | 开放 |
209
+
210
+ ---
211
+
212
+ ## 9. 决策附录(2026-08-16 补充:四模式核实 / 隔离实测 / Web UI 复用)
213
+
214
+ ### 9.1 四个模式核实(用户"标准/极简/PTC/Creator"四点全对)
215
+
216
+ 实读 `apps/cli/config/agent-presets/<id>/preset.yml`:
217
+
218
+ | preset id | 显示名 | order | 说明 |
219
+ |---|---|---|---|
220
+ | `standard` | 标准模式 | 1 | 全功能编码 Agent |
221
+ | `code` | PTC 模式 | 2 | Code Mode SDK 呈现工具 |
222
+ | `minimal` | 极简模式 | 3 | bash + str_replace_editor 双工具 |
223
+ | `cordis` | 创造模式 | 4 | = 你说的 "Creator";用于创作自定义 preset |
224
+
225
+ 加第 5 preset `dashr`(RLM 模式)到名册 = 正确路径,与现开发一致。
226
+
227
+ ### 9.2 web 是默认 profile、无 TUI 入口
228
+
229
+ - `web` 是 hardcoded alias(`args.ts` 原文:"`web` is a hardcoded alias for
230
+ `--profile web`");无参数默认起 web。
231
+ - `PROFILE_TEMPLATES` 只有 `web`/`headless`;帮助文本里的 `tui` 只是"自定义
232
+ profile 名"举例,非出厂模板。
233
+ - 结论:交互面 = Web UI(web profile)+ headless 一次性;无 TUI。
234
+
235
+ ### 9.3 Web UI = `dsh-web-app` bundle,自包含、原样复用
236
+
237
+ `web-app/cordis.patch.yml` 内 UI 相关行:`web-startup` / `webserver` /
238
+ `web-runtime`(`dsh-web-app` 本体)、`api-gateway`(`dsh-host-apiproxy`)、
239
+ `api-remotes`、`ui-theme` / `ui-layout` / `ui-sidebar` / `ui-settings-*` /
240
+ `ui-conversation` …。→ 复用 = 把 `@deepseek-ai/dsh-web-app` 写进
241
+ `dsh.profile.bundles`,**不 fork 源码**。
242
+
243
+ ### 9.4 profile 之间不隔离(影响"独立 dashr profile"决策)
244
+
245
+ - session 按 **workspace(cwd)** 隔离:`~/.dsh/sessions/<转义cwd>/session-<uuid>/`;
246
+ session 头记 `agentPreset`,不记 profile。
247
+ - `settings.yaml` / credentials **全局**(`~/.dsh/` 下,跨 profile 共享)。
248
+ - 含义:独立 `dashr` profile 得到"默认 = RLM + 干净名册",但**得不到数据
249
+ 隔离**;若只要"在 Web UI 里加一个 RLM 模式",最简做法是直接扩展现有 web
250
+ profile(`dsh plugin --profile web add <dashr-bundle>`),连新 profile 都
251
+ 不用建。
252
+
253
+ ### 9.5 现状 ≈ Target 1(升 bundle 是"装法正式化",非重构)
254
+
255
+ | | 现状(开发中) | 升 bundle(Target 1) |
256
+ |---|---|---|
257
+ | 包声明 | 两包 `dsh: null`(普通依赖) | 声明 `dsh.bundle.patch` |
258
+ | preset 注册 | 手动 `--patch` overlay | bundle 的 `cordis.patch.yml` boot 自动 |
259
+ | Web UI | 复用 `dsh-web-app` | 同左(不变) |
260
+ | 安装 | `dsh plugin add` 只装普通依赖 | 同命令,自动进 bundles + 挂 runtime + 注册 preset + 设 default |
261
+
262
+ ---
263
+
264
+ ## 10. 形态收敛:直接做成 Profile(bundle)+ TUI 作为 surface bundle
265
+
266
+ ### 10.1 "直接做成 Profile" 的确认(POFA = Profile 解读)
267
+
268
+ 用户新判断:Profile 也好、preset 也好,如今都按 bundle 发布,DASHR 既然
269
+ 实质是运行时,就直接做成 Profile 层。**成立,且与 §4 收敛一致**:
270
+
271
+ - 可分发原语只有 bundle;"Profile 层"与"preset 层"的差别不在发布形态,
272
+ 而在**挂载阶段与 realm**(§2)。
273
+ - DASHR 的 runtime 半边(`rlmRuntime`/presentation/生命周期)本就该在 boot
274
+ 层;模型面半边(`run_cell`/py-sdk)仍是 preset、设为默认。
275
+ - 所以"直接做成 Profile"= 把 DASHR 声明成 bundle + 复用 web-app,其余照旧
276
+ (§4.1 Target 1)。不是新路线,是把现开发正式化。
277
+
278
+ ### 10.2 "同一包既借 Web UI 又用 TUI"——架构上天然成立,且已被生态证实
279
+
280
+ dsh 把"交互面"抽象为 **surface bundle**:`dsh-web-app`(Web)、
281
+ `dsh-headless`(一次性)。TUI 只是**第三个 surface bundle**,与 runtime
282
+ bundle 正交:
283
+
284
+ ```
285
+ dsh-base(核心)+ DASHR runtime bundle(kernel+presentation,surface 无关)
286
+ ├─ + dsh-web-app → dashr-web(借 Web UI)
287
+ └─ + dsh-tui → dashr-tui(用 TUI)
288
+ ```
289
+
290
+ 所以"一个包"= DASHR runtime bundle 一个,同时喂给两个 surface,不需要 fork
291
+ 任何东西。
292
+
293
+ **关键实证(web 检索 2026-08-16)**:生态里已有现成 TUI,且正是
294
+ "out-of-tree dsh plugin bundle"或"over the one DSH HTTP contract":
295
+
296
+ - [openguardrails/dsh-tui](https://github.com/openguardrails/dsh-tui) —
297
+ Claude Code-style TUI,明确是 **out-of-tree dsh plugin bundle**
298
+ - [MashedPotato817/dsh-tui](https://github.com/MashedPotato817/dsh-tui) —
299
+ Claude Code-style 对话 + Vim modal + HUD,**走 DSH 单一 HTTP 契约**(即
300
+ 复用 web-app 暴露的 `api-gateway`/`api-proxy` RPC,不是 fork Web UI)
301
+ - npm [`@dsh-tui/dsh-tui`](https://www.npmjs.com/package/@dsh-tui/dsh-tui)
302
+ - [lhjnano/orcatui](https://github.com/lhjnano/orcatui) — 终端多 agent 编排器
303
+ (N agent side-by-side,各自 PTY/worktree)——正是你要的 tmux 式 manager 形态
304
+
305
+ 这直接回答"要不要抄 Web UI 源码":**TUI 甚至不碰 web-app 源码,它是跑在
306
+ 同一条 host RPC 上的另一个 client**。思路 #1(参考开源)因此不是"再多参考
307
+ 一个 repo",而是**几乎可以直接踩在现成项目上**。
308
+
309
+ ### 10.3 三条 TUI 思路的源码级可行性
310
+
311
+ | 思路 | 实测依据 | 工作量 | 风险 |
312
+ |---|---|---|---|
313
+ | 1 参考开源 dsh-tui | 已存在,out-of-tree bundle + DSH HTTP 契约 | **低**(复用/参考) | 协议随 dsh 0.1.x 漂移;社区项目成熟度待核 |
314
+ | 2 复用 PA TUI | `@earendil-works/pi-tui` 自研轻量 ANSI(仅 chalk/get-east-asian-width/marked/mime-types 5 依赖),组件系统齐全(box/input/editor/select-list/markdown/image/loader…)+ `modes/`(`interactive-mode`、`agents-view-mode`=多 agent 视图、`daemon`+`agent-connection`) | **中偏高**(组件可抄,渲染循环/数据源要重接 dsh agent loop + session 事件) | pi-tui 耦合 PA 的 session/daemon 模型;双上游维护 |
315
+ | 3 自建 TUI | dsh **无 TUI 源码**(`packages/terminal` 是 shell/PTY 后端组 `terminal`/`terminal-bash`/`tool-terminal`,非 UI;无 ink/blessed 依赖)——用户猜测正确 | **高**(全量) | — |
316
+
317
+ 结论:TUI 应作为**独立 surface bundle + 独立里程碑**,与 runtime bundle 解耦;
318
+ Web UI(复用 web-app)先跑通,TUI 从思路 #1 起步(参考现成 dsh-tui),
319
+ 思路 #2 仅在需要 PA 式"agents-view 多 agent 视图"时再评估移植 pi-tui 组件层。
320
+
321
+ ---
322
+
323
+ ## 11. 决策结论(暂缓,留后路)
324
+
325
+ 2026-08-16 用户定调:**暂不决定**,资料落盘存档即可。
326
+
327
+ 1. **暂不深整合 TUI**:官方现处 0.x 早期,bundle 走 Web UI 路径(与 DeepSeek
328
+ Web Chat 一脉相承,更 future-proof);官方后续(0.7/0.8 附近)可能自出
329
+ TUI。现在 Web UI 已够用,且没有"必须用 TUI 才能完成"的工作。
330
+ 2. **留后路原则**:GUI 主攻大方向 + CLI/TUI/headless 必须留入口(LLM 本身
331
+ TUI-native / 命令行-native / headless-native,GUI 再成熟也要留尾巴)。
332
+ 官方已有 headless 入口,正合此逻辑。
333
+ 3. **观望两条趋势**(观察项,非任务):
334
+ - 整体是否"GUI 进发、同时留 TUI 尾巴";
335
+ - 官方 TUI 是否落地(0.7/0.8)。
336
+ 4. **再评估触发条件**:官方出 TUI / 官方 bundle 形态定型 / 出现必须 TUI 的
337
+ 工作。
338
+
339
+ 对 §8 待决清单的处置:**不关闭、保持开放**,但排期上不主动推进——Target 1
340
+ vs 2、TUI 路线选择全部挂起,等官方信号。
341
+
342
+ ---
343
+
344
+ ## 附:证据索引
345
+
346
+ | 结论 | 出处(clone 内实读) |
347
+ |---|---|
348
+ | Profile = `dsh.profile.bundles` + 用户 patch | `packages/boot/app-boot/src/profile.ts` L36-96 |
349
+ | Bundle = 声明 `dsh.bundle.patch`;缺则 fail-loud | `profile.ts` L42-45, L371-397 |
350
+ | `dsh plugin add` 按 `dsh.bundle.patch` 有无 reconcile | `apps/cli/src/plugin.ts` L22-25, L39-75 |
351
+ | 空根 + bundle 层按序装配 | `apps/cli/src/profile-boot.ts` `composeProfile` |
352
+ | Preset = `agent.cordis.yml` 目录,roots 扫描 + 优先级 | `packages/preset/agent-presets/src/discovery.ts` |
353
+ | Preset `default` + `roots` 配置 | `preset.ts` L51-62 |
354
+ | Preset 拒 root realm 服务 | `mount.ts` 头注 + `leakedServices` |
355
+ | 会话选择 + 锁定 | `session.ts`;agent-presets README L148 |
356
+ | `agent-presets` 行只在 web-app,`default: standard` | `packages/bundle/web-app/cordis.patch.yml` L421-424 |
357
+ | headless = boot 挂 code-runtime、无 preset 名册 | `packages/bundle/headless/cordis.patch.yml` 全文 |
358
+ | DASHR 两包 `dsh: null`(非 bundle) | `dashr/dashr/package.json`、`dashr-presentation/package.json` |
359
+ | DASHR preset 注册靠手动 `--patch` | `dashr-presentation/README.md` L48-73 |
360
+ | 四预设显示名(标准/PTC/极简/创造) | `apps/cli/config/agent-presets/<id>/preset.yml` |
361
+ | `web` = 无参数默认别名 | `apps/cli/src/args.ts` L13, L66-70 |
362
+ | Web UI 行全在 web-app bundle(自包含) | `packages/bundle/web-app/cordis.patch.yml` L99-198 |
363
+ | session 按 workspace(cwd) 隔离、非 profile | `~/.dsh/sessions/<转义cwd>/session-<uuid>/`(活体) |
364
+ | settings/credentials 全局共享 | `~/.dsh/settings.yaml`(活体) |
365
+ | PA TUI = `pi-tui` 自研轻量 ANSI(5 依赖)+ `modes/` | `prime-agent/packages/tui/`;`packages/coding-agent/src/modes/` |
366
+ | dsh 无 TUI 源码(terminal = PTY 后端组) | `packages/terminal/`(组目录:terminal/terminal-bash/tool-terminal) |
367
+ | 生态已有 dsh-tui(out-of-tree bundle / DSH HTTP) | web 检索:openguardrails、MashedPotato817、@dsh-tui、orcatui |
@@ -0,0 +1,171 @@
1
+ # DSH 沙箱-审批语义缺口:模型先验抑制升级尝试
2
+
3
+ > 日期:2026-09-01
4
+ > 范围:upstream DSH 运行时权限语义(`@deepseek-ai/dsh-sandbox` / `dsh-sandbox-policy` / `dsh-permission-presets` / `dsh-user-approval`,全部结论来自安装包源码核实 + 本机实测)
5
+ > 性质:源码证据链 + 语义缺口分析 + 设计提案
6
+ > 关联:`docs/plans/dashr-security-sandbox-analysis.md`(2026-08-17,kernel 沙箱边界穿透);同 session 的 workspace-write 沙箱实测(bwrap `--unshare-pid`,宿主 PID 不可见)
7
+
8
+ ## 0. 结论先行(TL;DR)
9
+
10
+ **问题**:workspace-write 模式下,模型上下文主动声明 "Current DSH file policy: workspace-write…"(一个只描述限制、不描述出口的句子),却没有告知"受限操作可按调用**单次升级**(`allowed-once`)"。这给大模型注入了一个先验——"整个运行时是沙箱化的、不可绕过的"。后果是模型倾向于**自我设限**:面对 out-of-box 命令时直接报告"受限运行时干不了",**根本不会去尝试**,因此**永远看不到** denial 返回里附带的升级提示。Denial message 是"后话"——它只对**先尝试过**的模型可见;先验一旦抑制了尝试,升级路径对整个运行时就是永不可见的死信息。
11
+
12
+ **提议**:沙箱限制**对用户可见**(UI badge + 审批弹窗),但对模型采取"**后知**"披露(model-late disclosure)——不预先声明"你被沙箱化/不可变",让模型先尝试、撞 denial、再从 denial + escalation hint 中学习"可单次升级"。形成「尝试 → 拒绝 → 可升级」的完整闭环,而不是「告知 → 自我设限 → 死锁」。
13
+
14
+ **事实支撑**(§2 证据链):DSH 自身就是"双 knob"模型(sandbox/mode × approval/policy,解耦设计,源码原话 "independent … knobs");升级语义字面为 `allowed-once`(单次、按调用、执行前审批);且三个模式的上下文语句**存在不对称**——read-only 模式反而含有反自我审查指令,workspace-write 没有。
15
+
16
+ ---
17
+
18
+ ## 1. 背景与动机
19
+
20
+ - Agent 运行时(DeepSeek Harness)的工具执行经 bwrap 沙箱:`--ro-bind / / --unshare-pid --tmpfs /tmp --bind <workspace>`。根文件系统只读、独立 PID namespace、/tmp 为私有 tmpfs、网络 namespace 共享(实测,2026-09-01)。
21
+ - 沙箱之外存在一条**单次热升级**通道:工具调用可带 `sandbox_permissions` 重试,经用户审批后该次调用以更宽模式执行(`allowed-once`),下一条调用回到原有效模式。
22
+ - 这条通道**语义上无法从"我被沙箱化"推导出来**:Sandbox(capability 层)与 Approval(decision 层)是正交维度;一个只被告知"你被沙箱化"的模型,不会自行推导出"ask for approval 可以解开沙箱"。
23
+ - 本文记录该语义缺口,并提出"用户可见、模型后知"的披露策略。
24
+
25
+ ## 2. 源码事实核对(证据链)
26
+
27
+ 全部结论可在安装包源码中复现:`<dsh>/node_modules/@deepseek-ai/dsh-{sandbox,sandbox-policy,permission-presets,user-approval}/lib/`。
28
+
29
+ ### 2.1 双 knob 模型(`dsh-permission-presets`)
30
+
31
+ 设计文档原话:*"User-facing permission presets over the **independent** sandbox-mode and approval-policy knobs."*
32
+
33
+ - **knob 1 — sandbox/mode**:`read-only | workspace-write | danger-full-access`
34
+ - **knob 2 — approval/policy**:`ask | never`(仅两个值)
35
+
36
+ preset 只是两 knob 的捆绑,默认表:
37
+
38
+ | preset | sandbox | approval |
39
+ |---|---|---|
40
+ | `workspace-write` | workspace-write | **ask** |
41
+ | `danger-full-access` | danger-full-access | **never** |
42
+
43
+ 推论:官方把 unboxed 与 never 绑定,等于承认"ask 的触发源是 denial"——unboxed 模式没有 denial 事件,ask 就成了惰性 knob。用户设想的 "unboxed ask"(unboxed + ask)不是内置 preset,但 `presets` 表可配置、任意组合允许(不匹配任何表项时投影报 `custom`)。
44
+
45
+ ### 2.2 单次升级机制(`dsh-sandbox/lib/types/escalation.d.ts` + `lib/index.js`)
46
+
47
+ - 升级**在执行前**解决:`approveEscalation` — *"resolve a sandbox-escalation request BEFORE anything executes"*,有序 fail-closed:严格加宽校验 → 审批通道 → 结果映射。
48
+ - 审批结果枚举字面:**`'allowed-once' | 'rejected' | 'cancelled' | 'unavailable'`**。
49
+ - 粒度**恰好这一次调用**:*"Returns the granted mode to stamp onto exactly this call"*;`SandboxPolicy` 注释 *"an approved escalated retry is a new call with a wider policy"*。→ 不是"逃出沙箱",是**调用级换挡**。
50
+ - 严格加宽阶梯(执行期校验,非 schema 静态值):
51
+
52
+ ```js
53
+ WIDER_MODES = { "read-only": ["workspace-write","danger-full-access"],
54
+ "workspace-write": ["danger-full-access"] }
55
+ ```
56
+
57
+ - 非加宽请求**永不弹审批**(*"a non-widening request never prompts a human"*,直接拒)。
58
+ - 无审批通道 / 无 agent → fail closed,绝不静默放行。
59
+ - `sandbox_permissions` 与 `justification` 必须成对(理由缺失 = malformed ask)。
60
+
61
+ ### 2.3 三个模式的模型上下文语句(`dsh-sandbox-policy/lib/index.js` `renderPolicyContext`)——**不对称在这里**
62
+
63
+ | 模式 | 模型看到的上下文 | 是否提及升级 |
64
+ |---|---|---|
65
+ | `read-only` | "…**Do not refuse a required modification from this policy alone: try an available tool normally and follow any denial and escalation guidance it returns.**" | **是**(反自我审查指令 + 升级预告) |
66
+ | `workspace-write` | "Current DSH file policy: workspace-write. …may modify files under the session workspace: … Some platform temporary areas may also be writable." | **否** |
67
+ | `danger-full-access` | "The DSH file sandbox does not restrict file modifications by available operations." | 不适用(已是顶) |
68
+
69
+ **最常用的 workspace-write 模式没有任何升级提示,而最该防自我设限的 read-only 反而有。** 这正是语义缺口的具体落点。
70
+
71
+ ### 2.4 denial + escalation hint:反应式教学(`dsh-sandbox/lib/index.js`)
72
+
73
+ - denial 标记:`[sandbox: file access denied under workspace-write mode]`
74
+ - 同轮升级提示:`[sandbox: escalation available — retry this exact command once with sandbox_permissions (the narrowest wider mode that suffices) + justification; the approval prompt asks the user]`
75
+
76
+ 设计意图(源码注释):nudge *"lives at the decision point so the sanctioned retry does not depend on the model recalling the tool description"*。→ 设计者已知"模型会忘",把提示放在 denial 处。但**它依赖模型先触发 denial**。
77
+
78
+ ### 2.5 审批通道(`dsh-user-approval`)
79
+
80
+ - `APPROVAL_POLICIES = ["ask","never"]`。
81
+ - `ask` 语句:*"Operations that require approval may ask through the configured answerers; without an available answerer, the request fails closed."* —— 未枚举"什么需要审批"。
82
+ - `never` 语句(反向教学):*"…do not request sandbox escalation (do not set `sandbox_permissions`)."*
83
+ - 审批请求当前**唯一喂入方是升级路径**;不存在"unboxed 下某工具类仍强制审批"的 gate(无硬编码 hook)。→ 想让 unboxed+ask 非惰性,需要给 `request()` 加第二个喂入方。
84
+
85
+ ### 2.6 schema 层补充(实测)
86
+
87
+ 工具 schema **始终**广播升级词汇(`ESCALATION_TARGETS = ["workspace-write","danger-full-access"]`,受限即广播)。设计注释:防止 session *"stranded … with no lever"*。→ 升级的**词汇**模型永远拿得到;缺口只在**上下文先验**,不在 schema。修 prompt 即可,不用动 schema。
88
+
89
+ ## 3. 语义缺口的形式化表述
90
+
91
+ ```
92
+ 先验注入("workspace-write 限制")→ 模型自我设限("受限运行时,干不了")
93
+ → 不尝试 out-of-box 操作 → denial 永不触发
94
+ → escalation hint 永不可见 → 升级通道对模型是死信息
95
+ → 自我设限成为自我实现的预言
96
+ ```
97
+
98
+ - Denial message 是**后话**:它只奖励"先尝试"的模型;不尝试的模型永远到不了决策点。
99
+ - 触发尝试的常见前提恰恰是**用户主动要求探索边界**(如"你给我探测一下沙箱边界"),日常任务注意力被任务本身拽住,不会自发地元思考能力边界。
100
+ - 与 `danger-full-access`(unboxed + never)形成**巨大反差**:一边是"受限且不告知出口",另一边是"全开放且不询问"。中间态(workspace-write + ask 可单次升级)的语义价值因此被埋没。
101
+
102
+ ## 4. 设计提案:用户可见、模型后知(model-late disclosure)
103
+
104
+ ### 4.1 核心主张
105
+
106
+ > 沙箱限制应该**对用户可见**(UI badge、审批弹窗、`/permission` 视图),但**不必在 prompt 里预先声明给模型**——尤其不要用"你被沙箱化、不可改"的表述注入先验。让模型自然去做 out-of-box 尝试(命令行、tool call),然后在 denial 返回值里给它语义提醒(现有 escalation hint 已具备),告诉它可以单次升级。这才是完整闭环。
107
+
108
+ - 对用户:策略透明(弹窗携带 `justification` 原文 + 审计记录,通道已存在)。
109
+ - 对模型:**不预设失败**,尝试 → denial → hint → escalate(可选)→ 用户批准 → 该调用执行。
110
+ - 安全面不扩大:denial 拦截在沙箱层,**命令根本没执行**("nothing has run");尝试失败只是多一轮调用,不构成越权。
111
+
112
+ ### 4.2 具体落地选项(按侵入度排序)
113
+
114
+ 1. **最小改动(推荐先做)**:改写 `renderPolicyContext` 的 workspace-write 语句,对齐 read-only 的句式——不宣称限制不可变,改为中性 + 出口预告:
115
+ - 例如:"Current DSH file policy: workspace-write (restricted writes; some platform temporary areas may also be writable). Do not refuse a required operation from this policy alone: try the tool normally and follow any denial and escalation guidance it returns."
116
+ 2. **严格后知(用户主张)**:workspace-write 下完全不向模型声明沙箱状态(策略仅对用户 UI 可见),升级教学完全依赖 denial + hint。副作用:模型可能对常规受限操作(如工作区外写配置)多打几轮 denial——代价小,且正是教学素材。可做成配置开关(如 `discloseSandboxToModel: false`)。
117
+ 3. **unboxed ask 前置条件**:若要提供 unboxed+ask preset,必须先实现强制审批 hook(§2.5 所述 `request()` 的第二个喂入方),否则 ask knob 是装饰性的。
118
+
119
+ ### 4.3 披露对称性原则(通用准则)
120
+
121
+ 无论披露什么,**约束与出口必须成对披露**:告诉模型存在约束,就同时告诉它缓解阀(read-only 语句已示范;`never` 语句是反向示范);不告诉它约束,就由 denial 在决策点教学。禁止"只披露约束、不披露出口"——那是把模型锁进自我实现的预言里。
122
+
123
+ ### 4.4 零侵入实现路径(插件侧,机制已核实 2026-09-01)
124
+
125
+ > 结论:中性披露**不需要侵入 upstream 源码**。System Prompt 按两个独立集合组装——sections(主 prompt 区)与 contexts("Current runtime context" 快照区);两区都支持插件注册,且有组装期改写钩子。
126
+
127
+ **机制核实**(`dsh-system-prompt` + `dsh-agent-loop` 源码):
128
+ - `ctx.systemPrompt.section()` / `context()` 均为公开 API,任意 order 可注册;contexts 按 order 排序渲染进 `"Current runtime context. This snapshot supersedes…"` 快照(`sandbox:policy`=110,`approval:policy`=115,`subagent:delegation`=120)。
129
+ - `assemble()` 尾部有 `system-prompt/assemble` waterfall("the returned waterfall value is authoritative")——插件可整体改写 assembly,含 contexts 文本。
130
+ - DASHR 已注册 `dashr:control-prompt`(section,order 100)与 `dashr:tool-catalog`(150)——注入通道现成。
131
+
132
+ **三条路径**(按与政策段落的贴合度排序):
133
+ 1. **A. 插件注册 context(order 116)**:`ctx.systemPrompt.context({ name: 'dashr:escalation-guidance', order: 116, text: … })`。渲染进**同一个** runtime-context 快照,紧贴 `approval:policy`(115)之后——模型视为运行时事实的一部分;零上游改动、声明式、无冲突。
134
+ 2. **B. assemble waterfall 原位改写**:注册 `system-prompt/assemble` listener,把 `assembly.contexts` 中 `sandbox:policy` 的 text 替换为中性 + 出口预告版。模型看到的是政策段落**本体**被改写,等同原位 patch;代价是 waterfall 语义(last non-undefined wins)需与其他 listener 协调。
135
+ 3. **C. 现有 section 追加一句**:在 `dashr:control-prompt` 加一句。可用,但落在主 prompt 区,与 `sandbox:policy`(快照区)**物理分离**——正是"都在 System Prompt 但隔了一段距离"的情形;且 order 100 先于快照区渲染,属次优位。
136
+
137
+ 推荐:**A 为主,B 为可选强化**。两者都不改 upstream 一行代码。
138
+
139
+ **最终决策(2026-09-01,并入升级批次)**——选项 A 的落地规格:
140
+
141
+ - **注入文本(精简:只披露能力,不劝导行为)**:
142
+ `Restricted operations may be retried once with sandbox_permissions for single-call escalation, pending user approval.`
143
+ (语义即"受限操作可带 sandbox_permissions 单次升级(需用户审批)";**不做**"不要仅凭策略拒绝、先尝试"之类的行为劝导——尝试与否由模型自行决定,运行时只负责让杠杆可知。注入文本用英文,与上游 runtime-context 快照的英文语句同文风。)
144
+ - **注入条件(模式判断,仅 workspace-write)**:`text: (ctx) => 有效模式 === 'workspace-write' ? TEXT : ''`(空文本被渲染器过滤,等同 pass):
145
+ - `read-only`:pass —— 上游该模式语句已自带反自我审查 + 升级指引(§2.3),无需重复;
146
+ - `danger-full-access`:pass —— unboxed,无升级目标可言。
147
+ - **机制**:§4.4-A(`ctx.systemPrompt.context({ name: 'dashr:escalation-guidance', order: 116 })`),声明式、零上游改动。
148
+ - **批次**:作为一次升级批次中的一项变更,与其余待改项一次性采集实施(§6)。
149
+
150
+ ## 5. 权衡与反方观点
151
+
152
+ | 维度 | 后知披露的代价 | 缓解 |
153
+ |---|---|---|
154
+ | 尝试轮次 | 模型可能对常规受限操作多尝试几次才收敛 | denial 是廉价信号;read-only 语句已验证"尝试→指引"模式可用 |
155
+ | 用户困惑 | 用户可能看到模型频繁撞 denial | 弹窗/审计已把决策权交还用户;UI badge 表明当前策略 |
156
+ | 与"尽量减少 out-of-box 危险动作"的设计哲学 | 后知披露确实会鼓励更多 out-of-box 尝试 | 但尝试被 denial 拦截,**不执行**;真正执行仍需用户审批,风险决策点不变 |
157
+ | 模型上下文长度 | 移除先验可省一行;增加出口预告也只是一行 | 净变化为零量级 |
158
+
159
+ 反方观点(诚实记录):部分设计者会主张"先验设限"正是安全冗余——模型宁可少做也不越权。但该冗余的代价是把**合法且已有人工审批兜底**的升级通道变成死信息,属于可用性损失换来的虚假安全。审批弹窗(ask)本身就是人工决策点,真正的安全边界在用户那里,不在模型的自我设限里。
160
+
161
+ ## 6. 落地建议清单
162
+
163
+ - [ ] **插件侧实现(无需上游改动)**:DASHR 注册 `dashr:escalation-guidance` context(order 116,§4.4-A),按 §4.4 最终决策的文本与模式条件实施——仅 workspace-write 注入精简版单次升级披露(read-only / danger-full-access pass)。若改走 upstream PR 路线,再落 `renderPolicyContext`(§4.2-1)。
164
+ - [ ] (可选)新增配置项 `discloseSandboxToModel`,默认保留当前披露、可选严格后知(§4.2-2)。
165
+ - [ ] 若做 unboxed ask preset:为 `ctx.approval.request()` 增加与沙箱无关的强制审批喂入方(按工具类/高危类),并配套文档说明 ask 只在有触发源时有意义(§4.2-3)。
166
+ - [ ] 文档化披露对称性原则(§4.3)为权限语义设计不变量。
167
+ - [ ] 将"双 knob 解耦(sandbox = enforcement,approval = decision,可组合不可推导)"写入项目约定(CONTEXT.md 或 ADR)。
168
+
169
+ ## 7. 结论
170
+
171
+ 语义缺口真实存在且可定位到具体代码行(`dsh-sandbox-policy/lib/index.js` 的 `renderPolicyContext`);修复方向明确——**用户可见、模型后知**:策略对用户透明,对模型不注入"不可变"先验,让 denial + escalation hint 在决策点完成升级教学。该改动不扩大攻击面(denial 拦截在执行前),不增加人工决策负担(审批通道已存在),只消除"模型连试都不敢试"的死锁。