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,1136 +0,0 @@
1
- import { _ as Browser$1, a as TimeoutError$1, c as computeSystemExecutablePath, f as detectBrowserPlatform, h as resolveBuildId, l as launch$1, n as uninstall, o as WEBDRIVER_BIDI_WEBSOCKET_ENDPOINT_REGEX, p as createProfile, r as CDP_WEBSOCKET_ENDPOINT_REGEX, s as computeExecutablePath, t as getInstalledBrowsers } from "./main-CupOhMp5.js";
2
- import { C as unitToPixels, Ct as getCapturedLogs, E as paperFormats, F as bufferCount, J as fromEvent, K as firstValueFrom, M as assert, Q as map, S as timeout, St as debug, T as withSourcePuppeteerURLIfNone, Tt as environment, W as filter, Z as lastValueFrom, _ as isNumber, _t as PuppeteerError, a as UTILITY_WORLD_NAME, at as race, b as isString, bt as TouchError, c as evaluationString, d as fromEmitterEvent, dt as takeUntil, f as getReadableAsTypedArray, ft as tap, g as isDate, gt as ProtocolError, h as getSourceUrlComment, ht as ConnectionClosedError, i as SOURCE_URL_REGEX, l as filterAsync, m as getSourcePuppeteerURLIfAvailable, mt as timer, n as NETWORK_IDLE_TIME, o as debugCatchError, p as getReadableFromProtocolStream, q as from, r as PuppeteerURL, s as debugError, t as DEFAULT_VIEWPORT, u as fromAbortSignal, v as isPlainObject, vt as TargetCloseError, w as validateDialogType, wt as setLogCapture, x as parsePDFOptions, xt as UnsupportedOperation, y as isRegExp, yt as TimeoutError, z as concatMap } from "./util-BHL_dfV_.js";
3
- import { $ as pageBindingInitString, $n as Deferred, $t as scriptInjector, A as NetworkManager, An as guarded, At as DEFAULT_INTERCEPT_RESOLUTION_PRIORITY, B as MAIN_WORLD, Bn as AsyncDisposableStack, Bt as throwIfDetached, C as WebMCPToolCall, Cn as NodeLocator, Ct as WebWorkerEvent, D as CdpTouchscreen, Dn as DeviceRequestPrompt, Dt as normalizeHeaderValue, E as CdpTouchHandle, En as TimeoutSettings, Et as WaitTask, F as CdpFrame, Fn as Browser, Ft as headersArray, G as CdpJSHandle, Gn as asyncDisposeSymbol, Gt as XPathQueryHandler, H as FrameManagerEvent, Hn as DisposableStack, Ht as bindIsolatedHandle, I as referrerPolicyToProtocol, In as WEB_PERMISSION_TO_PROTOCOL_PERMISSION, It as Dialog, J as addPageBinding, Jn as CallbackRegistry, Jt as PQueryHandler, K as releaseObject, Kn as disposeSymbol, Kt as TextQueryHandler, L as LifecycleWatcher, Ln as CDPSession, Lt as Accessibility, M as CdpHTTPResponse, Mt as InterceptResolutionAction, N as CdpHTTPRequest, Nt as STATUS_TEXTS, O as _keyDefinitions, On as BrowserContext, Ot as SecurityDetails, P as FrameTree, Pn as Mutex, Pt as handleError, Q as createEvaluationError, Qn as rewriteError, Qt as ScriptInjector, R as IsolatedWorld, Rn as CDPSessionEvent, Rt as Frame, S as WebMCPTool, Sn as MappedLocator, St as WebWorker, T as CdpMouse, Tn as RaceLocator, Tt as TaskManager, U as ExecutionContext, Un as DisposableStackPolyfill, Ut as JSHandle, V as PUPPETEER_WORLD, Vn as AsyncDisposableStackPolyfill, Vt as ElementHandle, W as CdpElementHandle, Wn as SuppressedError, Wt as getQueryHandlerAndSelector, X as createClientError, Xn as isErrnoException, Xt as CustomQueryHandlerRegistry, Y as convertConsoleMessageLevel, Yn as createProtocolErrorMessage, Yt as PierceQueryHandler, Z as createConsoleMessage, Zn as isErrorLike, Zt as customQueryHandlers, _ as CdpBrowserContext, _n as DelegatedLocator, _t as Mouse, a as KnownDevices, at as CdpPreloadScript, b as convertSameSiteFromPuppeteerToCdp, bn as Locator, bt as createIncrementalIdGenerator, c as _connectToCdpBrowser, cn as Tracing, ct as isTargetClosedError, d as CdpTarget, dn as CSSCoverage, dt as ConsoleMessage, en as ARIAQueryHandler, et as valueFromJSHandle, f as DevToolsTarget, fn as Coverage, ft as CdpBluetoothEmulation, g as WorkerTarget, gn as supportedMetrics, gt as Keyboard, h as PageTarget, hn as setDefaultScreenshotOptions, ht as TargetType, i as assertSupportedUrlRestrictions, it as CdpDeviceRequestPromptManager, j as NetworkEventManager, jt as HTTPRequest, k as FrameManager, kt as HTTPResponse, l as CdpBrowser, ln as EmulatedState, lt as CdpCDPSession, m as OtherTarget, mn as Page, mt as Target, n as TaskQueue, nn as LazyArg, nt as valueFromRemoteObjectReference, o as PredefinedNetworkConditions, on as AsyncIterableUtil, ot as CdpDialog, p as InitializationStatus, pn as JSCoverage, pt as Binding, q as CDP_BINDING_PREFIX, qn as Callback, qt as parsePSelectors, r as Puppeteer, rn as transposeIterableHandle, rt as CdpDeviceRequestPrompt, s as ExtensionTransport, sn as FileChooser, st as Connection, t as PUPPETEER_REVISIONS, tn as QueryHandler, tt as valueFromPrimitiveRemoteObject, u as TargetManager, un as EmulationManager, ut as NetworkManagerEvent, v as CdpPage, vn as FilteredLocator, vt as MouseButton, w as CdpKeyboard, wn as RETRY_DELAY, wt as Realm, x as WebMCP, xn as LocatorEvent, xt as Extension, y as convertCookiesPartitionKeyFromPuppeteerToCdp, yn as FunctionLocator, yt as Touchscreen, z as CdpWebWorker, zn as EventEmitter, zt as FrameEvent } from "./index-browser-CysrjMyM.js";
4
- import { t as BrowserWebSocketTransport } from "./BrowserWebSocketTransport-wm99h94r.js";
5
- import { t as convertPuppeteerChannelToBrowsersChannel } from "./LaunchOptions-kGXcZOe0.js";
6
- import { t as NodeWebSocketTransport } from "./NodeWebSocketTransport-D9ysYGLM.js";
7
- import { spawn, spawnSync } from "node:child_process";
8
- import { mkdtemp, rename, unlink } from "node:fs/promises";
9
- import path, { dirname, join } from "node:path";
10
- import fs, { existsSync } from "node:fs";
11
- import os, { tmpdir } from "node:os";
12
- import { debuglog } from "node:util";
13
- import { PassThrough } from "node:stream";
14
-
15
- //#region node_modules/puppeteer-core/lib/puppeteer/node-env-setup.js
16
- environment.value = {
17
- fs,
18
- path,
19
- debuglog,
20
- ScreenRecorder: environment.value.ScreenRecorder
21
- };
22
-
23
- //#endregion
24
- //#region node_modules/puppeteer-core/lib/puppeteer/node/PipeTransport.js
25
- /**
26
- * @internal
27
- */
28
- var PipeTransport = class {
29
- #pipeWrite;
30
- #subscriptions = new DisposableStack();
31
- #isClosed = false;
32
- #pendingMessage = [];
33
- onclose;
34
- onmessage;
35
- constructor(pipeWrite, pipeRead) {
36
- this.#pipeWrite = pipeWrite;
37
- const pipeReadEmitter = this.#subscriptions.use(new EventEmitter(pipeRead));
38
- pipeReadEmitter.on("data", (buffer) => {
39
- return this.#dispatch(buffer);
40
- });
41
- pipeReadEmitter.on("close", () => {
42
- if (this.onclose) this.onclose.call(null);
43
- });
44
- pipeReadEmitter.on("error", debugCatchError);
45
- this.#subscriptions.use(new EventEmitter(pipeWrite)).on("error", debugCatchError);
46
- }
47
- send(message) {
48
- assert(!this.#isClosed, "`PipeTransport` is closed.");
49
- this.#pipeWrite.write(message);
50
- this.#pipeWrite.write("\0");
51
- }
52
- #dispatch(buffer) {
53
- assert(!this.#isClosed, "`PipeTransport` is closed.");
54
- this.#pendingMessage.push(buffer);
55
- if (buffer.indexOf("\0") === -1) return;
56
- const concatBuffer = Buffer.concat(this.#pendingMessage);
57
- let start = 0;
58
- let end = concatBuffer.indexOf("\0");
59
- while (end !== -1) {
60
- const message = concatBuffer.toString(void 0, start, end);
61
- setImmediate(() => {
62
- if (this.onmessage) this.onmessage.call(null, message);
63
- });
64
- start = end + 1;
65
- end = concatBuffer.indexOf("\0", start);
66
- }
67
- if (start >= concatBuffer.length) this.#pendingMessage = [];
68
- else this.#pendingMessage = [concatBuffer.subarray(start)];
69
- }
70
- close() {
71
- this.#isClosed = true;
72
- this.#subscriptions.dispose();
73
- }
74
- };
75
-
76
- //#endregion
77
- //#region node_modules/puppeteer-core/lib/puppeteer/node/BrowserLauncher.js
78
- /**
79
- * @internal
80
- */
81
- function getBrowserTypeDisplayName(browserType) {
82
- switch (browserType) {
83
- case Browser$1.FIREFOX:
84
- case Browser$1.CHROME: return browserType.charAt(0).toUpperCase() + browserType.slice(1);
85
- default: return browserType;
86
- }
87
- }
88
- /**
89
- * Describes a launcher - a class that is able to create and launch a browser instance.
90
- *
91
- * @public
92
- */
93
- var BrowserLauncher = class {
94
- #browser;
95
- /**
96
- * @internal
97
- */
98
- puppeteer;
99
- /**
100
- * @internal
101
- */
102
- constructor(puppeteer$1, browser) {
103
- this.puppeteer = puppeteer$1;
104
- this.#browser = browser;
105
- }
106
- get browser() {
107
- return this.#browser;
108
- }
109
- async launch(options = {}) {
110
- const { dumpio = false, enableExtensions = false, extensionsEnabledInIncognito = [], env = process.env, handleSIGINT = true, handleSIGTERM = true, handleSIGHUP = true, acceptInsecureCerts = false, networkEnabled = true, issuesEnabled = true, defaultViewport = DEFAULT_VIEWPORT, downloadBehavior, slowMo = 0, timeout: timeout$1 = 3e4, waitForInitialPage = true, protocolTimeout, handleDevToolsAsPage, idGenerator = createIncrementalIdGenerator(), blocklist, allowlist } = options;
111
- let { protocol } = options;
112
- if (this.#browser === "firefox" && protocol === void 0) protocol = "webDriverBiDi";
113
- assertSupportedUrlRestrictions({
114
- allowlist,
115
- blocklist,
116
- protocol
117
- });
118
- if (this.#browser === "firefox" && protocol === "cdp") throw new Error("Connecting to Firefox using CDP is no longer supported");
119
- const launchArgs = await this.computeLaunchArguments({
120
- ...options,
121
- protocol
122
- });
123
- if (!existsSync(launchArgs.executablePath)) throw new Error(`Browser was not found at the configured executablePath (${launchArgs.executablePath})`);
124
- const usePipe = launchArgs.args.includes("--remote-debugging-pipe");
125
- const onProcessExit = async () => {
126
- await this.cleanUserDataDir(launchArgs.userDataDir, { isTemp: launchArgs.isTempUserDataDir });
127
- };
128
- if (this.#browser === "firefox" && protocol === "webDriverBiDi" && usePipe) throw new Error("Pipe connections are not supported with Firefox and WebDriver BiDi");
129
- const browserProcess = launch$1({
130
- executablePath: launchArgs.executablePath,
131
- args: launchArgs.args,
132
- handleSIGHUP,
133
- handleSIGTERM,
134
- handleSIGINT,
135
- dumpio,
136
- env,
137
- pipe: usePipe,
138
- onExit: onProcessExit,
139
- signal: options.signal
140
- });
141
- let browser;
142
- let cdpConnection;
143
- let closing = false;
144
- const browserCloseCallback = async () => {
145
- if (closing) return;
146
- closing = true;
147
- await this.closeBrowser(browserProcess, cdpConnection);
148
- };
149
- try {
150
- if (this.#browser === "firefox") browser = await this.createBiDiBrowser(browserProcess, browserCloseCallback, {
151
- timeout: timeout$1,
152
- protocolTimeout,
153
- slowMo,
154
- defaultViewport,
155
- acceptInsecureCerts,
156
- networkEnabled,
157
- idGenerator
158
- });
159
- else {
160
- if (usePipe) cdpConnection = await this.createCdpPipeConnection(browserProcess, {
161
- timeout: timeout$1,
162
- protocolTimeout,
163
- slowMo,
164
- idGenerator
165
- });
166
- else cdpConnection = await this.createCdpSocketConnection(browserProcess, {
167
- timeout: timeout$1,
168
- protocolTimeout,
169
- slowMo,
170
- idGenerator
171
- });
172
- if (protocol === "webDriverBiDi") browser = await this.createBiDiOverCdpBrowser(browserProcess, cdpConnection, browserCloseCallback, {
173
- defaultViewport,
174
- acceptInsecureCerts,
175
- networkEnabled,
176
- issuesEnabled
177
- });
178
- else browser = await CdpBrowser._create(cdpConnection, [], acceptInsecureCerts, defaultViewport, downloadBehavior, browserProcess.nodeProcess, browserCloseCallback, options.targetFilter, void 0, void 0, networkEnabled, issuesEnabled, handleDevToolsAsPage, blocklist, allowlist);
179
- }
180
- } catch (error) {
181
- browserCloseCallback();
182
- const logs = browserProcess.getRecentLogs().join("\n");
183
- if (logs.includes("Failed to create a ProcessSingleton for your profile directory") || process.platform === "win32" && existsSync(join(launchArgs.userDataDir, "lockfile"))) throw new Error(`The browser is already running for ${launchArgs.userDataDir}. Use a different \`userDataDir\` or stop the running browser first.`);
184
- if (logs.includes("Missing X server") && options.headless === false) throw new Error(`Missing X server to start the headful browser. Either set headless to true or use xvfb-run to run your Puppeteer script.`);
185
- if (error instanceof TimeoutError$1) throw new TimeoutError(error.message);
186
- throw error;
187
- }
188
- if (Array.isArray(enableExtensions)) await Promise.all([enableExtensions.map((path$1) => {
189
- return browser.installExtension(path$1, { enabledInIncognito: extensionsEnabledInIncognito.includes(path$1) });
190
- })]);
191
- if (waitForInitialPage) await this.waitForPageTarget(browser, timeout$1);
192
- return browser;
193
- }
194
- /**
195
- * @internal
196
- */
197
- async closeBrowser(browserProcess, cdpConnection) {
198
- if (cdpConnection) try {
199
- await cdpConnection.closeBrowser();
200
- await browserProcess.hasClosed();
201
- } catch (error) {
202
- debugError?.(error);
203
- await browserProcess.close();
204
- }
205
- else await firstValueFrom(race(from(browserProcess.hasClosed()), timer(5e3).pipe(map(() => {
206
- return from(browserProcess.close());
207
- }))));
208
- }
209
- /**
210
- * @internal
211
- */
212
- async waitForPageTarget(browser, timeout$1) {
213
- try {
214
- await browser.waitForTarget((t) => {
215
- return t.type() === "page";
216
- }, { timeout: timeout$1 });
217
- } catch (error) {
218
- await browser.close();
219
- throw error;
220
- }
221
- }
222
- /**
223
- * @internal
224
- */
225
- async createCdpSocketConnection(browserProcess, opts) {
226
- const browserWSEndpoint = await browserProcess.waitForLineOutput(CDP_WEBSOCKET_ENDPOINT_REGEX, opts.timeout);
227
- return new Connection(browserWSEndpoint, await NodeWebSocketTransport.create(browserWSEndpoint), opts.slowMo, opts.protocolTimeout, false, opts.idGenerator);
228
- }
229
- /**
230
- * @internal
231
- */
232
- async createCdpPipeConnection(browserProcess, opts) {
233
- const { 3: pipeWrite, 4: pipeRead } = browserProcess.nodeProcess.stdio;
234
- return new Connection("", new PipeTransport(pipeWrite, pipeRead), opts.slowMo, opts.protocolTimeout, false, opts.idGenerator);
235
- }
236
- /**
237
- * @internal
238
- */
239
- async createBiDiOverCdpBrowser(browserProcess, cdpConnection, closeCallback, opts) {
240
- const bidiOnly = process.env["PUPPETEER_WEBDRIVER_BIDI_ONLY"] === "true";
241
- const BiDi = await import(
242
- /* webpackIgnore: true */
243
- "./bidi-BalpKaJc.js"
244
- );
245
- const bidiConnection = await BiDi.connectBidiOverCdp(cdpConnection);
246
- return await BiDi.BidiBrowser.create({
247
- connection: bidiConnection,
248
- cdpConnection: bidiOnly ? void 0 : cdpConnection,
249
- closeCallback,
250
- process: browserProcess.nodeProcess,
251
- defaultViewport: opts.defaultViewport,
252
- acceptInsecureCerts: opts.acceptInsecureCerts,
253
- networkEnabled: opts.networkEnabled,
254
- issuesEnabled: opts.issuesEnabled
255
- });
256
- }
257
- /**
258
- * @internal
259
- */
260
- async createBiDiBrowser(browserProcess, closeCallback, opts) {
261
- const browserWSEndpoint = await browserProcess.waitForLineOutput(WEBDRIVER_BIDI_WEBSOCKET_ENDPOINT_REGEX, opts.timeout) + "/session";
262
- const transport = await NodeWebSocketTransport.create(browserWSEndpoint);
263
- const BiDi = await import(
264
- /* webpackIgnore: true */
265
- "./bidi-BalpKaJc.js"
266
- );
267
- const bidiConnection = new BiDi.BidiConnection(browserWSEndpoint, transport, opts.idGenerator, opts.slowMo, opts.protocolTimeout);
268
- return await BiDi.BidiBrowser.create({
269
- connection: bidiConnection,
270
- closeCallback,
271
- process: browserProcess.nodeProcess,
272
- defaultViewport: opts.defaultViewport,
273
- acceptInsecureCerts: opts.acceptInsecureCerts,
274
- networkEnabled: opts.networkEnabled ?? true,
275
- issuesEnabled: opts.issuesEnabled ?? true
276
- });
277
- }
278
- /**
279
- * @internal
280
- */
281
- async getProfilePath() {
282
- return join((await this.puppeteer.configuration()).temporaryDirectory ?? tmpdir(), `puppeteer_dev_${this.browser}_profile-`);
283
- }
284
- /**
285
- * @internal
286
- */
287
- async resolveExecutablePath(headless, validatePath = true) {
288
- const config = await this.puppeteer.configuration();
289
- let executablePath$1 = config.executablePath;
290
- if (executablePath$1) {
291
- if (validatePath && !existsSync(executablePath$1)) throw new Error(`Tried to find the browser at the configured path (${executablePath$1}), but no executable was found.`);
292
- return executablePath$1;
293
- }
294
- function puppeteerBrowserToInstalledBrowser(browser, headless$1) {
295
- switch (browser) {
296
- case "chrome":
297
- if (headless$1 === "shell") return Browser$1.CHROMEHEADLESSSHELL;
298
- return Browser$1.CHROME;
299
- case "firefox": return Browser$1.FIREFOX;
300
- }
301
- return Browser$1.CHROME;
302
- }
303
- const browserType = puppeteerBrowserToInstalledBrowser(this.browser, headless);
304
- const defaultDownloadPath = await this.puppeteer.defaultDownloadPath();
305
- const browserVersion = await this.puppeteer.browserVersion();
306
- executablePath$1 = computeExecutablePath({
307
- cacheDir: defaultDownloadPath,
308
- browser: browserType,
309
- buildId: browserVersion
310
- });
311
- if (validatePath && !existsSync(executablePath$1)) {
312
- const configVersion = config?.[this.browser]?.version;
313
- if (configVersion) throw new Error(`Tried to find the browser at the configured path (${executablePath$1}) for version ${configVersion}, but no executable was found.`);
314
- throw new Error(`Could not find ${getBrowserTypeDisplayName(browserType)} (ver. ${browserVersion}). This can occur if either\n 1. you did not perform an installation before running the script (e.g. \`npx puppeteer browsers install ${browserType}\`) or\n 2. your cache path is incorrectly configured (which is: ${config.cacheDirectory}).\nFor (2), check out our guide on configuring puppeteer at https://pptr.dev/guides/configuration.`);
315
- }
316
- return executablePath$1;
317
- }
318
- };
319
-
320
- //#endregion
321
- //#region node_modules/puppeteer-core/lib/puppeteer/node/util/fs.js
322
- const rmOptions = {
323
- force: true,
324
- recursive: true,
325
- maxRetries: 5
326
- };
327
- /**
328
- * @internal
329
- */
330
- async function rm$1(path$1) {
331
- await fs.promises.rm(path$1, rmOptions);
332
- }
333
-
334
- //#endregion
335
- //#region node_modules/puppeteer-core/lib/puppeteer/node/ChromeLauncher.js
336
- /**
337
- * @internal
338
- */
339
- var ChromeLauncher = class extends BrowserLauncher {
340
- constructor(puppeteer$1) {
341
- super(puppeteer$1, "chrome");
342
- }
343
- async launch(options = {}) {
344
- if ((await this.puppeteer.configuration()).logLevel === "warn" && process.platform === "darwin" && process.arch === "x64") {
345
- if (os.cpus()[0]?.model.includes("Apple")) console.warn([
346
- "\x1B[1m\x1B[43m\x1B[30m",
347
- "Degraded performance warning:\x1B[0m\x1B[33m",
348
- "Launching Chrome on Mac Silicon (arm64) from an x64 Node installation results in",
349
- "Rosetta translating the Chrome binary, even if Chrome is already arm64. This would",
350
- "result in huge performance issues. To resolve this, you must run Puppeteer with",
351
- "a version of Node built for arm64."
352
- ].join("\n "));
353
- }
354
- return await super.launch(options);
355
- }
356
- /**
357
- * @internal
358
- */
359
- async computeLaunchArguments(options = {}) {
360
- const { ignoreDefaultArgs = false, args = [], pipe = false, debuggingPort, channel, executablePath: executablePath$1 } = options;
361
- const chromeArguments = [];
362
- if (!ignoreDefaultArgs) chromeArguments.push(...this.defaultArgs(options));
363
- else if (Array.isArray(ignoreDefaultArgs)) chromeArguments.push(...this.defaultArgs(options).filter((arg) => {
364
- return !ignoreDefaultArgs.includes(arg);
365
- }));
366
- else chromeArguments.push(...args);
367
- if (!chromeArguments.some((argument) => {
368
- return argument.startsWith("--remote-debugging-");
369
- })) if (pipe) {
370
- assert(!debuggingPort, "Browser should be launched with either pipe or debugging port - not both.");
371
- chromeArguments.push("--remote-debugging-pipe");
372
- } else chromeArguments.push(`--remote-debugging-port=${debuggingPort || 0}`);
373
- let isTempUserDataDir = false;
374
- const userDataDirIndex = chromeArguments.findIndex((arg) => {
375
- return arg.startsWith("--user-data-dir");
376
- });
377
- let userDataDir;
378
- if (userDataDirIndex < 0) {
379
- isTempUserDataDir = true;
380
- userDataDir = await mkdtemp(await this.getProfilePath());
381
- chromeArguments.push(`--user-data-dir=${userDataDir}`);
382
- } else {
383
- const parsedUserDataDir = chromeArguments[userDataDirIndex].split("=", 2)[1];
384
- assert(typeof parsedUserDataDir === "string", "`--user-data-dir` is malformed");
385
- userDataDir = parsedUserDataDir;
386
- }
387
- let chromeExecutable = executablePath$1;
388
- if (!chromeExecutable) {
389
- assert(channel || !this.puppeteer._isPuppeteerCore, `An \`executablePath\` or \`channel\` must be specified for \`puppeteer-core\``);
390
- chromeExecutable = channel ? await this.executablePath(channel) : await this.resolveExecutablePath(options.headless ?? true);
391
- }
392
- return {
393
- executablePath: chromeExecutable,
394
- args: chromeArguments,
395
- isTempUserDataDir,
396
- userDataDir
397
- };
398
- }
399
- /**
400
- * @internal
401
- */
402
- async cleanUserDataDir(path$1, opts) {
403
- if (opts.isTemp) try {
404
- await rm$1(path$1);
405
- } catch (error) {
406
- debugError?.(error);
407
- throw error;
408
- }
409
- }
410
- defaultArgs(options = {}) {
411
- const userDisabledFeatures = getFeatures("--disable-features", options.args);
412
- if (options.args && userDisabledFeatures.length > 0) removeMatchingFlags(options.args, "--disable-features");
413
- const turnOnExperimentalFeaturesForTesting = process.env["PUPPETEER_TEST_EXPERIMENTAL_CHROME_FEATURES"] === "true";
414
- const userEnabledFeatures = getFeatures("--enable-features", options.args);
415
- if (options.args && userEnabledFeatures.length > 0) removeMatchingFlags(options.args, "--enable-features");
416
- const enabledFeatures = ["PdfOopif", ...userEnabledFeatures].filter((feature) => {
417
- return feature !== "";
418
- });
419
- const chromeArguments = [
420
- "--allow-pre-commit-input",
421
- "--disable-background-networking",
422
- "--disable-background-timer-throttling",
423
- "--disable-backgrounding-occluded-windows",
424
- "--disable-breakpad",
425
- "--disable-client-side-phishing-detection",
426
- "--disable-component-extensions-with-background-pages",
427
- "--disable-crash-reporter",
428
- "--disable-default-apps",
429
- "--disable-dev-shm-usage",
430
- "--disable-hang-monitor",
431
- "--disable-infobars",
432
- "--disable-ipc-flooding-protection",
433
- "--disable-popup-blocking",
434
- "--disable-prompt-on-repost",
435
- "--disable-renderer-backgrounding",
436
- "--disable-search-engine-choice-screen",
437
- "--disable-sync",
438
- "--enable-automation",
439
- "--export-tagged-pdf",
440
- "--force-color-profile=srgb",
441
- "--generate-pdf-document-outline",
442
- "--metrics-recording-only",
443
- "--no-first-run",
444
- "--password-store=basic",
445
- "--use-mock-keychain",
446
- `--disable-features=${[
447
- "Translate",
448
- "AcceptCHFrame",
449
- "MediaRouter",
450
- "OptimizationHints",
451
- "WebUIReloadButton",
452
- ...turnOnExperimentalFeaturesForTesting ? [] : ["ProcessPerSiteUpToMainFrameThreshold", "IsolateSandboxedIframes"],
453
- ...userDisabledFeatures
454
- ].filter((feature) => {
455
- return feature !== "";
456
- }).filter((disabledFeature) => {
457
- return !enabledFeatures.includes(disabledFeature);
458
- }).join(",")}`,
459
- `--enable-features=${enabledFeatures.join(",")}`
460
- ].filter((arg) => {
461
- return arg !== "";
462
- });
463
- const { devtools = false, headless = !devtools, args = [], userDataDir, enableExtensions = false } = options;
464
- if (process.env["PUPPETEER_DANGEROUS_NO_SANDBOX"] === "true" && !args.includes("--no-sandbox")) chromeArguments.push("--no-sandbox");
465
- if (userDataDir) chromeArguments.push(`--user-data-dir=${path.posix.isAbsolute(userDataDir) || path.win32.isAbsolute(userDataDir) ? userDataDir : path.resolve(userDataDir)}`);
466
- if (devtools) chromeArguments.push("--auto-open-devtools-for-tabs");
467
- if (headless) chromeArguments.push(headless === "shell" ? "--headless" : "--headless=new", "--hide-scrollbars", "--mute-audio");
468
- if (!enableExtensions) chromeArguments.push("--disable-extensions");
469
- if (args.every((arg) => {
470
- return arg.startsWith("-");
471
- })) chromeArguments.push("about:blank");
472
- chromeArguments.push(...args);
473
- return chromeArguments;
474
- }
475
- async executablePath(channel, validatePath = true) {
476
- if (channel) return computeSystemExecutablePath({
477
- browser: Browser$1.CHROME,
478
- channel: convertPuppeteerChannelToBrowsersChannel(channel)
479
- });
480
- else return await this.resolveExecutablePath(void 0, validatePath);
481
- }
482
- };
483
- /**
484
- * Extracts all features from the given command-line flag
485
- * (e.g. `--enable-features`, `--enable-features=`).
486
- *
487
- * Example input:
488
- * ["--enable-features=NetworkService,NetworkServiceInProcess", "--enable-features=Foo"]
489
- *
490
- * Example output:
491
- * ["NetworkService", "NetworkServiceInProcess", "Foo"]
492
- *
493
- * @internal
494
- */
495
- function getFeatures(flag, options = []) {
496
- const prefix = flag.endsWith("=") ? flag : `${flag}=`;
497
- return options.filter((s) => {
498
- return s.startsWith(prefix);
499
- }).flatMap((s) => {
500
- return s.substring(s.indexOf("=") + 1).trim().split(",").map((feature) => {
501
- return feature.trim();
502
- });
503
- }).filter((s) => {
504
- return s;
505
- });
506
- }
507
- /**
508
- * Removes all elements in-place from the given string array
509
- * that match the given command-line flag.
510
- *
511
- * @internal
512
- */
513
- function removeMatchingFlags(array, flag) {
514
- const prefix = flag.endsWith("=") ? flag : `${flag}=`;
515
- let i = 0;
516
- while (i < array.length) if (array[i].startsWith(prefix)) array.splice(i, 1);
517
- else i++;
518
- return array;
519
- }
520
-
521
- //#endregion
522
- //#region node_modules/puppeteer-core/lib/puppeteer/node/FirefoxLauncher.js
523
- /**
524
- * @internal
525
- */
526
- var FirefoxLauncher = class FirefoxLauncher extends BrowserLauncher {
527
- constructor(puppeteer$1) {
528
- super(puppeteer$1, "firefox");
529
- }
530
- static getPreferences(extraPrefsFirefox) {
531
- return {
532
- ...extraPrefsFirefox,
533
- "fission.webContentIsolationStrategy": 0
534
- };
535
- }
536
- /**
537
- * @internal
538
- */
539
- async computeLaunchArguments(options = {}) {
540
- const { ignoreDefaultArgs = false, args = [], executablePath: executablePath$1, pipe = false, extraPrefsFirefox = {}, debuggingPort = null } = options;
541
- const firefoxArguments = [];
542
- if (!ignoreDefaultArgs) firefoxArguments.push(...this.defaultArgs(options));
543
- else if (Array.isArray(ignoreDefaultArgs)) firefoxArguments.push(...this.defaultArgs(options).filter((arg) => {
544
- return !ignoreDefaultArgs.includes(arg);
545
- }));
546
- else firefoxArguments.push(...args);
547
- if (!firefoxArguments.some((argument) => {
548
- return argument.startsWith("--remote-debugging-");
549
- })) {
550
- if (pipe) assert(debuggingPort === null, "Browser should be launched with either pipe or debugging port - not both.");
551
- firefoxArguments.push(`--remote-debugging-port=${debuggingPort || 0}`);
552
- }
553
- let userDataDir;
554
- let isTempUserDataDir = true;
555
- const profileArgIndex = firefoxArguments.findIndex((arg) => {
556
- return ["-profile", "--profile"].includes(arg);
557
- });
558
- if (profileArgIndex !== -1) {
559
- userDataDir = firefoxArguments[profileArgIndex + 1];
560
- if (!userDataDir) throw new Error(`Missing value for profile command line argument`);
561
- isTempUserDataDir = false;
562
- } else {
563
- userDataDir = await mkdtemp(await this.getProfilePath());
564
- firefoxArguments.push("--profile");
565
- firefoxArguments.push(userDataDir);
566
- }
567
- await createProfile(Browser$1.FIREFOX, {
568
- path: userDataDir,
569
- preferences: FirefoxLauncher.getPreferences(extraPrefsFirefox)
570
- });
571
- let firefoxExecutable;
572
- if (this.puppeteer._isPuppeteerCore || executablePath$1) {
573
- assert(executablePath$1, `An \`executablePath\` must be specified for \`puppeteer-core\``);
574
- firefoxExecutable = executablePath$1;
575
- } else firefoxExecutable = await this.executablePath(void 0);
576
- return {
577
- isTempUserDataDir,
578
- userDataDir,
579
- args: firefoxArguments,
580
- executablePath: firefoxExecutable
581
- };
582
- }
583
- /**
584
- * @internal
585
- */
586
- async cleanUserDataDir(userDataDir, opts) {
587
- if (opts.isTemp) try {
588
- await rm$1(userDataDir);
589
- } catch (error) {
590
- debugError?.(error);
591
- throw error;
592
- }
593
- else try {
594
- const backupSuffix = ".puppeteer";
595
- const results = await Promise.allSettled(["prefs.js", "user.js"].map(async (file) => {
596
- const prefsBackupPath = path.join(userDataDir, file + backupSuffix);
597
- if (fs.existsSync(prefsBackupPath)) {
598
- const prefsPath = path.join(userDataDir, file);
599
- await unlink(prefsPath);
600
- await rename(prefsBackupPath, prefsPath);
601
- }
602
- }));
603
- for (const result of results) if (result.status === "rejected") throw result.reason;
604
- } catch (error) {
605
- debugError?.(error);
606
- }
607
- }
608
- async executablePath(_, validatePath = true) {
609
- return await this.resolveExecutablePath(void 0, validatePath);
610
- }
611
- defaultArgs(options = {}) {
612
- const { devtools = false, headless = !devtools, args = [], userDataDir = null } = options;
613
- const firefoxArguments = [];
614
- switch (os.platform()) {
615
- case "darwin":
616
- firefoxArguments.push("--foreground");
617
- break;
618
- case "win32":
619
- firefoxArguments.push("--wait-for-browser");
620
- break;
621
- }
622
- if (userDataDir) {
623
- firefoxArguments.push("--profile");
624
- firefoxArguments.push(userDataDir);
625
- }
626
- if (headless) firefoxArguments.push("--headless");
627
- if (devtools) firefoxArguments.push("--devtools");
628
- if (args.every((arg) => {
629
- return arg.startsWith("-");
630
- })) firefoxArguments.push("about:blank");
631
- firefoxArguments.push(...args);
632
- return firefoxArguments;
633
- }
634
- };
635
-
636
- //#endregion
637
- //#region node_modules/puppeteer-core/lib/puppeteer/node/PuppeteerNode.js
638
- /**
639
- * Extends the main {@link Puppeteer} class with Node specific behaviour for
640
- * fetching and downloading browsers.
641
- *
642
- * If you're using Puppeteer in a Node environment, this is the class you'll get
643
- * when you run `import puppeteer from 'puppeteer'`.
644
- *
645
- * @remarks
646
- * The most common method to use is {@link PuppeteerNode.launch | launch}, which
647
- * is used to launch and connect to a new browser instance.
648
- *
649
- * See {@link Puppeteer | the main Puppeteer class} for methods common to all
650
- * environments, such as {@link Puppeteer.connect}.
651
- *
652
- * @example
653
- * The following is a typical example of using Puppeteer to drive automation:
654
- *
655
- * ```ts
656
- * import puppeteer from 'puppeteer';
657
- *
658
- * const browser = await puppeteer.launch();
659
- * const page = await browser.newPage();
660
- * await page.goto('https://www.google.com');
661
- * // other actions...
662
- * await browser.close();
663
- * ```
664
- *
665
- * Once you have created a `page` you have access to a large API to interact
666
- * with the page, navigate, or find certain elements in that page.
667
- * The {@link Page | `page` documentation} lists all the available methods.
668
- *
669
- * @public
670
- */
671
- var PuppeteerNode = class extends Puppeteer {
672
- #launcher;
673
- #lastLaunchedBrowser;
674
- configuration;
675
- /**
676
- * @internal
677
- */
678
- constructor(settings) {
679
- const { configuration,...commonSettings } = settings;
680
- super(commonSettings);
681
- if (configuration) this.configuration = configuration;
682
- else this.configuration = () => {
683
- return Promise.resolve({});
684
- };
685
- this.connect = this.connect.bind(this);
686
- this.launch = this.launch.bind(this);
687
- this.executablePath = this.executablePath.bind(this);
688
- this.defaultArgs = this.defaultArgs.bind(this);
689
- this.trimCache = this.trimCache.bind(this);
690
- }
691
- /**
692
- * This method attaches Puppeteer to an existing browser instance.
693
- *
694
- * @param options - Set of configurable options to set on the browser.
695
- * @returns Promise which resolves to browser instance.
696
- */
697
- connect(options) {
698
- return super.connect(options);
699
- }
700
- /**
701
- * Launches a browser instance with given arguments and options when
702
- * specified.
703
- *
704
- * When using with `puppeteer-core`,
705
- * {@link LaunchOptions.executablePath | options.executablePath} or
706
- * {@link LaunchOptions.channel | options.channel} must be provided.
707
- *
708
- * @example
709
- * You can use {@link LaunchOptions.ignoreDefaultArgs | options.ignoreDefaultArgs}
710
- * to filter out `--mute-audio` from default arguments:
711
- *
712
- * ```ts
713
- * const browser = await puppeteer.launch({
714
- * ignoreDefaultArgs: ['--mute-audio'],
715
- * });
716
- * ```
717
- *
718
- * @remarks
719
- * Puppeteer can also be used to control the Chrome browser, but it works best
720
- * with the version of Chrome for Testing downloaded by default.
721
- * There is no guarantee it will work with any other version. If Google Chrome
722
- * (rather than Chrome for Testing) is preferred, a
723
- * {@link https://www.google.com/chrome/browser/canary.html | Chrome Canary}
724
- * or
725
- * {@link https://www.chromium.org/getting-involved/dev-channel | Dev Channel}
726
- * build is suggested. See
727
- * {@link https://www.howtogeek.com/202825/what%E2%80%99s-the-difference-between-chromium-and-chrome/ | this article}
728
- * for a description of the differences between Chromium and Chrome.
729
- * {@link https://chromium.googlesource.com/chromium/src/+/lkgr/docs/chromium_browser_vs_google_chrome.md | This article}
730
- * describes some differences for Linux users. See
731
- * {@link https://developer.chrome.com/blog/chrome-for-testing/ | this doc} for the description
732
- * of Chrome for Testing.
733
- *
734
- * @param options - Options to configure launching behavior.
735
- */
736
- async launch(options = {}) {
737
- const { browser = await this.defaultBrowser() } = options;
738
- this.#lastLaunchedBrowser = browser;
739
- if (!["chrome", "firefox"].includes(browser)) throw new Error(`Unknown product: ${browser}`);
740
- this.#launcher = this.#getLauncher(browser);
741
- return await this.#launcher.launch(options);
742
- }
743
- /**
744
- * @internal
745
- */
746
- #getLauncher(browser) {
747
- if (this.#launcher && this.#launcher.browser === browser) return this.#launcher;
748
- switch (browser) {
749
- case "chrome": return new ChromeLauncher(this);
750
- case "firefox": return new FirefoxLauncher(this);
751
- default: throw new Error(`Unknown product: ${browser}`);
752
- }
753
- }
754
- async executablePath(optsOrChannel) {
755
- if (optsOrChannel === void 0) return await this.#getLauncher(await this.lastLaunchedBrowser()).executablePath(void 0, false);
756
- if (typeof optsOrChannel === "string") return await this.#getLauncher("chrome").executablePath(optsOrChannel, false);
757
- return await this.#getLauncher(optsOrChannel.browser ?? await this.lastLaunchedBrowser()).resolveExecutablePath(optsOrChannel.headless, false);
758
- }
759
- /**
760
- * @internal
761
- */
762
- async browserVersion() {
763
- const config = await this.configuration();
764
- const lastLaunched = await this.lastLaunchedBrowser();
765
- return config?.[lastLaunched]?.version ?? PUPPETEER_REVISIONS[lastLaunched];
766
- }
767
- /**
768
- * The default download path for puppeteer. For puppeteer-core, this
769
- * code should never be called as it is never defined.
770
- *
771
- * @internal
772
- */
773
- async defaultDownloadPath() {
774
- return (await this.configuration()).cacheDirectory;
775
- }
776
- /**
777
- * The name of the browser that was last launched.
778
- */
779
- async lastLaunchedBrowser() {
780
- return this.#lastLaunchedBrowser ?? await this.defaultBrowser();
781
- }
782
- /**
783
- * The name of the browser that will be launched by default. For
784
- * `puppeteer`, this is influenced by your configuration. Otherwise, it's
785
- * `chrome`.
786
- */
787
- async defaultBrowser() {
788
- return (await this.configuration()).defaultBrowser ?? "chrome";
789
- }
790
- /**
791
- * @param options - Set of configurable options to set on the browser.
792
- *
793
- * @returns The default arguments that the browser will be launched with.
794
- */
795
- async defaultArgs(options = {}) {
796
- return this.#getLauncher(options.browser ?? await this.lastLaunchedBrowser()).defaultArgs(options);
797
- }
798
- /**
799
- * Removes all non-current Firefox and Chrome binaries in the cache directory
800
- * identified by the provided Puppeteer configuration. The current browser
801
- * version is determined by resolving PUPPETEER_REVISIONS from Puppeteer
802
- * unless `configuration.browserRevision` is provided.
803
- *
804
- * @remarks
805
- *
806
- * Note that the method does not check if any other Puppeteer versions
807
- * installed on the host that use the same cache directory require the
808
- * non-current binaries.
809
- *
810
- * @public
811
- */
812
- async trimCache() {
813
- const platform = detectBrowserPlatform();
814
- if (!platform) throw new Error("The current platform is not supported.");
815
- const config = await this.configuration();
816
- const cacheDir = config.cacheDirectory;
817
- const installedBrowsers = await getInstalledBrowsers({ cacheDir });
818
- const puppeteerBrowsers = [{
819
- product: "chrome",
820
- browser: Browser$1.CHROME,
821
- currentBuildId: ""
822
- }, {
823
- product: "firefox",
824
- browser: Browser$1.FIREFOX,
825
- currentBuildId: ""
826
- }];
827
- await Promise.all(puppeteerBrowsers.map(async (item) => {
828
- const tag = config?.[item.product]?.version ?? PUPPETEER_REVISIONS[item.product];
829
- item.currentBuildId = await resolveBuildId(item.browser, platform, tag);
830
- }));
831
- const currentBrowserBuilds = new Set(puppeteerBrowsers.map((browser) => {
832
- return `${browser.browser}_${browser.currentBuildId}`;
833
- }));
834
- const currentBrowsers = new Set(puppeteerBrowsers.map((browser) => {
835
- return browser.browser;
836
- }));
837
- for (const installedBrowser of installedBrowsers) {
838
- if (!currentBrowsers.has(installedBrowser.browser)) continue;
839
- if (currentBrowserBuilds.has(`${installedBrowser.browser}_${installedBrowser.buildId}`)) continue;
840
- await uninstall({
841
- browser: installedBrowser.browser,
842
- platform,
843
- cacheDir,
844
- buildId: installedBrowser.buildId
845
- });
846
- }
847
- }
848
- };
849
-
850
- //#endregion
851
- //#region node_modules/puppeteer-core/lib/puppeteer/node/ScreenRecorder.js
852
- /**
853
- * @license
854
- * Copyright 2023 Google Inc.
855
- * SPDX-License-Identifier: Apache-2.0
856
- */
857
- var __runInitializers = void 0 && (void 0).__runInitializers || function(thisArg, initializers, value) {
858
- var useValue = arguments.length > 2;
859
- for (var i = 0; i < initializers.length; i++) value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg);
860
- return useValue ? value : void 0;
861
- };
862
- var __esDecorate = void 0 && (void 0).__esDecorate || function(ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) {
863
- function accept(f) {
864
- if (f !== void 0 && typeof f !== "function") throw new TypeError("Function expected");
865
- return f;
866
- }
867
- var kind = contextIn.kind, key = kind === "getter" ? "get" : kind === "setter" ? "set" : "value";
868
- var target = !descriptorIn && ctor ? contextIn["static"] ? ctor : ctor.prototype : null;
869
- var descriptor = descriptorIn || (target ? Object.getOwnPropertyDescriptor(target, contextIn.name) : {});
870
- var _, done = false;
871
- for (var i = decorators.length - 1; i >= 0; i--) {
872
- var context = {};
873
- for (var p in contextIn) context[p] = p === "access" ? {} : contextIn[p];
874
- for (var p in contextIn.access) context.access[p] = contextIn.access[p];
875
- context.addInitializer = function(f) {
876
- if (done) throw new TypeError("Cannot add initializers after decoration has completed");
877
- extraInitializers.push(accept(f || null));
878
- };
879
- var result = (0, decorators[i])(kind === "accessor" ? {
880
- get: descriptor.get,
881
- set: descriptor.set
882
- } : descriptor[key], context);
883
- if (kind === "accessor") {
884
- if (result === void 0) continue;
885
- if (result === null || typeof result !== "object") throw new TypeError("Object expected");
886
- if (_ = accept(result.get)) descriptor.get = _;
887
- if (_ = accept(result.set)) descriptor.set = _;
888
- if (_ = accept(result.init)) initializers.unshift(_);
889
- } else if (_ = accept(result)) if (kind === "field") initializers.unshift(_);
890
- else descriptor[key] = _;
891
- }
892
- if (target) Object.defineProperty(target, contextIn.name, descriptor);
893
- done = true;
894
- };
895
- var __setFunctionName = void 0 && (void 0).__setFunctionName || function(f, name, prefix) {
896
- if (typeof name === "symbol") name = name.description ? "[".concat(name.description, "]") : "";
897
- return Object.defineProperty(f, "name", {
898
- configurable: true,
899
- value: prefix ? "".concat(prefix, " ", name) : name
900
- });
901
- };
902
- const CRF_VALUE = 30;
903
- const DEFAULT_FPS = 30;
904
- const debugFfmpeg = debug("puppeteer:ffmpeg");
905
- /**
906
- * Computes how many encoder frames to emit for a captured frame that spans
907
- * `[previousTimestamp, timestamp]`, so that the cumulative number of emitted
908
- * frames tracks a constant-`fps` grid anchored at `startTimestamp`.
909
- *
910
- * Counting each interval independently with
911
- * `Math.round(fps * (timestamp - previousTimestamp))` is wrong when frames are
912
- * captured faster than `fps`: every sub-`1/fps` interval still rounds up to a
913
- * whole frame, so the emitted frame count grows with the capture rate instead
914
- * of staying at `fps * duration`, which stretches playback (and, for very high
915
- * capture rates, the per-interval value rounds down to 0 and frames are
916
- * dropped). Differencing the rounded cumulative position keeps the total at
917
- * `Math.round(fps * (lastTimestamp - startTimestamp))`, independent of the
918
- * capture rate.
919
- *
920
- * Timestamps are in seconds (CDP `Page.screencastFrame` metadata timestamps).
921
- *
922
- * @internal
923
- */
924
- function countFrames(startTimestamp, previousTimestamp, timestamp, fps) {
925
- const end = Math.round((timestamp - startTimestamp) * fps);
926
- const start = Math.round((previousTimestamp - startTimestamp) * fps);
927
- return Math.max(0, end - start);
928
- }
929
- /**
930
- * @public
931
- */
932
- let ScreenRecorder = (() => {
933
- let _classSuper = PassThrough;
934
- let _instanceExtraInitializers = [];
935
- let _private_writeFrame_decorators;
936
- let _private_writeFrame_descriptor;
937
- let _stop_decorators;
938
- return class ScreenRecorder$1 extends _classSuper {
939
- static {
940
- const _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;
941
- __esDecorate(this, _private_writeFrame_descriptor = { value: __setFunctionName(async function(buffer) {
942
- const error = await new Promise((resolve$1) => {
943
- this.#process.stdin.write(buffer, resolve$1);
944
- });
945
- if (error) console.log(`ffmpeg failed to write: ${error.message}.`);
946
- }, "#writeFrame") }, _private_writeFrame_decorators, {
947
- kind: "method",
948
- name: "#writeFrame",
949
- static: false,
950
- private: true,
951
- access: {
952
- has: (obj) => #writeFrame in obj,
953
- get: (obj) => obj.#writeFrame
954
- },
955
- metadata: _metadata
956
- }, null, _instanceExtraInitializers);
957
- __esDecorate(this, null, _stop_decorators, {
958
- kind: "method",
959
- name: "stop",
960
- static: false,
961
- private: false,
962
- access: {
963
- has: (obj) => "stop" in obj,
964
- get: (obj) => obj.stop
965
- },
966
- metadata: _metadata
967
- }, null, _instanceExtraInitializers);
968
- if (_metadata) Object.defineProperty(this, Symbol.metadata, {
969
- enumerable: true,
970
- configurable: true,
971
- writable: true,
972
- value: _metadata
973
- });
974
- }
975
- #page = __runInitializers(this, _instanceExtraInitializers);
976
- #process;
977
- #controller = new AbortController();
978
- #lastFrame;
979
- #fps;
980
- /**
981
- * @internal
982
- */
983
- constructor(page, width, height, { ffmpegPath, speed, scale, crop, format, fps, loop, delay, quality, colors, path: path$1, overwrite } = {}) {
984
- super({ allowHalfOpen: false });
985
- ffmpegPath ??= "ffmpeg";
986
- format ??= "webm";
987
- fps ??= DEFAULT_FPS;
988
- loop ||= -1;
989
- delay ??= -1;
990
- quality ??= CRF_VALUE;
991
- colors ??= 256;
992
- overwrite ??= true;
993
- this.#fps = fps;
994
- const { error } = spawnSync(ffmpegPath);
995
- if (error) throw error;
996
- const filters = [`crop='min(${width},iw):min(${height},ih):0:0'`, `pad=${width}:${height}:0:0`];
997
- if (speed) filters.push(`setpts=${1 / speed}*PTS`);
998
- if (crop) filters.push(`crop=${crop.width}:${crop.height}:${crop.x}:${crop.y}`);
999
- if (scale) filters.push(`scale=iw*${scale}:-1:flags=lanczos`);
1000
- const formatArgs = this.#getFormatArgs(format, fps, loop, delay, quality, colors);
1001
- const vf = formatArgs.indexOf("-vf");
1002
- if (vf !== -1) filters.push(formatArgs.splice(vf, 2).at(-1) ?? "");
1003
- if (path$1) fs.mkdirSync(dirname(path$1), { recursive: overwrite });
1004
- this.#process = spawn(ffmpegPath, [
1005
- ["-loglevel", "error"],
1006
- ["-avioflags", "direct"],
1007
- [
1008
- "-fpsprobesize",
1009
- "0",
1010
- "-probesize",
1011
- "32",
1012
- "-analyzeduration",
1013
- "0",
1014
- "-fflags",
1015
- "nobuffer"
1016
- ],
1017
- [
1018
- "-framerate",
1019
- `${fps}`,
1020
- "-f",
1021
- "image2pipe",
1022
- "-vcodec",
1023
- "png",
1024
- "-i",
1025
- "pipe:0"
1026
- ],
1027
- ["-an"],
1028
- ["-threads", "1"],
1029
- ["-b:v", "0"],
1030
- formatArgs,
1031
- ["-vf", filters.join()],
1032
- [overwrite ? "-y" : "-n"],
1033
- "pipe:1"
1034
- ].flat(), { stdio: [
1035
- "pipe",
1036
- "pipe",
1037
- "pipe"
1038
- ] });
1039
- this.#process.stdout.pipe(this);
1040
- this.#process.stderr.on("data", (data) => {
1041
- debugFfmpeg?.(data.toString("utf8"));
1042
- });
1043
- this.#page = page;
1044
- const { client } = this.#page.mainFrame();
1045
- client.once(CDPSessionEvent.Disconnected, () => {
1046
- this.stop().catch(debugCatchError);
1047
- });
1048
- let startTimestamp;
1049
- this.#lastFrame = lastValueFrom(fromEmitterEvent(client, "Page.screencastFrame").pipe(tap((event) => {
1050
- client.send("Page.screencastFrameAck", { sessionId: event.sessionId });
1051
- }), filter((event) => {
1052
- return event.metadata.timestamp !== void 0;
1053
- }), map((event) => {
1054
- return {
1055
- buffer: Buffer.from(event.data, "base64"),
1056
- timestamp: event.metadata.timestamp
1057
- };
1058
- }), bufferCount(2, 1), concatMap(([{ timestamp: previousTimestamp, buffer }, { timestamp }]) => {
1059
- startTimestamp ??= previousTimestamp;
1060
- return from(Array(countFrames(startTimestamp, previousTimestamp, timestamp, fps)).fill(buffer));
1061
- }), map((buffer) => {
1062
- this.#writeFrame(buffer);
1063
- return [buffer, performance.now()];
1064
- }), takeUntil(fromEvent(this.#controller.signal, "abort"))), { defaultValue: [Buffer.from([]), performance.now()] });
1065
- }
1066
- #getFormatArgs(format, fps, loop, delay, quality, colors) {
1067
- const libvpx = [
1068
- ["-vcodec", "vp9"],
1069
- ["-crf", `${quality}`],
1070
- [
1071
- "-deadline",
1072
- "realtime",
1073
- "-cpu-used",
1074
- `${Math.min(os.cpus().length / 2, 8)}`
1075
- ]
1076
- ];
1077
- switch (format) {
1078
- case "webm": return [...libvpx, ["-f", "webm"]].flat();
1079
- case "gif":
1080
- fps = DEFAULT_FPS === fps ? 20 : "source_fps";
1081
- if (loop === Infinity) loop = 0;
1082
- if (delay !== -1) delay /= 10;
1083
- return [
1084
- ["-vf", `fps=${fps},split[s0][s1];[s0]palettegen=stats_mode=diff:max_colors=${colors}[p];[s1][p]paletteuse=dither=bayer`],
1085
- ["-loop", `${loop}`],
1086
- ["-final_delay", `${delay}`],
1087
- ["-f", "gif"]
1088
- ].flat();
1089
- case "mp4": return [
1090
- ...libvpx,
1091
- ["-movflags", "hybrid_fragmented"],
1092
- ["-f", "mp4"]
1093
- ].flat();
1094
- }
1095
- }
1096
- get #writeFrame() {
1097
- return _private_writeFrame_descriptor.value;
1098
- }
1099
- /**
1100
- * Stops the recorder.
1101
- *
1102
- * @public
1103
- */
1104
- async stop() {
1105
- if (this.#controller.signal.aborted) return;
1106
- await this.#page._stopScreencast().catch(debugCatchError);
1107
- this.#controller.abort();
1108
- const [buffer, timestamp] = await this.#lastFrame;
1109
- await Promise.all(Array(Math.max(1, Math.round(this.#fps * (performance.now() - timestamp) / 1e3))).fill(buffer).map(this.#writeFrame.bind(this)));
1110
- this.#process.stdin.end();
1111
- await new Promise((resolve$1) => {
1112
- this.#process.once("close", resolve$1);
1113
- });
1114
- }
1115
- /**
1116
- * @internal
1117
- */
1118
- async [(_private_writeFrame_decorators = [guarded()], _stop_decorators = [guarded()], asyncDisposeSymbol)]() {
1119
- await this.stop();
1120
- await super[asyncDisposeSymbol]();
1121
- }
1122
- };
1123
- })();
1124
-
1125
- //#endregion
1126
- //#region node_modules/puppeteer-core/lib/puppeteer/puppeteer-core.js
1127
- environment.value.ScreenRecorder = ScreenRecorder;
1128
- /**
1129
- * @public
1130
- */
1131
- const puppeteer = new PuppeteerNode({ isPuppeteerCore: true });
1132
- const { connect, defaultArgs, executablePath, launch } = puppeteer;
1133
- var puppeteer_core_default = puppeteer;
1134
-
1135
- //#endregion
1136
- export { ARIAQueryHandler, Accessibility, AsyncDisposableStack, AsyncDisposableStackPolyfill, AsyncIterableUtil, Binding, Browser, BrowserContext, BrowserLauncher, BrowserWebSocketTransport, CDPSession, CDPSessionEvent, CDP_BINDING_PREFIX, CSSCoverage, Callback, CallbackRegistry, CdpBluetoothEmulation, CdpBrowser, CdpBrowserContext, CdpCDPSession, CdpDeviceRequestPrompt, CdpDeviceRequestPromptManager, CdpDialog, CdpElementHandle, CdpFrame, CdpHTTPRequest, CdpHTTPResponse, CdpJSHandle, CdpKeyboard, CdpMouse, CdpPage, CdpPreloadScript, CdpTarget, CdpTouchHandle, CdpTouchscreen, CdpWebWorker, ChromeLauncher, Connection, ConnectionClosedError, ConsoleMessage, Coverage, CustomQueryHandlerRegistry, DEFAULT_INTERCEPT_RESOLUTION_PRIORITY, DEFAULT_VIEWPORT, Deferred, DelegatedLocator, DevToolsTarget, DeviceRequestPrompt, Dialog, DisposableStack, DisposableStackPolyfill, ElementHandle, EmulatedState, EmulationManager, EventEmitter, ExecutionContext, Extension, ExtensionTransport, FileChooser, FilteredLocator, FirefoxLauncher, Frame, FrameEvent, FrameManager, FrameManagerEvent, FrameTree, FunctionLocator, HTTPRequest, HTTPResponse, InitializationStatus, InterceptResolutionAction, IsolatedWorld, JSCoverage, JSHandle, Keyboard, KnownDevices, LazyArg, LifecycleWatcher, Locator, LocatorEvent, MAIN_WORLD, MappedLocator, Mouse, MouseButton, Mutex, NETWORK_IDLE_TIME, NetworkEventManager, NetworkManager, NetworkManagerEvent, NodeLocator, OtherTarget, PQueryHandler, PUPPETEER_REVISIONS, PUPPETEER_WORLD, Page, PageTarget, PierceQueryHandler, PipeTransport, PredefinedNetworkConditions, ProtocolError, Puppeteer, PuppeteerError, PuppeteerNode, PuppeteerURL, QueryHandler, RETRY_DELAY, RaceLocator, Realm, SOURCE_URL_REGEX, STATUS_TEXTS, ScreenRecorder, ScriptInjector, SecurityDetails, SuppressedError, Target, TargetCloseError, TargetManager, TargetType, TaskManager, TaskQueue, TextQueryHandler, TimeoutError, TimeoutSettings, TouchError, Touchscreen, Tracing, UTILITY_WORLD_NAME, UnsupportedOperation, WEB_PERMISSION_TO_PROTOCOL_PERMISSION, WaitTask, WebMCP, WebMCPTool, WebMCPToolCall, WebWorker, WebWorkerEvent, WorkerTarget, XPathQueryHandler, _connectToCdpBrowser, _keyDefinitions, addPageBinding, assert, asyncDisposeSymbol, bindIsolatedHandle, connect, convertConsoleMessageLevel, convertCookiesPartitionKeyFromPuppeteerToCdp, convertSameSiteFromPuppeteerToCdp, countFrames, createClientError, createConsoleMessage, createEvaluationError, createIncrementalIdGenerator, createProtocolErrorMessage, customQueryHandlers, debug, debugCatchError, debugError, puppeteer_core_default as default, defaultArgs, disposeSymbol, evaluationString, executablePath, filterAsync, fromAbortSignal, fromEmitterEvent, getBrowserTypeDisplayName, getCapturedLogs, getFeatures, getQueryHandlerAndSelector, getReadableAsTypedArray, getReadableFromProtocolStream, getSourcePuppeteerURLIfAvailable, getSourceUrlComment, handleError, headersArray, isDate, isErrnoException, isErrorLike, isNumber, isPlainObject, isRegExp, isString, isTargetClosedError, launch, normalizeHeaderValue, pageBindingInitString, paperFormats, parsePDFOptions, parsePSelectors, referrerPolicyToProtocol, releaseObject, removeMatchingFlags, rewriteError, scriptInjector, setDefaultScreenshotOptions, setLogCapture, supportedMetrics, throwIfDetached, timeout, transposeIterableHandle, unitToPixels, validateDialogType, valueFromJSHandle, valueFromPrimitiveRemoteObject, valueFromRemoteObjectReference, withSourcePuppeteerURLIfNone };