better-dsh 0.2.5-c → 0.2.5-e

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 (967) hide show
  1. package/THIRD_PARTY_NOTICES.md +3 -0
  2. package/docs/20_specs/ast/spec.md +26 -3
  3. package/docs/20_specs/dvc/spec.md +20 -1
  4. package/docs/50_test-reports/2026-10-03-ast-engine-deomp-4999/345/256/236/346/265/213/346/212/245/345/221/212.md +325 -0
  5. package/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 +1 -1
  6. package/docs/50_test-reports/2026-10-03-docs-packaging-trim/345/256/236/346/265/213/346/212/245/345/221/212.md +82 -0
  7. package/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 +1 -1
  8. package/docs/50_test-reports/2026-10-04-ast-engine-deomp-0.2.5-d/345/217/221/345/270/203/351/252/214/346/224/266/346/212/245/345/221/212.md +220 -0
  9. package/docs/50_test-reports/2026-10-04-ast_grep/344/270/216ast_edit/345/245/221/347/272/246/344/270/216/350/276/271/347/225/214/345/256/236/346/265/213/346/212/245/345/221/212.md +151 -0
  10. package/docs/dev-test-environment-notes.md +137 -0
  11. package/docs/specs/ast/spec.md +26 -3
  12. package/docs/specs/ast-engine-deomp/spec.md +170 -0
  13. package/docs/specs/authentication-only-web-admission/spec.md +51 -0
  14. package/docs/specs/docs-packaging-trim/spec.md +110 -0
  15. package/docs/specs/dvc/spec.md +20 -1
  16. package/docs/superpowers/plans/2026-10-03-ast-engine-deomp.md +1214 -0
  17. package/docs/superpowers/plans/2026-10-03-docs-packaging-trim.md +181 -0
  18. package/lib/BrowserWebSocketTransport-D1aFReu_.js +4 -0
  19. package/lib/{BrowserWebSocketTransport-FbPg_VFT.js → BrowserWebSocketTransport-wm99h94r.js} +1 -1
  20. package/lib/LaunchOptions-3peHoOAx.js +4 -0
  21. package/lib/{LaunchOptions-RNO1YIoJ.js → LaunchOptions-DXdeJis3.js} +1 -1
  22. package/lib/NodeWebSocketTransport-BRLjmu2R.js +4 -0
  23. package/lib/{NodeWebSocketTransport-BdrEPUFe.js → NodeWebSocketTransport-D9ysYGLM.js} +9 -4
  24. package/lib/ast-assets/ast-grep.wasm +0 -0
  25. package/lib/ast-assets/tree-sitter-bash.wasm +0 -0
  26. package/lib/ast-assets/tree-sitter-c.wasm +0 -0
  27. package/lib/ast-assets/tree-sitter-cpp.wasm +0 -0
  28. package/lib/ast-assets/tree-sitter-css.wasm +0 -0
  29. package/lib/ast-assets/tree-sitter-go.wasm +0 -0
  30. package/lib/ast-assets/tree-sitter-html.wasm +0 -0
  31. package/lib/ast-assets/tree-sitter-javascript.wasm +0 -0
  32. package/lib/ast-assets/tree-sitter-json.wasm +0 -0
  33. package/lib/ast-assets/tree-sitter-python.wasm +0 -0
  34. package/lib/ast-assets/tree-sitter-ruby.wasm +0 -0
  35. package/lib/ast-assets/tree-sitter-rust.wasm +0 -0
  36. package/lib/ast-assets/tree-sitter-tsx.wasm +0 -0
  37. package/lib/ast-assets/tree-sitter-typescript.wasm +0 -0
  38. package/lib/ast-assets/tree-sitter-yaml.wasm +0 -0
  39. package/lib/ast-assets/tree-sitter.wasm +0 -0
  40. package/lib/{bidi-D0POLRy7.js → bidi-CwtLGgcA.js} +3 -3
  41. package/lib/compaction/index.d.ts +1 -1
  42. package/lib/failover/index.d.ts +1 -1
  43. package/lib/fs-aware/sandbox-plugin.js +2 -2
  44. package/lib/{index-browser-rqlXyoed.js → index-browser-Bp3vxHC3.js} +6 -6
  45. package/lib/index.d.ts +1 -1
  46. package/lib/{lsp-server-registry-LUjrrLxk.js → lsp-server-registry-BcdkHROD.js} +1 -1
  47. package/lib/{main-Dlv0Jm8U.js → main-BXwPLuYr.js} +1 -1
  48. package/lib/mobile/plugin.d.ts +2 -2
  49. package/lib/mobile/plugin.js +1 -1
  50. package/lib/{puppeteer-core-BIIJGWPE.js → puppeteer-core-Bliv_vNf.js} +8 -8
  51. package/lib/remote/plugin.d.ts +1 -1
  52. package/lib/url-schemes/index.d.ts +11 -11
  53. package/lib/url-schemes/index.js +1191 -389
  54. package/lib/wasm_bg-CNXhHjVg.js +1291 -0
  55. package/lib/web-password.d.ts +7 -7
  56. package/lib/web-tree-sitter-CPrPD4J2.js +3440 -0
  57. package/lib/{web-trust-CL9P6jVe.d.ts → web-trust-D9jFaQbH.d.ts} +15 -8
  58. package/lib/{web-trust-B27wcZEw.js → web-trust-jR0o70JS.js} +35 -3
  59. package/lib/web-trust.d.ts +1 -1
  60. package/lib/web-trust.js +1 -1
  61. package/lib/{wrap-0VA0uFx8.js → wrap-kTohEeis.js} +115 -115
  62. package/package.json +40 -18
  63. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/.tools/MdxPage-CTY7atqe.js +0 -11
  64. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/.tools/extract_omp.mjs +0 -42
  65. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/.tools/fetch_pi.py +0 -52
  66. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/.tools/jsx-runtime-BHwPObl3.js +0 -13
  67. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/.tools/omp_extracted.json +0 -1
  68. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/.tools/omp_pages.txt +0 -35
  69. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/.tools/package.json +0 -1
  70. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/.tools/pi_convert.py +0 -49
  71. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/.tools/pi_pages.txt +0 -30
  72. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/.tools/serialize_omp.py +0 -250
  73. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/README.md +0 -80
  74. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/omp/Overview.md +0 -88
  75. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/omp/acp.md +0 -151
  76. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/omp/advisor.md +0 -185
  77. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/omp/agents-and-roles.md +0 -168
  78. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/omp/approvals.md +0 -200
  79. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/omp/cli.md +0 -381
  80. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/omp/code-intelligence.md +0 -225
  81. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/omp/collab.md +0 -207
  82. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/omp/commit.md +0 -169
  83. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/omp/compaction.md +0 -195
  84. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/omp/computer.md +0 -224
  85. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/omp/context-files.md +0 -184
  86. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/omp/custom-models.md +0 -284
  87. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/omp/custom-tools.md +0 -248
  88. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/omp/debugging.md +0 -254
  89. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/omp/editing.md +0 -157
  90. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/omp/env.md +0 -552
  91. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/omp/extension-authoring.md +0 -378
  92. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/omp/files.md +0 -144
  93. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/omp/github.md +0 -175
  94. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/omp/goal.md +0 -156
  95. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/omp/handoff.md +0 -139
  96. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/omp/hooks.md +0 -257
  97. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/omp/keybindings.md +0 -204
  98. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/omp/magic-keywords.md +0 -135
  99. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/omp/marketplace.md +0 -269
  100. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/omp/mcp-authoring.md +0 -243
  101. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/omp/mcp.md +0 -260
  102. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/omp/memory.md +0 -306
  103. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/omp/modes.md +0 -214
  104. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/omp/pages.txt +0 -56
  105. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/omp/plan.md +0 -126
  106. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/omp/plugins.md +0 -287
  107. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/omp/prewalk.md +0 -122
  108. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/omp/prompt-templates.md +0 -149
  109. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/omp/providers.md +0 -229
  110. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/omp/quickstart.md +0 -117
  111. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/omp/review.md +0 -248
  112. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/omp/roles.md +0 -247
  113. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/omp/rpc.md +0 -523
  114. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/omp/sdk.md +0 -260
  115. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/omp/secrets.md +0 -199
  116. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/omp/security.md +0 -260
  117. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/omp/session-format.md +0 -254
  118. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/omp/session-tree.md +0 -135
  119. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/omp/sessions.md +0 -223
  120. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/omp/settings.md +0 -290
  121. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/omp/skills.md +0 -187
  122. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/omp/slash.md +0 -328
  123. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/omp/subagent-authoring.md +0 -165
  124. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/omp/subagents.md +0 -149
  125. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/omp/themes.md +0 -230
  126. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/omp/tools.md +0 -120
  127. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/omp/ttsr.md +0 -242
  128. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/omp/using.md +0 -214
  129. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/omp/vibe.md +0 -187
  130. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/omp/web.md +0 -233
  131. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/pi/compaction.md +0 -427
  132. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/pi/containerization.md +0 -162
  133. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/pi/custom-provider.md +0 -782
  134. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/pi/development.md +0 -96
  135. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/pi/environment-variables.md +0 -104
  136. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/pi/extensions.md +0 -3058
  137. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/pi/index.md +0 -89
  138. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/pi/json.md +0 -105
  139. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/pi/keybindings.md +0 -244
  140. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/pi/llama-cpp.md +0 -106
  141. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/pi/models.md +0 -587
  142. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/pi/packages.md +0 -234
  143. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/pi/pages.txt +0 -30
  144. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/pi/prompt-templates.md +0 -101
  145. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/pi/providers.md +0 -327
  146. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/pi/quickstart.md +0 -172
  147. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/pi/rpc.md +0 -1679
  148. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/pi/sdk.md +0 -1239
  149. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/pi/security.md +0 -64
  150. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/pi/session-format.md +0 -454
  151. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/pi/sessions.md +0 -150
  152. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/pi/settings.md +0 -374
  153. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/pi/shell-aliases.md +0 -18
  154. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/pi/skills.md +0 -241
  155. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/pi/terminal-setup.md +0 -199
  156. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/pi/termux.md +0 -135
  157. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/pi/themes.md +0 -328
  158. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/pi/tmux.md +0 -68
  159. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/pi/tui.md +0 -965
  160. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/pi/usage.md +0 -315
  161. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/pi/windows.md +0 -44
  162. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/src-scripts/crawl.py +0 -103
  163. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/src-scripts/docs-tree.json +0 -82965
  164. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/src-scripts/download.py +0 -56
  165. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/src-scripts/gen_mapping.py +0 -125
  166. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/src-scripts/pages.json +0 -232
  167. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/api-plugins.json +0 -1
  168. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/api-skills.json +0 -4
  169. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/developer-guide/_category_.json +0 -8
  170. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/developer-guide/acp-internals.md +0 -181
  171. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/developer-guide/adding-platform-adapters.md +0 -788
  172. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/developer-guide/adding-providers.md +0 -464
  173. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/developer-guide/adding-tools.md +0 -211
  174. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/developer-guide/agent-loop.md +0 -242
  175. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/developer-guide/architecture.md +0 -279
  176. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/developer-guide/billing-lifecycle.md +0 -184
  177. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/developer-guide/browser-provider-plugin.md +0 -153
  178. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/developer-guide/browser-supervisor.md +0 -198
  179. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/developer-guide/chronos-managed-cron-contract.md +0 -227
  180. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/developer-guide/cli-internals.md +0 -85
  181. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/developer-guide/codebase-ownership.md +0 -34
  182. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/developer-guide/completion-backlog-delivery.md +0 -52
  183. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/developer-guide/context-compression-and-caching.md +0 -642
  184. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/developer-guide/context-engine-plugin.md +0 -272
  185. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/developer-guide/contributing.md +0 -303
  186. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/developer-guide/creating-skills.md +0 -438
  187. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/developer-guide/cron-internals.md +0 -380
  188. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/developer-guide/desktop-plugin-sdk.md +0 -952
  189. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/developer-guide/egress-internals.md +0 -319
  190. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/developer-guide/extending-the-cli.md +0 -192
  191. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/developer-guide/gateway-internals.md +0 -297
  192. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/developer-guide/gateway-monitoring.md +0 -309
  193. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/developer-guide/gateway-session-lifecycle.md +0 -621
  194. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/developer-guide/image-gen-provider-plugin.md +0 -316
  195. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/developer-guide/memory-provider-plugin.md +0 -452
  196. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/developer-guide/micro-compaction.md +0 -406
  197. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/developer-guide/middleware.md +0 -266
  198. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/developer-guide/model-provider-plugin.md +0 -327
  199. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/developer-guide/multiplexing-gateway.md +0 -228
  200. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/developer-guide/observer-hooks.md +0 -331
  201. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/developer-guide/plugin-llm-access.md +0 -506
  202. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/developer-guide/plugins/index.md +0 -1775
  203. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/developer-guide/programmatic-integration.md +0 -212
  204. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/developer-guide/prompt-assembly.md +0 -328
  205. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/developer-guide/provider-runtime.md +0 -222
  206. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/developer-guide/relay-connector-contract.md +0 -790
  207. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/developer-guide/relay-shared-metrics.md +0 -487
  208. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/developer-guide/secret-source-plugin.md +0 -192
  209. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/developer-guide/session-storage.md +0 -523
  210. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/developer-guide/state-db-recovery.md +0 -107
  211. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/developer-guide/streaming-tts.md +0 -98
  212. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/developer-guide/subagent-lifecycle-api.md +0 -61
  213. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/developer-guide/terminal-environment-plugin.md +0 -140
  214. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/developer-guide/tools-runtime.md +0 -250
  215. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/developer-guide/trajectory-format.md +0 -232
  216. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/developer-guide/video-gen-provider-plugin.md +0 -231
  217. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/developer-guide/web-search-provider-plugin.md +0 -260
  218. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/developer-guide/worktree-ui-dev.md +0 -168
  219. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/getting-started/_category_.json +0 -8
  220. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/getting-started/installation.md +0 -200
  221. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/getting-started/learning-path.md +0 -169
  222. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/getting-started/nix-setup.md +0 -1234
  223. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/getting-started/platform-support.md +0 -50
  224. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/getting-started/quickstart.md +0 -399
  225. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/getting-started/termux.md +0 -301
  226. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/getting-started/updating.md +0 -374
  227. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/guides/_category_.json +0 -6
  228. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/guides/agent-email-address.md +0 -93
  229. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/guides/automate-with-cron.md +0 -292
  230. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/guides/automation-blueprints.md +0 -595
  231. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/guides/aws-bedrock.md +0 -196
  232. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/guides/azure-foundry.md +0 -334
  233. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/guides/cron-script-only.md +0 -247
  234. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/guides/cron-troubleshooting.md +0 -235
  235. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/guides/daily-briefing-bot.md +0 -272
  236. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/guides/delegation-patterns.md +0 -242
  237. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/guides/desktop-native-signin.md +0 -125
  238. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/guides/github-pr-review-agent.md +0 -303
  239. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/guides/google-gemini.md +0 -270
  240. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/guides/google-vertex.md +0 -148
  241. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/guides/local-llm-on-mac.md +0 -252
  242. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/guides/local-ollama-setup.md +0 -338
  243. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/guides/manage-hermes-cloud-with-mcp.md +0 -176
  244. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/guides/microsoft-graph-app-registration.md +0 -180
  245. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/guides/migrate-from-openclaw.md +0 -252
  246. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/guides/minimax-oauth.md +0 -226
  247. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/guides/oauth-over-ssh.md +0 -172
  248. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/guides/operate-teams-meeting-pipeline.md +0 -295
  249. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/guides/pipe-script-output.md +0 -249
  250. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/guides/python-library.md +0 -333
  251. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/guides/run-hermes-with-nous-portal.md +0 -276
  252. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/guides/run-nemotron-3-ultra-free.md +0 -123
  253. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/guides/secure-hermes-on-a-work-machine.md +0 -182
  254. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/guides/team-telegram-assistant.md +0 -441
  255. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/guides/tips.md +0 -238
  256. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/guides/troubleshooting-agent-quality.md +0 -145
  257. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/guides/use-mcp-with-hermes.md +0 -541
  258. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/guides/use-soul-with-hermes.md +0 -264
  259. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/guides/use-voice-mode-with-hermes.md +0 -473
  260. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/guides/webhook-github-pr-review.md +0 -336
  261. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/guides/work-with-skills.md +0 -290
  262. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/guides/xai-grok-oauth.md +0 -243
  263. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/index.mdx +0 -155
  264. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/integrations/buzz.md +0 -57
  265. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/integrations/index.md +0 -126
  266. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/integrations/nous-portal.md +0 -286
  267. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/integrations/providers.md +0 -1681
  268. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/reference/_category_.json +0 -8
  269. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/reference/automation-blueprints-catalog.mdx +0 -36
  270. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/reference/cli-commands.md +0 -1900
  271. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/reference/cli-symbols.md +0 -126
  272. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/reference/environment-variables.md +0 -952
  273. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/reference/faq.md +0 -874
  274. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/reference/mcp-config-reference.md +0 -439
  275. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/reference/model-catalog.md +0 -121
  276. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/reference/optional-skills-catalog.md +0 -303
  277. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/reference/profile-commands.md +0 -544
  278. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/reference/skills-catalog.md +0 -132
  279. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/reference/slash-commands.md +0 -336
  280. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/reference/tools-reference.md +0 -399
  281. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/reference/toolsets-reference.md +0 -171
  282. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/_category_.json +0 -8
  283. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/bot-mode.md +0 -309
  284. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/checkpoints-and-rollback.md +0 -283
  285. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/cli.md +0 -591
  286. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/configuration.md +0 -2901
  287. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/configuring-models.md +0 -414
  288. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/desktop.md +0 -728
  289. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/docker.md +0 -896
  290. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/egress/index.md +0 -10
  291. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/egress/iron-proxy.md +0 -570
  292. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/egress/network-isolation.md +0 -201
  293. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/features/_category_.json +0 -8
  294. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/features/acp.md +0 -407
  295. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/features/api-server.md +0 -810
  296. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/features/batch-processing.md +0 -230
  297. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/features/browser.md +0 -901
  298. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/features/built-in-plugins.md +0 -366
  299. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/features/code-execution.md +0 -319
  300. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/features/codex-app-server-runtime.md +0 -460
  301. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/features/computer-use.md +0 -636
  302. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/features/context-files.md +0 -237
  303. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/features/context-references.md +0 -142
  304. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/features/credential-pools.md +0 -308
  305. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/features/credential-vault.md +0 -122
  306. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/features/cron.md +0 -1262
  307. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/features/curator.md +0 -409
  308. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/features/delegation.md +0 -664
  309. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/features/deliverable-mode.md +0 -134
  310. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/features/document-extraction.md +0 -58
  311. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/features/extending-the-dashboard.md +0 -927
  312. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/features/fallback-providers.md +0 -444
  313. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/features/goals.md +0 -293
  314. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/features/heartbeat.md +0 -68
  315. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/features/honcho.md +0 -276
  316. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/features/hooks.md +0 -2007
  317. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/features/image-generation.md +0 -347
  318. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/features/kanban-multi-gateway.md +0 -52
  319. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/features/kanban-tutorial.md +0 -310
  320. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/features/kanban-worker-lanes.md +0 -142
  321. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/features/kanban.md +0 -1327
  322. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/features/loops.md +0 -122
  323. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/features/lsp.md +0 -307
  324. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/features/mcp.md +0 -957
  325. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/features/memory-providers.md +0 -699
  326. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/features/memory.md +0 -466
  327. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/features/mixture-of-agents.md +0 -246
  328. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/features/overview.md +0 -57
  329. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/features/personality.md +0 -289
  330. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/features/pets.md +0 -236
  331. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/features/plugin-catalog.md +0 -212
  332. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/features/plugins.md +0 -847
  333. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/features/provider-routing.md +0 -229
  334. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/features/skills.md +0 -1112
  335. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/features/skins.md +0 -271
  336. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/features/spotify.md +0 -279
  337. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/features/subscription-proxy.md +0 -203
  338. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/features/tool-gateway.md +0 -223
  339. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/features/tool-search.md +0 -277
  340. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/features/tools.md +0 -261
  341. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/features/tts.md +0 -744
  342. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/features/vision.md +0 -214
  343. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/features/voice-mode.md +0 -608
  344. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/features/wake-word.md +0 -343
  345. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/features/web-dashboard.md +0 -1206
  346. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/features/web-search.md +0 -506
  347. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/features/x-search.md +0 -167
  348. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/git-worktrees.md +0 -196
  349. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/import-from-other-agents.md +0 -74
  350. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/local-models.md +0 -140
  351. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/managed-scope.md +0 -157
  352. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/messaging/_category_.json +0 -8
  353. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/messaging/a2a.md +0 -130
  354. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/messaging/bluebubbles.md +0 -171
  355. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/messaging/buzz.md +0 -162
  356. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/messaging/dingtalk.md +0 -283
  357. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/messaging/discord.md +0 -936
  358. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/messaging/email.md +0 -223
  359. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/messaging/feishu.md +0 -599
  360. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/messaging/google_chat.md +0 -430
  361. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/messaging/homeassistant.md +0 -269
  362. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/messaging/index.md +0 -859
  363. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/messaging/irc.md +0 -78
  364. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/messaging/line.md +0 -201
  365. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/messaging/matrix.md +0 -910
  366. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/messaging/mattermost.md +0 -340
  367. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/messaging/msgraph-webhook.md +0 -142
  368. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/messaging/ntfy.md +0 -157
  369. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/messaging/open-webui.md +0 -296
  370. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/messaging/photon.md +0 -255
  371. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/messaging/qqbot.md +0 -123
  372. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/messaging/raft.md +0 -70
  373. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/messaging/relay.md +0 -212
  374. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/messaging/signal.md +0 -262
  375. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/messaging/simplex.md +0 -151
  376. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/messaging/slack.md +0 -1093
  377. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/messaging/sms.md +0 -203
  378. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/messaging/teams-meetings.md +0 -242
  379. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/messaging/teams.md +0 -288
  380. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/messaging/telegram.md +0 -1373
  381. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/messaging/webhooks.md +0 -694
  382. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/messaging/wecom-callback.md +0 -179
  383. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/messaging/wecom.md +0 -306
  384. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/messaging/weixin.md +0 -333
  385. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/messaging/whatsapp-cloud.md +0 -417
  386. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/messaging/whatsapp.md +0 -283
  387. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/messaging/yuanbao.md +0 -342
  388. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/multi-connection-desktop.md +0 -361
  389. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/multi-profile-gateways.md +0 -1062
  390. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/profile-distributions.md +0 -757
  391. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/profiles.md +0 -418
  392. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/secrets/bitwarden.md +0 -155
  393. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/secrets/command.md +0 -50
  394. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/secrets/index.md +0 -50
  395. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/secrets/onepassword.md +0 -169
  396. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/security.md +0 -892
  397. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/sessions.md +0 -990
  398. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/bundled/apple/apple-apple-notes.md +0 -110
  399. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/bundled/apple/apple-apple-reminders.md +0 -146
  400. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/bundled/apple/apple-findmy.md +0 -149
  401. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/bundled/apple/apple-imessage.md +0 -118
  402. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/bundled/autonomous-ai-agents/autonomous-ai-agents-claude-code.md +0 -763
  403. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/bundled/autonomous-ai-agents/autonomous-ai-agents-codex.md +0 -169
  404. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/bundled/autonomous-ai-agents/autonomous-ai-agents-computer-use.md +0 -355
  405. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/bundled/autonomous-ai-agents/autonomous-ai-agents-hermes-agent.md +0 -230
  406. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/bundled/autonomous-ai-agents/autonomous-ai-agents-merge-reconciler.md +0 -176
  407. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/bundled/autonomous-ai-agents/autonomous-ai-agents-opencode.md +0 -237
  408. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/bundled/creative/creative-architecture-diagram.md +0 -165
  409. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/bundled/creative/creative-ascii-art.md +0 -338
  410. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/bundled/creative/creative-ascii-video.md +0 -265
  411. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/bundled/creative/creative-baoyu-infographic.md +0 -256
  412. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/bundled/creative/creative-claude-design.md +0 -668
  413. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/bundled/creative/creative-comfyui.md +0 -616
  414. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/bundled/creative/creative-design-md.md +0 -238
  415. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/bundled/creative/creative-excalidraw.md +0 -212
  416. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/bundled/creative/creative-humanizer.md +0 -663
  417. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/bundled/creative/creative-manim-video.md +0 -292
  418. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/bundled/creative/creative-p5js.md +0 -576
  419. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/bundled/creative/creative-popular-web-designs.md +0 -223
  420. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/bundled/creative/creative-pretext.md +0 -238
  421. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/bundled/creative/creative-sketch.md +0 -240
  422. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/bundled/creative/creative-songwriting-and-ai-music.md +0 -319
  423. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/bundled/devops/devops-sdlc-review.md +0 -195
  424. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/bundled/email/email-email-inbox-triage.md +0 -115
  425. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/bundled/email/email-himalaya.md +0 -319
  426. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/bundled/github/github-codebase-inspection.md +0 -132
  427. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/bundled/github/github-github-auth.md +0 -265
  428. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/bundled/github/github-github-code-review.md +0 -499
  429. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/bundled/github/github-github-issue-to-pr.md +0 -95
  430. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/bundled/github/github-github-issues.md +0 -388
  431. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/bundled/github/github-github-pr-workflow.md +0 -385
  432. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/bundled/github/github-github-repo-management.md +0 -534
  433. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/bundled/media/media-gif-search.md +0 -106
  434. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/bundled/media/media-songsee.md +0 -98
  435. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/bundled/media/media-youtube-content.md +0 -100
  436. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/bundled/mlops/mlops-evaluation-evaluating-llms-harness.md +0 -512
  437. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/bundled/mlops/mlops-evaluation-weights-and-biases.md +0 -613
  438. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/bundled/mlops/mlops-huggingface-hub.md +0 -100
  439. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/bundled/mlops/mlops-inference-llama-cpp.md +0 -267
  440. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/bundled/mlops/mlops-inference-serving-llms-vllm.md +0 -387
  441. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/bundled/note-taking/note-taking-obsidian.md +0 -85
  442. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/bundled/productivity/productivity-airtable.md +0 -243
  443. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/bundled/productivity/productivity-box.md +0 -132
  444. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/bundled/productivity/productivity-document-to-action-items.md +0 -99
  445. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/bundled/productivity/productivity-docx.md +0 -213
  446. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/bundled/productivity/productivity-google-workspace.md +0 -348
  447. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/bundled/productivity/productivity-maps.md +0 -210
  448. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/bundled/productivity/productivity-meeting-action-items.md +0 -105
  449. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/bundled/productivity/productivity-nano-pdf.md +0 -70
  450. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/bundled/productivity/productivity-notion.md +0 -463
  451. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/bundled/productivity/productivity-ocr-and-documents.md +0 -193
  452. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/bundled/productivity/productivity-pdf.md +0 -142
  453. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/bundled/productivity/productivity-powerpoint.md +0 -237
  454. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/bundled/productivity/productivity-product-price-monitor.md +0 -97
  455. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/bundled/productivity/productivity-session-librarian.md +0 -122
  456. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/bundled/productivity/productivity-teams-meeting-pipeline.md +0 -129
  457. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/bundled/productivity/productivity-weekly-review-planning.md +0 -99
  458. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/bundled/productivity/productivity-xlsx.md +0 -213
  459. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/bundled/research/research-arxiv.md +0 -300
  460. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/bundled/research/research-blocked-page-recovery.md +0 -155
  461. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/bundled/research/research-blogwatcher.md +0 -152
  462. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/bundled/research/research-competitor-news-monitor.md +0 -106
  463. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/bundled/research/research-grounded-citations.md +0 -274
  464. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/bundled/research/research-llm-wiki.md +0 -526
  465. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/bundled/research/research-research-paper-writing.md +0 -1645
  466. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/bundled/smart-home/smart-home-openhue.md +0 -127
  467. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/bundled/social-media/social-media-xurl.md +0 -450
  468. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/bundled/software-development/software-development-codebase-inspection.md +0 -132
  469. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/bundled/software-development/software-development-dogfood.md +0 -183
  470. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/bundled/software-development/software-development-github.md +0 -73
  471. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/bundled/software-development/software-development-hermes-agent-skill-authoring.md +0 -230
  472. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/bundled/software-development/software-development-inspecting-hermes-desktop-dom.md +0 -177
  473. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/bundled/software-development/software-development-node-inspect-debugger.md +0 -337
  474. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/bundled/software-development/software-development-python-debugpy.md +0 -391
  475. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/bundled/software-development/software-development-requesting-code-review.md +0 -298
  476. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/bundled/software-development/software-development-simplify-code.md +0 -288
  477. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/bundled/software-development/software-development-spike.md +0 -217
  478. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/bundled/software-development/software-development-systematic-debugging.md +0 -429
  479. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/bundled/software-development/software-development-test-driven-development.md +0 -380
  480. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/bundled/web/web-blocked-page-recovery.md +0 -155
  481. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/google-workspace.md +0 -191
  482. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/autonomous-ai-agents/autonomous-ai-agents-antigravity-cli.md +0 -259
  483. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/autonomous-ai-agents/autonomous-ai-agents-blackbox.md +0 -161
  484. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/autonomous-ai-agents/autonomous-ai-agents-dynamic-workflow.md +0 -198
  485. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/autonomous-ai-agents/autonomous-ai-agents-grok.md +0 -326
  486. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/autonomous-ai-agents/autonomous-ai-agents-honcho.md +0 -446
  487. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/autonomous-ai-agents/autonomous-ai-agents-openhands.md +0 -167
  488. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/blockchain/blockchain-evm.md +0 -227
  489. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/blockchain/blockchain-hyperliquid.md +0 -228
  490. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/blockchain/blockchain-solana.md +0 -225
  491. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/communication/communication-one-three-one-rule.md +0 -114
  492. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/creative/creative-ai-presenter-video.md +0 -211
  493. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/creative/creative-archify.md +0 -66
  494. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/creative/creative-ascii-art.md +0 -338
  495. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/creative/creative-audiocraft-audio-generation.md +0 -588
  496. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/creative/creative-auteur.md +0 -195
  497. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/creative/creative-baoyu-article-illustrator.md +0 -225
  498. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/creative/creative-baoyu-comic.md +0 -264
  499. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/creative/creative-comfyui.md +0 -616
  500. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/creative/creative-concept-diagrams.md +0 -379
  501. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/creative/creative-creative-ideation.md +0 -192
  502. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/creative/creative-draw-your-font.md +0 -169
  503. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/creative/creative-dream-loop.md +0 -297
  504. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/creative/creative-excalidraw.md +0 -212
  505. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/creative/creative-heartmula.md +0 -191
  506. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/creative/creative-hyperframes.md +0 -222
  507. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/creative/creative-impeccable.md +0 -56
  508. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/creative/creative-ip-as-logo.md +0 -171
  509. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/creative/creative-kanban-video-orchestrator.md +0 -220
  510. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/creative/creative-meme-generation.md +0 -147
  511. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/creative/creative-mono-color.md +0 -158
  512. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/creative/creative-pixel-art.md +0 -234
  513. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/creative/creative-pretext.md +0 -238
  514. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/creative/creative-simple-english.md +0 -362
  515. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/creative/creative-sketch.md +0 -240
  516. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/creative/creative-social-media-content-calendar.md +0 -88
  517. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/creative/creative-system-atlas.md +0 -105
  518. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/creative/creative-tldraw-offline.md +0 -294
  519. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/creative/creative-unreal-mcp.md +0 -269
  520. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/data-science/data-science-jupyter-notebook.md +0 -195
  521. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/devops/devops-actual-setup.md +0 -164
  522. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/devops/devops-docker-management.md +0 -298
  523. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/devops/devops-hermes-s6-container-supervision.md +0 -198
  524. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/devops/devops-inference-sh-cli.md +0 -173
  525. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/devops/devops-pinggy-tunnel.md +0 -326
  526. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/devops/devops-setup-wizard-generator.md +0 -133
  527. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/devops/devops-watchers.md +0 -126
  528. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/dogfood/dogfood-adversarial-ux-test.md +0 -209
  529. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/email/email-agentmail.md +0 -104
  530. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/finance/finance-3-statement-model.md +0 -451
  531. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/finance/finance-comps-analysis.md +0 -682
  532. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/finance/finance-dcf-model.md +0 -1288
  533. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/finance/finance-excel-author.md +0 -262
  534. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/finance/finance-lbo-model.md +0 -309
  535. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/finance/finance-merger-model.md +0 -162
  536. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/finance/finance-polymarket.md +0 -97
  537. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/finance/finance-pptx-author.md +0 -191
  538. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/finance/finance-stocks.md +0 -112
  539. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/gaming/gaming-minecraft-modpack-server.md +0 -209
  540. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/gaming/gaming-pokemon-player.md +0 -240
  541. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/health/health-fitness-nutrition.md +0 -259
  542. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/health/health-neuroskill-bci.md +0 -470
  543. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/mcp/mcp-fastmcp.md +0 -315
  544. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/mcp/mcp-mcp-oauth-remote-gateway.md +0 -389
  545. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/mcp/mcp-mcporter.md +0 -138
  546. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/migration/migration-openclaw-migration.md +0 -316
  547. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/mlops/mlops-accelerate.md +0 -366
  548. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/mlops/mlops-chroma.md +0 -425
  549. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/mlops/mlops-clip.md +0 -272
  550. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/mlops/mlops-evaluation-evaluating-llms-harness.md +0 -512
  551. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/mlops/mlops-evaluation-weights-and-biases.md +0 -613
  552. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/mlops/mlops-faiss.md +0 -240
  553. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/mlops/mlops-flash-attention.md +0 -388
  554. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/mlops/mlops-guidance.md +0 -595
  555. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/mlops/mlops-huggingface-tokenizers.md +0 -535
  556. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/mlops/mlops-inference-llama-cpp.md +0 -267
  557. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/mlops/mlops-inference-outlines.md +0 -679
  558. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/mlops/mlops-inference-serving-llms-vllm.md +0 -387
  559. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/mlops/mlops-instructor.md +0 -759
  560. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/mlops/mlops-lambda-labs.md +0 -568
  561. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/mlops/mlops-llava.md +0 -323
  562. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/mlops/mlops-modal.md +0 -368
  563. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/mlops/mlops-models-huggingface-hub.md +0 -100
  564. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/mlops/mlops-models-segment-anything-model.md +0 -525
  565. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/mlops/mlops-nemo-curator.md +0 -415
  566. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/mlops/mlops-obliteratus.md +0 -360
  567. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/mlops/mlops-peft.md +0 -452
  568. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/mlops/mlops-pinecone.md +0 -396
  569. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/mlops/mlops-pytorch-fsdp.md +0 -97
  570. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/mlops/mlops-pytorch-lightning.md +0 -365
  571. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/mlops/mlops-qdrant.md +0 -522
  572. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/mlops/mlops-research-dspy.md +0 -609
  573. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/mlops/mlops-saelens.md +0 -439
  574. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/mlops/mlops-simpo.md +0 -237
  575. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/mlops/mlops-slime.md +0 -486
  576. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/mlops/mlops-stable-diffusion.md +0 -542
  577. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/mlops/mlops-tensorrt-llm.md +0 -208
  578. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/mlops/mlops-torchtitan.md +0 -404
  579. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/mlops/mlops-training-axolotl.md +0 -181
  580. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/mlops/mlops-training-trl-fine-tuning.md +0 -512
  581. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/mlops/mlops-training-unsloth.md +0 -98
  582. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/mlops/mlops-whisper.md +0 -336
  583. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/payments/payments-mpp-agent.md +0 -142
  584. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/payments/payments-stripe-link-cli.md +0 -202
  585. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/payments/payments-stripe-projects.md +0 -138
  586. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/productivity/productivity-canvas.md +0 -114
  587. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/productivity/productivity-decision-questionnaire.md +0 -133
  588. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/productivity/productivity-here-now.md +0 -231
  589. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/productivity/productivity-live-dashboard.md +0 -126
  590. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/productivity/productivity-memento-flashcards.md +0 -336
  591. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/productivity/productivity-property-listings.md +0 -121
  592. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/productivity/productivity-shop.md +0 -238
  593. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/productivity/productivity-shopify.md +0 -377
  594. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/productivity/productivity-siyuan.md +0 -305
  595. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/productivity/productivity-telephony.md +0 -435
  596. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/research/research-bioinformatics.md +0 -254
  597. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/research/research-blogwatcher.md +0 -162
  598. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/research/research-darwinian-evolver.md +0 -217
  599. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/research/research-domain-intel.md +0 -121
  600. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/research/research-drug-discovery.md +0 -237
  601. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/research/research-duckduckgo-search.md +0 -255
  602. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/research/research-gitnexus-explorer.md +0 -232
  603. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/research/research-osint-investigation.md +0 -295
  604. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/research/research-parallel-cli.md +0 -411
  605. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/research/research-pinecone-research.md +0 -125
  606. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/research/research-qmd.md +0 -459
  607. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/research/research-research-paper-writing.md +0 -1645
  608. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/research/research-rss-feeds.md +0 -114
  609. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/research/research-scrapling.md +0 -351
  610. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/research/research-searxng-search.md +0 -212
  611. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/security/security-1password.md +0 -173
  612. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/security/security-godmode.md +0 -421
  613. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/security/security-oss-forensics.md +0 -426
  614. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/security/security-sherlock.md +0 -208
  615. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/security/security-unbroker.md +0 -331
  616. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/security/security-web-pentest.md +0 -337
  617. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/smart-home/smart-home-openhue.md +0 -127
  618. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/social-media/social-media-reddit-reading.md +0 -146
  619. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/software-development/software-development-ast-grep.md +0 -307
  620. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/software-development/software-development-code-wiki.md +0 -463
  621. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/software-development/software-development-grill-me.md +0 -135
  622. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/software-development/software-development-pr-lens.md +0 -160
  623. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/software-development/software-development-rest-graphql-debug.md +0 -532
  624. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/software-development/software-development-subagent-driven-development.md +0 -370
  625. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/web-development/web-development-cloudflare-temporary-deploy.md +0 -144
  626. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/web-development/web-development-har-derived-api-client.md +0 -180
  627. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/web-development/web-development-page-agent.md +0 -207
  628. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/web-development/web-development-publish-site.md +0 -174
  629. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/web-development/web-development-scrollcraft.md +0 -257
  630. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/yuanbao/yuanbao-yuanbao.md +0 -127
  631. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/tui.md +0 -313
  632. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/which-file-does-what.md +0 -57
  633. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/windows-native.md +0 -326
  634. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/windows-wsl-quickstart.md +0 -358
  635. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-stories.mdx +0 -10
  636. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docusaurus.config.ts +0 -210
  637. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/developer-guide/acp-internals.md +0 -181
  638. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/developer-guide/adding-platform-adapters.md +0 -686
  639. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/developer-guide/adding-providers.md +0 -459
  640. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/developer-guide/adding-tools.md +0 -209
  641. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/developer-guide/agent-loop.md +0 -239
  642. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/developer-guide/architecture.md +0 -277
  643. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/developer-guide/browser-supervisor.md +0 -160
  644. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/developer-guide/context-compression-and-caching.md +0 -328
  645. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/developer-guide/context-engine-plugin.md +0 -193
  646. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/developer-guide/contributing.md +0 -253
  647. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/developer-guide/creating-skills.md +0 -375
  648. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/developer-guide/cron-internals.md +0 -236
  649. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/developer-guide/extending-the-cli.md +0 -192
  650. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/developer-guide/gateway-internals.md +0 -267
  651. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/developer-guide/image-gen-provider-plugin.md +0 -288
  652. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/developer-guide/memory-provider-plugin.md +0 -258
  653. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/developer-guide/model-provider-plugin.md +0 -267
  654. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/developer-guide/plugin-llm-access.md +0 -401
  655. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/developer-guide/plugins/index.md +0 -1156
  656. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/developer-guide/programmatic-integration.md +0 -126
  657. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/developer-guide/prompt-assembly.md +0 -273
  658. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/developer-guide/provider-runtime.md +0 -208
  659. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/developer-guide/session-storage.md +0 -420
  660. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/developer-guide/tools-runtime.md +0 -236
  661. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/developer-guide/trajectory-format.md +0 -222
  662. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/developer-guide/video-gen-provider-plugin.md +0 -231
  663. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/developer-guide/web-search-provider-plugin.md +0 -260
  664. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/getting-started/installation.md +0 -204
  665. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/getting-started/learning-path.md +0 -154
  666. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/getting-started/nix-setup.md +0 -975
  667. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/getting-started/quickstart.md +0 -352
  668. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/getting-started/termux.md +0 -236
  669. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/getting-started/updating.md +0 -231
  670. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/guides/automate-with-cron.md +0 -266
  671. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/guides/automation-blueprints.md +0 -595
  672. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/guides/aws-bedrock.md +0 -170
  673. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/guides/azure-foundry.md +0 -334
  674. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/guides/cron-script-only.md +0 -247
  675. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/guides/cron-troubleshooting.md +0 -227
  676. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/guides/daily-briefing-bot.md +0 -268
  677. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/guides/delegation-patterns.md +0 -239
  678. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/guides/github-pr-review-agent.md +0 -303
  679. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/guides/google-gemini.md +0 -254
  680. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/guides/local-llm-on-mac.md +0 -240
  681. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/guides/local-ollama-setup.md +0 -317
  682. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/guides/microsoft-graph-app-registration.md +0 -180
  683. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/guides/migrate-from-openclaw.md +0 -244
  684. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/guides/minimax-oauth.md +0 -228
  685. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/guides/oauth-over-ssh.md +0 -96
  686. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/guides/operate-teams-meeting-pipeline.md +0 -288
  687. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/guides/pipe-script-output.md +0 -217
  688. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/guides/python-library.md +0 -333
  689. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/guides/run-hermes-with-nous-portal.md +0 -273
  690. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/guides/team-telegram-assistant.md +0 -441
  691. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/guides/tips.md +0 -234
  692. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/guides/use-mcp-with-hermes.md +0 -490
  693. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/guides/use-soul-with-hermes.md +0 -264
  694. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/guides/use-voice-mode-with-hermes.md +0 -469
  695. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/guides/webhook-github-pr-review.md +0 -329
  696. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/guides/work-with-skills.md +0 -290
  697. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/guides/xai-grok-oauth.md +0 -243
  698. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/index.mdx +0 -117
  699. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/integrations/buzz.md +0 -57
  700. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/integrations/index.md +0 -100
  701. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/integrations/nous-portal.md +0 -272
  702. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/integrations/providers.md +0 -1433
  703. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/reference/cli-commands.md +0 -1259
  704. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/reference/environment-variables.md +0 -678
  705. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/reference/faq.md +0 -859
  706. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/reference/mcp-config-reference.md +0 -250
  707. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/reference/model-catalog.md +0 -103
  708. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/reference/optional-skills-catalog.md +0 -220
  709. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/reference/profile-commands.md +0 -467
  710. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/reference/skills-catalog.md +0 -156
  711. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/reference/slash-commands.md +0 -272
  712. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/reference/tools-reference.md +0 -261
  713. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/reference/toolsets-reference.md +0 -162
  714. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/checkpoints-and-rollback.md +0 -251
  715. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/cli.md +0 -445
  716. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/configuration.md +0 -1746
  717. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/configuring-models.md +0 -239
  718. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/docker.md +0 -595
  719. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/features/acp.md +0 -341
  720. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/features/api-server.md +0 -456
  721. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/features/batch-processing.md +0 -229
  722. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/features/browser.md +0 -629
  723. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/features/built-in-plugins.md +0 -269
  724. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/features/code-execution.md +0 -240
  725. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/features/codex-app-server-runtime.md +0 -441
  726. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/features/computer-use.md +0 -144
  727. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/features/context-files.md +0 -218
  728. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/features/context-references.md +0 -142
  729. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/features/credential-pools.md +0 -240
  730. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/features/cron.md +0 -761
  731. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/features/curator.md +0 -248
  732. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/features/delegation.md +0 -355
  733. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/features/deliverable-mode.md +0 -91
  734. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/features/extending-the-dashboard.md +0 -907
  735. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/features/fallback-providers.md +0 -408
  736. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/features/goals.md +0 -180
  737. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/features/honcho.md +0 -233
  738. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/features/hooks.md +0 -1388
  739. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/features/image-generation.md +0 -150
  740. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/features/kanban-tutorial.md +0 -308
  741. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/features/kanban-worker-lanes.md +0 -117
  742. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/features/kanban.md +0 -863
  743. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/features/lsp.md +0 -217
  744. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/features/mcp.md +0 -591
  745. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/features/memory-providers.md +0 -570
  746. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/features/memory.md +0 -233
  747. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/features/overview.md +0 -52
  748. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/features/personality.md +0 -271
  749. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/features/plugins.md +0 -346
  750. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/features/provider-routing.md +0 -200
  751. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/features/skills.md +0 -760
  752. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/features/skins.md +0 -271
  753. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/features/spotify.md +0 -279
  754. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/features/subscription-proxy.md +0 -163
  755. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/features/tool-gateway.md +0 -187
  756. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/features/tools.md +0 -223
  757. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/features/tts.md +0 -456
  758. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/features/vision.md +0 -210
  759. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/features/voice-mode.md +0 -521
  760. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/features/web-dashboard.md +0 -351
  761. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/features/web-search.md +0 -422
  762. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/features/x-search.md +0 -147
  763. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/git-worktrees.md +0 -173
  764. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/messaging/bluebubbles.md +0 -143
  765. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/messaging/dingtalk.md +0 -283
  766. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/messaging/discord.md +0 -843
  767. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/messaging/email.md +0 -190
  768. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/messaging/feishu.md +0 -538
  769. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/messaging/google_chat.md +0 -283
  770. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/messaging/homeassistant.md +0 -252
  771. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/messaging/index.md +0 -569
  772. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/messaging/line.md +0 -199
  773. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/messaging/matrix.md +0 -677
  774. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/messaging/mattermost.md +0 -340
  775. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/messaging/msgraph-webhook.md +0 -137
  776. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/messaging/ntfy.md +0 -155
  777. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/messaging/open-webui.md +0 -296
  778. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/messaging/qqbot.md +0 -123
  779. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/messaging/signal.md +0 -257
  780. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/messaging/simplex.md +0 -98
  781. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/messaging/slack.md +0 -614
  782. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/messaging/sms.md +0 -203
  783. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/messaging/teams-meetings.md +0 -233
  784. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/messaging/teams.md +0 -255
  785. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/messaging/telegram.md +0 -1241
  786. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/messaging/webhooks.md +0 -601
  787. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/messaging/wecom-callback.md +0 -149
  788. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/messaging/wecom.md +0 -292
  789. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/messaging/weixin.md +0 -312
  790. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/messaging/whatsapp.md +0 -236
  791. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/messaging/yuanbao.md +0 -341
  792. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/profile-distributions.md +0 -573
  793. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/profiles.md +0 -272
  794. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/secrets/bitwarden.md +0 -143
  795. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/secrets/index.md +0 -9
  796. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/security.md +0 -664
  797. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/sessions.md +0 -609
  798. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/bundled/apple/apple-apple-notes.md +0 -106
  799. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/bundled/apple/apple-apple-reminders.md +0 -114
  800. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/bundled/apple/apple-findmy.md +0 -147
  801. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/bundled/apple/apple-imessage.md +0 -118
  802. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/bundled/apple/apple-macos-computer-use.md +0 -175
  803. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/bundled/autonomous-ai-agents/autonomous-ai-agents-claude-code.md +0 -763
  804. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/bundled/autonomous-ai-agents/autonomous-ai-agents-codex.md +0 -143
  805. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/bundled/autonomous-ai-agents/autonomous-ai-agents-hermes-agent.md +0 -947
  806. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/bundled/autonomous-ai-agents/autonomous-ai-agents-opencode.md +0 -237
  807. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/bundled/creative/creative-architecture-diagram.md +0 -165
  808. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/bundled/creative/creative-ascii-art.md +0 -338
  809. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/bundled/creative/creative-ascii-video.md +0 -261
  810. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/bundled/creative/creative-baoyu-infographic.md +0 -256
  811. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/bundled/creative/creative-claude-design.md +0 -609
  812. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/bundled/creative/creative-comfyui.md +0 -547
  813. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/bundled/creative/creative-design-md.md +0 -189
  814. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/bundled/creative/creative-excalidraw.md +0 -210
  815. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/bundled/creative/creative-humanizer.md +0 -594
  816. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/bundled/creative/creative-manim-video.md +0 -289
  817. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/bundled/creative/creative-p5js.md +0 -574
  818. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/bundled/creative/creative-popular-web-designs.md +0 -211
  819. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/bundled/creative/creative-pretext.md +0 -238
  820. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/bundled/creative/creative-sketch.md +0 -238
  821. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/bundled/creative/creative-songwriting-and-ai-music.md +0 -305
  822. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/bundled/email/email-himalaya.md +0 -305
  823. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/bundled/github/github-codebase-inspection.md +0 -132
  824. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/bundled/github/github-github-auth.md +0 -265
  825. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/bundled/github/github-github-code-review.md +0 -499
  826. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/bundled/github/github-github-issues.md +0 -388
  827. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/bundled/github/github-github-pr-workflow.md +0 -385
  828. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/bundled/github/github-github-repo-management.md +0 -534
  829. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/bundled/media/media-gif-search.md +0 -106
  830. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/bundled/media/media-songsee.md +0 -98
  831. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/bundled/media/media-youtube-content.md +0 -93
  832. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/bundled/mlops/mlops-evaluation-evaluating-llms-harness.md +0 -512
  833. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/bundled/mlops/mlops-evaluation-weights-and-biases.md +0 -609
  834. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/bundled/mlops/mlops-huggingface-hub.md +0 -100
  835. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/bundled/mlops/mlops-inference-llama-cpp.md +0 -267
  836. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/bundled/mlops/mlops-inference-serving-llms-vllm.md +0 -386
  837. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/bundled/note-taking/note-taking-obsidian.md +0 -81
  838. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/bundled/productivity/productivity-airtable.md +0 -243
  839. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/bundled/productivity/productivity-google-workspace.md +0 -325
  840. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/bundled/productivity/productivity-maps.md +0 -196
  841. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/bundled/productivity/productivity-nano-pdf.md +0 -69
  842. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/bundled/productivity/productivity-notion.md +0 -463
  843. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/bundled/productivity/productivity-ocr-and-documents.md +0 -190
  844. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/bundled/productivity/productivity-powerpoint.md +0 -257
  845. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/bundled/productivity/productivity-teams-meeting-pipeline.md +0 -127
  846. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/bundled/research/research-arxiv.md +0 -300
  847. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/bundled/research/research-blogwatcher.md +0 -152
  848. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/bundled/research/research-llm-wiki.md +0 -469
  849. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/bundled/research/research-research-paper-writing.md +0 -2395
  850. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/bundled/smart-home/smart-home-openhue.md +0 -124
  851. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/bundled/social-media/social-media-xurl.md +0 -428
  852. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/bundled/software-development/software-development-dogfood.md +0 -181
  853. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/bundled/software-development/software-development-hermes-agent-skill-authoring.md +0 -183
  854. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/bundled/software-development/software-development-node-inspect-debugger.md +0 -337
  855. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/bundled/software-development/software-development-python-debugpy.md +0 -391
  856. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/bundled/software-development/software-development-requesting-code-review.md +0 -287
  857. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/bundled/software-development/software-development-spike.md +0 -217
  858. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/bundled/software-development/software-development-systematic-debugging.md +0 -385
  859. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/bundled/software-development/software-development-test-driven-development.md +0 -361
  860. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/google-workspace.md +0 -191
  861. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/optional/autonomous-ai-agents/autonomous-ai-agents-blackbox.md +0 -162
  862. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/optional/autonomous-ai-agents/autonomous-ai-agents-honcho.md +0 -446
  863. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/optional/blockchain/blockchain-evm.md +0 -227
  864. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/optional/blockchain/blockchain-hyperliquid.md +0 -210
  865. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/optional/blockchain/blockchain-solana.md +0 -206
  866. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/optional/communication/communication-one-three-one-rule.md +0 -114
  867. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/optional/creative/creative-audiocraft-audio-generation.md +0 -588
  868. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/optional/creative/creative-concept-diagrams.md +0 -379
  869. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/optional/creative/creative-heartmula.md +0 -189
  870. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/optional/creative/creative-hyperframes.md +0 -205
  871. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/optional/creative/creative-kanban-video-orchestrator.md +0 -173
  872. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/optional/creative/creative-meme-generation.md +0 -147
  873. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/optional/data-science/data-science-jupyter-notebook.md +0 -180
  874. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/optional/devops/devops-docker-management.md +0 -297
  875. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/optional/devops/devops-inference-sh-cli.md +0 -173
  876. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/optional/devops/devops-pinggy-tunnel.md +0 -327
  877. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/optional/devops/devops-watchers.md +0 -126
  878. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/optional/dogfood/dogfood-adversarial-ux-test.md +0 -209
  879. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/optional/email/email-agentmail.md +0 -143
  880. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/optional/finance/finance-3-statement-model.md +0 -451
  881. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/optional/finance/finance-comps-analysis.md +0 -682
  882. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/optional/finance/finance-dcf-model.md +0 -1288
  883. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/optional/finance/finance-excel-author.md +0 -262
  884. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/optional/finance/finance-lbo-model.md +0 -309
  885. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/optional/finance/finance-merger-model.md +0 -162
  886. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/optional/finance/finance-polymarket.md +0 -94
  887. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/optional/finance/finance-pptx-author.md +0 -191
  888. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/optional/finance/finance-stocks.md +0 -108
  889. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/optional/health/health-fitness-nutrition.md +0 -255
  890. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/optional/health/health-neuroskill-bci.md +0 -431
  891. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/optional/mcp/mcp-fastmcp.md +0 -315
  892. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/optional/mcp/mcp-mcporter.md +0 -138
  893. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/optional/migration/migration-openclaw-migration.md +0 -316
  894. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/optional/mlops/mlops-accelerate.md +0 -350
  895. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/optional/mlops/mlops-chroma.md +0 -425
  896. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/optional/mlops/mlops-clip.md +0 -272
  897. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/optional/mlops/mlops-faiss.md +0 -240
  898. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/optional/mlops/mlops-flash-attention.md +0 -381
  899. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/optional/mlops/mlops-guidance.md +0 -591
  900. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/optional/mlops/mlops-huggingface-tokenizers.md +0 -535
  901. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/optional/mlops/mlops-inference-outlines.md +0 -671
  902. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/optional/mlops/mlops-instructor.md +0 -759
  903. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/optional/mlops/mlops-lambda-labs.md +0 -568
  904. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/optional/mlops/mlops-llava.md +0 -323
  905. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/optional/mlops/mlops-modal.md +0 -362
  906. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/optional/mlops/mlops-models-segment-anything-model.md +0 -525
  907. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/optional/mlops/mlops-nemo-curator.md +0 -401
  908. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/optional/mlops/mlops-peft.md +0 -452
  909. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/optional/mlops/mlops-pinecone.md +0 -377
  910. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/optional/mlops/mlops-pytorch-fsdp.md +0 -145
  911. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/optional/mlops/mlops-pytorch-lightning.md +0 -365
  912. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/optional/mlops/mlops-qdrant.md +0 -514
  913. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/optional/mlops/mlops-saelens.md +0 -407
  914. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/optional/mlops/mlops-simpo.md +0 -237
  915. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/optional/mlops/mlops-slime.md +0 -486
  916. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/optional/mlops/mlops-stable-diffusion.md +0 -542
  917. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/optional/mlops/mlops-tensorrt-llm.md +0 -206
  918. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/optional/mlops/mlops-torchtitan.md +0 -378
  919. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/optional/mlops/mlops-training-axolotl.md +0 -181
  920. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/optional/mlops/mlops-training-trl-fine-tuning.md +0 -477
  921. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/optional/mlops/mlops-training-unsloth.md +0 -98
  922. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/optional/mlops/mlops-whisper.md +0 -336
  923. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/optional/productivity/productivity-canvas.md +0 -114
  924. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/optional/productivity/productivity-here-now.md +0 -231
  925. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/optional/productivity/productivity-memento-flashcards.md +0 -336
  926. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/optional/productivity/productivity-shop.md +0 -354
  927. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/optional/productivity/productivity-shopify.md +0 -377
  928. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/optional/productivity/productivity-siyuan.md +0 -305
  929. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/optional/productivity/productivity-telephony.md +0 -435
  930. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/optional/research/research-bioinformatics.md +0 -252
  931. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/optional/research/research-darwinian-evolver.md +0 -188
  932. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/optional/research/research-domain-intel.md +0 -117
  933. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/optional/research/research-drug-discovery.md +0 -237
  934. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/optional/research/research-duckduckgo-search.md +0 -255
  935. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/optional/research/research-gitnexus-explorer.md +0 -213
  936. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/optional/research/research-osint-investigation.md +0 -243
  937. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/optional/research/research-parallel-cli.md +0 -411
  938. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/optional/research/research-qmd.md +0 -435
  939. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/optional/research/research-scrapling.md +0 -351
  940. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/optional/research/research-searxng-search.md +0 -229
  941. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/optional/security/security-1password.md +0 -173
  942. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/optional/security/security-oss-forensics.md +0 -421
  943. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/optional/security/security-sherlock.md +0 -208
  944. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/optional/software-development/software-development-rest-graphql-debug.md +0 -531
  945. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/optional/web-development/web-development-page-agent.md +0 -207
  946. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/optional/yuanbao/yuanbao-yuanbao.md +0 -125
  947. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/tui.md +0 -256
  948. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/windows-native.md +0 -325
  949. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/windows-wsl-quickstart.md +0 -332
  950. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-stories.mdx +0 -10
  951. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/llms-full.txt +0 -88833
  952. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/llms.txt +0 -267
  953. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/site-pages-map.txt +0 -928
  954. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/site-pages.json +0 -4218
  955. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src-README.md +0 -101
  956. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src-scripts/clone_repo.sh +0 -17
  957. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src-scripts/crawl.py +0 -82
  958. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src-scripts/gen_mapping.py +0 -112
  959. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src-scripts/retry-none.json +0 -305
  960. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src-scripts/verify_orphans.py +0 -53
  961. package/lib/BrowserWebSocketTransport-Q5SUMk7_.js +0 -4
  962. package/lib/LaunchOptions-DlBKKKLC.js +0 -4
  963. package/lib/NodeWebSocketTransport-DyU2tm5L.js +0 -4
  964. /package/lib/{index-DZQNwO7f.d.ts → index-DTDXUe6m.d.ts} +0 -0
  965. /package/lib/{lsp-server-registry-C05QLdw0.js → lsp-server-registry-D4VLs1Sm.js} +0 -0
  966. /package/lib/{main-7c69ae95.js → main-CKFNYpqT.js} +0 -0
  967. /package/lib/{util-DgR7HQUl.js → util-BHL_dfV_.js} +0 -0
@@ -0,0 +1,1214 @@
1
+ # AST 去 OMP 化:内置 WASM 引擎 — 实现计划
2
+
3
+ > **For agentic workers:** REQUIRED SUB-SKILL: Use superpowers:subagent-driven-development (recommended) or superpowers:executing-plans to implement this plan task-by-task. Steps use checkbox (`- [ ]`) syntax for tracking.
4
+
5
+ **Goal:** 让 `dvc://ast_grep` / `dvc://ast_edit` 不再依赖 `@oh-my-pi/pi-natives`,改用随包发布的官方 ast-grep WASM 引擎 + 我们 TS 实现的遍历/聚合底盘,70.8 MB 下载 / 328 MB 落盘 → 14.4 MB 随包、永久离线。
6
+
7
+ **Architecture:** 引擎层(`src/devices/ast/engine/`)封装 wasm-bindgen 手动装配、语法注册、pattern 编译与命中映射;底盘层(`walker.ts`)负责 `.gitignore` 感知遍历 / glob / 限额;`ast-device.ts` 保持模型面契约不变,只换后端;`natives-loader.ts` 删除。
8
+
9
+ **Tech Stack:** `@ast-grep/wasm@0.45.3`(官方 ast-grep WASM)· `web-tree-sitter@0.26.x` · `@lumis-sh/wasm-*@0.26.x`(14 语法)· `ignore@7`(纯 JS,`.gitignore` 语义)— 全部 devDependencies,构建期内联/拷入 `lib/`。
10
+
11
+ **Spec:** `docs/specs/ast-engine-deomp/spec.md`(计划与规格同读;规格含 A/B 证据与三个已解的坑)
12
+
13
+ ## Global Constraints
14
+
15
+ - `package.json` 的 `dependencies` / `optionalDependencies` / `scripts.postinstall` **必须始终不存在**(零运行时依赖契约)。
16
+ - 源码 / 产物 / tarball 中**不得出现** `@oh-my-pi` 或 `pi_natives`(验收 `grep` = 0)。
17
+ - 所有语法注册 `expandoChar: 'µ'` —— 漏给会**静默 0 命中**(python/rust/go 实测)。
18
+ - `web-tree-sitter` 与 `@lumis-sh/wasm-*` **主版本锁步 pin 在 0.26**:语法 wasm 必须是 `dylink.0`,legacy `dylink`(如 `tree-sitter-wasms@0.1.13`)与 0.26 硬不兼容。
19
+ - 资产必须在 **tsdown 之后**拷贝(tsdown 清空 `lib/`)。
20
+ - 模型面契约不动:`ops`/`paths`/`dryRun`、`patterns`/`path`/`offset`/`limit`/`includeMeta`,以及全部结果字段。
21
+ - 行列 **1-based**、偏移 **UTF-8 字节**(native 口径;换算见 Task 5)。
22
+ - 多根节点 pattern → **记 0 命中**,不抛错、不写 `parseErrors`(native 实测行为,见 spec §3)。
23
+ - 每个 Task 结束 `tsc --noEmit` 0 错 + 相关单测绿 + commit。
24
+
25
+ ---
26
+
27
+ ### Task 1: 资产清单 + 拷贝脚本 + 构建链
28
+
29
+ **Files:**
30
+ - Create: `src/devices/ast/engine/grammar-manifest.mjs`
31
+ - Create: `src/devices/ast/engine/grammar-manifest.d.ts`
32
+ - Create: `scripts/copy-ast-assets.mjs`
33
+ - Modify: `package.json`(build 链 + devDependencies)
34
+ - Modify: `tsdown.config.ts`(`BUNDLED_RUNTIME` 增两项)
35
+ - Test: `test/surface-devices/ast-engine-assets.spec.ts`
36
+
37
+ **Interfaces:**
38
+ - Produces: `ENGINE_ASSETS` / `GRAMMAR_PACKAGES` / `GRAMMAR_ASSETS`(后续所有任务从这里拿资产名);`npm run build` 产出 `lib/ast-assets/**`(16 个 wasm)。
39
+
40
+ - [ ] **Step 1: 安装 devDependencies**
41
+
42
+ ```bash
43
+ cd better-dsh
44
+ npm i -D @ast-grep/wasm@0.45.3 web-tree-sitter@0.26.12 ignore@^7.0.12 \
45
+ @lumis-sh/wasm-python@0.26.5 @lumis-sh/wasm-javascript@0.26.4 @lumis-sh/wasm-typescript@0.26.3 \
46
+ @lumis-sh/wasm-tsx@0.26.3 @lumis-sh/wasm-rust@0.26.5 @lumis-sh/wasm-go@0.26.3 @lumis-sh/wasm-c@0.26.3 \
47
+ @lumis-sh/wasm-cpp@0.26.2 @lumis-sh/wasm-html@0.26.4 @lumis-sh/wasm-css@0.26.4 @lumis-sh/wasm-json@0.26.5 \
48
+ @lumis-sh/wasm-yaml@0.26.3 @lumis-sh/wasm-bash@0.26.6 @lumis-sh/wasm-ruby@0.26.4
49
+ ```
50
+
51
+ 验证:`node -e "const p=require('./package.json'); if(p.dependencies||p.optionalDependencies||p.scripts.postinstall) throw new Error('runtime dep leaked')"` 退出码 0。这三个包实测均**无 install script**(`@ast-grep/wasm` scripts 为 `{}`,`web-tree-sitter` 只有 build/lint/test)。
52
+
53
+ - [ ] **Step 2: 写清单(plain ESM + 手写 d.ts,仿 `src/hashline/constants.js` 既有模式)**
54
+
55
+ `src/devices/ast/engine/grammar-manifest.mjs`:
56
+
57
+ ```js
58
+ /**
59
+ * AST 引擎的资产清单 —— 拷贝脚本(scripts/copy-ast-assets.mjs)与运行时注册表
60
+ * (engine/grammars.ts)的单一真相源。三个包都无 install script、无传递依赖。
61
+ * ABI 锁步:@lumis-sh/wasm-* 与 web-tree-sitter 必须同为主版本 0.26(dylink.0)。
62
+ */
63
+ export const ENGINE_ASSETS = [
64
+ { file: 'ast-grep.wasm', subpath: '@ast-grep/wasm/wasm_bg.wasm' },
65
+ { file: 'tree-sitter.wasm', subpath: 'web-tree-sitter/web-tree-sitter.wasm' },
66
+ ]
67
+
68
+ export const GRAMMAR_PACKAGES = {
69
+ python: '@lumis-sh/wasm-python',
70
+ javascript: '@lumis-sh/wasm-javascript',
71
+ typescript: '@lumis-sh/wasm-typescript',
72
+ tsx: '@lumis-sh/wasm-tsx',
73
+ rust: '@lumis-sh/wasm-rust',
74
+ go: '@lumis-sh/wasm-go',
75
+ c: '@lumis-sh/wasm-c',
76
+ cpp: '@lumis-sh/wasm-cpp',
77
+ html: '@lumis-sh/wasm-html',
78
+ css: '@lumis-sh/wasm-css',
79
+ json: '@lumis-sh/wasm-json',
80
+ yaml: '@lumis-sh/wasm-yaml',
81
+ bash: '@lumis-sh/wasm-bash',
82
+ ruby: '@lumis-sh/wasm-ruby',
83
+ }
84
+
85
+ /** lang → { file: 包内资产名, subpath: 可 require.resolve 的完整子路径 } */
86
+ export const GRAMMAR_ASSETS = Object.fromEntries(
87
+ Object.entries(GRAMMAR_PACKAGES).map(([lang, pkg]) => [
88
+ lang,
89
+ { file: `tree-sitter-${lang}.wasm`, subpath: `${pkg}/tree-sitter-${lang}.wasm` },
90
+ ]),
91
+ )
92
+ ```
93
+
94
+ `src/devices/ast/engine/grammar-manifest.d.ts`:
95
+
96
+ ```ts
97
+ export interface AssetEntry { file: string, subpath: string }
98
+ export declare const ENGINE_ASSETS: readonly AssetEntry[]
99
+ export declare const GRAMMAR_PACKAGES: Readonly<Record<string, string>>
100
+ export declare const GRAMMAR_ASSETS: Readonly<Record<string, AssetEntry>>
101
+ ```
102
+
103
+ - [ ] **Step 3: 写拷贝脚本**
104
+
105
+ `scripts/copy-ast-assets.mjs`:
106
+
107
+ ```js
108
+ /**
109
+ * 把 AST 引擎的 wasm 资产从 node_modules 拷进 lib/ast-assets(发布面)。
110
+ * 必须在 tsdown 之后运行 —— tsdown 会清空 lib/(同 lib/client/ 的老坑)。
111
+ */
112
+ import { copyFileSync, mkdirSync, statSync } from 'node:fs'
113
+ import { createRequire } from 'node:module'
114
+ import { join } from 'node:path'
115
+ import { ENGINE_ASSETS, GRAMMAR_ASSETS } from '../src/devices/ast/engine/grammar-manifest.mjs'
116
+
117
+ const require = createRequire(import.meta.url)
118
+ const OUT = join(process.cwd(), 'lib', 'ast-assets')
119
+ mkdirSync(OUT, { recursive: true })
120
+
121
+ let bytes = 0
122
+ for (const entry of [...ENGINE_ASSETS, ...Object.values(GRAMMAR_ASSETS)]) {
123
+ const from = require.resolve(entry.subpath)
124
+ const size = statSync(from).size
125
+ copyFileSync(from, join(OUT, entry.file))
126
+ bytes += size
127
+ console.log(` ast-asset ${entry.file.padEnd(30)} ${(size / 1024).toFixed(0)} KB`)
128
+ }
129
+ console.log(`ast-assets: ${Object.keys(GRAMMAR_ASSETS).length + ENGINE_ASSETS.length} files, ${(bytes / 1048576).toFixed(1)} MB`)
130
+ ```
131
+
132
+ - [ ] **Step 4: 接线构建链与 noExternal**
133
+
134
+ `package.json`:
135
+
136
+ ```json
137
+ "build": "tsdown && npm run build-client && node scripts/copy-kernel-bridge.mjs && node scripts/copy-ast-assets.mjs"
138
+ ```
139
+
140
+ `tsdown.config.ts` 的 `BUNDLED_RUNTIME` 数组**末尾追加**两项(前缀匹配已覆盖 `/wasm_bg.js` 子路径):
141
+
142
+ ```ts
143
+ 'web-tree-sitter',
144
+ '@ast-grep/wasm',
145
+ ```
146
+
147
+ 注意 `ignore` 不进 `BUNDLED_RUNTIME`(Task 7 再加,避免本任务出现未使用项)。
148
+
149
+ - [ ] **Step 5: 写失败测试**
150
+
151
+ `test/surface-devices/ast-engine-assets.spec.ts`:
152
+
153
+ ```ts
154
+ import { existsSync } from 'node:fs'
155
+ import { createRequire } from 'node:module'
156
+ import { describe, expect, it } from 'vitest'
157
+ import { ENGINE_ASSETS, GRAMMAR_ASSETS, GRAMMAR_PACKAGES } from '../../src/devices/ast/engine/grammar-manifest.mjs'
158
+
159
+ const require = createRequire(import.meta.url)
160
+
161
+ describe('ast engine asset manifest', () => {
162
+ it('covers exactly the 14 languages of the device surface', () => {
163
+ expect(Object.keys(GRAMMAR_PACKAGES).sort()).toEqual([
164
+ 'bash', 'c', 'cpp', 'css', 'go', 'html', 'javascript', 'json',
165
+ 'python', 'ruby', 'rust', 'tsx', 'typescript', 'yaml',
166
+ ])
167
+ })
168
+ it('pins every grammar to a @lumis-sh 0.26 package (dylink.0 ABI lockstep)', () => {
169
+ for (const pkg of Object.values(GRAMMAR_PACKAGES)) {
170
+ expect(pkg).toMatch(/^@lumis-sh\/wasm-[a-z]+$/)
171
+ }
172
+ })
173
+ it('resolves every asset from node_modules (dev form) — engine wasm + runtime + 14 grammars', () => {
174
+ for (const entry of [...ENGINE_ASSETS, ...Object.values(GRAMMAR_ASSETS)]) {
175
+ expect(existsSync(require.resolve(entry.subpath)), entry.subpath).toBe(true)
176
+ }
177
+ })
178
+ })
179
+ ```
180
+
181
+ - [ ] **Step 6: 跑测试确认通过(清单是纯数据,无失败路径可先写;若 Step 1 未装包则此步 FAIL)**
182
+
183
+ Run: `npx vitest run test/surface-devices/ast-engine-assets.spec.ts`
184
+ Expected: PASS
185
+
186
+ - [ ] **Step 7: 跑构建,确认 16 个资产落位**
187
+
188
+ Run: `npm run build 2>&1 | tail -5 && ls lib/ast-assets | wc -l`
189
+ Expected: `ast-assets: 16 files, ≈14.4 MB`,`ls | wc -l` = 16
190
+
191
+ - [ ] **Step 8: Commit**
192
+
193
+ ```bash
194
+ git add package.json package-lock.json tsdown.config.ts scripts/copy-ast-assets.mjs \
195
+ src/devices/ast/engine/grammar-manifest.mjs src/devices/ast/engine/grammar-manifest.d.ts \
196
+ test/surface-devices/ast-engine-assets.spec.ts
197
+ git commit -m "feat(ast): stage WASM engine assets — manifest, copy script, build chain"
198
+ ```
199
+
200
+ ---
201
+
202
+ ### Task 2: `engine/wasm.ts` — 手动装配 + 惰性单例
203
+
204
+ **Files:**
205
+ - Create: `src/devices/ast/engine/wasm.ts`
206
+ - Test: `test/surface-devices/ast-engine-wasm.spec.ts`
207
+
208
+ **Interfaces:**
209
+ - Produces: `astEngine(): Promise<AstGrepEngine>`,`AstGrepEngine = { parse(lang, src): Promise<SgRoot> }`;结构类型 `SgRoot` / `SgNode` / `SgRange` / `SgPos`;`assetPath(file: string): string`。
210
+
211
+ - [ ] **Step 1: 写失败测试**
212
+
213
+ ```ts
214
+ import { describe, expect, it } from 'vitest'
215
+ import { astEngine } from '../../src/devices/ast/engine/wasm.ts'
216
+
217
+ describe('ast WASM engine boot', () => {
218
+ it('boots, parses, and memoizes the singleton', async () => {
219
+ const a = await astEngine()
220
+ const root = await a.parse('python', 'def f(n):\n return n\n')
221
+ expect(root.root().findAll('return $X')).toHaveLength(1)
222
+ const b = await astEngine()
223
+ expect(b).toBe(a)
224
+ })
225
+ })
226
+ ```
227
+
228
+ Run: `npx vitest run test/surface-devices/ast-engine-wasm.spec.ts`
229
+ Expected: FAIL(模块不存在)
230
+
231
+ - [ ] **Step 2: 实现**
232
+
233
+ `src/devices/ast/engine/wasm.ts`:
234
+
235
+ ```ts
236
+ /**
237
+ * ast-grep WASM 引擎的装载层 —— 全插件唯一的 wasm 入口。
238
+ *
239
+ * 三个坑(spec §2.1,勿重新踩):
240
+ * 1. Node 不吃 ESM wasm import:`@ast-grep/wasm/wasm_bg.js` 不自举,由我们
241
+ * 手动 `WebAssembly.instantiate` 后 `__wbg_set_wasm` 注入(import module
242
+ * 名实测为 './wasm_bg.js')。
243
+ * 2. `initializeTreeSitter()` 内部才调 `Parser.init()`,没暴露 locateFile,
244
+ * 所以先自行 `Parser.init({ locateFile })` 指向包内 tree-sitter.wasm
245
+ * (web-tree-sitter 单例缓存该 Promise,随后的内部 init 是 no-op)。
246
+ * 3. 资产有两个解析形态:构建后的 `lib/ast-assets/`(发布面)优先;dev 下
247
+ * 回落 node_modules 直解析。
248
+ */
249
+ import { existsSync } from 'node:fs'
250
+ import { readFile } from 'node:fs/promises'
251
+ import { createRequire } from 'node:module'
252
+ import { dirname, join } from 'node:path'
253
+ import { fileURLToPath } from 'node:url'
254
+ import { Parser } from 'web-tree-sitter'
255
+ import { PACKAGE_ROOT } from '../../kernel-env.ts'
256
+ import { ENGINE_ASSETS, GRAMMAR_ASSETS } from './grammar-manifest.mjs'
257
+
258
+ export interface SgPos { line: number, column: number, index: number }
259
+ export interface SgRange { start: SgPos, end: SgPos }
260
+ export interface SgNode {
261
+ text(): string
262
+ kind(): string
263
+ range(): SgRange
264
+ findAll(matcher: unknown): SgNode[]
265
+ find(matcher: unknown): SgNode | undefined
266
+ getMatch(name: string): SgNode | undefined
267
+ getMultipleMatches(name: string): SgNode[]
268
+ replace(text: string): unknown
269
+ }
270
+ export interface SgRoot { root(): SgNode }
271
+
272
+ export interface AstGrepEngine {
273
+ parse(lang: string, source: string): SgRoot
274
+ registerLanguages(entries: Record<string, { libraryPath: string, expandoChar: string }>): Promise<void>
275
+ }
276
+
277
+ const ASTGREP_WASM = ENGINE_ASSETS[0]!
278
+ const TREE_SITTER_WASM = ENGINE_ASSETS[1]!
279
+
280
+ function assetsDir(): string {
281
+ const bundled = join(PACKAGE_ROOT, 'lib', 'ast-assets')
282
+ if (existsSync(bundled)) return bundled
283
+ const require = createRequire(import.meta.url)
284
+ return dirname(require.resolve(GRAMMAR_ASSETS.python!.subpath))
285
+ }
286
+
287
+ export function assetPath(file: string): string {
288
+ return join(assetsDir(), file)
289
+ }
290
+
291
+ async function readAsset(file: string): Promise<Buffer> {
292
+ const p = assetPath(file)
293
+ if (existsSync(p)) return readFile(p)
294
+ // dev:node_modules 直解析(不要求先跑过 build)
295
+ const require = createRequire(import.meta.url)
296
+ return readFile(require.resolve(subpathOf(file)))
297
+ }
298
+
299
+ function subpathOf(file: string): string {
300
+ return ENGINE_ASSETS.find(a => a.file === file)?.subpath
301
+ ?? Object.values(GRAMMAR_ASSETS).find(a => a.file === file)!.subpath
302
+ }
303
+
304
+ let enginePromise: Promise<AstGrepEngine> | undefined
305
+
306
+ /** Boot the engine once per process; every later call returns the same instance. */
307
+ export function astEngine(): Promise<AstGrepEngine> {
308
+ enginePromise ??= boot()
309
+ return enginePromise
310
+ }
311
+
312
+ async function boot(): Promise<AstGrepEngine> {
313
+ const bg = (await import('@ast-grep/wasm/wasm_bg.js')) as {
314
+ __wbg_set_wasm(exports: unknown): void
315
+ initializeTreeSitter(): Promise<void>
316
+ registerDynamicLanguage(langs: Record<string, { libraryPath: string, expandoChar?: string }>): Promise<void>
317
+ parse(lang: string, source: string): SgRoot
318
+ }
319
+ const bytes = await readAsset(ASTGREP_WASM.file)
320
+ const { instance } = await WebAssembly.instantiate(bytes, { './wasm_bg.js': bg })
321
+ bg.__wbg_set_wasm(instance.exports)
322
+ ;(instance.exports as { __wbindgen_start(): void }).__wbindgen_start()
323
+
324
+ await Parser.init({ locateFile: () => assetPath(TREE_SITTER_WASM.file) })
325
+ await bg.initializeTreeSitter()
326
+
327
+ return {
328
+ parse: (lang, source) => bg.parse(lang, source),
329
+ registerLanguages: entries => bg.registerDynamicLanguage(entries),
330
+ }
331
+ }
332
+ ```
333
+
334
+ - [ ] **Step 3: 跑测试确认通过**
335
+
336
+ Run: `npx vitest run test/surface-devices/ast-engine-wasm.spec.ts`
337
+ Expected: PASS(首次冷启含 121 ms 的 wasm 实例化 + `Parser.init`)
338
+
339
+ - [ ] **Step 4: 确认打包形态仍可用(防 Task 1 的 noExternal 回归)**
340
+
341
+ ```bash
342
+ npm run build 2>&1 | tail -3
343
+ grep -rl "wasm_bg\|web-tree-sitter" lib/*.js | head -3
344
+ ```
345
+ Expected: 至少一个 chunk 含内联后的引擎代码(不是 `require('@ast-grep/wasm')`)。
346
+
347
+ - [ ] **Step 5: Commit**
348
+
349
+ ```bash
350
+ git add src/devices/ast/engine/wasm.ts test/surface-devices/ast-engine-wasm.spec.ts
351
+ git commit -m "feat(ast): engine/wasm — manual wasm-bindgen boot, lazy singleton"
352
+ ```
353
+
354
+ ---
355
+
356
+ ### Task 3: `language-map.ts` + `grammars.ts` — 语言面单一真相源
357
+
358
+ **Files:**
359
+ - Create: `src/devices/ast/engine/language-map.ts`
360
+ - Create: `src/devices/ast/engine/grammars.ts`
361
+ - Test: `test/surface-devices/ast-engine-grammars.spec.ts`
362
+
363
+ **Interfaces:**
364
+ - Produces: `EXTENSION_TO_LANGUAGE`、`languageForPath(path): string | undefined`、`AST_LANGUAGES: readonly string[]`;`ensureLanguages(): Promise<void>`、`isLanguageAvailable(lang): boolean`。
365
+
366
+ - [ ] **Step 1: 写失败测试**
367
+
368
+ ```ts
369
+ import { describe, expect, it } from 'vitest'
370
+ import { AST_LANGUAGES, EXTENSION_TO_LANGUAGE, languageForPath } from '../../src/devices/ast/engine/language-map.ts'
371
+ import { ensureLanguages, isLanguageAvailable } from '../../src/devices/ast/engine/grammars.ts'
372
+
373
+ describe('language map (single source of truth)', () => {
374
+ it('maps the probed extension set onto 14 grammars', () => {
375
+ expect(languageForPath('a/b/c.ts')).toBe('typescript')
376
+ expect(languageForPath('a/b/c.mts')).toBe('typescript')
377
+ expect(languageForPath('x/y.PY')).toBe('python') // 大小写不敏感
378
+ expect(languageForPath('x/y.md')).toBeUndefined()
379
+ })
380
+ it('every mapped language is registered and available', async () => {
381
+ await ensureLanguages()
382
+ expect(AST_LANGUAGES).toHaveLength(14)
383
+ for (const lang of AST_LANGUAGES) expect(isLanguageAvailable(lang), lang).toBe(true)
384
+ })
385
+ })
386
+ ```
387
+
388
+ Run: `npx vitest run test/surface-devices/ast-engine-grammars.spec.ts`
389
+ Expected: FAIL
390
+
391
+ - [ ] **Step 2: 实现**
392
+
393
+ `src/devices/ast/engine/language-map.ts`:
394
+
395
+ ```ts
396
+ /**
397
+ * 扩展名 → 内置 tree-sitter 语法。AST 语言面的单一真相源:
398
+ * walker 的语言推断与 ast-reminder 的提醒集合都从这里派生,
399
+ * 不再各自维护(也不再"对 shipped 二进制实测")。
400
+ */
401
+ export const EXTENSION_TO_LANGUAGE: Readonly<Record<string, string>> = {
402
+ '.py': 'python', '.pyi': 'python',
403
+ '.js': 'javascript', '.jsx': 'javascript', '.mjs': 'javascript', '.cjs': 'javascript',
404
+ '.ts': 'typescript', '.mts': 'typescript', '.cts': 'typescript',
405
+ '.tsx': 'tsx',
406
+ '.rs': 'rust',
407
+ '.go': 'go',
408
+ '.c': 'c', '.h': 'c',
409
+ '.cpp': 'cpp', '.hpp': 'cpp',
410
+ '.html': 'html',
411
+ '.css': 'css',
412
+ '.json': 'json',
413
+ '.yaml': 'yaml', '.yml': 'yaml',
414
+ '.sh': 'bash',
415
+ '.rb': 'ruby',
416
+ }
417
+
418
+ /** 该设备支持的全部语法(去重、稳定序)。 */
419
+ export const AST_LANGUAGES: readonly string[] = [...new Set(Object.values(EXTENSION_TO_LANGUAGE))]
420
+
421
+ /** 小写扩展名 → 语法;未知扩展名返回 undefined。 */
422
+ export function languageForPath(filePath: string): string | undefined {
423
+ const dot = filePath.lastIndexOf('.')
424
+ if (dot <= filePath.lastIndexOf('/')) return undefined
425
+ return EXTENSION_TO_LANGUAGE[filePath.slice(dot).toLowerCase()]
426
+ }
427
+ ```
428
+
429
+ `src/devices/ast/engine/grammars.ts`:
430
+
431
+ ```ts
432
+ /**
433
+ * 语法注册表。每个语言注册都必须带 expandoChar 'µ':默认 '$' 只在
434
+ * JS/TS/bash/cpp 下碰巧可用,python/rust/go 会静默 0 命中(spec §2.1)。
435
+ * 注册后对每个语言跑一次空源 parse 自检,把坏语法降级为"该语言不可用"
436
+ * 而不是让整个设备失败(fail-open,spec §1.5)。
437
+ */
438
+ import { GRAMMAR_ASSETS } from './grammar-manifest.mjs'
439
+ import { AST_LANGUAGES } from './language-map.ts'
440
+ import { astEngine, assetPath } from './wasm.ts'
441
+
442
+ /** ast-grep 的元变量引导字符;所有语言统一用 µ(实测全语言可用)。 */
443
+ export const EXPANDO_CHAR = 'µ'
444
+
445
+ const broken = new Set<string>()
446
+ let registered: Promise<void> | undefined
447
+
448
+ export function ensureLanguages(): Promise<void> {
449
+ registered ??= (async () => {
450
+ const engine = await astEngine()
451
+ const entries: Record<string, { libraryPath: string, expandoChar: string }> = {}
452
+ for (const lang of AST_LANGUAGES) {
453
+ entries[lang] = { libraryPath: assetPath(GRAMMAR_ASSETS[lang]!.file), expandoChar: EXPANDO_CHAR }
454
+ }
455
+ await engine.registerLanguages(entries)
456
+ for (const lang of AST_LANGUAGES) {
457
+ try {
458
+ engine.parse(lang, '')
459
+ } catch {
460
+ broken.add(lang)
461
+ }
462
+ }
463
+ })()
464
+ return registered
465
+ }
466
+
467
+ /** 该语法是否注册成功(失败的语言由 walker 跳过并计入 parseErrors)。 */
468
+ export function isLanguageAvailable(lang: string): boolean {
469
+ return !broken.has(lang)
470
+ }
471
+ ```
472
+
473
+ - [ ] **Step 3: 跑测试确认通过**
474
+
475
+ Run: `npx vitest run test/surface-devices/ast-engine-grammars.spec.ts`
476
+ Expected: PASS
477
+
478
+ - [ ] **Step 4: Commit**
479
+
480
+ ```bash
481
+ git add src/devices/ast/engine/language-map.ts src/devices/ast/engine/grammars.ts test/surface-devices/ast-engine-grammars.spec.ts
482
+ git commit -m "feat(ast): language map + grammar registry with expandoChar µ"
483
+ ```
484
+
485
+ ---
486
+
487
+ ### Task 4: `types.ts` — 设备契约类型从 natives-loader 迁出
488
+
489
+ **Files:**
490
+ - Create: `src/devices/ast/types.ts`
491
+ - Modify: `src/devices/ast/ast-device.ts`(仅 import 改向;**实现本任务不改逻辑**)
492
+
493
+ **Interfaces:**
494
+ - Produces: `AstFindMatch` / `AstFindResult` / `AstReplaceChange` / `AstReplaceFileChange` / `AstReplaceOptions` / `AstReplaceResult`(与原 `natives-loader.ts` 逐字段一致)。
495
+
496
+ - [ ] **Step 1: 迁移类型**
497
+
498
+ 把 `src/devices/ast/natives-loader.ts` 里 `// Native API surface` 到 `export interface PiNatives { ... }` 之间的**全部类型定义原样剪切**到 `src/devices/ast/types.ts`,文件头改为:
499
+
500
+ ```ts
501
+ /**
502
+ * `dvc://ast_edit` / `dvc://ast_grep` 的结果与选项形状 —— 模型面契约。
503
+ * 字段与语义一字不改(spec §1.1);唯一变化是后端从 pi-natives 换成内置
504
+ * WASM 引擎。坐标口径:行列 1-based、偏移 UTF-8 字节(native 口径)。
505
+ *
506
+ * @module dashr/devices/ast/types
507
+ */
508
+ ```
509
+
510
+ `ast-device.ts` 的 import 从 `'./natives-loader.ts'` 改为 `'./types.ts'`(类型 import 与 `PiNatives` 一并去掉,`PiNatives` 类型不迁移——它描述的是被删除的后端)。
511
+
512
+ - [ ] **Step 2: 验证不回归**
513
+
514
+ Run: `npx tsc --noEmit && npx vitest run test/surface-devices/`
515
+ Expected: tsc 0 错;现有 ast spec 仍 PASS(后端还没换)
516
+
517
+ - [ ] **Step 3: Commit**
518
+
519
+ ```bash
520
+ git add src/devices/ast/types.ts src/devices/ast/ast-device.ts
521
+ git commit -m "refactor(ast): move device contract types out of natives-loader"
522
+ ```
523
+
524
+ ---
525
+
526
+ ### Task 5: `engine/match.ts` — pattern 编译 + 命中映射(字节偏移)
527
+
528
+ **Files:**
529
+ - Create: `src/devices/ast/engine/match.ts`
530
+ - Test: `test/surface-devices/ast-engine-match.spec.ts`
531
+
532
+ **Interfaces:**
533
+ - Consumes: `astEngine()` / `ensureLanguages()` / `isLanguageAvailable()`(Task 2/3)
534
+ - Produces: `findInSource(source: string, lang: string, pattern: string, options: { includeMeta?: boolean }): Promise<{ matches: AstFindMatch[], unavailable: boolean }>`
535
+
536
+ - [ ] **Step 1: 写失败测试**
537
+
538
+ ```ts
539
+ import { describe, expect, it } from 'vitest'
540
+ import { findInSource } from '../../src/devices/ast/engine/match.ts'
541
+
542
+ describe('engine/match', () => {
543
+ it('reports 1-based lines/columns and UTF-8 byte offsets', async () => {
544
+ const source = 'const 世界 = "汉字"\nconst b = foo(世界)\n'
545
+ const { matches } = await findInSource(source, 'typescript', 'foo($A)', {})
546
+ expect(matches).toHaveLength(1)
547
+ expect(matches[0]!.text).toBe('foo(世界)')
548
+ expect(matches[0]!.byteStart).toBe(34) // native 实测同值
549
+ expect(matches[0]!.startLine).toBe(2) // 1-based
550
+ expect(matches[0]!.startColumn).toBe(11)
551
+ })
552
+
553
+ it('collects meta variables; multi-metavar reproduces the native Debug string', async () => {
554
+ const source = 'greet(1, 2, 3)\n'
555
+ const { matches } = await findInSource(source, 'typescript', 'greet($$$A)', { includeMeta: true })
556
+ expect(matches[0]!.metaVariables).toEqual({ A: '[1, ,, 2, ,, 3]' })
557
+ })
558
+
559
+ it('turns a multi-root pattern into zero matches, not a throw (native parity)', async () => {
560
+ const { matches } = await findInSource('function f(a) { return a }\n', 'typescript', 'function $N($$$A) { $$$B }', {})
561
+ expect(matches).toEqual([])
562
+ })
563
+ it('reproduces the native zero-hit quirks for C and CSS (upstream ambiguity)', async () => {
564
+ // golden 值取自 shipped pi-natives 的 A/B 实测(spec §2.1):native 对同样
565
+ // 输入同样返回 0 命中 —— ast-grep 上游语义,不是 WASM 退化。
566
+ const c = await findInSource('int main(void){ return foo(1); }\n', 'c', 'foo($A)', {})
567
+ expect(c.matches).toEqual([])
568
+ const css = await findInSource('.a { color: red; margin: 0 }\n', 'css', 'color: $V', {})
569
+ expect(css.matches).toEqual([])
570
+ })
571
+ })
572
+ ```
573
+
574
+ > **A/B 常驻化的方式**(spec §5.1):native 已从依赖面删除,测试不能在运行期 dlopen 它,
575
+ > 所以把 A/B 实测结果**固化为 golden 断言值**。上面各用例的期望值都来自对真实
576
+ > `pi_natives.linux-x64-modern.node` 的实测输出(spike 的 `ab-native.mjs` / `cjk.mjs` /
577
+ > `subst.mjs` / `multi.mjs`):`byteStart: 34`、`startColumn: 11`、`bar(42)`、`log(1, 2, 3)`、
578
+ > `[1, ,, 2, ,, 3]`、C/CSS 的 0 命中。回归时这些断言就是那场 A/B。
579
+
580
+ Run: `npx vitest run test/surface-devices/ast-engine-match.spec.ts`
581
+ Expected: FAIL
582
+
583
+ - [ ] **Step 2: 实现**
584
+
585
+ `src/devices/ast/engine/match.ts`:
586
+
587
+ ```ts
588
+ /**
589
+ * pattern 编译与命中映射。wasm 的 `findAll` 在多根节点 pattern 上会抛
590
+ * "Multiple AST nodes are detected";native 实测对这类 pattern 返回 0 命中
591
+ * 且不写 parseErrors,因此这里捕获后归零(spec §3)。
592
+ * 坐标换算:wasm 给 0-based 行列 + 字符偏移;native 契约是 1-based 行列 +
593
+ * UTF-8 字节偏移。
594
+ */
595
+ import type { AstFindMatch } from '../types.ts'
596
+ import { ensureLanguages, isLanguageAvailable } from './grammars.ts'
597
+ import { astEngine } from './wasm.ts'
598
+ import type { SgNode } from './wasm.ts'
599
+
600
+ const MULTI_NODE = 'Multiple AST nodes are detected'
601
+
602
+ /** 字符偏移 → UTF-8 字节偏移。 */
603
+ function byteOffsetOf(source: string, charIndex: number): number {
604
+ return Buffer.byteLength(source.slice(0, charIndex), 'utf8')
605
+ }
606
+
607
+ function toMatch(source: string, node: SgNode, meta: Record<string, string> | undefined): AstFindMatch {
608
+ const range = node.range()
609
+ const byteStart = byteOffsetOf(source, range.start.index)
610
+ return {
611
+ path: '',
612
+ text: node.text(),
613
+ byteStart,
614
+ byteEnd: byteStart + Buffer.byteLength(node.text(), 'utf8'),
615
+ startLine: range.start.line + 1,
616
+ startColumn: range.start.column + 1,
617
+ endLine: range.end.line + 1,
618
+ endColumn: range.end.column + 1,
619
+ ...(meta !== undefined && Object.keys(meta).length > 0 ? { metaVariables: meta } : {}),
620
+ }
621
+ }
622
+
623
+ /** 单 metavar → 捕获文本;多 metavar → 复刻 native 的 Rust Debug 数组串。 */
624
+ function collectMeta(node: SgNode, pattern: string, includeMeta: boolean): Record<string, string> | undefined {
625
+ if (!includeMeta) return undefined
626
+ const meta: Record<string, string> = {}
627
+ for (const raw of pattern.matchAll(/\$+\$?([A-Z_][A-Z0-9_]*)/g)) {
628
+ const token = raw[0]
629
+ const name = raw[1]!
630
+ if (token === `$$$${name}`) {
631
+ const parts = node.getMultipleMatches(name).map(n => n.text())
632
+ if (parts.length > 0) meta[name] = `[${parts.join(', ')}]`
633
+ } else if (!token.startsWith('$$')) {
634
+ const bound = node.getMatch(name)
635
+ if (bound !== undefined) meta[name] = bound.text()
636
+ }
637
+ }
638
+ return meta
639
+ }
640
+
641
+ export async function findInSource(
642
+ source: string,
643
+ lang: string,
644
+ pattern: string,
645
+ options: { includeMeta?: boolean },
646
+ ): Promise<{ matches: AstFindMatch[], unavailable: boolean }> {
647
+ await ensureLanguages()
648
+ if (!isLanguageAvailable(lang)) return { matches: [], unavailable: true }
649
+ const engine = await astEngine()
650
+ const root = engine.parse(lang, source).root()
651
+ let hits: SgNode[]
652
+ try {
653
+ hits = root.findAll(pattern)
654
+ } catch (error) {
655
+ if (error instanceof Error && error.message.includes(MULTI_NODE)) return { matches: [], unavailable: false }
656
+ throw error
657
+ }
658
+ return {
659
+ matches: hits.map(node => toMatch(source, node, collectMeta(node, pattern, options.includeMeta === true))),
660
+ unavailable: false,
661
+ }
662
+ }
663
+ ```
664
+
665
+ - [ ] **Step 3: 跑测试确认通过**
666
+
667
+ Run: `npx vitest run test/surface-devices/ast-engine-match.spec.ts`
668
+ Expected: PASS
669
+
670
+ - [ ] **Step 4: Commit**
671
+
672
+ ```bash
673
+ git add src/devices/ast/engine/match.ts test/surface-devices/ast-engine-match.spec.ts
674
+ git commit -m "feat(ast): engine/match — pattern search with native coordinate parity"
675
+ ```
676
+
677
+ ---
678
+
679
+ ### Task 6: `engine/edit.ts` — 结构改写(含元变量替换)
680
+
681
+ **Files:**
682
+ - Create: `src/devices/ast/engine/edit.ts`
683
+ - Test: `test/surface-devices/ast-engine-edit.spec.ts`
684
+
685
+ **Interfaces:**
686
+ - Consumes: `astEngine()` / `ensureLanguages()`(Task 2/3)
687
+ - Produces: `editSource(source: string, lang: string, rewrites: Record<string, string>): Promise<{ changes: AstReplaceChange[], rewritten: string, totalReplacements: number, parseErrorCount: number }>`(`rewritten` = 重放后的整份源码,Task 8 在 `dryRun:false` 时一次性写盘)
688
+
689
+ - [ ] **Step 1: 写失败测试**
690
+
691
+ ```ts
692
+ import { describe, expect, it } from 'vitest'
693
+ import { editSource } from '../../src/devices/ast/engine/edit.ts'
694
+
695
+ describe('engine/edit', () => {
696
+ it('substitutes single and multi meta variables in the replacement template', async () => {
697
+ const one = await editSource('const a = foo(42)\n', 'typescript', { 'foo($A)': 'bar($A)' })
698
+ expect(one.changes[0]!.after).toBe('bar(42)') // native 实测同值
699
+ const many = await editSource('greet(1, 2, 3)\n', 'typescript', { 'greet($$$A)': 'log($$$A)' })
700
+ expect(many.changes[0]!.after).toBe('log(1, 2, 3)') // native 实测同值
701
+ })
702
+
703
+ it('collapses an anonymous metavar to empty and keeps literals literal', async () => {
704
+ const anon = await editSource('const a = foo(42)\n', 'typescript', { 'foo($A)': 'bar($_)' })
705
+ expect(anon.changes[0]!.after).toBe('bar()')
706
+ const lit = await editSource('const a = foo(42)\n', 'typescript', { 'foo($A)': 'bar(1)' })
707
+ expect(lit.changes[0]!.after).toBe('bar(1)')
708
+ })
709
+
710
+ it('records a multi-root pattern as zero replacements, no throw', async () => {
711
+ const r = await editSource('function f(a) { return a }\n', 'typescript', { 'function $N($$$A) { $$$B }': 'x' })
712
+ expect(r.totalReplacements).toBe(0)
713
+ })
714
+ })
715
+ ```
716
+
717
+ Run: `npx vitest run test/surface-devices/ast-engine-edit.spec.ts`
718
+ Expected: FAIL
719
+
720
+ - [ ] **Step 2: 实现**
721
+
722
+ `src/devices/ast/engine/edit.ts`:
723
+
724
+ ```ts
725
+ /**
726
+ * 结构改写核心。native 在替换模板里做元变量替换(实测 `bar($A)`→`bar(42)`、
727
+ * `bar($_)`→`bar()`、`$$$A` 按源文本逗号拼接),wasm 的 `node.replace` 只收
728
+ * 字面文本,所以替换串由我们展开后再喂给 `commitEdits`。
729
+ */
730
+ import type { AstReplaceChange } from '../types.ts'
731
+ import { ensureLanguages, isLanguageAvailable } from './grammars.ts'
732
+ import { astEngine } from './wasm.ts'
733
+
734
+ const META_TOKEN = /\$\$\$([A-Z_][A-Z0-9_]*)|\$([A-Z_][A-Z0-9_]*)/g
735
+
736
+ const MULTI_NODE = 'Multiple AST nodes are detected'
737
+
738
+ /** 把模板里的元变量替换成该次命中的捕获文本(`$_`-匿名 → 空串)。 */
739
+ function expand(template: string, node: import('./wasm.ts').SgNode): string {
740
+ return template.replace(META_TOKEN, (whole, multi?: string, single?: string) => {
741
+ if (multi !== undefined) return node.getMultipleMatches(multi).map(n => n.text()).join(', ')
742
+ if (single === undefined) return whole
743
+ if (single.startsWith('_')) return ''
744
+ return node.getMatch(single)?.text() ?? ''
745
+ })
746
+ }
747
+
748
+ export async function editSource(
749
+ source: string,
750
+ lang: string,
751
+ rewrites: Record<string, string>,
752
+ ): Promise<{ changes: AstReplaceChange[], totalReplacements: number, parseErrorCount: number }> {
753
+ await ensureLanguages()
754
+ if (!isLanguageAvailable(lang) || Object.keys(rewrites).length === 0) {
755
+ return { changes: [], totalReplacements: 0, parseErrorCount: 0 }
756
+ }
757
+ const engine = await astEngine()
758
+ const root = engine.parse(lang, source).root()
759
+
760
+ const edits: Array<{ edit: { start_pos: number, end_pos: number, inserted_text: string }, change: AstReplaceChange }> = []
761
+ for (const [pattern, template] of Object.entries(rewrites)) {
762
+ let hits: import('./wasm.ts').SgNode[]
763
+ try {
764
+ hits = root.findAll(pattern)
765
+ } catch (error) {
766
+ if (error instanceof Error && error.message.includes(MULTI_NODE)) continue
767
+ throw error
768
+ }
769
+ for (const node of hits) {
770
+ const range = node.range()
771
+ const replacement = expand(template, node)
772
+ const byteStart = Buffer.byteLength(source.slice(0, range.start.index), 'utf8')
773
+ edits.push({
774
+ edit: { start_pos: range.start.index, end_pos: range.end.index, inserted_text: replacement },
775
+ change: {
776
+ path: '',
777
+ before: node.text(),
778
+ after: replacement,
779
+ byteStart,
780
+ byteEnd: byteStart + Buffer.byteLength(node.text(), 'utf8'),
781
+ deletedLength: Buffer.byteLength(node.text(), 'utf8'),
782
+ startLine: range.start.line + 1,
783
+ startColumn: range.start.column + 1,
784
+ endLine: range.end.line + 1,
785
+ endColumn: range.end.column + 1,
786
+ },
787
+ })
788
+ }
789
+ }
790
+
791
+ // commitEdits 只服务于「真写盘」那份新源码;changes[] 全部来自扫描期的源文本,
792
+ // 不从重放结果反推(多字节字符与相邻替换会互相推走偏移)。
793
+ edits.sort((a, b) => b.edit.start_pos - a.edit.start_pos)
794
+ const rewritten = root.commitEdits(edits.map(e => e.edit))
795
+ return { changes: edits.map(e => e.change), rewritten, totalReplacements: edits.length, parseErrorCount: 0 }
796
+ }
797
+ ```
798
+
799
+ `changes[]` 的 `before` / `byte*` / `start*` 在收集阶段就已定格为**源文本**坐标,`after` 即展开后的替换串;`rewritten` 是整份重放源码,供 `ast-device.ts` 在 `dryRun:false` 时一次性写盘(单一写、单一审计,与现有 write 契约一致)。
800
+
801
+ - [ ] **Step 3: 跑测试确认通过**
802
+
803
+ Run: `npx vitest run test/surface-devices/ast-engine-edit.spec.ts`
804
+ Expected: PASS(四条用例全绿)
805
+
806
+ - [ ] **Step 4: 更新接口说明**
807
+
808
+ `editSource` 返回 `{ changes, rewritten, totalReplacements, parseErrorCount }` —— `rewritten: string` 是重放后的整份源码,Task 8 在 `dryRun:false` 时写它。
809
+
810
+ - [ ] **Step 5: Commit**
811
+
812
+ - [ ] **Step 5: Commit**
813
+
814
+ ```bash
815
+ git add src/devices/ast/engine/edit.ts test/surface-devices/ast-engine-edit.spec.ts
816
+ git commit -m "feat(ast): engine/edit — structural rewrite with meta-variable substitution"
817
+ ```
818
+
819
+ ---
820
+
821
+ ### Task 7: `walker.ts` — .gitignore 感知遍历 + glob + 限额
822
+
823
+ **Files:**
824
+ - Create: `src/devices/ast/walker.ts`
825
+ - Modify: `tsdown.config.ts`(`BUNDLED_RUNTIME` 增 `'ignore'`)
826
+ - Modify: `package.json`(`devDependencies` 增 `ignore@^7.0.12`,Task 1 已装)
827
+ - Test: `test/surface-devices/ast-walker.spec.ts`
828
+
829
+ **Interfaces:**
830
+ - Consumes: `languageForPath()`(Task 3)
831
+ - Produces: `walkSources(root: string, options: { glob?: string, maxFiles?: number }): Promise<{ files: string[], limitReached: boolean }>`(返回 cwd 无关的**绝对**路径,按字典序稳定排序)
832
+
833
+ - [ ] **Step 1: 安装并在 tsdown 内联 `ignore`**
834
+
835
+ ```bash
836
+ npm i -D ignore@^7.0.12
837
+ ```
838
+
839
+ `tsdown.config.ts` 的 `BUNDLED_RUNTIME` **插入** `'ignore'`(放 `'@ast-grep/wasm'` 之前)。
840
+
841
+ - [ ] **Step 2: 写失败测试**
842
+
843
+ ```ts
844
+ import { mkdirSync, rmSync, writeFileSync } from 'node:fs'
845
+ import * as os from 'node:os'
846
+ import * as path from 'node:path'
847
+ import { afterEach, beforeEach, describe, expect, it } from 'vitest'
848
+ import { walkSources } from '../../src/devices/ast/walker.ts'
849
+
850
+ let dir: string
851
+ beforeEach(() => { dir = mkdirSyncSync() })
852
+ afterEach(() => rmSync(dir, { recursive: true, force: true }))
853
+ function mkdirSyncSync(): string {
854
+ const d = path.join(os.tmpdir(), `ast-walk-${Date.now()}-${Math.random().toString(36).slice(2)}`)
855
+ mkdirSync(d, { recursive: true })
856
+ return d
857
+ }
858
+ const write = (rel: string, body = 'const a = 1\n') => {
859
+ const p = path.join(dir, rel)
860
+ mkdirSync(path.dirname(p), { recursive: true })
861
+ writeFileSync(p, body)
862
+ }
863
+
864
+ describe('ast walker', () => {
865
+ it('skips node_modules, dotdirs, and non-AST extensions', async () => {
866
+ write('src/a.ts'); write('src/b.md'); write('node_modules/x/c.ts'); write('.hidden/d.ts')
867
+ const { files } = await walkSources(dir, {})
868
+ expect(files.map(f => path.relative(dir, f))).toEqual(['src/a.ts'])
869
+ })
870
+ it('honours .gitignore', async () => {
871
+ write('src/a.ts'); write('src/gen/keep.ts'); write('.gitignore', 'src/gen/\n')
872
+ const { files } = await walkSources(dir, {})
873
+ expect(files.map(f => path.relative(dir, f))).toEqual(['src/a.ts'])
874
+ })
875
+ it('applies a glob tail against the root and reports limitReached', async () => {
876
+ write('src/a.ts'); write('src/b.ts'); write('src/c.rb')
877
+ const globbed = await walkSources(dir, { glob: '**/*.ts' })
878
+ expect(globbed.files).toHaveLength(2)
879
+ const capped = await walkSources(dir, { maxFiles: 1 })
880
+ expect(capped.files).toHaveLength(1)
881
+ expect(capped.limitReached).toBe(true)
882
+ })
883
+ })
884
+ ```
885
+
886
+ Run: `npx vitest run test/surface-devices/ast-walker.spec.ts`
887
+ Expected: FAIL
888
+
889
+ - [ ] **Step 3: 实现**
890
+
891
+ `src/devices/ast/walker.ts`:
892
+
893
+ ```ts
894
+ /**
895
+ * .gitignore 感知的源文件遍历 —— 对应 OMP 底盘里的 `ignore` crate。
896
+ * 语义:跳过 node_modules / .git / 隐藏目录;逐层读取 .gitignore;
897
+ * `glob` 作为相对 root 的过滤尾;`maxFiles` 达到即停(limitReached)。
898
+ * 输出为绝对路径、字典序稳定,调用方(ast-device)负责再归属到 cwd。
899
+ */
900
+ import { readdirSync, readFileSync, statSync } from 'node:fs'
901
+ import * as path from 'node:path'
902
+ import { ignore } from 'ignore'
903
+ import { languageForPath } from './engine/language-map.ts'
904
+
905
+ const ALWAYS_SKIP = new Set(['node_modules', '.git'])
906
+
907
+ export interface WalkOptions { glob?: string, maxFiles?: number }
908
+ export interface WalkResult { files: string[], limitReached: boolean }
909
+
910
+ function ignoresFor(root: string): ReturnType<typeof ignore> {
911
+ const ig = ignore()
912
+ let dir = root
913
+ const chain: string[] = []
914
+ for (;;) {
915
+ const gitignore = path.join(dir, '.gitignore')
916
+ try {
917
+ ig.add(readFileSync(gitignore, 'utf8'))
918
+ chain.unshift(path.relative(root, dir) || '.')
919
+ } catch { /* 无该层 .gitignore */ }
920
+ const parent = path.dirname(dir)
921
+ if (parent === dir) break
922
+ dir = parent
923
+ }
924
+ return ig
925
+ }
926
+
927
+ function matchesGlob(root: string, abs: string, glob: string | undefined): boolean {
928
+ if (glob === undefined) return true
929
+ const rel = path.relative(root, abs).split(path.sep).join('/')
930
+ const ig = ignore()
931
+ // ignore 包的 glob 语义与 gitwildmatch 一致,恰好覆盖 ast-grep 的 glob 尾
932
+ ig.add(glob.startsWith('!') ? glob : glob)
933
+ return ig.ignores(rel)
934
+ }
935
+
936
+ export async function walkSources(root: string, options: WalkOptions): Promise<WalkResult> {
937
+ const maxFiles = options.maxFiles ?? 1000
938
+ const ig = ignoresFor(root)
939
+ const out: string[] = []
940
+ let limitReached = false
941
+
942
+ const visit = (dir: string): void => {
943
+ if (limitReached) return
944
+ let entries
945
+ try {
946
+ entries = readdirSync(dir, { withFileTypes: true })
947
+ } catch { return }
948
+ for (const entry of entries.sort((a, b) => a.name.localeCompare(b.name))) {
949
+ if (limitReached) return
950
+ if (entry.name.startsWith('.') && ALWAYS_SKIP.has(entry.name)) continue
951
+ if (entry.name.startsWith('.')) continue
952
+ const abs = path.join(dir, entry.name)
953
+ const relFromRoot = path.relative(root, abs)
954
+ if (relFromRoot && ig.ignores(relFromRoot.split(path.sep).join('/'))) continue
955
+ if (entry.isDirectory()) { visit(abs); continue }
956
+ if (languageForPath(entry.name) === undefined) continue
957
+ if (!matchesGlob(root, abs, options.glob)) continue
958
+ if (out.length >= maxFiles) { limitReached = true; return }
959
+ out.push(abs)
960
+ }
961
+ }
962
+ try {
963
+ if (statSync(root).isFile()) {
964
+ out.push(root)
965
+ } else {
966
+ visit(root)
967
+ }
968
+ } catch { /* root 不存在:返回空 */ }
969
+ return { files: out.sort(), limitReached }
970
+ }
971
+ ```
972
+
973
+ - [ ] **Step 4: 跑测试确认通过**
974
+
975
+ Run: `npx vitest run test/surface-devices/ast-walker.spec.ts`
976
+ Expected: PASS
977
+
978
+ - [ ] **Step 5: Commit**
979
+
980
+ ```bash
981
+ git add src/devices/ast/walker.ts tsdown.config.ts package.json package-lock.json test/surface-devices/ast-walker.spec.ts
982
+ git commit -m "feat(ast): gitignore-aware walker with glob and maxFiles"
983
+ ```
984
+
985
+ ---
986
+
987
+ ### Task 8: 重写 `ast-device.ts` 到引擎上,删除 `natives-loader.ts`
988
+
989
+ **Files:**
990
+ - Modify: `src/devices/ast/ast-device.ts`
991
+ - Delete: `src/devices/ast/natives-loader.ts`
992
+ - Modify: `test/surface-devices/ast-device.spec.ts`(换后端;loader 段删除)
993
+ - Test: `test/surface-devices/ast-device.spec.ts`
994
+
995
+ **Interfaces:**
996
+ - Consumes: `findInSource` / `editSource` / `walkSources` / `languageForPath`(Task 3/5/6/7)
997
+ - Produces: `registerAstDevices(registry?)`、`summaries`(签名与文案不变)
998
+
999
+ - [ ] **Step 1: 重写两个 execute 的取数路径(聚合逻辑保留)**
1000
+
1001
+ `ast-device.ts` 里删除 `nativesOrThrow()`,改为:
1002
+
1003
+ ```ts
1004
+ import { editSource } from './engine/edit.ts'
1005
+ import { findInSource } from './engine/match.ts'
1006
+ import { languageForPath } from './engine/language-map.ts'
1007
+ import { walkSources } from './walker.ts'
1008
+ ```
1009
+
1010
+ `executeAstGrep` 的取数段替换为:
1011
+
1012
+ ```ts
1013
+ await ensureLanguages()
1014
+ const target = resolveTarget(rawPath !== undefined && rawPath.length > 0 ? rawPath : '.', cwd)
1015
+ const walked = await walkSources(target.root, { glob: target.glob, maxFiles: MAX_FILES })
1016
+ const matches: AstFindMatch[] = []
1017
+ let filesWithMatches = 0
1018
+ const parseErrors: string[] = []
1019
+ for (const file of walked.files) {
1020
+ const lang = languageForPath(file)
1021
+ if (lang === undefined) continue
1022
+ let source: string
1023
+ try {
1024
+ source = readFileSync(file, 'utf8')
1025
+ } catch { continue }
1026
+ const found = await findInSource(source, lang, patterns[0]!, { includeMeta })
1027
+ if (found.unavailable) { parseErrors.push(`${rel(file)}: language unavailable`); continue }
1028
+ if (found.matches.length > 0) filesWithMatches += 1
1029
+ matches.push(...found.matches.map(m => ({ ...m, path: rel(file) })))
1030
+ }
1031
+ ```
1032
+
1033
+ > 多 pattern(`patterns: [a, b]`)沿用 native 的 OR 语义:对同一文件**逐 pattern** 调 `findInSource` 后合并;`offset`/`limit` 在合并后的列表上切(`matches.slice(offset ?? 0, (offset ?? 0) + (limit ?? Infinity))`),`totalMatches` = 切之前的长度,`limitReached` = `totalMatches > matches.length`。
1034
+
1035
+ `executeAstEdit` 的取数段同理换成 `editSource`,`dryRun` 仍默认 `true`;`applied = !dryRun`;`fileChanges` 由 `changes` 按 path 聚合(沿用现有 `Map` 计数);`limitReached` 来自 `walked.limitReached`;`filesSearched` 来自 `walked.files.length`。`dryRun:false` 时用 `editSource` 返回的 `rewritten` **一次性写盘**(单一写、单一审计,保持现有 write 契约——不先删后写、不做两次 I/O)。`changes[].path` 归属 `rel(file)`。多 pattern 的 rewrites 已由 `Object.fromEntries` 语义在入口收敛(保留现有逻辑)。
1036
+
1037
+ `rel(file)` = `path.relative(cwd, file).split(path.sep).join('/')`。
1038
+
1039
+ - [ ] **Step 2: 改写测试文件**
1040
+
1041
+ `test/surface-devices/ast-device.spec.ts`:
1042
+ - 删除 `describe('pi-natives loader')` 整段与相关 import(`loadPiNatives` / `piNativesAddonFilenames` / `piNativesPackageName` / `setPiNativesForTest`)。
1043
+ - 删除 `describe('ast device failure modes')` 里"addon unavailable"一条,替换为:
1044
+
1045
+ ```ts
1046
+ it('rejects with DVC_DEVICE_ERROR for an unsupported pattern (engine throws through)', async () => {
1047
+ const { error } = await dvcWrite('dvc://ast_grep', { patterns: [';;;not a pattern;;;'], path: fixtureDir })
1048
+ expect(error.message).toContain('dvc:// device "ast_grep" execute failed')
1049
+ })
1050
+ ```
1051
+
1052
+ - 其余用例(结构化搜索、分页、dryRun 默认、真写盘、ops 去重、glob、ctx.cwd)**不改断言**,只确认仍绿——它们就是本次换后端的回归网。
1053
+
1054
+ - [ ] **Step 3: 删除 loader 并验证**
1055
+
1056
+ ```bash
1057
+ git rm src/devices/ast/natives-loader.ts
1058
+ grep -rn "natives-loader\|pi-natives\|@oh-my-pi" src test --include=*.ts
1059
+ ```
1060
+ Expected: grep 无输出
1061
+
1062
+ Run: `npx tsc --noEmit && npx vitest run test/surface-devices/`
1063
+ Expected: tsc 0 错;全绿
1064
+
1065
+ - [ ] **Step 4: Commit**
1066
+
1067
+ ```bash
1068
+ git add -A src/devices/ast test/surface-devices/ast-device.spec.ts
1069
+ git commit -m "feat(ast): mount ast devices on the in-package WASM engine; drop pi-natives loader"
1070
+ ```
1071
+
1072
+ ---
1073
+
1074
+ ### Task 9: `ast-reminder.ts` 对齐语言面
1075
+
1076
+ **Files:**
1077
+ - Modify: `src/devices/ast/ast-reminder.ts`
1078
+ - Test: `test/surface-devices/ast-reminder.spec.ts`
1079
+
1080
+ **Interfaces:**
1081
+ - Consumes: `EXTENSION_TO_LANGUAGE`(Task 3)
1082
+ - Produces: `AST_CODE_EXTENSIONS`(集合成员从"对二进制实测"改为"对语言面派生")
1083
+
1084
+ - [ ] **Step 1: 派生集合**
1085
+
1086
+ `ast-reminder.ts` 里手写的 `AST_CODE_EXTENSIONS` 字面量替换为:
1087
+
1088
+ ```ts
1089
+ import { EXTENSION_TO_LANGUAGE } from './engine/language-map.ts'
1090
+
1091
+ /**
1092
+ * AST-capable extension set —— 从引擎的语言面**派生**(spec:单一真相源)。
1093
+ * 2026-09-27 那版是对 shipped 二进制逐扩展实测的快照;引擎内置后两者必然
1094
+ * 一致,不再人工维护第二份。
1095
+ */
1096
+ export const AST_CODE_EXTENSIONS: ReadonlySet<string> = new Set(Object.keys(EXTENSION_TO_LANGUAGE))
1097
+ ```
1098
+
1099
+ - [ ] **Step 2: 跑现有 spec**
1100
+
1101
+ Run: `npx vitest run test/surface-devices/ast-reminder.spec.ts`
1102
+ Expected: PASS(既有断言集合不变——`.pyi/.mts/.cts/.h/.hpp/.yml` 等都在 `EXTENSION_TO_LANGUAGE` 里)
1103
+
1104
+ - [ ] **Step 3: Commit**
1105
+
1106
+ ```bash
1107
+ git add src/devices/ast/ast-reminder.ts
1108
+ git commit -m "refactor(ast): derive the reminder extension set from the language map"
1109
+ ```
1110
+
1111
+ ---
1112
+
1113
+ ### Task 10: 文档与许可同步
1114
+
1115
+ **Files:**
1116
+ - Modify: `docs/20_specs/ast/spec.md` + `docs/specs/ast/spec.md`(两文件**内容相同**,同步改)
1117
+ - Modify: `docs/20_specs/dvc/spec.md` + `docs/specs/dvc/spec.md`
1118
+ - Modify: `THIRD_PARTY_NOTICES.md`
1119
+ - Modify: `src/NOTICE-OMP.md`(**不删**——已核它覆盖 browser/lsp/ast 共 8 个文件,ast 只是其一)
1120
+
1121
+ - [ ] **Step 1: 行为契约措辞**
1122
+
1123
+ `docs/20_specs/ast/spec.md`(及镜像)的 `### Requirement: Lazy natives, zero startup cost` 整段替换为:
1124
+
1125
+ ```markdown
1126
+ ### Requirement: Lazy in-package engine, zero startup cost
1127
+ The ast device's WASM engine SHALL load lazily on first use; host start and agent session start SHALL NOT parse anything or load grammar binaries. The engine and its grammars SHALL ship inside the package (`lib/ast-assets/`) and SHALL require no network access, no npm resolution, and no `.vendor` provisioning at call time.
1128
+
1129
+ #### Scenario: Cold session
1130
+ - **WHEN** a session ends without ever invoking the ast device
1131
+ - **THEN** no WASM engine was instantiated and no grammar binary was loaded
1132
+
1133
+ #### Scenario: Offline first use
1134
+ - **WHEN** the device is first invoked with no network access and no `.vendor` directory
1135
+ - **THEN** the search still completes from the in-package engine
1136
+ ```
1137
+
1138
+ `docs/20_specs/dvc/spec.md`(及镜像)的 `### Requirement: ast devices` 一句改为:
1139
+
1140
+ ```markdown
1141
+ The system SHALL provide `ast_edit` (staged structured codemod) and `ast_grep` (structured search) devices, backed by the official ast-grep engine compiled to WebAssembly plus an in-package tree-sitter grammar set (`lib/ast-assets/`), with no OMP and no native binary.
1142
+ ```
1143
+
1144
+ - [ ] **Step 2: 许可表**
1145
+
1146
+ `THIRD_PARTY_NOTICES.md` 的表格追加三行(MIT,各自 copyright 保留在上游文件里):
1147
+
1148
+ ```markdown
1149
+ | `@ast-grep/wasm` | 0.45.3 | MIT | <https://github.com/ast-grep/ast-grep> |
1150
+ | `web-tree-sitter` | 0.26.12 | MIT | <https://github.com/tree-sitter/tree-sitter> |
1151
+ | `@lumis-sh/wasm-*` (14 grammars) | 0.26.x | MIT | <https://www.npmjs.com/org/lumis-sh> |
1152
+ ```
1153
+
1154
+ - [ ] **Step 3: Commit**
1155
+
1156
+ ```bash
1157
+ git add docs/20_specs/ast/spec.md docs/specs/ast/spec.md docs/20_specs/dvc/spec.md docs/specs/dvc/spec.md THIRD_PARTY_NOTICES.md
1158
+ git commit -m "docs(ast): retarget the behaviour contract onto the in-package WASM engine"
1159
+ ```
1160
+
1161
+ ---
1162
+
1163
+ ### Task 11: 离线第一人称实测 + 零 OMP 实证 + 报告
1164
+
1165
+ **Files:**
1166
+ - Create: `docs/50_test-reports/2026-10-03-ast-engine-deomp-4999实测报告.md`
1167
+ - Test: 全量 + rig
1168
+
1169
+ - [ ] **Step 1: 全量卫生**
1170
+
1171
+ ```bash
1172
+ npm run build && npm run typecheck && npx vitest run
1173
+ ```
1174
+ Expected: build 完成、tsc 0 错、全量单测绿
1175
+
1176
+ - [ ] **Step 2: tarball 零 OMP**
1177
+
1178
+ ```bash
1179
+ npm pack --dry-run 2>&1 | tail -3
1180
+ tar -xzf better-dsh-<version>.tgz -C /tmp/astpkg 2>/dev/null || (mkdir -p /tmp/astpkg && npm pack --pack-destination /tmp/astpkg >/dev/null && tar -xzf /tmp/astpkg/better-dsh-*.tgz -C /tmp/astpkg)
1181
+ grep -rc "pi_natives\|@oh-my-pi" /tmp/astpkg/package 2>/dev/null | grep -v ':0' | head
1182
+ ls /tmp/astpkg/package/lib/ast-assets | wc -l
1183
+ ```
1184
+ Expected: grep 无输出(0 处);ast-assets = 16
1185
+
1186
+ - [ ] **Step 3: 离线 rig 实测(对齐"改动点同类"红线)**
1187
+
1188
+ ```bash
1189
+ # 断网不可行时,用 BLOCKED registry 模拟:确保 <pkg>/.vendor 不存在 + 无网络
1190
+ rm -rf /home/u1/workspaces/dashr/.test/home/compat/profiles/web/node_modules/better-dsh/.vendor
1191
+ cd ~/workspaces/dashr/better-dsh && npm pack
1192
+ cd ~/workspaces/dashr && DSH_HOME=$PWD/.test/home/compat node upstream/deepseek-harness/apps/cli/lib/bin.js \
1193
+ plugin --profile web remove better-dsh
1194
+ DSH_HOME=$PWD/.test/home/compat node upstream/deepseek-harness/apps/cli/lib/bin.js \
1195
+ plugin --profile web add $PWD/better-dsh/better-dsh-<version>.tgz
1196
+ bash .test/seed/test123/start.sh
1197
+ ```
1198
+
1199
+ 真实 agent session(HTTP 端点发起)依次:
1200
+ 1. `write dvc://ast_grep` `{"patterns":["export function $NAME($$$ARGS)"],"path":"<workspace>/better-dsh/src/devices/ast"}` → 期待结构化命中(`totalMatches`/`filesWithMatches`/`filesSearched` 字段齐全)
1201
+ 2. `write dvc://ast_edit` `{"ops":[{"pat":"export function $NAME($$$ARGS)","out":"export function $NAME($$$ARGS) {}"}],"paths":["<同一文件>"]}`(dryRun 默认 true)→ 期待 `applied:false` 且文件未变
1202
+ 3. 同 ops + `"dryRun":false` → 期待真写盘,`git diff` 可见
1203
+ 4. 期间确认 `<pkg>/.vendor` **没有**被创建,日志无 registry 请求
1204
+
1205
+ - [ ] **Step 4: 报告落盘 + Commit**
1206
+
1207
+ 报告至少含:三个设备调用的真实返回 JSON、`.vendor` 未创建的证据、tarball 计数、全量单测数、与 native 的 A/B 对照表。
1208
+
1209
+ ```bash
1210
+ git add docs/50_test-reports/2026-10-03-ast-engine-deomp-4999实测报告.md
1211
+ git commit -m "docs(test): ast engine de-OMP first-person rig report"
1212
+ ```
1213
+
1214
+ > 发布(`npm publish`)仍需 user 单次明确放行 —— 见根 AGENTS.md 〇节,本计划不包含发包。