super-dsh 0.3.0-c → 0.3.0-d

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 (758) hide show
  1. package/README.md +25 -22
  2. package/cordis.patch.yml +3 -3
  3. package/package.json +20 -8
  4. package/superd-hub/dist/bundle-setup.d.ts +17 -2
  5. package/superd-hub/dist/bundle-setup.js +158 -2
  6. package/superd-hub/package.json +19 -2
  7. package/superd-hub/scripts/register-companion.mjs +100 -0
  8. package/bundles/better-dsh.tgz +0 -0
  9. package/bundles/manifest.json +0 -10
  10. package/node_modules/better-dsh/LICENSE +0 -24
  11. package/node_modules/better-dsh/README.md +0 -323
  12. package/node_modules/better-dsh/THIRD_PARTY_NOTICES.md +0 -52
  13. package/node_modules/better-dsh/cordis.patch.yml +0 -139
  14. package/node_modules/better-dsh/docs/00_adr/0001-bridge-tool-layer-not-service-layer.md +0 -14
  15. package/node_modules/better-dsh/docs/00_adr/0002-masking-is-presentation-only.md +0 -15
  16. package/node_modules/better-dsh/docs/10_plans/2026-09-23-remote-execution-framework.md +0 -236
  17. package/node_modules/better-dsh/docs/10_plans/2026-09-23-remote-framework-impl.md +0 -2083
  18. package/node_modules/better-dsh/docs/10_plans/2026-09-26-lsp-ast-reminder.md +0 -64
  19. package/node_modules/better-dsh/docs/10_plans/A2A-messaging-channel-test-archive.md +0 -256
  20. package/node_modules/better-dsh/docs/10_plans/code-mode-vs-rlm-ipython-comparison.md +0 -137
  21. package/node_modules/better-dsh/docs/10_plans/dashr-blueprint-review.md +0 -201
  22. package/node_modules/better-dsh/docs/10_plans/dashr-blueprint.md +0 -561
  23. package/node_modules/better-dsh/docs/10_plans/dashr-compaction-window-and-archive.md +0 -307
  24. package/node_modules/better-dsh/docs/10_plans/dashr-profile-layer-feasibility.md +0 -367
  25. package/node_modules/better-dsh/docs/10_plans/dashr-sandbox-escalation-semantics-gap.md +0 -171
  26. package/node_modules/better-dsh/docs/10_plans/dashr-security-sandbox-analysis.md +0 -187
  27. package/node_modules/better-dsh/docs/10_plans/dashr-surface-invariant-and-omp-imports.md +0 -97
  28. package/node_modules/better-dsh/docs/10_plans/ipython-kernel-interactive-interface-test-report.md +0 -152
  29. package/node_modules/better-dsh/docs/10_plans/kernel-refactoring/Dash-IPython-Control-Prompt-draft.md +0 -146
  30. package/node_modules/better-dsh/docs/10_plans/kernel-refactoring/Dash-IPython-Control-Prompt-draft_v3.md +0 -50
  31. package/node_modules/better-dsh/docs/10_plans/kernel-refactoring/Dash-IPython-Control-Prompt-draft_v4.md +0 -79
  32. package/node_modules/better-dsh/docs/10_plans/kernel-refactoring/Dash-vs-PrimeAgent-systemprompt-toolcatalog-comparison.md +0 -138
  33. package/node_modules/better-dsh/docs/10_plans/kernel-refactoring/RLM-system-prompt-injection-gap-report.md +0 -161
  34. package/node_modules/better-dsh/docs/10_plans/kernel-refactoring/V0.1.5-development-plan.md +0 -109
  35. package/node_modules/better-dsh/docs/10_plans/kernel-refactoring/actinoable-surface-to-llm-in-agent-runtime_dsh.md +0 -50
  36. package/node_modules/better-dsh/docs/10_plans/kernel-refactoring/actinoable-surface-to-llm-in-agent-runtime_prime.md +0 -113
  37. package/node_modules/better-dsh/docs/10_plans/recallable-compaction.md +0 -147
  38. package/node_modules/better-dsh/docs/10_plans/spike-tag-repro.mjs +0 -102
  39. package/node_modules/better-dsh/docs/10_plans/upstream-analysis.md +0 -128
  40. package/node_modules/better-dsh/docs/20_specs/agent/spec.md +0 -54
  41. package/node_modules/better-dsh/docs/20_specs/ast/spec.md +0 -57
  42. package/node_modules/better-dsh/docs/20_specs/compaction-recall/spec.md +0 -46
  43. package/node_modules/better-dsh/docs/20_specs/ctx/spec.md +0 -107
  44. package/node_modules/better-dsh/docs/20_specs/dsh/spec.md +0 -47
  45. package/node_modules/better-dsh/docs/20_specs/dvc/spec.md +0 -106
  46. package/node_modules/better-dsh/docs/20_specs/escalation-guidance/spec.md +0 -44
  47. package/node_modules/better-dsh/docs/20_specs/fs-scheme-resolution/spec.md +0 -37
  48. package/node_modules/better-dsh/docs/20_specs/hash-edit/spec.md +0 -41
  49. package/node_modules/better-dsh/docs/20_specs/http-read/spec.md +0 -73
  50. package/node_modules/better-dsh/docs/20_specs/kernel-provisioning/spec.md +0 -53
  51. package/node_modules/better-dsh/docs/20_specs/lsp/spec.md +0 -121
  52. package/node_modules/better-dsh/docs/20_specs/mobile-layout/spec.md +0 -108
  53. package/node_modules/better-dsh/docs/20_specs/model-failover/spec.md +0 -20
  54. package/node_modules/better-dsh/docs/20_specs/plugins-page-components/spec.md +0 -79
  55. package/node_modules/better-dsh/docs/20_specs/preact-ui-shell/spec.md +0 -22
  56. package/node_modules/better-dsh/docs/20_specs/repl-dispatch-resilience/spec.md +0 -21
  57. package/node_modules/better-dsh/docs/20_specs/skill/spec.md +0 -58
  58. package/node_modules/better-dsh/docs/20_specs/tool-surface/spec.md +0 -222
  59. package/node_modules/better-dsh/docs/20_specs/url-schema/spec.md +0 -148
  60. package/node_modules/better-dsh/docs/20_specs/web-trust-fence/spec.md +0 -43
  61. 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 +0 -176
  62. 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 +0 -226
  63. 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 +0 -222
  64. 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 +0 -81
  65. 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 +0 -234
  66. 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 +0 -160
  67. 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 +0 -44
  68. 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 +0 -89
  69. 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 +0 -198
  70. 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 +0 -246
  71. 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 +0 -50
  72. 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 +0 -63
  73. 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 +0 -76
  74. 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 +0 -76
  75. 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 +0 -134
  76. 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 +0 -92
  77. 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 +0 -125
  78. 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 +0 -207
  79. 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 +0 -65
  80. 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 +0 -53
  81. 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 +0 -155
  82. 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 +0 -105
  83. 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 +0 -62
  84. 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 +0 -137
  85. 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 +0 -38
  86. 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 +0 -325
  87. 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 +0 -185
  88. 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 +0 -82
  89. 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 +0 -101
  90. 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 +0 -54
  91. 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 +0 -447
  92. 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 +0 -63
  93. 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 +0 -82
  94. 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 +0 -220
  95. 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 +0 -151
  96. package/node_modules/better-dsh/docs/50_test-reports/2026-10-06-authentication-only-web-admission-4999.md +0 -63
  97. package/node_modules/better-dsh/docs/50_test-reports/2026-10-07-better-dsh-welcome-self-contained-4999.md +0 -52
  98. 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 +0 -110
  99. package/node_modules/better-dsh/docs/50_test-reports/kernel-provisioning.md +0 -44
  100. package/node_modules/better-dsh/docs/50_test-reports/repl-kernel-provisioning-test-report.md +0 -87
  101. package/node_modules/better-dsh/docs/50_test-reports/upstream-dsh-0.1.2-alpha.5-local-test-report.md +0 -81
  102. package/node_modules/better-dsh/docs/50_test-reports/upstream-dsh-0.1.2-alpha.5-report.md +0 -93
  103. package/node_modules/better-dsh/docs/50_test-reports/upstream-dsh-0.1.3-alpha.2-local-test-report.md +0 -44
  104. package/node_modules/better-dsh/docs/50_test-reports/upstream-dsh-0.1.3-alpha.2-report.md +0 -110
  105. package/node_modules/better-dsh/docs/50_test-reports/upstream-dsh-0.1.5-rc.2-local-test-report.md +0 -79
  106. 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 +0 -142
  107. 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 +0 -193
  108. 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 +0 -96
  109. 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 +0 -127
  110. 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 +0 -150
  111. 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 +0 -224
  112. 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 +0 -168
  113. 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 +0 -123
  114. 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 +0 -110
  115. 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 +0 -86
  116. 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 +0 -66
  117. 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 +0 -67
  118. 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 +0 -136
  119. package/node_modules/better-dsh/docs/50_test-reports/v0.2.1ef-dev-audit-report.md +0 -73
  120. 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 +0 -102
  121. 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 +0 -73
  122. 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 +0 -47
  123. 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 +0 -158
  124. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/skill/SKILL.md +0 -147
  125. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/skill/chapters/ch01-user-guide.md +0 -123
  126. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/skill/chapters/ch02-plugin-basics.md +0 -127
  127. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/skill/chapters/ch03-plugin-framework-practice.md +0 -120
  128. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/skill/chapters/ch04-cordis-fundamentals.md +0 -129
  129. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/skill/chapters/ch05-cordis-api.md +0 -115
  130. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/skill/chapters/ch06-architecture.md +0 -109
  131. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/skill/chapters/ch07-capability-seams.md +0 -97
  132. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/skill/chapters/ch08-internals-pipelines.md +0 -111
  133. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/skill/chapters/ch09-api-gateway.md +0 -106
  134. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/skill/chapters/ch10-config-catalog.md +0 -97
  135. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/skill/chapters/ch11-tool-catalog.md +0 -121
  136. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/skill/chapters/ch12-persistence-catalog.md +0 -109
  137. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/skill/chapters/ch13-subsystems-core-session.md +0 -106
  138. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/skill/chapters/ch14-subsystems-agent-loop.md +0 -111
  139. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/skill/chapters/ch15-subsystems-tool-execution.md +0 -106
  140. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/skill/chapters/ch16-subsystems-session-data.md +0 -132
  141. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/skill/chapters/ch17-subsystems-llm-streaming.md +0 -128
  142. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/skill/chapters/ch18-subsystems-web-ui.md +0 -142
  143. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/skill/chapters/ch19-cookbook.md +0 -149
  144. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/skill/chapters/ch20-development-testing.md +0 -87
  145. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/skill/chapters/ch21-postmortems.md +0 -82
  146. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/skill/chapters/ch22-i18n.md +0 -86
  147. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/skill/cheatsheet.md +0 -67
  148. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/skill/glossary.md +0 -57
  149. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/skill/patterns.md +0 -88
  150. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/AGENTS.md +0 -75
  151. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/agent-lifecycle.md +0 -84
  152. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/agent-lifecycle.zh.md +0 -86
  153. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/api-gateway.md +0 -164
  154. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/api-gateway.zh.md +0 -164
  155. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/architecture.md +0 -150
  156. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/architecture.zh.md +0 -154
  157. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/capability-seams.md +0 -543
  158. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/capability-seams.zh.md +0 -545
  159. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/config-catalog.md +0 -3473
  160. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/config-catalog.zh.md +0 -3474
  161. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/cookbook/adding-a-package.md +0 -117
  162. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/cookbook/adding-a-package.zh.md +0 -119
  163. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/cookbook/adding-a-remote-api.md +0 -197
  164. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/cookbook/adding-a-remote-api.zh.md +0 -197
  165. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/cookbook/adding-a-settings-card.md +0 -102
  166. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/cookbook/adding-a-settings-card.zh.md +0 -102
  167. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/cookbook/adding-a-tool.md +0 -101
  168. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/cookbook/adding-a-tool.zh.md +0 -103
  169. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/cookbook/adding-a-vendored-package.md +0 -59
  170. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/cookbook/adding-a-vendored-package.zh.md +0 -59
  171. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/cookbook/adding-an-llm-adapter.md +0 -43
  172. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/cookbook/adding-an-llm-adapter.zh.md +0 -43
  173. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/cookbook/extension-cookbook.md +0 -132
  174. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/cookbook/extension-cookbook.zh.md +0 -136
  175. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/cookbook/maintaining-dsh-code-review.md +0 -64
  176. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/cookbook/maintaining-dsh-code-review.zh.md +0 -64
  177. 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 +0 -32
  178. 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 +0 -32
  179. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/cordis-api/context.md +0 -364
  180. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/cordis-api/context.zh.md +0 -366
  181. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/cordis-api/events.md +0 -207
  182. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/cordis-api/events.zh.md +0 -209
  183. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/cordis-api/fiber.md +0 -375
  184. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/cordis-api/fiber.zh.md +0 -377
  185. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/cordis-api/inherited.md +0 -39
  186. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/cordis-api/registry.md +0 -152
  187. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/cordis-api/registry.zh.md +0 -154
  188. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/cordis-api/service.md +0 -102
  189. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/cordis-api/service.zh.md +0 -104
  190. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/cordis-primer.md +0 -45
  191. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/cordis-primer.zh.md +0 -51
  192. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/cordis-tutorial/01-first-plugin.md +0 -95
  193. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/cordis-tutorial/01-first-plugin.zh.md +0 -95
  194. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/cordis-tutorial/02-lifecycle-and-effects.md +0 -98
  195. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/cordis-tutorial/02-lifecycle-and-effects.zh.md +0 -98
  196. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/cordis-tutorial/03-services.md +0 -98
  197. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/cordis-tutorial/03-services.zh.md +0 -98
  198. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/cordis-tutorial/04-events.md +0 -144
  199. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/cordis-tutorial/04-events.zh.md +0 -144
  200. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/cordis-tutorial/05-config.md +0 -84
  201. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/cordis-tutorial/05-config.zh.md +0 -84
  202. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/cordis-tutorial/06-composition-and-hmr.md +0 -113
  203. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/cordis-tutorial/06-composition-and-hmr.zh.md +0 -113
  204. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/cordis-tutorial/07-into-the-harness.md +0 -108
  205. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/cordis-tutorial/07-into-the-harness.zh.md +0 -108
  206. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/cordis-tutorial/index.md +0 -60
  207. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/cordis-tutorial/index.zh.md +0 -62
  208. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/deepseek-llm-api-wire-extensions.md +0 -163
  209. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/deepseek-llm-api-wire-extensions.zh.md +0 -163
  210. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/defensive-patterns.md +0 -33
  211. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/defensive-patterns.zh.md +0 -35
  212. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/development.md +0 -167
  213. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/development.zh.md +0 -173
  214. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/event-producer-consumer.md +0 -86
  215. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/event-producer-consumer.zh.md +0 -88
  216. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/glossary.md +0 -45
  217. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/glossary.zh.md +0 -45
  218. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/graph-atlas.md +0 -22
  219. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/graph-atlas.zh.md +0 -24
  220. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/i18n/README.md +0 -60
  221. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/i18n/README.zh.md +0 -62
  222. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/i18n/style-samples.md +0 -87
  223. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/i18n/terminology.md +0 -214
  224. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/i18n/translation-prompt.md +0 -263
  225. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/i18n/translation-rules.md +0 -69
  226. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/i18n/translation-rules.zh.md +0 -69
  227. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/module-graph.md +0 -1411
  228. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/module-graph.zh.md +0 -1413
  229. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/persistence-catalog.md +0 -1075
  230. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/persistence-catalog.zh.md +0 -1077
  231. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/postmortem/0001-acp-default-export-drops-inject.md +0 -113
  232. 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 +0 -113
  233. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/postmortem/0002-js-expression-disabled-filesystem-tools.md +0 -47
  234. 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 +0 -47
  235. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/postmortem/0003-web-agent-gui-feedback-loop.md +0 -53
  236. 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 +0 -53
  237. 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 +0 -55
  238. 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 +0 -55
  239. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/postmortem/README.md +0 -18
  240. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/postmortem/README.zh.md +0 -18
  241. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/rescope.md +0 -53
  242. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/rescope.zh.md +0 -53
  243. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/README.md +0 -61
  244. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/README.zh.md +0 -61
  245. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/agent-team.md +0 -207
  246. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/agent-team.zh.md +0 -207
  247. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/approval.md +0 -170
  248. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/approval.zh.md +0 -170
  249. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/attachment.md +0 -351
  250. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/attachment.zh.md +0 -351
  251. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/client-modules.md +0 -168
  252. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/client-modules.zh.md +0 -168
  253. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/code-runtime.md +0 -195
  254. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/code-runtime.zh.md +0 -195
  255. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/commands.md +0 -219
  256. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/commands.zh.md +0 -219
  257. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/compaction.md +0 -238
  258. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/compaction.zh.md +0 -238
  259. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/conversation.md +0 -258
  260. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/conversation.zh.md +0 -258
  261. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/core.md +0 -1209
  262. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/core.zh.md +0 -1219
  263. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/credentials.md +0 -329
  264. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/credentials.zh.md +0 -329
  265. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/extensions.md +0 -382
  266. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/extensions.zh.md +0 -382
  267. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/feedback.md +0 -266
  268. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/feedback.zh.md +0 -266
  269. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/filesystem.md +0 -505
  270. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/filesystem.zh.md +0 -505
  271. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/goal.md +0 -277
  272. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/goal.zh.md +0 -277
  273. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/invariants.md +0 -88
  274. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/invariants.zh.md +0 -88
  275. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/jobs.md +0 -290
  276. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/jobs.zh.md +0 -290
  277. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/llm-streaming.md +0 -1080
  278. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/llm-streaming.zh.md +0 -1086
  279. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/lsp.md +0 -202
  280. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/lsp.zh.md +0 -202
  281. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/permission-presets.md +0 -131
  282. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/permission-presets.zh.md +0 -131
  283. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/persistence.md +0 -395
  284. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/persistence.zh.md +0 -395
  285. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/plan.md +0 -87
  286. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/plan.zh.md +0 -87
  287. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/sandbox.md +0 -220
  288. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/sandbox.zh.md +0 -220
  289. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/schedule.md +0 -192
  290. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/schedule.zh.md +0 -192
  291. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/scope.md +0 -59
  292. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/scope.zh.md +0 -59
  293. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/session-projection.md +0 -354
  294. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/session-projection.zh.md +0 -354
  295. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/session-query.md +0 -509
  296. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/session-query.zh.md +0 -509
  297. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/session-reference.md +0 -219
  298. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/session-reference.zh.md +0 -219
  299. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/session-telemetry.md +0 -194
  300. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/session-telemetry.zh.md +0 -194
  301. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/session-title.md +0 -204
  302. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/session-title.zh.md +0 -204
  303. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/session.md +0 -1155
  304. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/session.zh.md +0 -1159
  305. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/settings.md +0 -405
  306. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/settings.zh.md +0 -405
  307. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/shell.md +0 -303
  308. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/shell.zh.md +0 -303
  309. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/skills.md +0 -354
  310. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/skills.zh.md +0 -354
  311. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/slots.md +0 -175
  312. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/slots.zh.md +0 -175
  313. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/spill.md +0 -117
  314. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/spill.zh.md +0 -117
  315. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/storage.md +0 -260
  316. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/storage.zh.md +0 -260
  317. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/subagent.md +0 -766
  318. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/subagent.zh.md +0 -770
  319. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/subprocess.md +0 -324
  320. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/subprocess.zh.md +0 -324
  321. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/system-prompt.md +0 -220
  322. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/system-prompt.zh.md +0 -220
  323. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/terminal.md +0 -184
  324. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/terminal.zh.md +0 -184
  325. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/todo.md +0 -32
  326. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/todo.zh.md +0 -32
  327. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/token-meter.md +0 -105
  328. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/token-meter.zh.md +0 -105
  329. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/tools.md +0 -720
  330. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/tools.zh.md +0 -720
  331. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/typert.md +0 -343
  332. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/typert.zh.md +0 -343
  333. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/user-questions.md +0 -178
  334. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/user-questions.zh.md +0 -178
  335. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/web-client.md +0 -95
  336. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/web-client.zh.md +0 -95
  337. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/web-server.md +0 -154
  338. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/web-server.zh.md +0 -154
  339. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/web.md +0 -206
  340. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/web.zh.md +0 -206
  341. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/webhook.md +0 -70
  342. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/webhook.zh.md +0 -70
  343. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/workflow.md +0 -278
  344. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/workflow.zh.md +0 -278
  345. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/workspace.md +0 -321
  346. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/subsystems/workspace.zh.md +0 -321
  347. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/testing.md +0 -54
  348. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/testing.zh.md +0 -54
  349. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/tool-catalog.md +0 -2225
  350. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/tool-catalog.zh.md +0 -2233
  351. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/tool-execution-pipeline.md +0 -62
  352. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/tool-execution-pipeline.zh.md +0 -64
  353. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/user/develop/basic/config.md +0 -106
  354. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/user/develop/basic/config.zh.md +0 -106
  355. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/user/develop/basic/index.md +0 -144
  356. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/user/develop/basic/index.zh.md +0 -144
  357. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/user/develop/basic/publish.md +0 -183
  358. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/user/develop/basic/publish.zh.md +0 -183
  359. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/user/develop/basic/tool.md +0 -52
  360. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/user/develop/basic/tool.zh.md +0 -52
  361. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/user/develop/framework/events.md +0 -143
  362. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/user/develop/framework/events.zh.md +0 -143
  363. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/user/develop/framework/index.md +0 -137
  364. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/user/develop/framework/index.zh.md +0 -137
  365. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/user/develop/framework/service.md +0 -148
  366. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/user/develop/framework/service.zh.md +0 -150
  367. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/user/develop/practice/dynamic-cordis.md +0 -15
  368. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/user/develop/practice/dynamic-cordis.zh.md +0 -15
  369. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/user/develop/practice/index.md +0 -155
  370. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/user/develop/practice/index.zh.md +0 -155
  371. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/user/develop/practice/llm-adapter.md +0 -189
  372. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/user/develop/practice/llm-adapter.zh.md +0 -189
  373. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/user/guide/github-review.md +0 -102
  374. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/user/guide/github-review.zh.md +0 -102
  375. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/user/guide/index.md +0 -30
  376. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/user/guide/index.zh.md +0 -30
  377. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/user/guide/mcp-memory.md +0 -101
  378. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/user/guide/mcp-memory.zh.md +0 -101
  379. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/user/guide/network-proxy.md +0 -85
  380. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/user/guide/network-proxy.zh.md +0 -85
  381. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/user/guide/providers.md +0 -190
  382. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/user/guide/providers.zh.md +0 -190
  383. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/user/guide/python-sdk.md +0 -150
  384. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/user/guide/python-sdk.zh.md +0 -150
  385. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/user/guide/schedule.md +0 -21
  386. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/user/guide/schedule.zh.md +0 -21
  387. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/user/index.md +0 -11
  388. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/user/index.zh.md +0 -11
  389. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/web-styling.md +0 -29
  390. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/docs/web-styling.zh.md +0 -29
  391. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/site-pages-map.txt +0 -234
  392. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src/site-pages.json +0 -232
  393. package/node_modules/better-dsh/docs/80_upstream-docs-and-skills/dsh-dev-skill/src-README.md +0 -63
  394. package/node_modules/better-dsh/docs/dev-test-environment-notes.md +0 -137
  395. package/node_modules/better-dsh/docs/distro-blueprint.md +0 -81
  396. package/node_modules/better-dsh/docs/dsh-webUI-with-rlm-mode.png +0 -0
  397. package/node_modules/better-dsh/docs/repositioning-and-rebranding.md +0 -102
  398. package/node_modules/better-dsh/docs/specs/agent/spec.md +0 -54
  399. package/node_modules/better-dsh/docs/specs/ast/spec.md +0 -57
  400. package/node_modules/better-dsh/docs/specs/ast-engine-deomp/spec.md +0 -170
  401. package/node_modules/better-dsh/docs/specs/authentication-only-web-admission/spec.md +0 -51
  402. package/node_modules/better-dsh/docs/specs/compaction-recall/spec.md +0 -46
  403. package/node_modules/better-dsh/docs/specs/ctx/spec.md +0 -179
  404. package/node_modules/better-dsh/docs/specs/docs-packaging-trim/spec.md +0 -110
  405. package/node_modules/better-dsh/docs/specs/dsh/spec.md +0 -47
  406. package/node_modules/better-dsh/docs/specs/dvc/spec.md +0 -106
  407. package/node_modules/better-dsh/docs/specs/escalation-guidance/spec.md +0 -44
  408. package/node_modules/better-dsh/docs/specs/fs-scheme-resolution/spec.md +0 -37
  409. package/node_modules/better-dsh/docs/specs/hash-edit/spec.md +0 -41
  410. package/node_modules/better-dsh/docs/specs/http-read/spec.md +0 -73
  411. package/node_modules/better-dsh/docs/specs/kernel-provisioning/spec.md +0 -53
  412. package/node_modules/better-dsh/docs/specs/lsp/spec.md +0 -121
  413. package/node_modules/better-dsh/docs/specs/mobile-layout/spec.md +0 -108
  414. package/node_modules/better-dsh/docs/specs/model-failover/spec.md +0 -20
  415. package/node_modules/better-dsh/docs/specs/model-picker-ios-blur/spec.md +0 -168
  416. package/node_modules/better-dsh/docs/specs/plugins-page-components/spec.md +0 -79
  417. package/node_modules/better-dsh/docs/specs/preact-ui-shell/spec.md +0 -22
  418. package/node_modules/better-dsh/docs/specs/remote-pty-label/spec.md +0 -126
  419. package/node_modules/better-dsh/docs/specs/repl-dispatch-resilience/spec.md +0 -21
  420. package/node_modules/better-dsh/docs/specs/skill/spec.md +0 -58
  421. package/node_modules/better-dsh/docs/specs/tool-surface/spec.md +0 -222
  422. package/node_modules/better-dsh/docs/specs/url-schema/spec.md +0 -148
  423. package/node_modules/better-dsh/docs/specs/web-trust-fence/spec.md +0 -43
  424. package/node_modules/better-dsh/docs/specs/welcome-self-contained/spec.md +0 -13
  425. package/node_modules/better-dsh/docs/specs/zero-npm-runtime-deps/spec.md +0 -85
  426. package/node_modules/better-dsh/docs/superpowers/plans/2026-10-02-ctx-navigation.md +0 -319
  427. package/node_modules/better-dsh/docs/superpowers/plans/2026-10-03-ast-engine-deomp.md +0 -1214
  428. package/node_modules/better-dsh/docs/superpowers/plans/2026-10-03-docs-packaging-trim.md +0 -181
  429. package/node_modules/better-dsh/docs/superpowers/specs/2026-10-02-ctx-navigation-design.md +0 -209
  430. package/node_modules/better-dsh/docs/upstream-dsh-0.1.5-rc.2-report.md +0 -156
  431. package/node_modules/better-dsh/dsh-docs/AGENTS.md +0 -75
  432. package/node_modules/better-dsh/dsh-docs/agent-lifecycle.md +0 -84
  433. package/node_modules/better-dsh/dsh-docs/agent-lifecycle.zh.md +0 -86
  434. package/node_modules/better-dsh/dsh-docs/api-gateway.md +0 -164
  435. package/node_modules/better-dsh/dsh-docs/api-gateway.zh.md +0 -164
  436. package/node_modules/better-dsh/dsh-docs/architecture.md +0 -150
  437. package/node_modules/better-dsh/dsh-docs/architecture.zh.md +0 -154
  438. package/node_modules/better-dsh/dsh-docs/baseline.md +0 -13
  439. package/node_modules/better-dsh/dsh-docs/capability-seams.md +0 -543
  440. package/node_modules/better-dsh/dsh-docs/capability-seams.zh.md +0 -545
  441. package/node_modules/better-dsh/dsh-docs/config-catalog.md +0 -3473
  442. package/node_modules/better-dsh/dsh-docs/config-catalog.zh.md +0 -3474
  443. package/node_modules/better-dsh/dsh-docs/cookbook/adding-a-package.md +0 -117
  444. package/node_modules/better-dsh/dsh-docs/cookbook/adding-a-package.zh.md +0 -119
  445. package/node_modules/better-dsh/dsh-docs/cookbook/adding-a-remote-api.md +0 -197
  446. package/node_modules/better-dsh/dsh-docs/cookbook/adding-a-remote-api.zh.md +0 -197
  447. package/node_modules/better-dsh/dsh-docs/cookbook/adding-a-session-format-version.md +0 -109
  448. package/node_modules/better-dsh/dsh-docs/cookbook/adding-a-session-format-version.zh.md +0 -109
  449. package/node_modules/better-dsh/dsh-docs/cookbook/adding-a-settings-card.md +0 -102
  450. package/node_modules/better-dsh/dsh-docs/cookbook/adding-a-settings-card.zh.md +0 -102
  451. package/node_modules/better-dsh/dsh-docs/cookbook/adding-a-tool.md +0 -101
  452. package/node_modules/better-dsh/dsh-docs/cookbook/adding-a-tool.zh.md +0 -103
  453. package/node_modules/better-dsh/dsh-docs/cookbook/adding-a-vendored-package.md +0 -59
  454. package/node_modules/better-dsh/dsh-docs/cookbook/adding-a-vendored-package.zh.md +0 -59
  455. package/node_modules/better-dsh/dsh-docs/cookbook/adding-an-llm-adapter.md +0 -43
  456. package/node_modules/better-dsh/dsh-docs/cookbook/adding-an-llm-adapter.zh.md +0 -43
  457. package/node_modules/better-dsh/dsh-docs/cookbook/extension-cookbook.md +0 -132
  458. package/node_modules/better-dsh/dsh-docs/cookbook/extension-cookbook.zh.md +0 -136
  459. package/node_modules/better-dsh/dsh-docs/cookbook/maintaining-dsh-code-review.md +0 -64
  460. package/node_modules/better-dsh/dsh-docs/cookbook/maintaining-dsh-code-review.zh.md +0 -64
  461. package/node_modules/better-dsh/dsh-docs/cookbook/responding-to-pr-review-on-a-stack.md +0 -32
  462. package/node_modules/better-dsh/dsh-docs/cookbook/responding-to-pr-review-on-a-stack.zh.md +0 -32
  463. package/node_modules/better-dsh/dsh-docs/cordis-api/context.md +0 -364
  464. package/node_modules/better-dsh/dsh-docs/cordis-api/context.zh.md +0 -366
  465. package/node_modules/better-dsh/dsh-docs/cordis-api/events.md +0 -207
  466. package/node_modules/better-dsh/dsh-docs/cordis-api/events.zh.md +0 -209
  467. package/node_modules/better-dsh/dsh-docs/cordis-api/fiber.md +0 -375
  468. package/node_modules/better-dsh/dsh-docs/cordis-api/fiber.zh.md +0 -377
  469. package/node_modules/better-dsh/dsh-docs/cordis-api/inherited.md +0 -39
  470. package/node_modules/better-dsh/dsh-docs/cordis-api/registry.md +0 -152
  471. package/node_modules/better-dsh/dsh-docs/cordis-api/registry.zh.md +0 -154
  472. package/node_modules/better-dsh/dsh-docs/cordis-api/service.md +0 -102
  473. package/node_modules/better-dsh/dsh-docs/cordis-api/service.zh.md +0 -104
  474. package/node_modules/better-dsh/dsh-docs/cordis-primer.md +0 -45
  475. package/node_modules/better-dsh/dsh-docs/cordis-primer.zh.md +0 -51
  476. package/node_modules/better-dsh/dsh-docs/cordis-tutorial/01-first-plugin.md +0 -95
  477. package/node_modules/better-dsh/dsh-docs/cordis-tutorial/01-first-plugin.zh.md +0 -95
  478. package/node_modules/better-dsh/dsh-docs/cordis-tutorial/02-lifecycle-and-effects.md +0 -98
  479. package/node_modules/better-dsh/dsh-docs/cordis-tutorial/02-lifecycle-and-effects.zh.md +0 -98
  480. package/node_modules/better-dsh/dsh-docs/cordis-tutorial/03-services.md +0 -98
  481. package/node_modules/better-dsh/dsh-docs/cordis-tutorial/03-services.zh.md +0 -98
  482. package/node_modules/better-dsh/dsh-docs/cordis-tutorial/04-events.md +0 -144
  483. package/node_modules/better-dsh/dsh-docs/cordis-tutorial/04-events.zh.md +0 -144
  484. package/node_modules/better-dsh/dsh-docs/cordis-tutorial/05-config.md +0 -84
  485. package/node_modules/better-dsh/dsh-docs/cordis-tutorial/05-config.zh.md +0 -84
  486. package/node_modules/better-dsh/dsh-docs/cordis-tutorial/06-composition-and-hmr.md +0 -113
  487. package/node_modules/better-dsh/dsh-docs/cordis-tutorial/06-composition-and-hmr.zh.md +0 -113
  488. package/node_modules/better-dsh/dsh-docs/cordis-tutorial/07-into-the-harness.md +0 -108
  489. package/node_modules/better-dsh/dsh-docs/cordis-tutorial/07-into-the-harness.zh.md +0 -108
  490. package/node_modules/better-dsh/dsh-docs/cordis-tutorial/index.md +0 -60
  491. package/node_modules/better-dsh/dsh-docs/cordis-tutorial/index.zh.md +0 -62
  492. package/node_modules/better-dsh/dsh-docs/deepseek-llm-api-wire-extensions.md +0 -163
  493. package/node_modules/better-dsh/dsh-docs/deepseek-llm-api-wire-extensions.zh.md +0 -163
  494. package/node_modules/better-dsh/dsh-docs/defensive-patterns.md +0 -33
  495. package/node_modules/better-dsh/dsh-docs/defensive-patterns.zh.md +0 -35
  496. package/node_modules/better-dsh/dsh-docs/development.md +0 -167
  497. package/node_modules/better-dsh/dsh-docs/development.zh.md +0 -173
  498. package/node_modules/better-dsh/dsh-docs/event-producer-consumer.md +0 -86
  499. package/node_modules/better-dsh/dsh-docs/event-producer-consumer.zh.md +0 -88
  500. package/node_modules/better-dsh/dsh-docs/glossary.md +0 -45
  501. package/node_modules/better-dsh/dsh-docs/glossary.zh.md +0 -45
  502. package/node_modules/better-dsh/dsh-docs/graph-atlas.md +0 -22
  503. package/node_modules/better-dsh/dsh-docs/graph-atlas.zh.md +0 -24
  504. package/node_modules/better-dsh/dsh-docs/i18n/README.md +0 -60
  505. package/node_modules/better-dsh/dsh-docs/i18n/README.zh.md +0 -62
  506. package/node_modules/better-dsh/dsh-docs/i18n/style-samples.md +0 -87
  507. package/node_modules/better-dsh/dsh-docs/i18n/terminology.md +0 -214
  508. package/node_modules/better-dsh/dsh-docs/i18n/translation-prompt.md +0 -263
  509. package/node_modules/better-dsh/dsh-docs/i18n/translation-rules.md +0 -69
  510. package/node_modules/better-dsh/dsh-docs/i18n/translation-rules.zh.md +0 -69
  511. package/node_modules/better-dsh/dsh-docs/module-graph.md +0 -1411
  512. package/node_modules/better-dsh/dsh-docs/module-graph.zh.md +0 -1413
  513. package/node_modules/better-dsh/dsh-docs/persistence-catalog.md +0 -1075
  514. package/node_modules/better-dsh/dsh-docs/persistence-catalog.zh.md +0 -1077
  515. package/node_modules/better-dsh/dsh-docs/postmortem/0001-acp-default-export-drops-inject.md +0 -113
  516. package/node_modules/better-dsh/dsh-docs/postmortem/0001-acp-default-export-drops-inject.zh.md +0 -113
  517. package/node_modules/better-dsh/dsh-docs/postmortem/0002-js-expression-disabled-filesystem-tools.md +0 -47
  518. package/node_modules/better-dsh/dsh-docs/postmortem/0002-js-expression-disabled-filesystem-tools.zh.md +0 -47
  519. package/node_modules/better-dsh/dsh-docs/postmortem/0003-web-agent-gui-feedback-loop.md +0 -53
  520. package/node_modules/better-dsh/dsh-docs/postmortem/0003-web-agent-gui-feedback-loop.zh.md +0 -53
  521. package/node_modules/better-dsh/dsh-docs/postmortem/0004-landlock-partial-notice-misclassified-child-failures.md +0 -55
  522. package/node_modules/better-dsh/dsh-docs/postmortem/0004-landlock-partial-notice-misclassified-child-failures.zh.md +0 -55
  523. package/node_modules/better-dsh/dsh-docs/postmortem/README.md +0 -18
  524. package/node_modules/better-dsh/dsh-docs/postmortem/README.zh.md +0 -18
  525. package/node_modules/better-dsh/dsh-docs/rescope.md +0 -53
  526. package/node_modules/better-dsh/dsh-docs/rescope.zh.md +0 -53
  527. package/node_modules/better-dsh/dsh-docs/session-format-status.md +0 -47
  528. package/node_modules/better-dsh/dsh-docs/session-format-status.zh.md +0 -47
  529. package/node_modules/better-dsh/dsh-docs/subsystems/README.md +0 -61
  530. package/node_modules/better-dsh/dsh-docs/subsystems/README.zh.md +0 -61
  531. package/node_modules/better-dsh/dsh-docs/subsystems/agent-team.md +0 -207
  532. package/node_modules/better-dsh/dsh-docs/subsystems/agent-team.zh.md +0 -207
  533. package/node_modules/better-dsh/dsh-docs/subsystems/approval.md +0 -170
  534. package/node_modules/better-dsh/dsh-docs/subsystems/approval.zh.md +0 -170
  535. package/node_modules/better-dsh/dsh-docs/subsystems/attachment.md +0 -351
  536. package/node_modules/better-dsh/dsh-docs/subsystems/attachment.zh.md +0 -351
  537. package/node_modules/better-dsh/dsh-docs/subsystems/client-modules.md +0 -168
  538. package/node_modules/better-dsh/dsh-docs/subsystems/client-modules.zh.md +0 -168
  539. package/node_modules/better-dsh/dsh-docs/subsystems/client-resources.md +0 -91
  540. package/node_modules/better-dsh/dsh-docs/subsystems/client-resources.zh.md +0 -91
  541. package/node_modules/better-dsh/dsh-docs/subsystems/code-runtime.md +0 -195
  542. package/node_modules/better-dsh/dsh-docs/subsystems/code-runtime.zh.md +0 -195
  543. package/node_modules/better-dsh/dsh-docs/subsystems/commands.md +0 -219
  544. package/node_modules/better-dsh/dsh-docs/subsystems/commands.zh.md +0 -219
  545. package/node_modules/better-dsh/dsh-docs/subsystems/compaction.md +0 -238
  546. package/node_modules/better-dsh/dsh-docs/subsystems/compaction.zh.md +0 -238
  547. package/node_modules/better-dsh/dsh-docs/subsystems/conversation.md +0 -258
  548. package/node_modules/better-dsh/dsh-docs/subsystems/conversation.zh.md +0 -258
  549. package/node_modules/better-dsh/dsh-docs/subsystems/core.md +0 -1209
  550. package/node_modules/better-dsh/dsh-docs/subsystems/core.zh.md +0 -1219
  551. package/node_modules/better-dsh/dsh-docs/subsystems/credentials.md +0 -329
  552. package/node_modules/better-dsh/dsh-docs/subsystems/credentials.zh.md +0 -329
  553. package/node_modules/better-dsh/dsh-docs/subsystems/extensions.md +0 -382
  554. package/node_modules/better-dsh/dsh-docs/subsystems/extensions.zh.md +0 -382
  555. package/node_modules/better-dsh/dsh-docs/subsystems/feedback.md +0 -266
  556. package/node_modules/better-dsh/dsh-docs/subsystems/feedback.zh.md +0 -266
  557. package/node_modules/better-dsh/dsh-docs/subsystems/filesystem.md +0 -505
  558. package/node_modules/better-dsh/dsh-docs/subsystems/filesystem.zh.md +0 -505
  559. package/node_modules/better-dsh/dsh-docs/subsystems/goal.md +0 -277
  560. package/node_modules/better-dsh/dsh-docs/subsystems/goal.zh.md +0 -277
  561. package/node_modules/better-dsh/dsh-docs/subsystems/invariants.md +0 -91
  562. package/node_modules/better-dsh/dsh-docs/subsystems/invariants.zh.md +0 -91
  563. package/node_modules/better-dsh/dsh-docs/subsystems/jobs.md +0 -290
  564. package/node_modules/better-dsh/dsh-docs/subsystems/jobs.zh.md +0 -290
  565. package/node_modules/better-dsh/dsh-docs/subsystems/llm-streaming.md +0 -1080
  566. package/node_modules/better-dsh/dsh-docs/subsystems/llm-streaming.zh.md +0 -1086
  567. package/node_modules/better-dsh/dsh-docs/subsystems/lsp.md +0 -202
  568. package/node_modules/better-dsh/dsh-docs/subsystems/lsp.zh.md +0 -202
  569. package/node_modules/better-dsh/dsh-docs/subsystems/permission-presets.md +0 -131
  570. package/node_modules/better-dsh/dsh-docs/subsystems/permission-presets.zh.md +0 -131
  571. package/node_modules/better-dsh/dsh-docs/subsystems/persistence.md +0 -395
  572. package/node_modules/better-dsh/dsh-docs/subsystems/persistence.zh.md +0 -395
  573. package/node_modules/better-dsh/dsh-docs/subsystems/plan.md +0 -87
  574. package/node_modules/better-dsh/dsh-docs/subsystems/plan.zh.md +0 -87
  575. package/node_modules/better-dsh/dsh-docs/subsystems/sandbox.md +0 -220
  576. package/node_modules/better-dsh/dsh-docs/subsystems/sandbox.zh.md +0 -220
  577. package/node_modules/better-dsh/dsh-docs/subsystems/schedule.md +0 -192
  578. package/node_modules/better-dsh/dsh-docs/subsystems/schedule.zh.md +0 -192
  579. package/node_modules/better-dsh/dsh-docs/subsystems/scope.md +0 -59
  580. package/node_modules/better-dsh/dsh-docs/subsystems/scope.zh.md +0 -59
  581. package/node_modules/better-dsh/dsh-docs/subsystems/session-projection.md +0 -354
  582. package/node_modules/better-dsh/dsh-docs/subsystems/session-projection.zh.md +0 -354
  583. package/node_modules/better-dsh/dsh-docs/subsystems/session-query.md +0 -509
  584. package/node_modules/better-dsh/dsh-docs/subsystems/session-query.zh.md +0 -509
  585. package/node_modules/better-dsh/dsh-docs/subsystems/session-reference.md +0 -219
  586. package/node_modules/better-dsh/dsh-docs/subsystems/session-reference.zh.md +0 -219
  587. package/node_modules/better-dsh/dsh-docs/subsystems/session-telemetry.md +0 -194
  588. package/node_modules/better-dsh/dsh-docs/subsystems/session-telemetry.zh.md +0 -194
  589. package/node_modules/better-dsh/dsh-docs/subsystems/session-title.md +0 -204
  590. package/node_modules/better-dsh/dsh-docs/subsystems/session-title.zh.md +0 -204
  591. package/node_modules/better-dsh/dsh-docs/subsystems/session.md +0 -1155
  592. package/node_modules/better-dsh/dsh-docs/subsystems/session.zh.md +0 -1159
  593. package/node_modules/better-dsh/dsh-docs/subsystems/settings.md +0 -405
  594. package/node_modules/better-dsh/dsh-docs/subsystems/settings.zh.md +0 -405
  595. package/node_modules/better-dsh/dsh-docs/subsystems/shell.md +0 -303
  596. package/node_modules/better-dsh/dsh-docs/subsystems/shell.zh.md +0 -303
  597. package/node_modules/better-dsh/dsh-docs/subsystems/sidebar-right.md +0 -148
  598. package/node_modules/better-dsh/dsh-docs/subsystems/sidebar-right.zh.md +0 -148
  599. package/node_modules/better-dsh/dsh-docs/subsystems/skills.md +0 -354
  600. package/node_modules/better-dsh/dsh-docs/subsystems/skills.zh.md +0 -354
  601. package/node_modules/better-dsh/dsh-docs/subsystems/slots.md +0 -175
  602. package/node_modules/better-dsh/dsh-docs/subsystems/slots.zh.md +0 -175
  603. package/node_modules/better-dsh/dsh-docs/subsystems/spill.md +0 -117
  604. package/node_modules/better-dsh/dsh-docs/subsystems/spill.zh.md +0 -117
  605. package/node_modules/better-dsh/dsh-docs/subsystems/storage.md +0 -260
  606. package/node_modules/better-dsh/dsh-docs/subsystems/storage.zh.md +0 -260
  607. package/node_modules/better-dsh/dsh-docs/subsystems/subagent.md +0 -766
  608. package/node_modules/better-dsh/dsh-docs/subsystems/subagent.zh.md +0 -770
  609. package/node_modules/better-dsh/dsh-docs/subsystems/subprocess.md +0 -324
  610. package/node_modules/better-dsh/dsh-docs/subsystems/subprocess.zh.md +0 -324
  611. package/node_modules/better-dsh/dsh-docs/subsystems/system-prompt.md +0 -220
  612. package/node_modules/better-dsh/dsh-docs/subsystems/system-prompt.zh.md +0 -220
  613. package/node_modules/better-dsh/dsh-docs/subsystems/terminal.md +0 -184
  614. package/node_modules/better-dsh/dsh-docs/subsystems/terminal.zh.md +0 -184
  615. package/node_modules/better-dsh/dsh-docs/subsystems/todo.md +0 -32
  616. package/node_modules/better-dsh/dsh-docs/subsystems/todo.zh.md +0 -32
  617. package/node_modules/better-dsh/dsh-docs/subsystems/token-meter.md +0 -105
  618. package/node_modules/better-dsh/dsh-docs/subsystems/token-meter.zh.md +0 -105
  619. package/node_modules/better-dsh/dsh-docs/subsystems/tools.md +0 -720
  620. package/node_modules/better-dsh/dsh-docs/subsystems/tools.zh.md +0 -720
  621. package/node_modules/better-dsh/dsh-docs/subsystems/typert.md +0 -343
  622. package/node_modules/better-dsh/dsh-docs/subsystems/typert.zh.md +0 -343
  623. package/node_modules/better-dsh/dsh-docs/subsystems/user-questions.md +0 -178
  624. package/node_modules/better-dsh/dsh-docs/subsystems/user-questions.zh.md +0 -178
  625. package/node_modules/better-dsh/dsh-docs/subsystems/web-client.md +0 -95
  626. package/node_modules/better-dsh/dsh-docs/subsystems/web-client.zh.md +0 -95
  627. package/node_modules/better-dsh/dsh-docs/subsystems/web-server.md +0 -154
  628. package/node_modules/better-dsh/dsh-docs/subsystems/web-server.zh.md +0 -154
  629. package/node_modules/better-dsh/dsh-docs/subsystems/web.md +0 -206
  630. package/node_modules/better-dsh/dsh-docs/subsystems/web.zh.md +0 -206
  631. package/node_modules/better-dsh/dsh-docs/subsystems/webhook.md +0 -70
  632. package/node_modules/better-dsh/dsh-docs/subsystems/webhook.zh.md +0 -70
  633. package/node_modules/better-dsh/dsh-docs/subsystems/workflow.md +0 -278
  634. package/node_modules/better-dsh/dsh-docs/subsystems/workflow.zh.md +0 -278
  635. package/node_modules/better-dsh/dsh-docs/subsystems/workspace.md +0 -321
  636. package/node_modules/better-dsh/dsh-docs/subsystems/workspace.zh.md +0 -321
  637. package/node_modules/better-dsh/dsh-docs/testing.md +0 -54
  638. package/node_modules/better-dsh/dsh-docs/testing.zh.md +0 -54
  639. package/node_modules/better-dsh/dsh-docs/tool-catalog.md +0 -2225
  640. package/node_modules/better-dsh/dsh-docs/tool-catalog.zh.md +0 -2233
  641. package/node_modules/better-dsh/dsh-docs/tool-execution-pipeline.md +0 -62
  642. package/node_modules/better-dsh/dsh-docs/tool-execution-pipeline.zh.md +0 -64
  643. package/node_modules/better-dsh/dsh-docs/user/develop/basic/config.md +0 -106
  644. package/node_modules/better-dsh/dsh-docs/user/develop/basic/config.zh.md +0 -106
  645. package/node_modules/better-dsh/dsh-docs/user/develop/basic/index.md +0 -144
  646. package/node_modules/better-dsh/dsh-docs/user/develop/basic/index.zh.md +0 -144
  647. package/node_modules/better-dsh/dsh-docs/user/develop/basic/publish.md +0 -183
  648. package/node_modules/better-dsh/dsh-docs/user/develop/basic/publish.zh.md +0 -183
  649. package/node_modules/better-dsh/dsh-docs/user/develop/basic/tool.md +0 -52
  650. package/node_modules/better-dsh/dsh-docs/user/develop/basic/tool.zh.md +0 -52
  651. package/node_modules/better-dsh/dsh-docs/user/develop/framework/events.md +0 -143
  652. package/node_modules/better-dsh/dsh-docs/user/develop/framework/events.zh.md +0 -143
  653. package/node_modules/better-dsh/dsh-docs/user/develop/framework/index.md +0 -137
  654. package/node_modules/better-dsh/dsh-docs/user/develop/framework/index.zh.md +0 -137
  655. package/node_modules/better-dsh/dsh-docs/user/develop/framework/service.md +0 -148
  656. package/node_modules/better-dsh/dsh-docs/user/develop/framework/service.zh.md +0 -150
  657. package/node_modules/better-dsh/dsh-docs/user/develop/practice/dynamic-cordis.md +0 -15
  658. package/node_modules/better-dsh/dsh-docs/user/develop/practice/dynamic-cordis.zh.md +0 -15
  659. package/node_modules/better-dsh/dsh-docs/user/develop/practice/index.md +0 -155
  660. package/node_modules/better-dsh/dsh-docs/user/develop/practice/index.zh.md +0 -155
  661. package/node_modules/better-dsh/dsh-docs/user/develop/practice/llm-adapter.md +0 -189
  662. package/node_modules/better-dsh/dsh-docs/user/develop/practice/llm-adapter.zh.md +0 -189
  663. package/node_modules/better-dsh/dsh-docs/user/guide/github-review.md +0 -102
  664. package/node_modules/better-dsh/dsh-docs/user/guide/github-review.zh.md +0 -102
  665. package/node_modules/better-dsh/dsh-docs/user/guide/index.md +0 -30
  666. package/node_modules/better-dsh/dsh-docs/user/guide/index.zh.md +0 -30
  667. package/node_modules/better-dsh/dsh-docs/user/guide/mcp-memory.md +0 -101
  668. package/node_modules/better-dsh/dsh-docs/user/guide/mcp-memory.zh.md +0 -101
  669. package/node_modules/better-dsh/dsh-docs/user/guide/network-proxy.md +0 -85
  670. package/node_modules/better-dsh/dsh-docs/user/guide/network-proxy.zh.md +0 -85
  671. package/node_modules/better-dsh/dsh-docs/user/guide/providers.md +0 -190
  672. package/node_modules/better-dsh/dsh-docs/user/guide/providers.zh.md +0 -190
  673. package/node_modules/better-dsh/dsh-docs/user/guide/python-sdk.md +0 -150
  674. package/node_modules/better-dsh/dsh-docs/user/guide/python-sdk.zh.md +0 -150
  675. package/node_modules/better-dsh/dsh-docs/user/guide/schedule.md +0 -21
  676. package/node_modules/better-dsh/dsh-docs/user/guide/schedule.zh.md +0 -21
  677. package/node_modules/better-dsh/dsh-docs/user/index.md +0 -11
  678. package/node_modules/better-dsh/dsh-docs/user/index.zh.md +0 -11
  679. package/node_modules/better-dsh/dsh-docs/web-styling.md +0 -29
  680. package/node_modules/better-dsh/dsh-docs/web-styling.zh.md +0 -29
  681. package/node_modules/better-dsh/eval-description.md +0 -33
  682. package/node_modules/better-dsh/lib/BrowserWebSocketTransport-D1aFReu_.js +0 -4
  683. package/node_modules/better-dsh/lib/BrowserWebSocketTransport-wm99h94r.js +0 -39
  684. package/node_modules/better-dsh/lib/LaunchOptions-B874eBu2.js +0 -4
  685. package/node_modules/better-dsh/lib/LaunchOptions-kGXcZOe0.js +0 -17
  686. package/node_modules/better-dsh/lib/NodeWebSocketTransport-BRLjmu2R.js +0 -4
  687. package/node_modules/better-dsh/lib/NodeWebSocketTransport-D9ysYGLM.js +0 -3634
  688. package/node_modules/better-dsh/lib/ast-assets/ast-grep.wasm +0 -0
  689. package/node_modules/better-dsh/lib/ast-assets/tree-sitter-bash.wasm +0 -0
  690. package/node_modules/better-dsh/lib/ast-assets/tree-sitter-c.wasm +0 -0
  691. package/node_modules/better-dsh/lib/ast-assets/tree-sitter-cpp.wasm +0 -0
  692. package/node_modules/better-dsh/lib/ast-assets/tree-sitter-css.wasm +0 -0
  693. package/node_modules/better-dsh/lib/ast-assets/tree-sitter-go.wasm +0 -0
  694. package/node_modules/better-dsh/lib/ast-assets/tree-sitter-html.wasm +0 -0
  695. package/node_modules/better-dsh/lib/ast-assets/tree-sitter-javascript.wasm +0 -0
  696. package/node_modules/better-dsh/lib/ast-assets/tree-sitter-json.wasm +0 -0
  697. package/node_modules/better-dsh/lib/ast-assets/tree-sitter-python.wasm +0 -0
  698. package/node_modules/better-dsh/lib/ast-assets/tree-sitter-ruby.wasm +0 -0
  699. package/node_modules/better-dsh/lib/ast-assets/tree-sitter-rust.wasm +0 -0
  700. package/node_modules/better-dsh/lib/ast-assets/tree-sitter-tsx.wasm +0 -0
  701. package/node_modules/better-dsh/lib/ast-assets/tree-sitter-typescript.wasm +0 -0
  702. package/node_modules/better-dsh/lib/ast-assets/tree-sitter-yaml.wasm +0 -0
  703. package/node_modules/better-dsh/lib/ast-assets/tree-sitter.wasm +0 -0
  704. package/node_modules/better-dsh/lib/bidi-BalpKaJc.js +0 -16106
  705. package/node_modules/better-dsh/lib/bundle-delivery.d.ts +0 -20
  706. package/node_modules/better-dsh/lib/bundle-delivery.js +0 -212
  707. package/node_modules/better-dsh/lib/chunk-DQxbwPpZ.js +0 -30
  708. package/node_modules/better-dsh/lib/client/index.js +0 -712
  709. package/node_modules/better-dsh/lib/compaction/index.d.ts +0 -57
  710. package/node_modules/better-dsh/lib/compaction/index.js +0 -145
  711. package/node_modules/better-dsh/lib/failover/index.d.ts +0 -59
  712. package/node_modules/better-dsh/lib/failover/index.js +0 -147
  713. package/node_modules/better-dsh/lib/fs-aware/sandbox-plugin.d.ts +0 -71
  714. package/node_modules/better-dsh/lib/fs-aware/sandbox-plugin.js +0 -249
  715. package/node_modules/better-dsh/lib/hmr.d.ts +0 -32
  716. package/node_modules/better-dsh/lib/hmr.js +0 -49
  717. package/node_modules/better-dsh/lib/index-DTDXUe6m.d.ts +0 -208
  718. package/node_modules/better-dsh/lib/index-browser-CysrjMyM.js +0 -21061
  719. package/node_modules/better-dsh/lib/index.d.ts +0 -705
  720. package/node_modules/better-dsh/lib/index.js +0 -3816
  721. package/node_modules/better-dsh/lib/kernel-bridge.py +0 -172
  722. package/node_modules/better-dsh/lib/kernel-env-D8UOWeji.js +0 -195
  723. package/node_modules/better-dsh/lib/kernel-env.d.ts +0 -80
  724. package/node_modules/better-dsh/lib/kernel-env.js +0 -3
  725. package/node_modules/better-dsh/lib/lib-C8_jXvwA.js +0 -894
  726. package/node_modules/better-dsh/lib/lsp-server-registry-BXvUTBY7.js +0 -3
  727. package/node_modules/better-dsh/lib/lsp-server-registry-CH9WNFFt.js +0 -972
  728. package/node_modules/better-dsh/lib/main-BQeFrBM1.js +0 -3
  729. package/node_modules/better-dsh/lib/main-CupOhMp5.js +0 -1432
  730. package/node_modules/better-dsh/lib/mobile/plugin.d.ts +0 -29
  731. package/node_modules/better-dsh/lib/mobile/plugin.js +0 -54
  732. package/node_modules/better-dsh/lib/native-capture-BEByDXYM.js +0 -68
  733. package/node_modules/better-dsh/lib/puppeteer-core-CSk2PtSm.js +0 -1136
  734. package/node_modules/better-dsh/lib/py-sdk-D7klhpWb.js +0 -178
  735. package/node_modules/better-dsh/lib/py-sdk.d.ts +0 -19
  736. package/node_modules/better-dsh/lib/py-sdk.js +0 -3
  737. package/node_modules/better-dsh/lib/remote/plugin.d.ts +0 -24
  738. package/node_modules/better-dsh/lib/remote/plugin.js +0 -1190
  739. package/node_modules/better-dsh/lib/url-schemes/index.d.ts +0 -88
  740. package/node_modules/better-dsh/lib/url-schemes/index.js +0 -12229
  741. package/node_modules/better-dsh/lib/util-BHL_dfV_.js +0 -2953
  742. package/node_modules/better-dsh/lib/wasm_bg-CNXhHjVg.js +0 -1291
  743. package/node_modules/better-dsh/lib/web-password.d.ts +0 -156
  744. package/node_modules/better-dsh/lib/web-password.js +0 -562
  745. package/node_modules/better-dsh/lib/web-tree-sitter-CPrPD4J2.js +0 -3440
  746. package/node_modules/better-dsh/lib/web-trust-D6gJpUMf.js +0 -393
  747. package/node_modules/better-dsh/lib/web-trust-Dej_RI2B.d.ts +0 -113
  748. package/node_modules/better-dsh/lib/web-trust.d.ts +0 -3
  749. package/node_modules/better-dsh/lib/web-trust.js +0 -4
  750. package/node_modules/better-dsh/lib/webserver.d.ts +0 -10
  751. package/node_modules/better-dsh/lib/webserver.js +0 -19
  752. package/node_modules/better-dsh/lib/welcome-notice.d.ts +0 -18
  753. package/node_modules/better-dsh/lib/welcome-notice.js +0 -59
  754. package/node_modules/better-dsh/lib/wrap-T4I0nfPM.js +0 -750
  755. package/node_modules/better-dsh/package.json +0 -426
  756. package/node_modules/better-dsh/scripts/kernel-provision.mjs +0 -35
  757. package/node_modules/better-dsh/scripts/register-bundle.mjs +0 -80
  758. package/node_modules/better-dsh/url-schemes-instruction.md +0 -22
@@ -1,198 +0,0 @@
1
- # dsh-url-schemes 六 scheme 冒烟与边界实测报告
2
-
3
- - 日期:2026-09-12
4
- - 被测对象:`dashr/src/url-schemes/` 的六类 URL scheme(`skill://`、`agent://`、`dsh://`、`ctx://`、`dvc://`、`http(s)://`)在活体 runtime 中的 `read`/`write`/`grep`/`glob` 行为。
5
- - 被测运行时:**本 agent 自己所在的活体实例** —— `dsh web` @ `http://127.0.0.1:4999`(`DSH_WEB_URL`),`DSH_HOME=/home/u1/workspaces/dashr/.dsh-test`,session id `session-92ef9c82-fbf8-4b71-87af-a92125e0734c`,cwd `/home/u1/workspaces/dashr`,agentPreset `standard`。
6
- - 方法:**第一人称实测**——全部调用由本 agent 在真实 runtime 中发出(`read`/`write`/`grep`/`glob` 工具 + `eval` pad 内 `await tool.*`),无静态推断、无人工转写返回值。`dvc://` 写路径的"是否真落地"由回读文件系统二次确认。
7
- - change:无(本轮为既有能力的系统冒烟,非某个 change 的验收)。
8
-
9
- ---
10
-
11
- ## 0. 结论
12
-
13
- > **gates 标签(2026-09-13 补)**:本报告实测于 `urlSchemes: true + hashline: true`(DASHR read 包装在场)。「六 scheme read 全可达 6/6」仅在该组合下成立;`hashline: false` 下的可达性矩阵见《2026-09-13-hashline-off下scheme可达性工具面不对称-实测报告.md》。
14
-
15
- | 判定项 | 结果 |
16
- |---|---|
17
- | 六类 scheme 在 `read` 上全部可达 | ✅ 6/6 |
18
- | 未登记 scheme / 已登记只读 scheme 的写拦截 | ✅ 三类错误各自精确(`URL_READ_ONLY` / `URL_WRITE_UNSUPPORTED` / `URL_UNREGISTERED_SCHEME`) |
19
- | `dvc://` 写是否**真实执行**(非 dry-run 空转) | ✅ `ast_edit` `dryRun:false` 改写落盘,回读确认 |
20
- | 选择器四形态(`:raw` / `:N-M` / `:path/` / `?q=`) | ✅ 基本全通;目录列表上的 `?q=` 不过滤(§3.3) |
21
- | `http(s)://` selector-exempt(端口/查询不误解析) | ✅ `:443` 与 `?x=1` 均原样进请求 |
22
- | 内容型 scheme 的 `grep`/`glob` 支持 | ⚠️ `grep` 经 `/dev/shm` 物化可用;`glob` 的 URL-in-`path` 分支在 `dsh://docs` 上失效(§3.4) |
23
- | **`dvc://` 结果的 wire 可见性** | ❌ **缺口**:`write` 渲染面只输出 `Executed dvc://<device>`,设备 payload 仅存在于结构化 `after` 字段(§3.1) |
24
-
25
- **一句话**:六类 scheme 功能面完整、错误分类精确、`dvc://` 写是真执行;唯二值得处理的是 **`dvc://` 设备结果在渲染文本里丢失**(直接影响 `ast_grep`/`lsp`/`browser` 的可用性),以及 **`glob` 在 `dsh://docs` 上的 path 分支空转**。
26
-
27
- ---
28
-
29
- ## 1. 被测对象与环境事实
30
-
31
- | 项 | 值 |
32
- |---|---|
33
- | 运行时 | `DSH_HOME=/home/u1/workspaces/dashr/.dsh-test`;`DSH_SESSION_ID=session-92ef9c82-fbf8-4b71-87af-a92125e0734c`;`DSH_SHELL=1` |
34
- | GUI 端点 | `http://127.0.0.1:4999`(监听于 `127.0.0.1`);直连无 token 返回 **401** `dsh web authentication required; reopen the URL printed by dsh web.`(≈133 B,空 `<title>`) |
35
- | 方案单源 | `dashr/src/url-schemes/catalog.ts` 的 `SCHEME_CATALOGUE`(六条、`SCHEME_NAMES` 排序后 = `agent, ctx, dsh, dvc, http, https, skill`) |
36
- | 实现入口 | `dashr/src/url-schemes/index.ts`(挂载)、`resolver.ts`(端到端解析)、`selector.ts`(统一选择器)、`handlers/*`(六 scheme)、`tools/{read,write,grep,glob,materialize}.ts`(工具改写) |
37
- | 设备实现 | `vendored/devices/ast/ast-device.ts`(`ast_edit`/`ast_grep`)、`vendored/devices/browser/browser-device.ts`、`vendored/devices/lsp/lsp-device.ts` |
38
- | 已核 ctx 快照 | `ctx://session`:segments(live 0–34)、`system_prompt.chars = 0`、totals 与后续增长一致 |
39
- | 临时物化 | `grep` 对 URL 内容物化到 `/dev/shm/dashr-url-*/content.txt`;调用后目录被清理(收尾核 `/dev/shm` 为空) |
40
-
41
- ---
42
-
43
- ## 2. 逐 scheme 实测矩阵
44
-
45
- | Scheme | 已测形式 | 实测结果 |
46
- |---|---|---|
47
- | `skill://` | 裸根;`skill://dsh-dev-skill`;`/SKILL.md`;`/chapters/ch01-user-guide.md`;`:1-4`;`glob` 列目录 | 裸根 → `skill "" is unknown or no longer available`;`dsh-dev-skill` → 全文(= `.agents/skills/cordis-dsh-dev/SKILL.md`);子文件可读;`:1-4` 正确截 4 行;`glob` 返回 26 个真实相对路径 |
48
- | `agent://` | 裸根;`agent://<原始id>`;`<原始id>/transcript`;`:1-8`;`agent://<label>`;含 `:` 的 label | 裸根 → `no agents`(无子 agent 时)/ 之后为 4 列表格;settled child 原始 id → 产出物 `pong`;live child transcript 可读并可开窗;label 可寻址;含 `:` 的 label → 选择器解析错误(§3.5) |
49
- | `dsh://` | 裸根;`/docs`;`/docs/subsystems`;`/docs/subsystems/slots.md?q=priority`;`/config`;`:path/` 点路径(含数组下标) | 裸根 → `expected "docs" or "config"`;目录列 JSON 数组;文件可读;`?q=priority` → 3 行命中;`/config` → 完整配置 JSON;`:path/permission.defaultPreset` → `workspace-write`;`:path/llm-deepseek.models.0.id` → `deepseek-flash` |
50
- | `ctx://` | 裸根;`transcript`;`system`;`thinking[0]`;`user_prompts[0]`;`tool_calls[n]`;`agent_responses[0]`;`injections:raw`;`compactions`;`:raw:N-M` | 全部可读;`[n]` 按 0 基序号或事件 seq 双寻址;越界报错带集合长度;`compactions` 无内容 → `(no compactions recorded)`;`:raw:1-3` ≡ `:1-3` |
51
- | `dvc://` | 裸根;设备文档(4 个);`write` 执行(`ast_grep`/`ast_edit`/`browser`);非法参数;尾部 `/sub` | 裸根 → 4 行设备表;设备文档 + usage 提示;写执行见 §4;非法 JSON → 带解析信息的错误;`dvc://browser/ignored-sub` → 仍返回 browser 文档(首段寻址) |
52
- | `http(s)://` | `read` 原始 GET;`web_fetch` 解码;`?x=1`;`:443`;loopback | `read https://example.com` → 原始 HTML(带 `[url-fetch]` 前缀);`web_fetch` → 解码纯文本;查询与端口均原样保留;`127.0.0.1` 被拒(§3.6) |
53
-
54
- ---
55
-
56
- ## 3. 关键发现
57
-
58
- ### 3.1 `dvc://` 设备结果在 wire 渲染面上不可见(唯一实质性缺口)
59
-
60
- `tools/write.ts` 对 `dvc://` 写构造 `WriteOutcome{ operation:'execute', after: JSON.stringify(result,null,2) }`,但 `render` 只输出:
61
-
62
- ```
63
- const verb = … value.operation === 'execute' ? 'Executed' : …
64
- return [{ type: 'text', text: `${verb} ${value.path}` }]
65
- ```
66
-
67
- → 渲染文本恒为 `Executed dvc://ast_grep`。设备 payload 只在结构化 `after` 里。
68
-
69
- 实测对照(同一次 `ast_grep` 调用):
70
-
71
- - 直接 `write dvc://ast_grep` → 模型侧只看到 `Executed dvc://ast_grep`;
72
- - `eval` pad 内 `await tool.write({"file_path":"dvc://ast_grep", …})` → 完整 JSON:`totalMatches:143`、`filesWithMatches:28`、`filesSearched:162`、`limitReached:true`、`matches[]`(含 `byteStart/startLine/…`)、`parseErrors[]`。
73
-
74
- **影响**:模型直调 `ast_grep`/`lsp`/`browser` 拿不到任何结果数据(既无匹配也无报错),而这三个设备恰是输出价值最高的三个。建议 `write.ts` 的 device 分支把 payload 一并渲染进文本(或以可读摘要进文本、全量进 structure)。这是本轮唯一建议改代码的点。
75
-
76
- ### 3.2 `skill://` 按 frontmatter 名寻址,而非目录名
77
-
78
- `skill://dsh-dev-skill` 命中,其解析路径为 `.agents/skills/cordis-dsh-dev/`——目录名 `cordis-dsh-dev` 反而不被接受(`skill "cordis-dsh-dev" is unknown`)。同理 `superpowers`(顶层无 `SKILL.md`)不可寻址,裸 `skill://` 亦报未知。属正确语义(skill 名 = frontmatter `name`),但"猜目录名"是最自然的错误路径,可考虑错误信息附带候选名提示。
79
-
80
- ### 3.3 `?q=` 在目录列表上不过滤
81
-
82
- - `dsh://docs/subsystems/slots.md?q=priority` → 正确返回 3 行命中(含行号与上下文);
83
- - `dsh://docs/subsystems?q=slots` → 返回**未过滤**的完整 98 项目录列表。
84
-
85
- 即查询选择器只在"文件内容"语义下生效,目录列表(JSON 数组)上的 `?q=` 静默失效。建议改为:JSON 无匹配路径时对列表做行过滤,或明确忽略时给出提示。
86
-
87
- ### 3.4 `glob` 的 URL-in-`path` 分支在 `dsh://docs` 上空转
88
-
89
- `tools/glob.ts` 头注声称 "path-backed schemes (`skill://`, `dsh://docs`) implement the handler's optional `resolvePath`",但实测:
90
-
91
- - `glob({path:"skill://dsh-dev-skill", pattern:"ch01*.md"})` → ✅ 1 个文件(pattern 生效,any-depth 语义正确);
92
- - `glob({path:"dsh://docs/subsystems", pattern:"slots.md"})` → ❌ `(no output)`。
93
-
94
- 对照 `glob({pattern:"dsh://docs/subsystems"})` → ✅ 返回列表(content-backed "非空行即列表" 分支)。结论:`dsh://docs` 实际走 content-backed,`glob-in-path` 把列表 JSON 物化成 `content.txt` 后自然搜不到 `slots.md`。**头注与实现不符(注释过期)**,建议二选一:给 dsh docs 补 `resolvePath`,或订正注释。
95
-
96
- ### 3.5 含 `:` 的 agent label 无法寻址
97
-
98
- `agent://Dummy child for agent:// test` → `invalid line selector ":// test" — expected N, N-M, or N-M,N2-M2`。原因是 `parseUrl` 的 path 截断在第一个 `:`,label 中的 `://` 被当成选择器。**原始 session id 始终可寻址**(本轮据此拿到 settled child 的 `pong` 产出物)。属方案语法的固有边界,值得在 `agent://` 文档里点明"label 含 `:` 时请用原始 id"。
99
-
100
- ### 3.6 `http(s)://` 的两条路径与 SSRF 门
101
-
102
- - `read https://example.com` → 原始 curl 式 GET(返回完整 HTML,前缀 `[url-fetch] plain-text result of a direct HTTP GET (curl-equivalent). No JS execution or interaction`);
103
- - `web_fetch https://example.com/` → 解码后的纯文本;
104
- - `read https://example.com:443/` 与 `?x=1` → 原样进请求(selector-exempt 生效,未误判为行选择器/点路径);
105
- - `web_fetch http://127.0.0.1:4999/` → ❌ `URL hostname "127.0.0.1" resolves to a non-public IP address`(私网/回环 SSRF 门,与官方文档 Ch1 "web_fetch to literal private addresses is refused" 一致);
106
- - `dvc://browser` 走设备路径**可合法访问 loopback**:`open http://127.0.0.1:4999` → `{ok:true,url:"http://127.0.0.1:4999/",title:""}`;页内求值 `document.title` → `""`、`bodyLen:133`。经 curl 侧核验,该 133 B 即 **401 认证栅栏文本**——浏览器探针到达了服务端但未携带 token(预期行为,非传输故障)。
107
-
108
- ### 3.7 错误分类精确、可直接排障
109
-
110
- | 触发 | 返回 |
111
- |---|---|
112
- | `write ctx://session/transcript` | `ctx:// is a curated read-only snapshot — write to ctx://session/transcript is not supported`(`URL_READ_ONLY`) |
113
- | `write skill://dsh-dev-skill/SKILL.md` | `write to skill:// is not supported (read-only scheme, or its write channel is not wired yet)`(`URL_WRITE_UNSUPPORTED`) |
114
- | `write foo://bar` | `no handler registered for scheme "foo" (registered: agent, ctx, dsh, dvc, http, https, skill)` |
115
- | `read dvc://nope` | `unknown device: nope` |
116
- | `read ctx://session/tool_calls[999]` | `no such element (collection "tool_calls" has 40 items, 0-based; labels are event seqs)` |
117
- | `write dvc://ast_grep`(非 JSON) | `dvc:// write dispatch: device "ast_grep" requires a JSON args payload (Unexpected token 'h', "this is not json" is not valid JSON)` |
118
- | `dvc://lsp`(action 缺失 / 二进制缺失) | 先 `unknown action null — expected "diagnostics", "definition", "references", "hover", or "format"`;补 `action` 后 → `language server binary "typescript-language-server" not found … — npm install -g typescript-language-server typescript` |
119
- | `dvc://browser`(action 缺失) | `unknown action null — expected "open", "run", or "close"` |
120
-
121
- ### 3.8 临时物化无残留
122
-
123
- `grep` 对 `dsh://docs/subsystems/slots.md` 的搜索把内容物化到 `/dev/shm/dashr-url-c2cNM0/content.txt` 后由 `finally` 清理;收尾核 `/dev/shm` 已空。符合 `tools/materialize.ts` 的设计(shm 优先、>8 MiB 回退 `os.tmpdir()`)。
124
-
125
- ---
126
-
127
- ## 4. `dvc://` 写路径的真执行证据(核心)
128
-
129
- ### 4.1 `ast_edit`(`dryRun:false`)真实落盘
130
-
131
- 目标 scratch 文件(写前):
132
-
133
- ```js
134
- export function greet(name) {
135
- return `hello ${name}`
136
- }
137
-
138
- export function farewell(name) {
139
- return `bye ${name}`
140
- }
141
- ```
142
-
143
- 调用:
144
-
145
- ```json
146
- {"ops": [{"pat": "export function farewell($N) { $$$B }",
147
- "out": "export function goodbye($N) { $$$B }"}],
148
- "paths": ["/home/u1/workspaces/dashr/.scratch/dvc-scheme-test.js"],
149
- "dryRun": false}
150
- ```
151
-
152
- 回读(写后):
153
-
154
- ```js
155
- export function greet(name) {
156
- return `hello ${name}`
157
- }
158
-
159
- export function goodbye(name) { return `bye ${name}` }
160
- ```
161
-
162
- → 函数名改写 + ast-grep 单行重排均落盘,**证明这是真执行而非空转**。(该 scratch 文件在收尾时已删除。)
163
-
164
- ### 4.2 `ast_grep` 结构化输出(经 eval pad 取得)
165
-
166
- ```json
167
- { "totalMatches": 143, "filesWithMatches": 28, "filesSearched": 162,
168
- "limitReached": true,
169
- "matches": [ { "path": "../../dashr/src/url-schemes/vendored/hashline/contract.js",
170
- "text": "export function isNormalizedEdit(input) { … }",
171
- "byteStart": 775, "byteEnd": 877, "startLine": 15, "startColumn": 1,
172
- "endLine": 17, "endColumn": 2 }, … ],
173
- "parseErrors": [ "…: url-schemes/vendored/devices/lsp/defaults.json: GenericFailure, Invalid pattern: Multiple AST nodes are detected…" ] }
174
- ```
175
-
176
- (`parseErrors` 出现在 `patterns` 含多节点模式时,属预期:该 pattern 在 JSON 文件上不成立。)
177
-
178
- ### 4.3 `dvc://` 首段寻址
179
-
180
- `read dvc://browser/ignored-sub` → 仍返回 browser 设备文档,证实 `catalog.ts` 所述"`dvc://` 只按第一段寻址,尾部 `/sub` 被解析后丢弃"。
181
-
182
- ---
183
-
184
- ## 5. 遗留与建议(按优先级)
185
-
186
- 1. **【建议改码】`dvc://` 设备 payload 进渲染文本**(§3.1)——否则 `ast_grep`/`lsp`/`browser` 对模型是"看得见工具、看不见结果"。当前唯一绕行 = 在 `eval` cell 内 `await tool.write(...)` 取 `after`。
187
- 2. **【建议改码或订正注释】`glob` 的 `dsh://docs` path 分支**(§3.4)——头注声称 path-backed,实际 content-backed 空转。
188
- 3. **【建议改码】目录列表上的 `?q=`**(§3.3)——静默失效,至少应给提示。
189
- 4. **【文档】`skill://` 按 frontmatter 名寻址**、**`agent://` label 含 `:` 需用原始 id**(§3.2/§3.5)——两条最易踩,建议进 `agent://`/`skill://` 的模型面说明或错误信息附提示。
190
- 5. **【无需动作】** `http(s)` 私网拒绝、`ctx://` 只读、`dvc://` 尾段丢弃、临时物化清理——均为设计内行为,已复核无异常。
191
- 6. **【未覆盖】** 本轮未测:`dvc://lsp` 的 `definition/references/hover/format` 成功路径(缺 `typescript-language-server`,仅验到报错分支)、`http(s)` 的重定向/压缩/大响应物化、`ctx://` 分片(compaction 后多 segment)形态。留待后续按需补测。
192
-
193
- ---
194
-
195
- ## 附:证据来源
196
-
197
- - 全部返回值取自本 session(`session-92ef9c82…`)在 `DSH_HOME=/home/u1/workspaces/dashr/.dsh-test` 下的活体调用;`ctx://session/tool_calls[n]` 事后可回放本轮每一次调用与其结果。
198
- - 源码核验:`dashr/src/url-schemes/{catalog,selector,resolver,index}.ts`、`handlers/{agent,ctx,dsh,dvc,skill,http}.ts`、`tools/{read,write,grep,glob,materialize}.ts`、`vendored/devices/ast/ast-device.ts`、`vendored/devices/browser/browser-device.ts`。
@@ -1,246 +0,0 @@
1
- # hashline:false 配置下 URL scheme 可达性的**工具面不对称** — 实测报告
2
-
3
- - 日期:2026-09-13
4
- - 被测对象:`dashr/src/url-schemes/` 七类 URL scheme(`skill://`、`agent://`、`dsh://`、`ctx://`、`dvc://`、`http(s)://`)在**当前活体配置**下的 `read`/`grep`/`glob`/`write` 行为。
5
- - 被测运行时:**本 agent 自己所在的活体实例** —— `dsh web` @ `http://127.0.0.1:4999`,`DSH_HOME=/home/u1/workspaces/dashr/.dsh-test`,`DSH_SESSION_ID=session-1ae1181e-abb7-4d59-939e-f5e0400a4258`,cwd `/home/u1/workspaces/dashr`。
6
- - 方法:**第一人称实测**。全部调用由本 agent 在真实 runtime 中发出(`read`/`grep`/`glob`/`write` 工具),无静态推断。被观测返回值原文摘录于 §3。
7
- - change:无(系统冒烟,非某 change 的验收)。
8
- - 关联:`2026-09-12-fs-scheme-resolution-实测报告.md`、`2026-09-12-url-schemes-六scheme冒烟与边界实测报告.md`(差异见 §5)。
9
-
10
- ---
11
-
12
- ## 0. 结论速览
13
-
14
- | 判定项 | 结果 |
15
- |---|---|
16
- | `dsh://` / `dvc://` / `http://` 在 `read` 上可达 | ✅ |
17
- | `skill://` 在 `read` 上 | ✅ **已收口(2026-09-13 user 裁决后返工)**:不再查 registry——`isSessionLayerScheme` 在 `wrap.ts` 与 `sandbox-plugin.ts` 双处纳入 `skill://`,直接抛结构化 `CTX_SESSION_LAYER` 边界错误,文案可执行(指 `skill` 工具 / `grep`,`glob path=skill://…`);活的假 "unknown" 消失,`sessionCwd`/`scopedAwareSkills`/`URL_SKILL_NOT_INVOCABLE_SCOPE` 死代码在 src/副本/活体 bundle 全 0 命中(user 第二轮亲自复验) |
18
- | `https://` 在 `read` 上可达 | ✅ 已修(`HTTP_SCHEMES` 循环登记)并两轮复验存活 |
19
- | 同一批 scheme 在 `grep`/`glob` 上可达 | ✅ `ctx://`、`agent://`、`skill://`、`https://` 全部可达(§2、§3) |
20
- | 根因 | **`hashline:false` 使 DASHR 的 `read` 包装不安装 → `read` 退化为平台原生工具 → 只剩 FS 层 resolver;`grep`/`glob`/`write` 包装仅由 `urlSchemes` 门控,仍在场 → 走工具层 resolver** |
21
-
22
- **一句话**:不是 scheme 坏了,是**同一实例里 `read` 与 `grep`/`glob`/`write` 分属两套 resolver**。`hashline:false` 配置下,会话型(`ctx://`/`agent://`)只经 `grep`/`glob` 抵达,`read` 是死的;`https://` 更因 FS 层只登记了 `http` 而整条断掉。
23
-
24
- > **2026-09-13 收口更新(user 第二轮复验确认)**:`https://` 已修(两轮活体存活);`skill://` 按业务逻辑归属裁决重分类为会话型边界(§4 P1-skill 处置块),行为收窄(全局技能亦不在 FS 层解析)但文案已指替代路径,`grep`/`glob` 回退复验通过。
25
- ---
26
-
27
- ## 1. 环境与配置锚定
28
-
29
- ### 1.1 配置来源(profile 层唯一)
30
-
31
- `.dsh-test/profiles/web/cordis.patch.yml`(0.1.5-rc.2 无 home patch 层,故 `.dsh-test/cordis.patch.yml` 空):
32
-
33
- ```yaml
34
- - id: dashr-repl
35
- config:
36
- python: !!js process.env.DASHR_KERNEL_PYTHON ?? 'python3'
37
- snapshotDir: /home/u1/workspaces/dashr/.dsh-test/snapshots
38
- hashline: false # ← 关键
39
- urlSchemes: true
40
-
41
- - id: fs-sandbox
42
- name: './node_modules/better-dsh/lib/fs-aware/sandbox-plugin.js'
43
- config:
44
- urlSchemes: true
45
- ```
46
-
47
- ### 1.2 活体日志佐证
48
-
49
- `.scratch/dsh-4999.log`(每个 session-start 一行):
50
-
51
- ```
52
- DEBUG-INSTALL gates: {"urlSchemes":true,"hashline":false}
53
- ```
54
-
55
- ### 1.3 工具面身份判定(决定性)
56
-
57
- 当前 `read` 工具**不是** DASHR 的 URL-aware read:
58
-
59
- | 证据 | 值 |
60
- |---|---|
61
- | 工具入参名 | `file_path`(DASHR 包装用 `path`,见 `url-schemes/tools/read.ts:92`) |
62
- | 输出形态 | 行号前缀 `N: content`(DASHR 包装 scheme 分支返回原文、文件分支返回 `HASH│content`) |
63
- | 包装注册门 | `url-schemes/index.ts:188` `if (gates.hashline) { …register(createReadTool…) }` → `hashline:false` 即不注册 |
64
- | 注释自证 | `index.ts:158-159`:**"`hashline: false` → read wrapper 不安装(captured 原生 read 独立站立,scheme 解析由挂载的 FS 后端承担)"** |
65
-
66
- `grep`/`glob`/`write` 的注册门是 `urlSchemes`(`index.ts:197`、`266-268`),故**仍在场**,走工具层 resolver。实测 `write dsh://config` 报的是 `url-schemes/tools/write.ts:130` 的文案、`write dvc://ast_grep` 成功派发,均可交叉印证工具层包装在场。
67
-
68
- ### 1.4 两套 resolver 的登记差异(根因表)
69
-
70
- | resolver | 构造点 | 登记 schemes | 环境字段 |
71
- |---|---|---|---|
72
- | **工具层**(read/grep/glob/write 包装消费) | `url-schemes/index.ts:283-328` | `skill`、`agent`、`dsh`、`dvc`、`ctx`、**`HTTP_SCHEMES = ['http','https']`** | `{ agent, cwd, rawUrl }`(`tools/read.ts:119-121`、`tools/grep.ts:69`) |
73
- | **FS 层**(原生 read/grep/glob 经 `ctx.fs` 消费) | `fs-aware/wrap.ts:49-59` | `skill`、`dsh`、`dvc`、**仅字面 `http`** | 仅 `{ fs, rawUrl }`(`wrap.ts:81`,**无 agent/cwd**) |
74
- | **FS 层会话型守卫** | `wrap.ts:37-46`、`99-115` | `ctx://`/`agent://` → 结构化 `CTX_SESSION_LAYER` | — |
75
-
76
- 两处差异直接产生全部四个失败:`https` 未登记、`ctx`/`agent` 被守卫、`skill` 缺 `cwd`+`scope`。
77
-
78
- ---
79
-
80
- ## 2. scheme × 工具 可达性矩阵
81
-
82
- (✅ 实测可达;❌ 实测失败;`—` 本轮未测)
83
-
84
- | scheme | `read`(原生 / FS 层) | `grep`(工具层) | `glob`(工具层) | `write`(工具层) |
85
- |---|---|---|---|---|
86
- | `dsh://` | ✅ 列表/配置/选择器 | ✅(`path: dsh://docs` 命中 4 行) | ✅(`dsh://docs/subsystems` → 116 文件) | ❌ 只读(`tools/write.ts:130`) |
87
- | `dvc://` | ✅ roster + 各设备文档 | — | — | ✅ 三设备真派发(`ast_grep`/`ast_edit`/`browser`) |
88
- | `http://` | ✅(`example.com` 抓回) | — | — | ❌ 只读 |
89
- | `https://` | ❌ **未登记** | ✅(`example.com` 命中) | — | — |
90
- | `skill://` | ❌ **unknown** | ✅(`book-to-skill` 命中 560 行/约 130 文件) | ✅(全部文件路径列出) | ❌ 只读 |
91
- | `ctx://` | ❌ **边界错误** | ✅(`user_prompts[0]` 命中本轮首条 prompt) | — | — |
92
- | `agent://` | ❌ **边界错误** | — | ✅(物化到 `/dev/shm`) | — |
93
-
94
- `dsh://` 选择器四形态在 `read` 上全通:`:N-M`、`:raw`(与 `:raw:N-M` 等价)、`:path/agent-loop`、`?q=`。
95
-
96
- ---
97
-
98
- ## 3. 原始观测(判定依据,原文摘录)
99
-
100
- ### 3.1 `read` 侧四个失败
101
-
102
- ```
103
- read dsh://docs → ✅ 251 条文档索引
104
- read dsh://config:path/agent-loop → ✅ {"maxParallelToolCalls":10}
105
- read dsh://docs/tool-catalog.md?q=ui-deliverables → ✅ 过滤命中 1 行
106
-
107
- read skill://book-to-skill → ❌ skill "book-to-skill" is unknown or no longer available
108
- read skill://book-to-skill/SKILL.md → ❌ 同上(子路径无效,仍是 registry 查无此名)
109
- read ctx://session/transcript:1-8 → ❌ CTX_SESSION_LAYER: session-layer scheme — read it through the read tool (…)
110
- read ctx://session/compactions → ❌ 同上
111
- read agent:// → ❌ 同上
112
- read https://example.com → ❌ no handler registered for scheme "https" (registered: dsh, dvc, http, skill)
113
- ```
114
-
115
- 后者的 `registered: dsh, dvc, http, skill` 是 **FS 层 resolver 的登记表**,直接坐实 `read` 走的是 FS 层。
116
-
117
- ### 3.2 `grep`/`glob` 侧全通(反证)
118
-
119
- ```
120
- grep path=skill://book-to-skill pattern=^# → ✅ 560 matches(真实落到 .agents/skills/book-to-skill/*)
121
- glob path=skill://book-to-skill pattern=* → ✅ 约 130 条文件路径
122
- grep path=ctx://session/user_prompts[0] pattern="test your tools"
123
- → ✅ 1 match:/dev/shm/dashr-url-UTBpHR/content.txt:2
124
- grep path=https://example.com pattern="Example Domain"
125
- → ✅ 1 match:/dev/shm/dashr-url-NqMEfC/content.txt:3
126
- glob path=agent:// pattern=* → ✅ /dev/shm/dashr-url-6h2V9Y/content.txt
127
- ```
128
-
129
- 并可见 `ctx://` 选择器语法细节:集合下标是 **0-based 方括号**,标签为事件 seq:
130
-
131
- ```
132
- grep path=ctx://session/user_prompts pattern=… → ❌ ctx://…[]: no such element
133
- (collection "user_prompts" has 2 items, 0-based; labels are event seqs)
134
- ```
135
-
136
- ### 3.3 `write` 侧
137
-
138
- ```
139
- write dsh://config {…} → ❌ write to dsh:// is not supported (read-only scheme, or its write channel is not wired yet)
140
- write dvc://ast_grep {patterns:[…] path:/abs} → ✅ 结构化 payload 完整渲染(含 matches/totalMatches/parseErrors)
141
- write dvc://ast_edit {ops:[…] dryRun:true} → ✅ {"applied": false, …}(dryRun 生效,未落盘)
142
- write dvc://browser {"action":"open"|"close"} → ✅ {"ok":true,"url":"about:blank"} / {"ok":true}
143
- ```
144
-
145
- **`dvc://` 设备 payload 已被完整渲染进工具结果**(见 §5 与旧报告的差异)。
146
-
147
- ### 3.4 旁路发现
148
-
149
- 1. **`dvc://` 设备相对路径以服务端 cwd 为根,不是会话 workspace。** `path:"."` 全量搜了 monorepo checkout(6950 文件,返回 `../../dashr/src/...`);`path:"dashr/src"` 直接 `Path not found`;绝对路径才命中(163 文件)。设备 cwd = `upstream/deepseek-harness`。
150
- 2. **`ast_grep` 的 `export function $NAME` 形态静默 0 命中**,而 `function $NAME` 在同一路径命中 646。导出声明的 pattern 形态在本 vendored 实现下**不报错也不匹配**(部分语言另报 `Multiple AST nodes are detected`)。
151
- 3. **发布面残留调试日志**:`url-schemes/index.ts:154` 与 `:337` 仍有 `console.log('DEBUG-INSTALL …')`,并已在 4999 日志里逐 session 打印。
152
- 4. **会话指引与部署面不符**:本 session 收到的 URL scheme 指引把 `read` 描述为 `HASH│content` 锚点读;`hashline:false` 下实际是原生行号读。指引来源疑为 `renderGeneralSectionText()` / `generalSection()`(`index.ts:263`、`catalog.ts:135`),建议门控对齐。
153
-
154
- ---
155
-
156
- ## 4. 发现清单
157
-
158
- ### P1 — `https://` 在 FS 层未登记(一行修复,✅ 2026-09-13 复验存活)
159
-
160
- `fs-aware/wrap.ts:57` 写死 `resolver.register('http', createHttpHandler())`,而工具层正确循环 `HTTP_SCHEMES = ['http','https']`(`handlers/http.ts:45`)。`hashline:false` 时 FS 层是 `read` 的唯一路径 → `read https://…` 恒失败。修法:`buildFsLayerResolver` 同样 `for (const s of HTTP_SCHEMES) resolver.register(s, handler)`。skill:// 重分类重构后复验:`read https://example.com` 正常抓取(session 60418790)。遗留小项(与本次无关,记录在案):`read https://example.com:1-3` 这类**把行选择器写进 URL** 的形态会整串进 `new URL()` 报 invalid URL——http handler 不剥选择器后缀,dsh handler 剥(`dsh://docs:1-3` 正常);属探针写法与既有限制,非本次回归。
161
-
162
- ### P1 — `skill://` 在 FS 层丢失 agent/cwd(workspace 技能全不可见)
163
-
164
- `wrap.ts:81` 只给 `{ fs, rawUrl }`;`handlers/skill.ts:106-113` 的 `lookupOptions` 需要 `cwd` + `scope`,两者皆缺时 workspace 作用域技能层读作 absent → 全部 `unknown`。FS 层结构性拿不到 agent,所以要么把 skill 解析留在工具层、要么在 `hashline:false` 下补一条 scheme 呈现通道。
165
-
166
- > **处置(2026-09-13 user 裁决后重定方向,推翻本报告早前的"补通道"方案)**:第一版补通道(sessionCwd 配置 + scopedAware list 启发式)经活体证伪——dump-config 实证 **dsh-web-app bundle patch 在宿主层 disable 了 `skill-filesystem`/`tool-skill`**,web profile 全局层没有任何 skill provider,list 与 get 同空,启发式从未命中(A/B 活体:user-global 的 `skill://markitdown` 与 project 的 `skill://book-to-skill` 双双 `unknown`,session 8b6dcf85)。根因不是"缺 cwd",而是**技能加载路径解析(CWD/user-global/app 运行时根、扫描深度)是宿主 `dsh-skill-filesystem` 的业务逻辑**,FS 层不得自写近似版。最终处置:`skill://` 重分类为会话层 scheme,FS 层一律答 `CTX_SESSION_LAYER` 边界错误(指名原生 `skill` 工具);`sessionCwd` 配置整体移除;工具层 handler lookup 收敛为 `dsh-tool-skill` 的精确镜像。详见 `2026-09-12-fs-scheme-resolution-实测报告.md` §4d 与 change design.md §D6。
167
- >
168
- > **活体复验(session 37899b26 / bfa99754 / f12a206e / 60418790 / 029aa5bb,2026-09-13)**:`read skill://book-to-skill` → 结构化边界错误(指名原生 skill 工具);`read skill://markitdown:1-5` → 同(与技能名无关);**原生 `skill` 工具加载 `book-to-skill` 成功**(完整 `<skill_content>` + resourceBase);`grep path=skill://book-to-skill pattern=^#` → 560 matches(工具层通道完好);`read https://example.com` → 正常抓取(P1-a 存活)。
169
- >
170
- > **user 第二轮复验(2026-09-13,第一人称)**:lib 02:32 重建 → 02:33 重启;规范源与副本三文件逐字节一致;`https://` / DEBUG-INSTALL / gate 注释 / `skill://` 收口四项全过;`sessionCwd`、`scopedAwareSkills`、`URL_SKILL_NOT_INVOCABLE_SCOPE` 在 src/副本/**活体 bundle** 三面 **0 命中**;`grep path=skill://` 回退复验通过。user 点评:**"以承认边界替代假装能查"是对的**——上轮 `list({cwd})` 无 scope 读不到 workspace 技能(宿主 `SkillViewOptions` 明写 "omitted reads the global layer alone")本是不可达探针;定性为会话型比修探针干净。行为收窄代价(全局技能亦不在 FS 层解析)已被可执行文案覆盖。user 唯一未亲自引爆文案指向的原生 `skill` 工具(agent probe session f12a206e 已验加载成功)。
171
- >
172
- > **user 复验带出两处小瑕疵,本轮已修**:① `sandbox-plugin.ts` 的 `buildResolver` 有**重复的 `register('dsh', …)` 块**(改 skill 块时拼接失误;`register` 是 `handlers.set`,覆盖不抛错,纯死代码)且 `'http'` 仍是字面量未跟 `HTTP_SCHEMES` 对齐(当前非最外层故潜伏,挂载顺序一翻 https 即静默回归)→ **删除私有登记面,`buildResolver` 改为复用 `wrap.ts` 的共享 `buildFsLayerResolver`**(登记单源,双消费方永不再漂移;其 `ctx`/`agent` handler 在本类不可达——前置守卫先拦);② `url-schemes/index.ts` 两个同名 `export interface Config`(sessionCwd 增删残留)→ 并回一个。单测断言同步:https 注册性检查改为网络无关(成功/取数失败皆证登记,唯 "no handler" 才是回归)。收口烟测(session 0335526e,重启后):`skill://` 边界 / `https://` 抓取 / `dsh://docs:1-3` 三连全过;回归 vitest 489/14 基线族、tsc 13、openspec valid。
173
-
174
- ### P2 — `hashline:false` 下会话型 scheme 无 `read` 通道,且注释与事实不符
175
-
176
- `index.ts:288-290` 声称 *"Session-layer schemes (ctx://, agent://) answer the structured boundary error here; **the read tool's scheme branch keeps serving them with the calling agent's context**"* —— 该 "read tool's scheme branch" 只在 `hashline:true` 时存在。`hashline:false` 下 `ctx://`/`agent://` 在 `read` 上无任何通道(`grep`/`glob` 可用,但那是另一个工具面的补偿,不等于 read 通道)。注释与 `index.ts:158-159` 的 gate 说明应统一。
177
-
178
- ### P2 — 发布前清理 `DEBUG-INSTALL` 调试 `console.log`
179
-
180
- `url-schemes/index.ts:154`、`:337`。
181
-
182
- ### P3 — `ast_grep` 导出形态 pattern 静默漏报
183
-
184
- 建议在设备文档或实现里显式声明支持的 pattern 形态(或对 0 命中且 pattern 含 `export ` 时给出提示)。
185
-
186
- ### P3 — `dvc://` 设备根目录与会话 workspace 不一致
187
-
188
- 易误伤脚本化调用(相对路径静默落到别的树)。建议设备文档写明"相对路径以服务端 cwd 为根",或与 `ctxFsIO` 的 workspace 对齐。
189
-
190
- ### P3 — 会话指引把 `read` 描述为 `HASH│content` 锚点读,`hashline:false` 下实为行号读
191
-
192
- `url-schemes-instruction.md`(owner 维护)对 read 输出的描述按 hashline 锚点语义书写;`hashline:false` 活体下 read 实际返回行号形式。建议按 gates 加一句条件说明(2026-09-13 复核:三项 P3 均无变化、未复测,挂账)。
193
- ---
194
-
195
- ## 5. 与既有报告的差异(待对齐)
196
-
197
- | 项 | 既有报告 | 本轮观测 | 研判 |
198
- |---|---|---|---|
199
- | `read` 上六 scheme 全可达 | `2026-09-12-url-schemes-六scheme冒烟与边界实测报告.md` §0:**✅ 6/6** | `read` 上 `ctx`/`agent`/`skill`/`https` **全 ❌** | **两次实测的 `gates` 不同**:该报告应以 `hashline:true`(DASHR read 包装在场)跑出;本轮为 `hashline:false`。二者不矛盾,但结论必须带配置标签——"六 scheme 可达"仅在 `hashline:true` 成立 |
200
- | `glob` 的 URL-in-`path` 分支在 `dsh://docs` 失效 | 同上 §0:⚠️ 失效 | ✅ 正常(`glob path=dsh://docs/subsystems` → 116 文件) | 疑似已修或与 `hashline` 门控相关,建议复测后销项 |
201
- | `dvc://` 设备 payload 在渲染面丢失 | 同上 §0:❌ 缺口(只输出 `Executed dvc://<device>`) | ✅ payload 完整渲染(§3.3) | **该缺口在当前构建已不复现**,建议销项 |
202
- | FS 层 = dsh/dvc/http(s),会话型(含 `skill://`)走边界错误 | `2026-09-12-fs-scheme-resolution-实测报告.md` §1/§2(D2) | 一致(skill 已并入会话型族) | ✅ 与本轮 §1.4 吻合;**2026-09-13 起 FS 层登记面 = dsh/dvc/http/https(`HTTP_SCHEMES` 共享 builder),`skill://` 归入会话型边界** |
203
- | `skill://` 假 "unknown"(本报告 §1.4/探针清单) | —(本报告当时的活体事实) | **✅ 已消灭**:user 第二轮复验(2026-09-13)——规范源/副本/活体 bundle 三面逐字节核验,`sessionCwd`/`scopedAwareSkills`/`URL_SKILL_NOT_INVOCABLE_SCOPE` 全 0 命中;活体 `read skill://…` 恒答可执行边界文案 | **按业务逻辑归属裁决返工**(`4c21c94` + 本轮清理):技能路径解析/扫描深度属宿主 `skill-filesystem`,插件不再自写近似版;user 唯一未亲自引爆的是文案指向的原生 `skill` 工具本身(agent 前序 probe session f12a206e 已验:完整 `<skill_content>` 加载成功) |
204
-
205
- **建议**:两份 09-12 报告在标题或结论处补注其 `gates.urlSchemes/hashline` 取值,否则后来者会据"6/6"误判 `read` 可用性。
206
-
207
- ---
208
-
209
- ## 6. 未覆盖面(诚实声明)
210
-
211
- - `grep` 未测 `dvc://`、`agent://`、`http://`;`glob` 未测 `ctx://`、`http(s)://`、`dvc://`(矩阵中以 `—` 标注)。
212
- - `write` 仅测 `dvc://`(三设备)与 `dsh://`(只读拦截);未测 `ctx://`/`agent://`/`skill://` 写拦截的具体错误分类器。
213
- - 未测 `hashline:true` 组合作对照(本轮无该实例),故 §5 的"配置差异"为**推断**,需一次 `hashline:true` 复跑坐实。
214
- - 未测 `skill://` 的**全局(非 workspace)技能**路径——它们可能不依赖 cwd,若存在则 FS 层 `skill://` 并非全灭。
215
- - 未覆盖工具:`eval` 桥(`await tool.*` 内调用 scheme)、`present`、`subagent`、`workflow`、`agent_message`、`web_search`、`web_fetch`、`goal_*`、`todo_write`、`ask_user_question`。
216
- - 未做 `tsc`/`vitest`——本轮是活体冒烟,非 change 验收。
217
-
218
- ---
219
-
220
- ## 附:探针清单(可复现)
221
-
222
- ```
223
- # read(原生 / FS 层)
224
- read dsh://docs
225
- read dsh://config:path/agent-loop
226
- read dsh://docs/tool-catalog.md?q=ui-deliverables
227
- read skill://book-to-skill # ❌ unknown
228
- read ctx://session/transcript:1-8 # ❌ CTX_SESSION_LAYER
229
- read agent:// # ❌ CTX_SESSION_LAYER
230
- read https://example.com # ❌ unregistered
231
- read http://example.com # ✅
232
-
233
- # grep / glob(工具层)
234
- grep path=dsh://docs pattern=trustedHosts
235
- glob path=dsh://docs/subsystems pattern=*.md
236
- grep path=skill://book-to-skill pattern='^#'
237
- grep path=ctx://session/user_prompts[0] pattern='test your tools'
238
- grep path=https://example.com pattern='Example Domain'
239
- glob path=agent:// pattern='*'
240
-
241
- # write(工具层)
242
- write dvc://ast_grep {"patterns":["function $NAME"],"path":"/home/u1/workspaces/dashr/dashr/src","limit":3}
243
- write dvc://ast_edit {"ops":[{"pat":"console.log($$$A)","out":"logger.info($$A)"}],"paths":[…],"dryRun":true}
244
- write dvc://browser {"action":"open","url":"about:blank"} ; write dvc://browser {"action":"close"}
245
- write dsh://config "nope" # ❌ read-only
246
- ```
@@ -1,50 +0,0 @@
1
- # 2026-09-13-preact-ui-shell 实测报告
2
-
3
- - change: `2026-09-13-preact-ui-shell`(openspec valid)
4
- - 依据: `~/workspaces/superd/apps/ui-preact` PoC(2026-09-09,0.1.3-alpha.2 + superd 伺服路径)
5
- - gates: 测试线 4999,`urlSchemes:true + hashline:false + preact shell build`
6
- - 结论先行: **shell 渲染引擎已换 Preact**(只 preact,无 @preact/signals——user 2026-09-13 裁决),全上游 UI 语料零改动获得 Preact 渲染;shell index chunk **555,959 → 434,173 B(−21.9%)**;浏览器级 A/B 实测挂载面与 stock 完全一致。
7
-
8
- ## 1. 改动面(全部属 monorepo 本地 patch,不入 upstream git)
9
-
10
- | # | 改动 | 说明 |
11
- |---|---|---|
12
- | 1 | `apps/web/vite.config.ts` `resolve.alias` +5 条 | react / react/jsx-runtime / react/jsx-dev-runtime / react-dom / react-dom/client → preact/compat 家族(regex 锚定,防 `react-dom` 先命中 `react`) |
13
- | 2 | 同文件 `resolve.dedupe` + `'preact'` | dedupe 条目从本包 node_modules 解析——**缺它必挂**:seed importer 在 `packages/client/web/lib`,node 向上走看不到 `apps/web/node_modules/preact`(报 `Could not load preact/compat`) |
14
- | 3 | `apps/web/package.json` devDeps + `preact@10.29.8` | 精确 pin 对齐 PoC;仅 devDep,发布面无它 |
15
- | 4 | `vendor/{AGENTS,CLAUDE,README}.md` → `vendor/docs/` | **根除 `vendor/CLAUDE.md` ENOTDIR/exit 236 老坑**(见 §4) |
16
-
17
- AGENTS.md §二 harness 本地 patch 已记档(换 tag 需重放)。
18
-
19
- ## 2. 体积(实测)
20
-
21
- | chunk | stock | preact build | Δ |
22
- |---|---|---|---|
23
- | `index-*.js`(react 家族 rides index) | 555,959 B | 434,173 B | **−121,786 B(−21.9%)** |
24
- | `vendor-*.js`(react-free,katex/shiki/markdown 管线) | 740,575 B | 740,575 B | 0(设计内) |
25
-
26
- ## 3. 浏览器级 A/B 验证(playwright,同脚本双跑)
27
-
28
- | 断言 | stock React build | preact build |
29
- |---|---|---|
30
- | UI 语料挂载(侧栏/会话列表/Settings/输入框文本) | ✅ 全 | ✅ 全(逐字一致) |
31
- | `#root button` 数 | 31 | 31 |
32
- | composer(textarea/contenteditable) | 1 | 1 |
33
- | console.error | 0 | 0 |
34
- | shell 内 react-dom 痕迹 | **`version:"18.3.1", rendererPackageName:"react-dom"` banner 在 shell** | **无**(唯一 `react-dom` 字串 = 平台模块种子表键 `{react:Y3, "react-dom":Y3, ...}`——同一个 preact 实例登记两个平台词,设计终态) |
35
- | pageerror | slot 重复注册 ×1 | slot 重复注册 ×1 |
36
-
37
- **pageerror 定责(A/B + 发布前验尸修正)**:`settings.general.item` slot id `compaction-tuning` 重复注册在 **stock 上同样存在**(factory id `Ba` vs `f5` 仅 minified 差异)→ 与渲染引擎无关。**根因(publish 前验尸确认)**:canonical 树里有一份**未提交的半成品 compaction-tuning 吸收工作**(`src/compaction/` + `installCompactionTuning` 接线,随 rsync 进入 4999 副本),与 `.dsh-test` profile 仍挂着的 local-plugin 版 compaction-tuning **同 id 注册两次**——两因叠加。该半成品已 `git stash`(带说明消息)移出 0.2.3-e 发布内容,续作时须先摘除 profile 的 local-plugin 行再合入。`better-dsh/client.js` 内的 `react-dom` 匹配为 pnpm 依赖路径字符串(`@tanstack+react-virtual@…_react-dom@18.3.1…`),stock/preact 两面同在,非本体。
38
-
39
- **user 未亲自引爆项声明**:深交互面(聊天流式渲染、shiki 高亮、markdown 管线)未逐项人工过——零 console.error 为强信号非穷尽证明(PoC 同款边界声明)。
40
-
41
- ## 4. 顺带根除:`vendor/CLAUDE.md` ENOTDIR/exit 236 老坑
42
-
43
- `vendor/` 根下三个文档文件(AGENTS/CLAUDE/README.md)撞 `pnpm-workspace.yaml` 的 `vendor/*` workspace glob:任何 workspace 枚举器读 `<条目>/package.json`——目录 ENOENT(容忍跳过),**文件 ENOTDIR(炸)**。历史受害面:`npm run build-client`(2026-09-03 记档)、本轮 `npx vite build`(exit 236、裸单行错误)。已移入 `vendor/docs/`(目录无 package.json → ENOENT 跳过)。换 tag 重放时记得同款处理。
44
-
45
- **新坑记档**:`pnpm add` 之后 `npx vite` 从根解析到 **vite 8/rolldown**(错误形态完全不同)——web 构建一律走 `pnpm run build:web`(workspace 内 vite 6.4.3)。
46
-
47
- ## 5. 范围裁决
48
-
49
- - **不入 better-dsh npm 发布物**:本 change 是测试线 monorepo 本地 patch。插件若要随发布把 Preact UI 带到 prod,必须附带 preact 前端 dist + web-runtime override 行(PoC 路径 B 已在 0.1.3-alpha.2 验证可行)——代价是 UI 语料冻结在 fork 点,且 prod host(0.1.3-alpha.2)与测试线(0.1.5-rc.2)语料版本错位。**该决定挂 prod host 升级门下,另行裁决。**
50
- - 因此本轮 npm alpha(0.2.3-e)的插件内容不含 Preact——发布内容 = url-schemes 系(skill:// 收口等)+ 本轮清理。
@@ -1,63 +0,0 @@
1
- # 4999 实测报告 — skill:// 空路径清单 + lsp gate/fan-out(2026-09-14)
2
-
3
- ## 被测构建
4
- - canonical:`dashr/dashr` @ `0da6a9f`(skill:// bare list)+ `84a98dc`(lsp parity stages 2/3/5)+ `3a94ce1`(stage 4)+ `7373d4e`(gate)
5
- - 部署:rsync → monorepo `packages/better-dsh/better-dsh`(tsdown + build-client)→ 4999 实例(unit `dsh-4999-test`,DSH_HOME=`.dsh-test`)重启后验证。
6
-
7
- ## 方法
8
- 真实 agent 会话(headless Chrome CDP 驱动 GUI,复用 `.scratch/cdp-chat.mjs`),会话 `session-3dc1ae5b`(workspace `--home-u1-workspaces-dashr--`),prompt 指示执行指定 tool call 并原样回报输出;tool result 从 session v3 jsonl(zstd)落账本取证。
9
-
10
- ## 结果
11
-
12
- ### 1. 裸 `skill://` → 可用技能清单 ✅
13
- `read skill://`(无名字)返回 cwd 范围技能目录(`N available skill(s):` + 逐条 `skill://<name> — <description> (use when: …)`),实际返回 11 条(book-to-skill … markitdown),与会话 skill catalog 一致。此前"returns nothing"的空白路径消除。
14
-
15
- ### 2. `write dvc://lsp {"action":"status"}` ✅
16
- 返回 `{"ok":true,"gate":"unasked"}` —— gate 动作走通,session id 由 write 分发器自动注入,agent 无需手填。
17
-
18
- ### 3. `{"action":"diagnostics","file":"<abs .ts>","all":true}` fan-out ✅
19
- ```json
20
- { "ok": true, "fanout": true,
21
- "servers": ["typescript-language-server","biome","eslint","denols","tailwindcss"],
22
- "diagnostics": [],
23
- "summary": "fan-out …/src/index.ts: 0 diagnostic(s) across 5 server(s) — …" }
24
- ```
25
- 5 个覆盖 .ts 的注册 server 全部被查询、合并、按 server 标注,无崩溃。
26
-
27
- ### 4. 结构化错误路径 ✅(负例)
28
- 相对路径 `dashr/dashr/src/index.ts`(相对 session cwd 不存在)→ 结构化 `file not found: <cwd>/…`,非崩溃非静默。
29
-
30
- ## 结论
31
- 本轮三项改动(skill:// 清单、lsp gate、fan-out 诊断)在 4999 真实运行时第一人称实测通过。单测侧:lsp-device 22 过、lsp-gate 5 过、skill.spec 17 过;tsc/构建绿。
32
-
33
- ## 遗留
34
- - 真实 language server 端到端诊断(安装 pyright/ts 后取非空诊断、didOpen/didSave 同步行号对齐)未覆盖——本机当时无 server 二进制,fan-out 返回 0 视为"无 server/干净"两可;待装齐后补测。
35
- - gate on 后的 warm-start/didOpen 预热延迟附挂路径需真实 server 才能观测。
36
-
37
- ## 追加实测(同日,commit 351d942)— dvc://lsp 读面
38
- - `read dvc://lsp/status`:同一会话先 `write {"action":"on"}` 后 read → `{"ok":true,"gate":"on"}` —— session 经 read env 注入生效,读面返回**调用会话**的 gate。
39
- - `read dvc://lsp/diagnostics?file=<abs>&all=1`:query 经 selector 还原为参数,fan-out 5 server 正常返回。
40
- - 写面保留 status 动作(与注入式分发对称),但查询的规范形式是读面。
41
-
42
- ## 追加(同日,commit 660fd4b)— 两个活体缺陷修复
43
- 1. **dvc://browser 被会话注入毒死**:dispatcher 把 `session` 塞进 args,browser device 严格 validator 报 `unknown field(s) "session"`。修复:session 改走 `execute(args, {session})` 带外传输(lsp gate 同步改读 ctx,兼容旧 in-args)。进程内实证:`dispatchDvcWrite('dvc://browser', open example.com, 'sess-1')` 真实启动 Chrome 并返回 `{"ok":true,...,"title":"Example Domain"}`。
44
- 2. **read 普通文件路径失败**:wrapper 参数只声明 `path`,被委托方(host 原生 read 要求 `file_path`)收不到参数报 missing required property;非 string 返回值又撞 wrapper 的 string 输出 schema。修复:参数声明双键别名;委托前按被委托方**声明的 schema** 适配键名(opaque schema 原样透传);非 string 结果 JSON 归一。三个委托形态(file_path 声明/path 声明/opaque)单测覆盖。
45
-
46
- ## 追加(同日,commit f53c609)— glob/grep URL 缺陷修复
47
- - `glob pattern="skill://grp/*"` 曾把带 glob 元字符的 URL 整体传给 ripgrep 当字面路径(rg exit 2)。修复:`splitUrlGlob` 在路径段首个元字符(`*?[`)处切分——URL 部分走 resolvePath,尾部 glob 作为 rooted pattern 应用在资源真实目录内。进程内对真实 skill 目录实证:`skill://grp/*` 与 `skill://grp/**/*.md` 均在目录内解析,不再报 No such file。
48
- - `grep path="skill://…"` 匹配路径改写回 URL 形式(绝对路径前缀改写 + 原生相对路径前置),模型看到 `skill://grp/SKILL.md` 而非内部磁盘位置。
49
- - url-schema spec 的 "glob with a URL in pattern … globs the resource's real disk directory natively" 场景现在对带元字符的 URL 同样成立。
50
-
51
- ## 追加(同日,commit 874edf2)— dsh://docs 指向上游官方文档
52
- - 官方 harness 文档语料(241 个 md,源自 deepseek-ai/deepseek-harness docs/,经 dsh-dev-skill 抓取)vendor 进包内 `dsh-docs/`,随 `files` 发布。
53
- - 解析顺序:显式 docsDir → `pkgRoot/dsh-docs` → `pkgRoot/docs` → `pkgRoot/../docs`;docs-dir 逐级上溯在每层先探 `dsh-docs`。
54
- - 4999 部署后实测:`dsh://docs` 索引返回 agent-lifecycle/api-gateway/architecture/… 官方语料清单。
55
-
56
- ## 追加(2026-09-15)— 外部调查四洞修复(commit 待填:本条 commit)
57
- 外部 owner 级调查确认四个洞,全部修复并在 4999 部署后实测:
58
- 1. **fan-out 死代码**:`obtainClient` 被提到 `all:true` 分支之前,primary 缺失时 fan-out 永不可达。修复:fan-out 提前分发(`diagnosticsFanOut` 独立函数),不再要求 primary client。
59
- 2. **fan-out 失败与干净不可分**:每 server 结果现带 `status: ok|missing|error`(`perServer` 数组),summary 明示 "missing (NOT clean): …" / "errors: …"。4999 实测:`perServer:[{typescript-language-server,ok},{biome,missing},{eslint,missing},{denols,ok},{tailwindcss,missing}]`。
60
- 3. **安装结果被丢弃**:`ensureMustHave` 的 `installServer` 结果现落入 `installFailed`(per-session),在 `status` 读面以 `installFailures` 呈现;成功安装后调 `clearCommandProbeCache` 清负探针缓存(修复负缓存永久误报)。
61
- 4. **must-have 只在 write 后触发**:新增 `lspGateEnsure`,read/query-first 路径同样触发后台安装。附加:`resolveCommandPath` 显式探测 `~/.local/bin`、`~/.cargo/bin`、`~/go/bin`(daemon PATH 被 scrub 后 npm -g 安装位置不可见——本次 user 手工 symlink 到 /usr/local/bin 的根因)。
62
- 5. **device summary 过期**("advertises 4, answers 11"):summary 改为完整动作枚举(read 面 + write 面)。
63
- 6. **status 读面扩充**:`availability`(每语言 command+available)、`liveServers`、(会话内)`gate`+`installFailures`。4999 实测:python/typescript/rust available=true、go=false,liveServers 两条。