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,111 +0,0 @@
1
- # Chapter 8: Internals — Module Graph & Core Pipelines
2
-
3
- ## Core Idea
4
- dsh's packages form a peer-dependency graph of *shared service instances*, wired at runtime by typed events and by a fixed three-waterfall tool-execution pipeline; two generated matrices (module graph, event producer–consumer matrix) tell you who owns an instance, who dispatches an event, and where policy inserts into a tool call.
5
-
6
- ## Frameworks Introduced
7
- - **Shared-instance dependency graph** (`pnpm run gen-module-graph`): peer deps among `@deepseek-ai/dsh-*` packages; edge `a --> b` = `a` requires `b` as a host-provided shared instance. Runtime deps and dev-only relations deliberately absent.
8
- - When to use: deciding which services a new package/plugin may consume, or which peers it must declare.
9
- - How: Mermaid chart grouped by `packages/<group>/<pkg>` (50 groups, ~790 edges, names omit `@deepseek-ai/dsh-`) or the table `Package | Group | Peer dependencies`.
10
- - **Event Producer–Consumer Matrix** (`pnpm run gen-doc-graphs`): every harness-owned event as `Event | Mode | Declared in | Dispatchers | Listeners`; types also cover contained dispatch sites that deliberately bypass `ctx.emit` (subagent lifecycle containment).
11
- - When to use: choosing a hook point, or auditing blast radius before changing an event payload.
12
- - How: Mode = contract, Dispatchers = owner, Listeners = insertion precedent; empty Listeners = open extension point.
13
- - **Tool Execution Pipeline**: fixed stage order from model `tool_call` to model-facing `tool/result` hosting policy, hooks, sandboxing, rewriting, observation, UI "without changing the loop".
14
- - When to use: adding approval, guards, timeout/retry, result post-processing, or tool UI.
15
- - How: listen on the right waterfall (`tools/pre-execute` → guards → `tools/execute` → `tools/post-execute`); all three may transform a call.
16
-
17
- ## Key Concepts
18
- - **Peer dependency**: a requirement for the host's shared instance; bundling your own copy breaks service identity.
19
- - **Event mode**: `emit` (broadcast), `waterfall` (value-transform chain), `serial` (ordered await), `parallel` (fan-out await).
20
- - **Monotonic guard**: registered deny-or-abstain check with protected identity, running after `tools/pre-execute` allow and before `tools/execute`; owner policy that must not be reordered lives here.
21
- - **`ctx.approval`**: one-shot user prompt resolving `ask` verdicts *before* monotonic guards; absent or unanswerable approver = deny.
22
- - **`ToolDefinition.finalizeContent`**: definition-owned last content-only invariant, synchronous, applied to a snapshotted result.
23
- - **Registry outer normalization**: the registry losslessly snapshots the candidate result; snapshot throws become `isError` so failures never escape the pipeline.
24
- - **`additionalContexts` FIFO**: active-batch extra contexts injected as user/message *after* recorded tool results.
25
- - **PTC sub-calls**: serialized sub-calls of the reserved `run_code` transport; carry the parent token, log `tool/code-dispatch`, return denials as binding rejections, omit `additionalContexts` to preserve call/result adjacency.
26
- - **`internal/*` events**: undeclared strings (`internal/dispatch`, `internal/plugin`, `internal/service`, `internal/status`) consumed by core machinery (loader, gateway, inspector) — not a public surface.
27
-
28
- ## Mental Models
29
- - Think of the module graph as a *sharing contract*, not an import graph: edges mark services you receive, never services you bundle.
30
- - Use the event matrix as a *bus map*: the dispatcher owns the stop; listeners are the passengers you ride with.
31
- - Think of tool execution as *fixed track, movable signals*: stage order never changes; you add behavior by listening at a waterfall.
32
-
33
- ## Anti-patterns
34
- - **Bundling a peer**: a second instance breaks shared identity; consume the host's copy.
35
- - **Putting reorder-sensitive owner policy in `tools/pre-execute`**: it can be bypassed/reshaped by other listeners; register it as a monotonic guard instead.
36
- - **Doing read-before-edit fs checks above `tool-fs`**: they stay below `tool-fs` on `fs/*` events.
37
- - **Reading `agent/status`/`whenIdle()` as "my follow-up finished"**: several queued follow-ups share one `running` interval; an owner must define its interval explicitly (durable inbox receipt → next whole-agent `idle`) and handle the "nothing to wait for" branch or hang.
38
-
39
- ## Code Examples
40
- ```ts
41
- // fs gates (dispatched by tool-fs / tool-str-replace-editor)
42
- ctx.waterfall('fs/write-intent', intent) // → fs-observation-policy
43
- ctx.emit('fs/observed', obs) // → fs-observation-policy, skill-filesystem
44
-
45
- // Both-sides contract: LlmAdapter vs LlmRuntime
46
- adapter.stream(): may throw OR emit finish { kind: 'error' | 'aborted' }
47
- runtime.stream(): model-request failures ONLY as terminal finish chunks
48
-
49
- // Dispose to quiescence
50
- registry.close(); proc.kill(); await done // close listeners BEFORE killing
51
-
52
- // Unlink link-shaped paths
53
- if (lstatSync(p).isSymbolicLink()) unlinkSync(p) // rmSync(junction) → ERR_FS_EISDIR
54
- ```
55
-
56
- ## Reference Tables
57
-
58
- ### Tool execution stages (exact order)
59
- | # | Stage | Notes |
60
- |---|---|---|
61
- | 1 | model tool-call block | assistant message contains tool-call |
62
- | 2 | `tool/call` session event | logged before execution |
63
- | 3 | UI pending card | `presentCall(args)` |
64
- | 4 | `tools/pre-execute` waterfall | hooks, permission, sandbox → allow / deny / ask |
65
- | 5 | `ctx.approval` (ask path) | one-shot; rejected/cancelled/unavailable → denied |
66
- | 6 | monotonic guards | deny or abstain; identity protected |
67
- | 7 | `tools/execute` waterfall | around-dispatch: timeout, retry, metrics |
68
- | 8 | tool `execute()` body | may fire fs gates + tool-owned events (`todo/write`, `fs/observed`, `hook/invoked`, `hook/result`, `tool/code-dispatch`) |
69
- | 9 | `tools/post-execute` waterfall | accept, block, replace, add context |
70
- | 10 | registry outer normalization | snapshot throws → `isError` |
71
- | 11 | `ToolDefinition.finalizeContent` | last content-only invariant |
72
- | 12 | `tools/result` emit | frozen authoritative outcome |
73
- | 13 | `tool/result` session event | single model-facing outcome; batch settled |
74
- | 14 | `additionalContexts` FIFO | injected after recorded tool results |
75
- | 15 | UI completed card | `presentResult(args, result)` |
76
-
77
- Throws from stages 4–9 route to stage 10; denied calls skip the body but still traverse `tools/post-execute`.
78
-
79
- ### Load-bearing events
80
- | Event | Mode | Dispatcher → listeners |
81
- |---|---|---|
82
- | `agent/pre-step` | waterfall | agent-loop → 15 pkgs (time-context, agent-instructions, plan-mode, hooks-*, tool-skill, tool-subagent…) |
83
- | `agent/request` · `agent/request-error` | waterfall | agent-loop → agent, webhook · compaction-basic, llm-retry |
84
- | `agent/turn-stopping` | serial | agent-loop → hooks-claude-code, hooks-codex |
85
- | `llm/stream` | waterfall | llm → agent-loop, llm-replay, session-checkpoint-policy, session-title |
86
- | `session/event` | emit | session → 27 pkgs (persistence, projection, telemetry, tools, server…) |
87
- | `session/flush` | parallel | session → session-persistence-jsonl, session-telemetry |
88
- | `system-prompt/assemble` | waterfall | system-prompt → agent, agent-presets |
89
- | `tools/pre-execute` · `execute` · `post-execute` | waterfall | tools → hooks-*, tool-jobs · session-checkpoint-policy, timeout-policy · spill-policy, repeat-tool-reminder, tool-fs-search |
90
- | `fs/write-intent` · `fs/edit-intent` | waterfall | tool-fs, tool-str-replace-editor → fs-observation-policy |
91
- | `approval/request` | waterfall | user-approval → acp, remotes |
92
- | `webserver/index-inject` | emit | webserver → inspector, modules |
93
-
94
- ### Shared-instance hubs (fan-in, ~790 peer edges)
95
- `session` (92) > `llm` (83) > `agent` (64) > `tools` (42) > `invariants` (34) > `system-prompt`/`session-projection` (29) > `scope` (21). Top consumers: `api-session-controller` (26 peers), `subagent` (19). `llm` has zero outgoing peers (pure foundation); `tools --> agent` but not reverse; `session --> scope` only.
96
-
97
- ## Key Takeaways
98
- 1. Read the peer graph before adding a dependency — an edge means "require the host's shared instance", and fan-in hubs (session, llm, agent, tools) are the services everyone shares.
99
- 2. Pick event hooks by matrix lookup, not guesswork: Mode defines the contract, Dispatchers define the owner, empty Listeners mark open extension points.
100
- 3. Insert tool policy only at its designated waterfall; keep order-sensitive rules as registered monotonic guards, with `ctx.approval` resolving asks before guards.
101
- 4. Normalize both sides of every public contract (adapter throws vs runtime terminal finish chunks) and report orthogonal outcome flags (`timedOut`, `signal`, `exitCode`) independently.
102
- 5. Teardown must reach quiescence: close listener registries before killing, then `kill → await done`; dispatch loops must contain listener exceptions.
103
- 6. Scrub env (`*KEY*/*SECRET*/*TOKEN*/*PASSWORD*`) and use 0700 dirs + random `'wx' 0o600` files around untrusted output; unlink — never recursively delete — link-shaped paths.
104
-
105
- ## Connects To
106
- - **Ch 4**: peer = shared Cordis service instance; duplicate-identity errors.
107
- - **Ch 6**: the package groups/layers the graph visualizes.
108
- - **Ch 7**: the event matrix is the canonical capability-seam inventory.
109
- - **Ch 14**: agent-loop as chief dispatcher of `agent/*` events.
110
- - **Ch 15**: tool-execution subsystem detail behind the stage table.
111
- - **Ch 17**: `LlmAdapter`/`LlmRuntime` failure contract.
@@ -1,106 +0,0 @@
1
- # Chapter 9: API Gateway & LLM Wire Extensions
2
-
3
- ## Core Idea
4
- dsh exposes Host business logic to the Client through the **Typert API Gateway**: `@Remote`/`@RemoteScope` decorators select unary service methods, the build generates strict Host+Client contracts, and calls reuse the Connection RPC over `POST /api/<namespace>/<method>`. Separately, `@deepseek-ai/dsh-llm-deepseek` adds DeepSeek-specific HTTP headers and additive request-body fields (`dsh_plugin_packages`, `dsh_session_log`) that never enter model input.
5
-
6
- ## Frameworks Introduced
7
- - **Typert API Gateway**: unary-only Remote-method bridge. Layers run `remotes → gateway → connection → webserver`; `packages/api` holds BFF+Typert, `packages/client/connection` and `packages/host/webserver` hold transport.
8
- - When to use: any Host service method a browser/SDK client must call with one request → one result.
9
- - How: mark methods `@Remote`/`@RemoteScope`, extend `TypertRemoteService`, generate contracts, mount via `api-remotes`, call `ctx.remote.<namespace>.<method>(...)`.
10
- - **`@Remote`**: calls a Cordis service registered on the root Host Context. Host objects (e.g. `Agent`) cannot cross the wire — declare a `TypertLookupMap` so a parameter `agent` becomes an `agentId` wire field the Gateway resolves back to the object.
11
- - **`@RemoteScope(key)`**: resolves an identity to a scoped Context via `ctx.typert.contexts`, gets the service from that Context. Use when the method depends on scoped composition and needn't receive objects like `Agent` explicitly.
12
- - **`TypertRemoteService` / `bindTypertRemote(this, serviceKey)`**: explicit service-key + namespace binding (no compiler-injected symbol). `bindTypertRemote` for services with another base class.
13
- - **Strict generation pipeline**: root build runs `build:lib:host` → `build:lib:client` → `build:web`. Host pass = `tsc -b tsconfig.host.json` then `tsdown --env.DSH_BUILD_FACE host` (runs Typert generator); Client pass = `tsc -b tsconfig.client.json` + `tsdown --env.DSH_BUILD_FACE client`, consuming generated artifacts without restarting Typert.
14
- - **SRC development fallback**: `node --import tsx/esm` skips the Typert compiler; decorator initializers still record a versioned descriptor so the Gateway builds a weaker descriptor with no `ts.Program`. Solves Host dispatch from source only — Client still refuses SRC descriptors lacking strict codecs.
15
- - **`DeepSeekLlmApiExtensionRegistry`**: one provider per top-level extension name; empty/padded names, duplicate registrations, and collisions with the base request fail before HTTP dispatch.
16
- - **Body-extension transaction**: serialize base body (incl. exact `messages`) → ask registered providers to `prepare()` fields → merge as top-level siblings → on HTTP 2xx run `accept()` before reading SSE. No registry = unextended base body sent.
17
-
18
- ## Key Concepts
19
- - **`ctx.remote.<namespace>`** (root) / **`agentCtx.remote.<namespace>`** (scoped): concrete Client functions on ordinary objects; each namespace is a traced Cordis child Service registered as `remote.<namespace>`, mounted through `ctx.remote.$mount()`.
20
- - **`TypertLookupMap`**: wire-identity association for complex Host params; `ctx.typert.lookups.register()` = declaration+default resolver, `.configure()` = async Host-composition override scoped to an effect lifetime.
21
- - **`api-remotes` assembly**: only `@deepseek-ai/dsh-api-remotes` is assembled; it imports business packages' `/remote` subpaths, mounts contributions, re-exports declaration merges. Host-method surface = only what's selected at generation time.
22
- - **`/api` route**: Client calls `connection.rpc.call('/api', '<ns>/<method>', { args }, signal)` → `POST /api/<ns>/<method>` with `{ args }`. Gateway claims only two-segment endpoints with a strict descriptor or SRC marker; other requests 404.
23
- - **Wire namespaces**: HTTP fields = lowercase kebab (`x-deepseek-harness-session-id`); request-body extensions = snake with reserved `dsh_` prefix; DSH-owned nested JSON = camelCase (`afterSeq`); tagged values = kebab, durable events `domain/action`.
24
- - **`dsh_plugin_packages`** (enabled by default): complete active Loader-backed `{name,version}` package inventory; deduped, sorted by name then version; disabled/failed/unloading entries and non-package provenance absent; `packages: []` when none qualify.
25
- - **`dsh_session_log`** (disabled by default): contiguous suffix of the canonical Session log, version 2. First upload `afterSeq: -1`; later uploads start after the greatest accepted watermark. `session` member projects `Session.header` (id, createdAt, `isSeeded` lineage bit, optional cwd/parentSession/origin/delegationDepth/agentPreset).
26
- - **`delivery-accepted` watermark event**: appended after HTTP 2xx — type `session-log-deepseek/delivery-accepted`, data `{sessionId, sessionFormatVersion, throughSeq}`. Binds watermark to the logical format generation.
27
- - **At-least-once delivery**: crash after acceptance but before persistence may resend an already-accepted range → duplicates, never a gap. Fork ignores inherited watermarks naming another Session.
28
-
29
- ## Mental Models
30
- - **Use `@Remote` for root-Host services, `@RemoteScope` for scoped-composition methods.** Complex Host objects never cross the wire — think of the lookup map as the wire↔object identity table.
31
- - **Think of Remote as unary-only.** Session event streams, pagination, incremental reduce, projection, entity substreams → register an exact Connection Fetch route, never a Remote method.
32
- - **Think of the extension transaction as prepare-then-accept.** Only a 2xx endpoint accepts any contribution; a non-2xx or transport failure sends nothing and appends no watermark.
33
- - **Think of extension fields as "outside the model."** They sit outside `messages`/system prompt/tool schemas, so they add no input tokens and don't alter the model-visible prefix.
34
-
35
- ## Anti-patterns
36
- - **Modeling a streamed/browser-native feature as a Remote method**: Remote is strictly one request → one result; streaming must use a separate data protocol + registration model even if it shares the Connection.
37
- - **Guessing whether an `Agent` object came from restoration**: lookup policy is per-key, so all `agent`/`session` params share cold-resume behavior; the method must not assume live-vs-restored provenance.
38
- - **Treating `delivery-accepted` as persistence**: it asserts endpoint-level HTTP 2xx only — not SSE completion, not remote persistence.
39
- - **Collapsing `dsh_plugin_packages` by package name**: receivers must preserve distinct simultaneous versions and ignore array order.
40
- - **Reading generated `.d.ts` as ground truth for dispatch**: the strict contract (types/codecs) always comes from `lib/typert.remote-client.*`, never from a running source Host.
41
-
42
- ## Code Examples
43
- ```ts
44
- export class GoalService extends TypertRemoteService {
45
- constructor(ctx: Context) { super(ctx, 'goals') } // namespace 'goals'
46
- @Remote('create')
47
- createForClient(agent: Agent, request: CreateGoalRequest, signal: AbortSignal): CreateGoalResult {
48
- signal.throwIfAborted(); return this.create(agent, request)
49
- }
50
- @RemoteScope('agent', 'current') // scoped: agentId → context → service
51
- currentForClient(): CreateGoalResult { return { accepted: true } }
52
- }
53
- // Client — inject ['remote', 'remote.goals']; single lookup param collapses the wire field:
54
- await ctx.remote.goals.create(agentId, { objective: 'ship it' })
55
- await agentCtx.remote.goals.create({ objective: 'ship it' })
56
- ```
57
- ```jsonc
58
- // dsh_plugin_packages (version 1)
59
- { "dsh_plugin_packages": { "version": 1, "packages": [ { "name": "@deepseek-ai/dsh-example", "version": "0.1.1-rc.2" } ] } }
60
- // dsh_session_log suffix (version 2)
61
- { "dsh_session_log": { "version": 2, "sessionFormatVersion": 2,
62
- "session": { "version": 2, "id": "session-id", "createdAt": 1780000000000, "isSeeded": false },
63
- "afterSeq": -1, "throughSeq": 0,
64
- "events": [ { "type": "turn/start", "seq": 0, "time": 1780000000001, "data": { "turn": 1 } } ] } }
65
- // watermark appended after 2xx
66
- { "type": "session-log-deepseek/delivery-accepted", "seq": 8, "time": 1780000000002,
67
- "data": { "sessionId": "session-id", "sessionFormatVersion": 2, "throughSeq": 7 } }
68
- ```
69
-
70
- ## Reference Tables
71
-
72
- **Request headers (`dsh-llm-deepseek`)**
73
- | Header | Presence | Value |
74
- |---|---|---|
75
- | `user-agent` | every provider HTTP request | `product/version (+url)`; default product `deepseek-harness` |
76
- | `x-deepseek-harness-user-id` | every authorized chat-completion | stable anonymous Harness-home UUID |
77
- | `x-deepseek-harness-session-id` | chat-completion with a Session id | exact `sessionId` string |
78
- | `x-deepseek-harness-compact` | purpose `compaction` | literal `1` |
79
-
80
- **Component responsibilities**
81
- | Package | Role |
82
- |---|---|
83
- | `dsh-typert-protocol` | decorators, Gateway bindings, invocation descriptors (no analysis/services) |
84
- | `dsh-typert-generator` | build-time strict signature/type/lookup/Context analysis → artifacts |
85
- | `dsh-typert-registry` + Loader | Host descriptors/schemas into `ctx.typert`, lookup+Context providers |
86
- | `dsh-api-session-controller` | Agent/Session identity policy; standard `agent`/`session` resolvers |
87
- | `dsh-api-gateway` | `ctx.typertGateway`; claims endpoints, resolves objects, invokes, validates |
88
- | `dsh-api-gateway/client` | `ctx.remote`; mounts descriptors, initiates/validates/cancels |
89
- | `dsh-api-remotes/client` | selects+mounts allowed `/remote` contributions |
90
- | `dsh-client-connection` | RPC carrier, correlation, trust boundary, cancellation, `/api` bridge |
91
-
92
- **Generated files per business package (`lib/`)**: `typert.host.js/.d.ts`, `typert.remote-client.js/.d.ts`, `typert.remote-client.d.ts.map`; entries exposed via `./typert` (Host) and `./remote` (Client).
93
-
94
- ## Key Takeaways
95
- 1. Gateway owns only the Remote data protocol + business dispatch; Connection owns transport, RPC ids, envelopes, cancellation — swap the carrier without touching descriptors.
96
- 2. The trust fence runs in Connection **before** the HTTP bridge, then dispatches inside the shared FetchHandler.
97
- 3. A strict endpoint withdrawn on the Host does **not** degrade to SRC inference — hot unload can't silently weaken validation.
98
- 4. `session/not-found` and `session/agent-busy` `RemoteError` codes pass to the wire unchanged; only unclassified throws fold into `gateway/internal`.
99
- 5. Extension fields are versioned independently per field; JSON member order is not protocol.
100
-
101
- ## Connects To
102
- - **Ch06 architecture**: the `remotes → gateway → connection → webserver` layer stack and package split.
103
- - **Ch07 capability-seams**: Remote is the unary seam; streaming seams use a different registration model.
104
- - **Ch02 plugin-basics**: declaring `@Remote` methods and `inject`-ing `remote.<namespace>` is the plugin-author wiring.
105
- - **Ch08 internals-pipelines**: the `build:lib:host`/`client`/`web` order and `DSH_BUILD_FACE` split.
106
- - **Ch10 config-catalog**: `host-webserver.{host,port}`, `client-connection.trustedHosts`, `api-gateway.websocketHeartbeatIntervalMs` (default 2000 ms), `llm-deepseek.*`.
@@ -1,97 +0,0 @@
1
- # Chapter 10: Config Catalog
2
-
3
- ## Core Idea
4
- `config-catalog.md` is the **deployment-axis** reference: for every loadable harness package it pastes the verbatim `config:` block a `cordis.yml` entry can set, plus each plugin's `Requires:` injection line. It is **generated** from source (`scripts/gen-config-catalog.ts`), not a layering spec — the paste is the plugin's *full declared config type*, and any field the runtime schema deliberately excludes is a runtime-only seam that is **not settable from `cordis.yml`**.
5
-
6
- ## Frameworks Introduced
7
- - **`config:` block (cordis.yml)**: the only settable surface catalogued here. The plugin's `apply`/service constructor receives the declared config type; referenced types are pasted (package-local) or linked.
8
- - **`Requires:` line**: lists the service keys the plugin `inject`s — its `cordis.yml` tree must also load providers for those services. Scope = harness tier (`packages/`); vendored cordis plugins (`hmr`, console logger) are pinned upstream and not catalogued.
9
- - **`static Config` / schemastery schema**: most plugins supply defaults statically and validate via a same-named schemastery schema; the generator cross-checks the schema against the pasted declaration so the paste cannot hide a loader-accepted field.
10
- - **Generated + verified**: `pnpm run gen-config-catalog` regenerates; `verify-config-catalog` (part of `doc-sync`) checks freshness. Do not hand-edit.
11
- - **Three package classes**: (1) **loadable** — with a `config:` block; (2) **loadable no-config** — a `cordis.yml` entry with no `config:`; (3) **seam** — abstract service classes (`AttachmentStore`, `SandboxProvider`, `SessionPersistence`, `CredentialProvider`, …) not directly loadable; (4) **library** — no plugin entry, cannot be loaded.
12
-
13
- ## Key Concepts
14
- - **Home path convention**: `dshHome` (settings/credentials/shell-env/agent-instructions) defaults to `$DSH_HOME` then `~/.dsh`.
15
- - **Runtime-only seam**: a field the schema excludes by design — its JSDoc says so; not settable from `cordis.yml`.
16
- - **Preset-root precedence**: `agent-presets` `roots[]` scanned in precedence order (earlier wins a duplicate id); `includeShippedRoot` prepends the bundled `system` root, `includeUserRoot` appends the home `user` root.
17
- - **`SandboxMode` / `ApprovalPolicy`**: shared deployment knobs — `sandbox-policy.mode` default `read-only`; `user-approval.policy` = `ask` (fail-closed) or `never` (deterministic CI/unattended).
18
- - **Backend routing**: `storage-domain.backend` = default route, `routes` overrides per domain name; unknown backend fails `open` with `backend-not-found`.
19
- - **No-default `root`s**: `session-persistence-jsonl.root`, `storage-json.root` have no default on purpose — a `process.cwd()` fallback would scatter files as cwd changes (bash/subprocess).
20
-
21
- ## Mental Models
22
- - **Read the config type as the wire surface, not the runtime object**: the paste is exactly what `cordis.yml` may set; anything else is a runtime-only seam.
23
- - **Think of each capability seam as "abstract service + concrete package"**: the *concrete* package (`dsh-bash-sandbox`, `dsh-storage-sqlite`, …) carries the config; the abstract seam package is never loaded directly.
24
- - **Think of sandbox policy vs runner as split**: `sandbox-policy` owns `mode`/`workspaceRoot` (per-session resolution); the runner choice is the `ctx.sandbox` provider's config, not the executor's.
25
-
26
- ## Anti-patterns
27
- - **Setting a runtime-only seam from `cordis.yml`**: it is deliberately excluded from the schema and will not apply.
28
- - **Loading a seam or library package in `cordis.yml`**: seams are abstract (load a concrete impl), libraries have no plugin entry.
29
- - **Defaulting storage/session `root` to `process.cwd()`**: scatters unit files across whatever cwd the process is in — the doc forces an explicit `root` for exactly this reason.
30
- - **Assuming a full CLI>env>home>profile precedence chain lives in this doc**: it does not — this file documents the `config:` surface only; the layering/merge model is in ch01/ch02.
31
-
32
- ## Reference Tables
33
-
34
- **Most-needed config keys** (`@deepseek-ai/` prefix omitted; type + default where declared)
35
-
36
- | Key (package) | Type | Default | Purpose |
37
- |---|---|---|---|
38
- | `agent-default-model.provider` / `.model` | string | required | default provider route + model id |
39
- | `agent-loop.agents[]` | array | required | agents created/resumed at startup (`id`, `sessionId`, `cwd`, `resumeSessionId`) |
40
- | `agent-loop.maxParallelToolCalls` | number | `DEFAULT_MAX_PARALLEL_TOOL_CALLS` | parallel-safe calls per agent step (1 = serial) |
41
- | `agent-presets.default` | string | required | preset id when caller names none (missing = loud fail) |
42
- | `agent-presets.roots[]` | array | required | preset scan roots in precedence order |
43
- | `agent-presets.includeShippedRoot` / `includeUserRoot` | bool | `true` | prepend bundled `system` / append home `user` root |
44
- | `agent-tool-presentation.mode` | `'native'\|'ptc'\|'both'` | required | model-visible tool form |
45
- | `agent-instructions.maxBytes` | number | required | UTF-8 byte cap per rendered baseline/dynamic batch |
46
- | `llm-deepseek.apiKeyEnv` | string | `DEEPSEEK_API_KEY` | credential env-var name, resolved per request |
47
- | `llm-deepseek.baseURL` | string | `$DEEPSEEK_BASE_URL` → public API | endpoint base |
48
- | `llm-deepseek.thinking` | `'enabled'\|'disabled'` | provider default | deployment thinking policy |
49
- | `llm-deepseek.reasoningEffort` | `'off'\|'low'\|'high'\|'max'` | `high` | default thinking effort |
50
- | `llm-deepseek.maxTokens` | number | `256000` | default per-request output cap |
51
- | `llm-deepseek.defaultContextWindow` | number | `1000000` | context capacity fallback |
52
- | `llm-deepseek.models[]` | `DeepSeekCatalogModel[]` | V4 Flash/Pro/Flash Vision Exp | advertised selector models |
53
- | `bash-local.cwd` | string | `process.cwd()` | default command working dir |
54
- | `bash-local.timeoutMs` / `maxTimeoutMs` | number | — | foreground timeout + per-call override cap |
55
- | `bash-local.maxOutputBytes` / `maxSpillBytes` | number | — | in-memory output / spill-file caps |
56
- | `host-webserver.host` | `'127.0.0.1'\|'0.0.0.0'` | — | listen host |
57
- | `host-webserver.port` | number | — | listen port (0 = OS-assigned) |
58
- | `host-webserver.compression` | `'none'\|'gzip'` | `none` | response compression |
59
- | `client-connection.trustedHosts` | string[] | — | non-loopback authorities for `/api` trust fence |
60
- | `client-connection.cookieMaxAgeDays` | number | `30` | browser-session lifetime |
61
- | `client-connection.maxRequestBodyBytes` | number | `300 MiB` | max buffered `/api` JSON body |
62
- | `sandbox-policy.mode` | `SandboxMode` | `read-only` | file-sandbox default (fail-safe) |
63
- | `sandbox-policy.workspaceRoot` | string | `process.cwd()` | fallback root (agentless / no-cwd) |
64
- | `user-approval.policy` | `'ask'\|'never'` | `ask` | approval default (never = CI/unattended) |
65
- | `permission-presets.presets` / `defaultPreset` | map / string | `workspace-write`,`danger-full-access` | preset knob table + new-session default |
66
- | `session-persistence-jsonl.root` | string | required | session files root |
67
- | `session-persistence-jsonl.compression` | `'zstd'\|'none'` | `zstd` | physical encoding |
68
- | `storage-domain.backend` / `routes` | string / map | required | default backend + per-domain overrides |
69
- | `storage-json.root` | string | required | `<unit>.json` file dir |
70
- | `storage-sqlite.path` / `journalMode` | string / `'wal'\|'delete'\|'truncate'\|'persist'` | `:memory:` / `wal` | DB file + journal pragma |
71
- | `mcp-client` (per server) | `StdioConfig`\|`StreamableHttpConfig` | — | `transport`, `serverName` (`mcp__<name>__<tool>`), `command`/`url`, `toolCallTimeoutMs` |
72
- | `web.searchProvider` / `fetchProvider` | string | auto-select | pin which provider wins per capability |
73
- | `web-app.openBrowser` / `printUrl` / `surfaceContext` / `trustedHosts` | bool/bool/bool/string[] | — | browser handoff, URL line, `app:web-surface` context, `--trusted-host` |
74
- | `settings-file.path` | string | `settings.yaml` under home | settings doc location |
75
- | `credentials-local.path` | string | `.credentials.yaml` under home | credentials doc location |
76
- | `compaction-basic.thresholdRatio` / `retainRatio` | number | `0.8` / `0.16` | compact-at / retain fractions of context window |
77
- | `persona.text` / `complete` | string / bool | — | persona prose; `complete` = whole system prompt |
78
- | `tool-web.search` / `fetch` / `fetchMaxOutputChars` | bool/bool/number | `true`/`true`/`200000` | tool registration + fetch output cap |
79
- | `tool-todo.allowParallelInProgress` | bool | required | allow multiple `in_progress` todos |
80
- | `api-gateway.websocketHeartbeatIntervalMs` | number | `2000` | WS ping interval (1…2147483647 ms) |
81
-
82
- **Where the rest lives**: the source doc's `## @deepseek-ai/dsh-*` sections (one per package, ~110 packages) carry the full verbatim declarations + JSDoc; its tail lists `Loadable plugins with no config`, `Seam packages`, and `Library packages`. For the runtime wire surface, see the generated Cordis API region on each `subsystems/core.md` page; model-facing tool schemas live in `tool-catalog.md`.
83
-
84
- ## Key Takeaways
85
- 1. Config is delivered through `cordis.yml` `config:` blocks — this catalog is the authoritative list of what each package accepts.
86
- 2. Every key's default and validation come from the plugin's `static Config` + schemastery schema, not from a central registry.
87
- 3. `Requires:` is load-critical: a config tree that omits an injected service fails to compose.
88
- 4. Storage/session `root` paths are deliberately default-less — state them explicitly to avoid cwd-scatter.
89
- 5. Deployment policy (sandbox mode, approval policy, trusted hosts, compaction thresholds) is spread across dedicated policy packages, not one global config.
90
-
91
- ## Connects To
92
- - **Ch01 user-guide / Ch02 plugin-basics**: the `cordis.yml` layering and merge semantics (this doc covers only the per-package surface).
93
- - **Ch05 cordis-api**: the generated Cordis API region on subsystem pages that these declarations reference.
94
- - **Ch07 capability-seams**: the "seam packages" here are the abstract classes the seams chapter names.
95
- - **Ch09 api-gateway**: `host-webserver`, `client-connection.trustedHosts`, and `api-gateway.websocketHeartbeatIntervalMs` configure the gateway transport.
96
- - **Ch11 tool-catalog**: the model-facing tool schemas that `tool-web`, `tool-todo`, `tool-workflow`, `tool-bash` config keys shape.
97
- - **Ch12 persistence-catalog**: `session-persistence-jsonl`, `storage-*`, `session-query-sqlite`, `session-projection-cache` backends.
@@ -1,121 +0,0 @@
1
- # Chapter 11: Tool Catalog
2
-
3
- ## Core Idea
4
- This is a GENERATED registry of every model-facing tool a shipped plugin contributes to `ctx.tools`: the `name`, `description`, and JSON-Schema `parameters` delivered via system-prompt assembly. It is produced by BOOTING each tool plugin on a real context and reading `ctx.tools.schemas()` — not a static AST pass — because a tool schema is not statically knowable (runtime-spread enums, concatenated descriptions, config-driven names, raw-JSON-Schema MCP tools).
5
-
6
- ## Frameworks Introduced
7
- - **Tool contribution = `{ name, description, parameters }` into `ctx.tools`**: a tool is the model-facing projection of a plugin's execute logic; `ctx.tools.schemas(scope)` projects an allowlist (name/description/parameters only) so `output`/`execute`/callbacks never leak into model requests.
8
- - When to use: every model-facing action. How: plugin contributes a `ToolDefinition`; the catalog generator boots it and reads the projected schema.
9
- - **Capability-seam stability**: a tool keeps its provider behind an abstract seam (`ctx.lsp`, `ctx.web`, `ctx.subagents`, `ctx.codeRuntime`, `ctx.shell`, `ctx.fs`, `ctx.terminals`) so the model-visible schema stays stable across backend swaps.
10
- - When to use: any swappable backend (`lsp`, `web_search`/`web_fetch`, `subagent`).
11
- - **Load-time config names / shipped aliases**: a registered `name` may be a load-time config (e.g. `tool-subagent`'s `toolName` default `subagent`, shipped alias `subagent_fork`); a deployment may expose a package under a different or additional name.
12
- - **Reserved transport (`run_code`)**: owned by the tool registry outside filterable capability layers under `mode: ptc`/`mode: both`; under `ptc` it is the registry's only wire contribution — other capabilities are declared in a generated SDK section and re-enter the guarded tool pipeline via scheduled bindings (overlap up to `maxParallelSubCalls`).
13
- - **Boot-and-read verification**: `gen-tool-catalog` generator + `verify-tool-catalog` (part of `doc-sync`); a completeness guard globs `packages/*/tool-*` and fails if a package is missing from the boot manifest, so a new tool cannot be silently undocumented.
14
-
15
- ## Key Concepts
16
- - **ctx.tools**: the single registry of model-facing tools (see Ch 15 for the dispatch pipeline behind it).
17
- - **Capability seam**: `ctx.shell`, `ctx.fs`, `ctx.subprocess`, `ctx.terminals`, `ctx.lsp`, `ctx.web`, `ctx.codeRuntime`, `ctx.subagents`, `ctx.workflowEngine`, `ctx.jobs` — abstract services a tool consumes; one provider per context.
18
- - **Requires / Writes-affects**: the package map's two metadata columns — which seams a tool needs, and which events/durable effects it produces.
19
- - **Shipped alias**: a second registered name for the same package (e.g. `subagent_fork` for a fixed-route delegation).
20
- - **Reserved transport**: `run_code` — excluded from filterable capability layers; registry-owned.
21
- - **Per-package deployment note**: records opt-in status, config branches, and defaults the generator had to choose (e.g. `todo_write`'s `allowParallelInProgress: true`).
22
- - **Read-before-write policy**: added by `@deepseek-ai/dsh-fs-observation-policy` (an `fs/*` event-gate plugin) — no schema change; a deployment loading the fs tools is expected to also load it.
23
-
24
- ## Mental Models
25
- - Think of the tool catalog as the **system-prompt assembly's menu**: what the model is *offered*, not what the runtime can *execute* (the Cordis surface is the latter).
26
- - Think of a tool's schema as **runtime-spread**, never statically knowable — always boot to read it, never hand-transcribe.
27
- - Use a **seam** when a capability may swap backends; keep the tool thin and let the seam own the vocabulary.
28
- - Think of `run_code` as the **only non-filterable wire contribution** under `ptc` — everything else is reachable only through the code-runtime SDK.
29
-
30
- ## Anti-patterns
31
- - **Hand-editing the generated catalog**: it is regenerated and re-verified by `doc-sync`; edits are overwritten.
32
- - **Guessing an Inspect/LSP provider name**: `cordis_inspect_list`/provider discovery must precede `cordis_inspect_query`/`lsp`; an Inspect method is read-only, not a business Service plugin code can call.
33
- - **Loading fs tools without the observation-policy plugin**: bare `write`/`edit` lose the read-before-write guard.
34
- - **Treating `subagent`'s discovery schema as fixed**: model-selection on/off, background mode, and the registration name are per-instance config (`modelSelectionSettings`, `backgroundMode`, `enableRunInBackground`, `toolName`).
35
-
36
- ## Code Examples
37
- ```jsonc
38
- // Tool schema shape every entry shares: { name, description, parameters }
39
- { "name": "bash",
40
- "description": "Execute a bash command (bash -c) and return stdout/stderr.",
41
- "parameters": { "type": "object",
42
- "properties": {
43
- "command": {"type":"string"},
44
- "description": {"type":"string"},
45
- "timeoutMs": {"type":"number"},
46
- "workdir": {"type":"string"},
47
- "run_in_background": {"type":"boolean"}
48
- }, "required": ["command","description"] } }
49
- ```
50
- ```ts
51
- // run_code bridge: each nested call re-enters the guarded tool pipeline
52
- // and links to the outer result via a tool/code-dispatch-start + tool/code-dispatch pair.
53
- // sub-call id = `<parent>:code:<n>` (submission order); tool/result vocabulary carries content + isError.
54
- ```
55
- ```ts
56
- type LspOperation = 'goToDefinition' | 'findReferences' | 'goToImplementation' | 'hover';
57
- // schedule selectors: after_seconds | at | every_seconds (>= 300) — exactly one.
58
- ```
59
-
60
- ## Reference Tables
61
- Full lookup table — name → one-line purpose, grouped by category. Per-tool JSON Schemas and exact field docs live in `src/docs/tool-catalog.md` (generated; ~90KB), package sections below its "Tool Package Map".
62
-
63
- | Tool | Package | Purpose |
64
- |---|---|---|
65
- | **Human interaction** |||
66
- | `ask_user_question` | dsh-tool-ask-user | Pause until the UI/provider returns a human answer (confirmation/choice/missing info). |
67
- | `exit_plan_mode` | dsh-plan-mode | Present a plan for review; reject outside plan mode, no schema churn on policy change. |
68
- | **Shell (one-shot, fresh process)** |||
69
- | `bash` | dsh-tool-bash | Run `bash -c`, return stdout/stderr; `run_in_background` → job id. |
70
- | `pwsh` | dsh-tool-pwsh | Windows `pwsh -Command` counterpart; mirrors bash minus sandbox controls. |
71
- | **Shell (persistent PTY)** |||
72
- | `bash` (persistent) | dsh-tool-bash-persistent | Owner-isolated persistent bash; cwd/env persist across calls. |
73
- | `pwsh` (persistent) | dsh-tool-pwsh-persistent | Owner-isolated persistent pwsh. |
74
- | **Filesystem** |||
75
- | `read` / `write` / `edit` | dsh-tool-fs | UTF-8 read (line-numbered) / create-or-replace / literal-replace edit. |
76
- | `read_image` | dsh-tool-fs | Read PNG/JPEG/WebP/GIF; refuses unless the routed model accepts image input. |
77
- | `glob` / `grep` | dsh-tool-fs-search | Path discovery / ripgrep content search (packaged `@vscode/ripgrep`, no host rg). |
78
- | `str_replace_editor` | dsh-tool-str-replace-editor | Standalone view/create/unique-literal-replace/insert editor. |
79
- | **Terminals (opt-in)** |||
80
- | `terminal_open`/`close`/`list`/`read`/`send`/`signal` | dsh-tool-terminal | Persistent terminal sessions; `send(run_in_background)` registers with `ctx.jobs`. |
81
- | **Code runtime** |||
82
- | `run_code` | dsh-tools | Execute a TypeScript program body against tools (PTC transport). |
83
- | **Delegation & control** |||
84
- | `subagent` / `list_subagent_models` | dsh-tool-subagent | Delegate a self-contained task / discover LLM routes. |
85
- | `send_message` / `interrupt_agent` / `list_agents` | dsh-tool-subagent-control | Steer, interrupt, list continuable background subagents (global names). |
86
- | `workflow` | dsh-tool-workflow | Orchestrate many subagents via a JS script (`agent`/`pipeline`/`parallel` hooks). |
87
- | `ralph` | dsh-tool-ralph | Foreground fresh-agent loop; one immutable objective + optional round cap. |
88
- | `spawn_teammate` | dsh-experimental-tool-agent-team | Create a named durable teammate (Team Lead only). |
89
- | `team_task_*`, `wait_agent`, team `send_message`/`interrupt_agent`/`list_agents` | dsh-experimental-tool-agent-team | Shared task board (create/get/list/update) + team mailbox/status wait. |
90
- | **Background jobs** |||
91
- | `job_list` / `job_output` / `job_kill` | dsh-tool-jobs | Kind-agnostic controller: bash, PTY sends, subagents all through the same three. |
92
- | **Goal (same-session)** |||
93
- | `create_goal` / `get_goal` / `update_goal` | dsh-tool-goal | Persisted long-running objective; direct-human root authority for mutations. |
94
- | **Schedule** |||
95
- | `schedule_create` / `schedule_delete` / `schedule_list` | dsh-schedule | Session-local reminders (after_seconds | at | every_seconds≥300). |
96
- | **Session query (opt-in)** |||
97
- | `session_search` / `session_trace` / `session_event_read` / `session_event_search` / `session_event_trace` | dsh-tool-session-query | Read-only search/trace over the durable event log, authorized by the calling agent. |
98
- | **Skill** |||
99
- | `skill` | dsh-tool-skill | Load full instructions for a named skill from the session catalog. |
100
- | **Web** |||
101
- | `web_search` / `web_fetch` | dsh-tool-web | Search (1–4 queries) / fetch a URL; provider behind `ctx.web`. |
102
- | **LSP** |||
103
- | `lsp` | dsh-tool-lsp | Code navigation (definition/references/implementation/hover); `LSP_UNAVAILABLE` without a provider. |
104
- | **Dynamic Cordis (opt-in)** |||
105
- | `cordis_define`/`inspect_list`/`inspect_query`/`inspect_self`/`run`/`stop`/`undefine` | dsh-tool-cordis | Define/inspect/run immutable Cordis packages in a vm sandbox (not in any shipped tree). |
106
- | **TODO** |||
107
- | `todo_write` | dsh-tool-todo | Session-owned checklist; whole-list replace (no partial updates). |
108
-
109
- ## Key Takeaways
110
- 1. The catalog is the *offered* tools (name/description/parameters), generated by booting each plugin and reading `ctx.tools.schemas()` — never a static AST pass.
111
- 2. Every tool maps to a **package** + **seams** (`Requires`) + **durable effects** (`Writes/affects`); the package map is the primary index.
112
- 3. Keep swappable capabilities behind a seam (`ctx.web`, `ctx.lsp`, `ctx.subagents`) so the schema does not change on backend swap.
113
- 4. `run_code` is the registry's reserved transport — the only wire contribution under `ptc`; other capabilities reach it via scheduled bindings.
114
- 5. Registration names can be config-driven and aliased (`subagent`/`subagent_fork`); deployment notes record shipped aliases and generator-chosen defaults.
115
-
116
- ## Connects To
117
- - **Ch 15**: `ctx.tools` dispatch pipeline (ToolDefinition, guards, observation policy) behind these schemas.
118
- - **Ch 07**: capability seams — the Service/Provider/Consumer split each tool leans on.
119
- - **Ch 16**: `tool/call`, `tool/result`, `tool/code-dispatch*` are the durable session-log facts tools emit.
120
- - **Ch 10**: config keys that shape tools (`toolName`, `enableRunInBackground`, `sampleOverCapGlobResults`, preset tables).
121
- - **Ch 14**: the agent loop requests these tools and commits their call/result events.
@@ -1,109 +0,0 @@
1
- # Chapter 12: Persistence Catalog
2
-
3
- ## Core Idea
4
- Session persistence is one **durable, replayable, append-only event log**: every record is a `SessionEvent` envelope (`type`, monotonic `seq`, epoch-ms `time`, `data`, optional `ignorable`, conditional `surfaceOp`/`sourceEventSeqs`). This catalog documents the *event vocabulary* (`SessionEventMap`) and the surface/log-only split — it does NOT document on-disk store layout, DSH_HOME anatomy, or durability mechanics (those live in `subsystems/persistence.md`, the doc's own cross-ref target). A log event is **not a Cordis event**: it reaches listeners through the single `session/event` emit.
5
-
6
- ## Frameworks Introduced
7
- - **`SessionEventMap` (merge-extensible vocabulary)**: the owning vocabulary in `@deepseek-ai/dsh-session` plus every plugin declaration merge into `@deepseek-ai/dsh-session/types`; a downstream plugin can merge further current-version event types (outside this catalog by construction, requiring explicit disposition at a later format edge).
8
- - When to use: declaring a new durable event type. How: merge the key into `SessionEventMap`; surface types also join `SurfaceEventType`.
9
- - **Surface vs log-only split**: `SurfaceEventType` = `'user/message' | 'assistant/message' | 'tool/result'` — the only types that produce LLM messages and may carry `SurfaceOp`. Everything else is **log-only**: durable + replayable, zero derived-history contribution.
10
- - When to use: a type enters the model transcript only if it is a surface type; audit/boundary/state records stay log-only.
11
- - **`SurfaceOp` join rule**: `'append'` (tail) or `{ op:'replace', start, end }` (replaces surface nodes start..end; node's `sourceEventSeqs` must include every shadowed node). Used by compaction; any surface-replacing producer may use it.
12
- - **`ignorable` marker protocol**: absent = **required** — a reader meeting an unrecognized type without `true` MUST refuse reconstruction (not silently drop), because a required event may change how the rest of the log interprets. A writer sets `true` only on purely informational records whose loss cannot affect reconstruction.
13
- - **Shadow-price protocol (compaction)**: a surface `replace` event is priced by the metering event *immediately before* it (`compaction/summary` for a summarizing compaction, `compaction/prune` for a model-free prune), stating `shadowedRange`/`shadowedSeqs`/`shadowedTokenCount` — so a pure consumer can subtract the exact replaced range without retaining per-node prices.
14
- - **Version lifecycle**: current writers stamp `SESSION_FORMAT_VERSION`; supported historical artifacts reach the current vocabulary through the build-static adjacent migration catalog (see `subsystems/persistence.md`).
15
- - **JSON-serializability gate**: every payload is JSON-serializable, enforced at `Session.append` via `isJsonValue` — a non-serializable `meta` is rejected at the source, so replay reproduces the identical record.
16
-
17
- ## Key Concepts
18
- - **SessionEvent**: discriminated union over `type` (so `switch (event.type)` narrows `event.data` without casts); envelope = `{ type, seq, time, data, ignorable?, sourceEventSeqs?, surfaceOp? }`.
19
- - **SurfaceEventType**: the 3 message-producing types; only these may carry `SurfaceOp`; user/tool may cite `sourceEventSeqs`.
20
- - **log-only**: durable, replayable, no `surfaceOp`, never in derived history (`deriveMessages()` ignores it).
21
- - **session/end-seed**: durable projection of `Session.firstLiveSeq`; events before it (smaller seq) came from seed (resume/fork/replay). A fresh fork child owns one `{ inherited: true }` marker at its exact inherited-prefix cut; the last tagged marker is the current Session's cut.
22
- - **session/event emit**: the single bus wiring — the log is not Cordis events; listeners hear via this one emit.
23
- - **deriveMessages() projection**: the surface ordering → LLM messages (see `subsystems/session.md`).
24
- - **Latest-wins fold events**: whole-value, non-surface state knobs whose LAST event is the session override — `plan/mode`, `sandbox/mode`, `approval/policy`, `session/title`, `todo/write`, `permission/preset`, `model/selection`.
25
-
26
- ## Mental Models
27
- - Think of the **log as ground truth, the surface as derived history**: only `user/message`/`assistant/message`/`tool/result` join the model transcript; everything else is replayable audit.
28
- - Think of **compaction as a surface `replace` + an adjacent metering event**: the replacement is priced by the event directly before it, never by per-node bookkeeping.
29
- - Use **`ignorable: true` sparingly**: defaulting to *required* means a forgotten marker over-refuses (inconvenience) rather than silently resuming a gutted session.
30
- - Treat **state knobs as latest-wins**: the projection unit folds the log to the last event; the model learns policy from runtime-context snapshot + live notices, not from these events.
31
-
32
- ## Anti-patterns
33
- - **Silently dropping an unrecognized required event**: readers must refuse reconstruction unless `ignorable: true` is set — loss can change how the remaining log is interpreted.
34
- - **A plugin appending `session/end-seed`**: only the `Session` constructor is a legitimate writer; a plugin doing so silently classifies every live bracket before it as seed history.
35
- - **Appending a non-JSON-serializable `tool/result` `meta`**: rejected at `Session.append` (isJsonValue); the producing tool owns `meta` shape but it MUST be JSON.
36
- - **Treating a log event as a Cordis event**: the durable log reaches listeners only through `session/event`; do not wire Cordis event listeners to it.
37
-
38
- ## Code Examples
39
- ```ts
40
- export type SurfaceEventType = 'user/message' | 'assistant/message' | 'tool/result'
41
- export type SurfaceOp = 'append' | { op: 'replace'; start: SessionSeq; end: SessionSeq }
42
- export type SessionEvent<T extends SessionEventType = SessionEventType> = {
43
- [K in SessionEventType]: {
44
- type: K; seq: SessionSeq; time: number; data: SessionEventMap[K]; ignorable?: true
45
- } & (K extends SurfaceEventType
46
- ? { sourceEventSeqs?: SessionSeq[]; surfaceOp?: SurfaceOp }
47
- : object)
48
- }[T]
49
- ```
50
- ```ts
51
- // Shadow price (compaction): metering event immediately precedes the replace.
52
- 'compaction/prune': {
53
- shadowedRange: { start: SessionSeq; end: SessionSeq }
54
- shadowedSeqs: SessionSeq[] // all shadowed surface nodes, surface order
55
- shadowedTokenCount: number // heuristic price, fixed estimator
56
- }
57
- // tool/call pairs with tool/result by callId; arguments kept as the model's raw JSON string.
58
- 'tool/call': { turn: number; step: number; callId: ToolCallId; name: string; arguments: string }
59
- ```
60
-
61
- ## Reference Tables
62
- Full payload declarations + JSDoc live in `src/docs/persistence-catalog.md` (~38KB, generated by `gen-persistence-catalog`, verified by `verify-persistence-catalog`). ★ = surface type (the only ones joining the model transcript).
63
-
64
- | Family | Members | Badge |
65
- |---|---|---|
66
- | `user/*` | `user/message` | ★ surface |
67
- | `assistant/*` | `assistant/message` ★, `assistant/attempt` | surface + log-only |
68
- | `tool/*` | `tool/result` ★, `tool/call`, `tool/code-dispatch`, `tool/code-dispatch-start` | surface + log-only |
69
- | `turn/*` | `turn/start`, `turn/end` | log-only |
70
- | `step/*` | `step/start`, `step/end` | log-only |
71
- | `request/*` | `request/header`, `request/context` | log-only |
72
- | `session/*` | `session/end-seed`, `session/title`, `session/title-llm-request` | log-only |
73
- | `agent/*` | `agent/inbox/spliced` | log-only |
74
- | `agent-preset/*` | `agent-preset/selected` | log-only |
75
- | `approval/*` | `approval/asked`, `approval/decided`, `approval/policy` | log-only |
76
- | `sandbox/*` | `sandbox/mode` | log-only |
77
- | `permission/*` | `permission/preset` | log-only |
78
- | `plan/*` | `plan/mode` | log-only |
79
- | `model/*` | `model/selection` | log-only |
80
- | `command/*` | `command/run`, `command/done` | log-only |
81
- | `compaction/*` | `compaction/start`, `compaction/end`, `compaction/summary`, `compaction/prune` | log-only |
82
- | `feedback/*` | `feedback/record` | log-only |
83
- | `goal/*` | `goal/change` | log-only |
84
- | `hook/*` | `hook/invoked`, `hook/result` | log-only |
85
- | `llm/*` | `llm/retry`, `llm/retry-started` | log-only |
86
- | `schedule/*` | `schedule/change` | log-only |
87
- | `session-log-deepseek/*` | `session-log-deepseek/delivery-accepted` | log-only |
88
- | `subagent/*` | `subagent/descriptor`, `subagent/model-selection-policy` | log-only |
89
- | `team/*` | `team/member`, `team/task`, `team/message/queued`, `team/message/delivered` | log-only |
90
- | `todo/*` | `todo/write` | log-only |
91
- | `tool-workflow/*` | `tool-workflow/run-start`, `run-end`, `agent-start`, `agent-end` | log-only |
92
- | `web/*` | `web/deepseek-search-llm-request` | log-only |
93
-
94
- Envelope facts: `seq` = monotonic per-session; `time` = Unix epoch ms; `data` = `SessionEventMap[K]`; `ignorable?` skip marker; `sourceEventSeqs?`/`surfaceOp?` surface-only. A log-only event never carries surface metadata (compiler-enforced at `Session.append`).
95
-
96
- ## Key Takeaways
97
- 1. Only three event types touch the model transcript: `user/message`, `assistant/message`, `tool/result` — all others are log-only durable audit.
98
- 2. A log event is **not** a Cordis event; wire to `session/event`, and project the surface with `deriveMessages()`.
99
- 3. Default unrecognized events to *required* (refuse reconstruction); opt into `ignorable: true` only for loss-safe informational records.
100
- 4. Compaction replaces surface nodes with `surfaceOp: { replace }`, priced by the metering event immediately before it (`compaction/summary` or `compaction/prune`).
101
- 5. Versioning: writers stamp `SESSION_FORMAT_VERSION`; historical artifacts migrate via the build-static migration catalog — not by hand.
102
- 6. Store layout / DSH_HOME anatomy / durability are **not** here — they are `subsystems/persistence.md`'s job; this catalog is the event-format vocabulary only.
103
-
104
- ## Connects To
105
- - **Ch 13**: `Session.append`, `firstLiveSeq`, `deriveMessages()` projection — the core-session surface this log backs.
106
- - **Ch 16**: `fs/observed`, preset/audit state — the durable facts consumed as session data.
107
- - **Ch 17**: `TokenUsage` referenced by `assistant/message` and `compaction/summary` payloads.
108
- - **Ch 14**: the agent loop commits `turn/start`..`turn/end`, `step/start`..`step/end`, `tool/call`/`tool/result`.
109
- - **Ch 11**: tools emit `tool/call`, `tool/result`, `tool/code-dispatch*` as their durable effects.