better-dsh 0.2.5-c → 0.2.5-d

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (959) 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.6/345/217/221/345/270/203/351/252/214/346/224/266/346/212/245/345/221/212.md +216 -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/specs/ast/spec.md +26 -3
  11. package/docs/specs/ast-engine-deomp/spec.md +170 -0
  12. package/docs/specs/docs-packaging-trim/spec.md +110 -0
  13. package/docs/specs/dvc/spec.md +20 -1
  14. package/docs/superpowers/plans/2026-10-03-ast-engine-deomp.md +1214 -0
  15. package/docs/superpowers/plans/2026-10-03-docs-packaging-trim.md +181 -0
  16. package/lib/BrowserWebSocketTransport-D1aFReu_.js +4 -0
  17. package/lib/{BrowserWebSocketTransport-FbPg_VFT.js → BrowserWebSocketTransport-wm99h94r.js} +1 -1
  18. package/lib/LaunchOptions-3peHoOAx.js +4 -0
  19. package/lib/{LaunchOptions-RNO1YIoJ.js → LaunchOptions-DXdeJis3.js} +1 -1
  20. package/lib/NodeWebSocketTransport-BRLjmu2R.js +4 -0
  21. package/lib/{NodeWebSocketTransport-BdrEPUFe.js → NodeWebSocketTransport-D9ysYGLM.js} +9 -4
  22. package/lib/ast-assets/ast-grep.wasm +0 -0
  23. package/lib/ast-assets/tree-sitter-bash.wasm +0 -0
  24. package/lib/ast-assets/tree-sitter-c.wasm +0 -0
  25. package/lib/ast-assets/tree-sitter-cpp.wasm +0 -0
  26. package/lib/ast-assets/tree-sitter-css.wasm +0 -0
  27. package/lib/ast-assets/tree-sitter-go.wasm +0 -0
  28. package/lib/ast-assets/tree-sitter-html.wasm +0 -0
  29. package/lib/ast-assets/tree-sitter-javascript.wasm +0 -0
  30. package/lib/ast-assets/tree-sitter-json.wasm +0 -0
  31. package/lib/ast-assets/tree-sitter-python.wasm +0 -0
  32. package/lib/ast-assets/tree-sitter-ruby.wasm +0 -0
  33. package/lib/ast-assets/tree-sitter-rust.wasm +0 -0
  34. package/lib/ast-assets/tree-sitter-tsx.wasm +0 -0
  35. package/lib/ast-assets/tree-sitter-typescript.wasm +0 -0
  36. package/lib/ast-assets/tree-sitter-yaml.wasm +0 -0
  37. package/lib/ast-assets/tree-sitter.wasm +0 -0
  38. package/lib/{bidi-D0POLRy7.js → bidi-CwtLGgcA.js} +3 -3
  39. package/lib/compaction/index.d.ts +1 -1
  40. package/lib/failover/index.d.ts +1 -1
  41. package/lib/{index-browser-rqlXyoed.js → index-browser-Bp3vxHC3.js} +6 -6
  42. package/lib/index.d.ts +1 -1
  43. package/lib/{lsp-server-registry-LUjrrLxk.js → lsp-server-registry-BcdkHROD.js} +1 -1
  44. package/lib/{main-Dlv0Jm8U.js → main-BXwPLuYr.js} +1 -1
  45. package/lib/mobile/plugin.d.ts +2 -2
  46. package/lib/{puppeteer-core-BIIJGWPE.js → puppeteer-core-Bliv_vNf.js} +8 -8
  47. package/lib/remote/plugin.d.ts +1 -1
  48. package/lib/url-schemes/index.d.ts +11 -11
  49. package/lib/url-schemes/index.js +1188 -386
  50. package/lib/wasm_bg-CNXhHjVg.js +1291 -0
  51. package/lib/web-tree-sitter-CPrPD4J2.js +3440 -0
  52. package/lib/{web-trust-CL9P6jVe.d.ts → web-trust-DBsL1tG4.d.ts} +7 -7
  53. package/lib/web-trust.d.ts +1 -1
  54. package/package.json +40 -18
  55. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/.tools/MdxPage-CTY7atqe.js +0 -11
  56. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/.tools/extract_omp.mjs +0 -42
  57. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/.tools/fetch_pi.py +0 -52
  58. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/.tools/jsx-runtime-BHwPObl3.js +0 -13
  59. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/.tools/omp_extracted.json +0 -1
  60. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/.tools/omp_pages.txt +0 -35
  61. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/.tools/package.json +0 -1
  62. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/.tools/pi_convert.py +0 -49
  63. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/.tools/pi_pages.txt +0 -30
  64. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/.tools/serialize_omp.py +0 -250
  65. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/README.md +0 -80
  66. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/omp/Overview.md +0 -88
  67. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/omp/acp.md +0 -151
  68. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/omp/advisor.md +0 -185
  69. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/omp/agents-and-roles.md +0 -168
  70. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/omp/approvals.md +0 -200
  71. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/omp/cli.md +0 -381
  72. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/omp/code-intelligence.md +0 -225
  73. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/omp/collab.md +0 -207
  74. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/omp/commit.md +0 -169
  75. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/omp/compaction.md +0 -195
  76. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/omp/computer.md +0 -224
  77. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/omp/context-files.md +0 -184
  78. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/omp/custom-models.md +0 -284
  79. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/omp/custom-tools.md +0 -248
  80. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/omp/debugging.md +0 -254
  81. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/omp/editing.md +0 -157
  82. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/omp/env.md +0 -552
  83. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/omp/extension-authoring.md +0 -378
  84. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/omp/files.md +0 -144
  85. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/omp/github.md +0 -175
  86. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/omp/goal.md +0 -156
  87. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/omp/handoff.md +0 -139
  88. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/omp/hooks.md +0 -257
  89. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/omp/keybindings.md +0 -204
  90. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/omp/magic-keywords.md +0 -135
  91. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/omp/marketplace.md +0 -269
  92. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/omp/mcp-authoring.md +0 -243
  93. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/omp/mcp.md +0 -260
  94. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/omp/memory.md +0 -306
  95. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/omp/modes.md +0 -214
  96. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/omp/pages.txt +0 -56
  97. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/omp/plan.md +0 -126
  98. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/omp/plugins.md +0 -287
  99. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/omp/prewalk.md +0 -122
  100. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/omp/prompt-templates.md +0 -149
  101. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/omp/providers.md +0 -229
  102. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/omp/quickstart.md +0 -117
  103. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/omp/review.md +0 -248
  104. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/omp/roles.md +0 -247
  105. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/omp/rpc.md +0 -523
  106. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/omp/sdk.md +0 -260
  107. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/omp/secrets.md +0 -199
  108. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/omp/security.md +0 -260
  109. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/omp/session-format.md +0 -254
  110. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/omp/session-tree.md +0 -135
  111. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/omp/sessions.md +0 -223
  112. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/omp/settings.md +0 -290
  113. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/omp/skills.md +0 -187
  114. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/omp/slash.md +0 -328
  115. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/omp/subagent-authoring.md +0 -165
  116. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/omp/subagents.md +0 -149
  117. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/omp/themes.md +0 -230
  118. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/omp/tools.md +0 -120
  119. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/omp/ttsr.md +0 -242
  120. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/omp/using.md +0 -214
  121. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/omp/vibe.md +0 -187
  122. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/omp/web.md +0 -233
  123. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/pi/compaction.md +0 -427
  124. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/pi/containerization.md +0 -162
  125. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/pi/custom-provider.md +0 -782
  126. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/pi/development.md +0 -96
  127. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/pi/environment-variables.md +0 -104
  128. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/pi/extensions.md +0 -3058
  129. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/pi/index.md +0 -89
  130. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/pi/json.md +0 -105
  131. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/pi/keybindings.md +0 -244
  132. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/pi/llama-cpp.md +0 -106
  133. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/pi/models.md +0 -587
  134. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/pi/packages.md +0 -234
  135. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/pi/pages.txt +0 -30
  136. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/pi/prompt-templates.md +0 -101
  137. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/pi/providers.md +0 -327
  138. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/pi/quickstart.md +0 -172
  139. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/pi/rpc.md +0 -1679
  140. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/pi/sdk.md +0 -1239
  141. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/pi/security.md +0 -64
  142. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/pi/session-format.md +0 -454
  143. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/pi/sessions.md +0 -150
  144. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/pi/settings.md +0 -374
  145. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/pi/shell-aliases.md +0 -18
  146. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/pi/skills.md +0 -241
  147. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/pi/terminal-setup.md +0 -199
  148. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/pi/termux.md +0 -135
  149. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/pi/themes.md +0 -328
  150. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/pi/tmux.md +0 -68
  151. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/pi/tui.md +0 -965
  152. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/pi/usage.md +0 -315
  153. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/pi-and-omp/pi/windows.md +0 -44
  154. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/src-scripts/crawl.py +0 -103
  155. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/src-scripts/docs-tree.json +0 -82965
  156. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/src-scripts/download.py +0 -56
  157. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/src-scripts/gen_mapping.py +0 -125
  158. package/docs/80_upstream-docs-and-skills/dsh-dev-skill/src-scripts/pages.json +0 -232
  159. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/api-plugins.json +0 -1
  160. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/api-skills.json +0 -4
  161. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/developer-guide/_category_.json +0 -8
  162. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/developer-guide/acp-internals.md +0 -181
  163. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/developer-guide/adding-platform-adapters.md +0 -788
  164. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/developer-guide/adding-providers.md +0 -464
  165. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/developer-guide/adding-tools.md +0 -211
  166. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/developer-guide/agent-loop.md +0 -242
  167. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/developer-guide/architecture.md +0 -279
  168. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/developer-guide/billing-lifecycle.md +0 -184
  169. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/developer-guide/browser-provider-plugin.md +0 -153
  170. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/developer-guide/browser-supervisor.md +0 -198
  171. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/developer-guide/chronos-managed-cron-contract.md +0 -227
  172. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/developer-guide/cli-internals.md +0 -85
  173. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/developer-guide/codebase-ownership.md +0 -34
  174. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/developer-guide/completion-backlog-delivery.md +0 -52
  175. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/developer-guide/context-compression-and-caching.md +0 -642
  176. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/developer-guide/context-engine-plugin.md +0 -272
  177. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/developer-guide/contributing.md +0 -303
  178. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/developer-guide/creating-skills.md +0 -438
  179. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/developer-guide/cron-internals.md +0 -380
  180. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/developer-guide/desktop-plugin-sdk.md +0 -952
  181. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/developer-guide/egress-internals.md +0 -319
  182. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/developer-guide/extending-the-cli.md +0 -192
  183. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/developer-guide/gateway-internals.md +0 -297
  184. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/developer-guide/gateway-monitoring.md +0 -309
  185. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/developer-guide/gateway-session-lifecycle.md +0 -621
  186. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/developer-guide/image-gen-provider-plugin.md +0 -316
  187. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/developer-guide/memory-provider-plugin.md +0 -452
  188. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/developer-guide/micro-compaction.md +0 -406
  189. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/developer-guide/middleware.md +0 -266
  190. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/developer-guide/model-provider-plugin.md +0 -327
  191. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/developer-guide/multiplexing-gateway.md +0 -228
  192. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/developer-guide/observer-hooks.md +0 -331
  193. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/developer-guide/plugin-llm-access.md +0 -506
  194. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/developer-guide/plugins/index.md +0 -1775
  195. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/developer-guide/programmatic-integration.md +0 -212
  196. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/developer-guide/prompt-assembly.md +0 -328
  197. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/developer-guide/provider-runtime.md +0 -222
  198. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/developer-guide/relay-connector-contract.md +0 -790
  199. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/developer-guide/relay-shared-metrics.md +0 -487
  200. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/developer-guide/secret-source-plugin.md +0 -192
  201. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/developer-guide/session-storage.md +0 -523
  202. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/developer-guide/state-db-recovery.md +0 -107
  203. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/developer-guide/streaming-tts.md +0 -98
  204. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/developer-guide/subagent-lifecycle-api.md +0 -61
  205. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/developer-guide/terminal-environment-plugin.md +0 -140
  206. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/developer-guide/tools-runtime.md +0 -250
  207. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/developer-guide/trajectory-format.md +0 -232
  208. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/developer-guide/video-gen-provider-plugin.md +0 -231
  209. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/developer-guide/web-search-provider-plugin.md +0 -260
  210. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/developer-guide/worktree-ui-dev.md +0 -168
  211. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/getting-started/_category_.json +0 -8
  212. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/getting-started/installation.md +0 -200
  213. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/getting-started/learning-path.md +0 -169
  214. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/getting-started/nix-setup.md +0 -1234
  215. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/getting-started/platform-support.md +0 -50
  216. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/getting-started/quickstart.md +0 -399
  217. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/getting-started/termux.md +0 -301
  218. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/getting-started/updating.md +0 -374
  219. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/guides/_category_.json +0 -6
  220. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/guides/agent-email-address.md +0 -93
  221. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/guides/automate-with-cron.md +0 -292
  222. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/guides/automation-blueprints.md +0 -595
  223. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/guides/aws-bedrock.md +0 -196
  224. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/guides/azure-foundry.md +0 -334
  225. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/guides/cron-script-only.md +0 -247
  226. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/guides/cron-troubleshooting.md +0 -235
  227. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/guides/daily-briefing-bot.md +0 -272
  228. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/guides/delegation-patterns.md +0 -242
  229. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/guides/desktop-native-signin.md +0 -125
  230. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/guides/github-pr-review-agent.md +0 -303
  231. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/guides/google-gemini.md +0 -270
  232. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/guides/google-vertex.md +0 -148
  233. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/guides/local-llm-on-mac.md +0 -252
  234. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/guides/local-ollama-setup.md +0 -338
  235. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/guides/manage-hermes-cloud-with-mcp.md +0 -176
  236. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/guides/microsoft-graph-app-registration.md +0 -180
  237. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/guides/migrate-from-openclaw.md +0 -252
  238. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/guides/minimax-oauth.md +0 -226
  239. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/guides/oauth-over-ssh.md +0 -172
  240. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/guides/operate-teams-meeting-pipeline.md +0 -295
  241. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/guides/pipe-script-output.md +0 -249
  242. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/guides/python-library.md +0 -333
  243. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/guides/run-hermes-with-nous-portal.md +0 -276
  244. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/guides/run-nemotron-3-ultra-free.md +0 -123
  245. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/guides/secure-hermes-on-a-work-machine.md +0 -182
  246. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/guides/team-telegram-assistant.md +0 -441
  247. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/guides/tips.md +0 -238
  248. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/guides/troubleshooting-agent-quality.md +0 -145
  249. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/guides/use-mcp-with-hermes.md +0 -541
  250. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/guides/use-soul-with-hermes.md +0 -264
  251. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/guides/use-voice-mode-with-hermes.md +0 -473
  252. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/guides/webhook-github-pr-review.md +0 -336
  253. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/guides/work-with-skills.md +0 -290
  254. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/guides/xai-grok-oauth.md +0 -243
  255. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/index.mdx +0 -155
  256. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/integrations/buzz.md +0 -57
  257. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/integrations/index.md +0 -126
  258. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/integrations/nous-portal.md +0 -286
  259. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/integrations/providers.md +0 -1681
  260. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/reference/_category_.json +0 -8
  261. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/reference/automation-blueprints-catalog.mdx +0 -36
  262. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/reference/cli-commands.md +0 -1900
  263. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/reference/cli-symbols.md +0 -126
  264. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/reference/environment-variables.md +0 -952
  265. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/reference/faq.md +0 -874
  266. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/reference/mcp-config-reference.md +0 -439
  267. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/reference/model-catalog.md +0 -121
  268. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/reference/optional-skills-catalog.md +0 -303
  269. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/reference/profile-commands.md +0 -544
  270. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/reference/skills-catalog.md +0 -132
  271. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/reference/slash-commands.md +0 -336
  272. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/reference/tools-reference.md +0 -399
  273. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/reference/toolsets-reference.md +0 -171
  274. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/_category_.json +0 -8
  275. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/bot-mode.md +0 -309
  276. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/checkpoints-and-rollback.md +0 -283
  277. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/cli.md +0 -591
  278. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/configuration.md +0 -2901
  279. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/configuring-models.md +0 -414
  280. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/desktop.md +0 -728
  281. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/docker.md +0 -896
  282. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/egress/index.md +0 -10
  283. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/egress/iron-proxy.md +0 -570
  284. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/egress/network-isolation.md +0 -201
  285. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/features/_category_.json +0 -8
  286. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/features/acp.md +0 -407
  287. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/features/api-server.md +0 -810
  288. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/features/batch-processing.md +0 -230
  289. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/features/browser.md +0 -901
  290. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/features/built-in-plugins.md +0 -366
  291. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/features/code-execution.md +0 -319
  292. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/features/codex-app-server-runtime.md +0 -460
  293. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/features/computer-use.md +0 -636
  294. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/features/context-files.md +0 -237
  295. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/features/context-references.md +0 -142
  296. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/features/credential-pools.md +0 -308
  297. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/features/credential-vault.md +0 -122
  298. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/features/cron.md +0 -1262
  299. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/features/curator.md +0 -409
  300. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/features/delegation.md +0 -664
  301. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/features/deliverable-mode.md +0 -134
  302. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/features/document-extraction.md +0 -58
  303. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/features/extending-the-dashboard.md +0 -927
  304. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/features/fallback-providers.md +0 -444
  305. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/features/goals.md +0 -293
  306. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/features/heartbeat.md +0 -68
  307. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/features/honcho.md +0 -276
  308. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/features/hooks.md +0 -2007
  309. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/features/image-generation.md +0 -347
  310. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/features/kanban-multi-gateway.md +0 -52
  311. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/features/kanban-tutorial.md +0 -310
  312. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/features/kanban-worker-lanes.md +0 -142
  313. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/features/kanban.md +0 -1327
  314. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/features/loops.md +0 -122
  315. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/features/lsp.md +0 -307
  316. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/features/mcp.md +0 -957
  317. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/features/memory-providers.md +0 -699
  318. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/features/memory.md +0 -466
  319. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/features/mixture-of-agents.md +0 -246
  320. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/features/overview.md +0 -57
  321. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/features/personality.md +0 -289
  322. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/features/pets.md +0 -236
  323. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/features/plugin-catalog.md +0 -212
  324. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/features/plugins.md +0 -847
  325. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/features/provider-routing.md +0 -229
  326. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/features/skills.md +0 -1112
  327. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/features/skins.md +0 -271
  328. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/features/spotify.md +0 -279
  329. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/features/subscription-proxy.md +0 -203
  330. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/features/tool-gateway.md +0 -223
  331. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/features/tool-search.md +0 -277
  332. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/features/tools.md +0 -261
  333. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/features/tts.md +0 -744
  334. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/features/vision.md +0 -214
  335. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/features/voice-mode.md +0 -608
  336. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/features/wake-word.md +0 -343
  337. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/features/web-dashboard.md +0 -1206
  338. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/features/web-search.md +0 -506
  339. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/features/x-search.md +0 -167
  340. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/git-worktrees.md +0 -196
  341. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/import-from-other-agents.md +0 -74
  342. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/local-models.md +0 -140
  343. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/managed-scope.md +0 -157
  344. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/messaging/_category_.json +0 -8
  345. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/messaging/a2a.md +0 -130
  346. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/messaging/bluebubbles.md +0 -171
  347. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/messaging/buzz.md +0 -162
  348. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/messaging/dingtalk.md +0 -283
  349. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/messaging/discord.md +0 -936
  350. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/messaging/email.md +0 -223
  351. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/messaging/feishu.md +0 -599
  352. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/messaging/google_chat.md +0 -430
  353. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/messaging/homeassistant.md +0 -269
  354. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/messaging/index.md +0 -859
  355. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/messaging/irc.md +0 -78
  356. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/messaging/line.md +0 -201
  357. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/messaging/matrix.md +0 -910
  358. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/messaging/mattermost.md +0 -340
  359. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/messaging/msgraph-webhook.md +0 -142
  360. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/messaging/ntfy.md +0 -157
  361. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/messaging/open-webui.md +0 -296
  362. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/messaging/photon.md +0 -255
  363. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/messaging/qqbot.md +0 -123
  364. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/messaging/raft.md +0 -70
  365. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/messaging/relay.md +0 -212
  366. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/messaging/signal.md +0 -262
  367. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/messaging/simplex.md +0 -151
  368. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/messaging/slack.md +0 -1093
  369. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/messaging/sms.md +0 -203
  370. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/messaging/teams-meetings.md +0 -242
  371. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/messaging/teams.md +0 -288
  372. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/messaging/telegram.md +0 -1373
  373. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/messaging/webhooks.md +0 -694
  374. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/messaging/wecom-callback.md +0 -179
  375. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/messaging/wecom.md +0 -306
  376. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/messaging/weixin.md +0 -333
  377. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/messaging/whatsapp-cloud.md +0 -417
  378. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/messaging/whatsapp.md +0 -283
  379. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/messaging/yuanbao.md +0 -342
  380. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/multi-connection-desktop.md +0 -361
  381. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/multi-profile-gateways.md +0 -1062
  382. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/profile-distributions.md +0 -757
  383. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/profiles.md +0 -418
  384. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/secrets/bitwarden.md +0 -155
  385. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/secrets/command.md +0 -50
  386. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/secrets/index.md +0 -50
  387. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/secrets/onepassword.md +0 -169
  388. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/security.md +0 -892
  389. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/sessions.md +0 -990
  390. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/bundled/apple/apple-apple-notes.md +0 -110
  391. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/bundled/apple/apple-apple-reminders.md +0 -146
  392. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/bundled/apple/apple-findmy.md +0 -149
  393. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/bundled/apple/apple-imessage.md +0 -118
  394. 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
  395. 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
  396. 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
  397. 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
  398. 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
  399. 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
  400. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/bundled/creative/creative-architecture-diagram.md +0 -165
  401. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/bundled/creative/creative-ascii-art.md +0 -338
  402. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/bundled/creative/creative-ascii-video.md +0 -265
  403. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/bundled/creative/creative-baoyu-infographic.md +0 -256
  404. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/bundled/creative/creative-claude-design.md +0 -668
  405. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/bundled/creative/creative-comfyui.md +0 -616
  406. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/bundled/creative/creative-design-md.md +0 -238
  407. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/bundled/creative/creative-excalidraw.md +0 -212
  408. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/bundled/creative/creative-humanizer.md +0 -663
  409. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/bundled/creative/creative-manim-video.md +0 -292
  410. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/bundled/creative/creative-p5js.md +0 -576
  411. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/bundled/creative/creative-popular-web-designs.md +0 -223
  412. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/bundled/creative/creative-pretext.md +0 -238
  413. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/bundled/creative/creative-sketch.md +0 -240
  414. 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
  415. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/bundled/devops/devops-sdlc-review.md +0 -195
  416. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/bundled/email/email-email-inbox-triage.md +0 -115
  417. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/bundled/email/email-himalaya.md +0 -319
  418. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/bundled/github/github-codebase-inspection.md +0 -132
  419. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/bundled/github/github-github-auth.md +0 -265
  420. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/bundled/github/github-github-code-review.md +0 -499
  421. 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
  422. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/bundled/github/github-github-issues.md +0 -388
  423. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/bundled/github/github-github-pr-workflow.md +0 -385
  424. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/bundled/github/github-github-repo-management.md +0 -534
  425. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/bundled/media/media-gif-search.md +0 -106
  426. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/bundled/media/media-songsee.md +0 -98
  427. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/bundled/media/media-youtube-content.md +0 -100
  428. 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
  429. 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
  430. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/bundled/mlops/mlops-huggingface-hub.md +0 -100
  431. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/bundled/mlops/mlops-inference-llama-cpp.md +0 -267
  432. 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
  433. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/bundled/note-taking/note-taking-obsidian.md +0 -85
  434. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/bundled/productivity/productivity-airtable.md +0 -243
  435. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/bundled/productivity/productivity-box.md +0 -132
  436. 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
  437. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/bundled/productivity/productivity-docx.md +0 -213
  438. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/bundled/productivity/productivity-google-workspace.md +0 -348
  439. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/bundled/productivity/productivity-maps.md +0 -210
  440. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/bundled/productivity/productivity-meeting-action-items.md +0 -105
  441. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/bundled/productivity/productivity-nano-pdf.md +0 -70
  442. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/bundled/productivity/productivity-notion.md +0 -463
  443. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/bundled/productivity/productivity-ocr-and-documents.md +0 -193
  444. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/bundled/productivity/productivity-pdf.md +0 -142
  445. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/bundled/productivity/productivity-powerpoint.md +0 -237
  446. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/bundled/productivity/productivity-product-price-monitor.md +0 -97
  447. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/bundled/productivity/productivity-session-librarian.md +0 -122
  448. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/bundled/productivity/productivity-teams-meeting-pipeline.md +0 -129
  449. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/bundled/productivity/productivity-weekly-review-planning.md +0 -99
  450. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/bundled/productivity/productivity-xlsx.md +0 -213
  451. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/bundled/research/research-arxiv.md +0 -300
  452. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/bundled/research/research-blocked-page-recovery.md +0 -155
  453. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/bundled/research/research-blogwatcher.md +0 -152
  454. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/bundled/research/research-competitor-news-monitor.md +0 -106
  455. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/bundled/research/research-grounded-citations.md +0 -274
  456. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/bundled/research/research-llm-wiki.md +0 -526
  457. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/bundled/research/research-research-paper-writing.md +0 -1645
  458. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/bundled/smart-home/smart-home-openhue.md +0 -127
  459. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/bundled/social-media/social-media-xurl.md +0 -450
  460. 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
  461. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/bundled/software-development/software-development-dogfood.md +0 -183
  462. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/bundled/software-development/software-development-github.md +0 -73
  463. 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
  464. 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
  465. 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
  466. 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
  467. 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
  468. 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
  469. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/bundled/software-development/software-development-spike.md +0 -217
  470. 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
  471. 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
  472. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/bundled/web/web-blocked-page-recovery.md +0 -155
  473. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/google-workspace.md +0 -191
  474. 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
  475. 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
  476. 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
  477. 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
  478. 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
  479. 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
  480. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/blockchain/blockchain-evm.md +0 -227
  481. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/blockchain/blockchain-hyperliquid.md +0 -228
  482. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/blockchain/blockchain-solana.md +0 -225
  483. 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
  484. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/creative/creative-ai-presenter-video.md +0 -211
  485. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/creative/creative-archify.md +0 -66
  486. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/creative/creative-ascii-art.md +0 -338
  487. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/creative/creative-audiocraft-audio-generation.md +0 -588
  488. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/creative/creative-auteur.md +0 -195
  489. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/creative/creative-baoyu-article-illustrator.md +0 -225
  490. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/creative/creative-baoyu-comic.md +0 -264
  491. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/creative/creative-comfyui.md +0 -616
  492. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/creative/creative-concept-diagrams.md +0 -379
  493. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/creative/creative-creative-ideation.md +0 -192
  494. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/creative/creative-draw-your-font.md +0 -169
  495. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/creative/creative-dream-loop.md +0 -297
  496. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/creative/creative-excalidraw.md +0 -212
  497. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/creative/creative-heartmula.md +0 -191
  498. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/creative/creative-hyperframes.md +0 -222
  499. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/creative/creative-impeccable.md +0 -56
  500. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/creative/creative-ip-as-logo.md +0 -171
  501. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/creative/creative-kanban-video-orchestrator.md +0 -220
  502. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/creative/creative-meme-generation.md +0 -147
  503. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/creative/creative-mono-color.md +0 -158
  504. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/creative/creative-pixel-art.md +0 -234
  505. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/creative/creative-pretext.md +0 -238
  506. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/creative/creative-simple-english.md +0 -362
  507. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/creative/creative-sketch.md +0 -240
  508. 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
  509. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/creative/creative-system-atlas.md +0 -105
  510. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/creative/creative-tldraw-offline.md +0 -294
  511. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/creative/creative-unreal-mcp.md +0 -269
  512. 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
  513. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/devops/devops-actual-setup.md +0 -164
  514. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/devops/devops-docker-management.md +0 -298
  515. 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
  516. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/devops/devops-inference-sh-cli.md +0 -173
  517. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/devops/devops-pinggy-tunnel.md +0 -326
  518. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/devops/devops-setup-wizard-generator.md +0 -133
  519. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/devops/devops-watchers.md +0 -126
  520. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/dogfood/dogfood-adversarial-ux-test.md +0 -209
  521. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/email/email-agentmail.md +0 -104
  522. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/finance/finance-3-statement-model.md +0 -451
  523. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/finance/finance-comps-analysis.md +0 -682
  524. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/finance/finance-dcf-model.md +0 -1288
  525. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/finance/finance-excel-author.md +0 -262
  526. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/finance/finance-lbo-model.md +0 -309
  527. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/finance/finance-merger-model.md +0 -162
  528. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/finance/finance-polymarket.md +0 -97
  529. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/finance/finance-pptx-author.md +0 -191
  530. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/finance/finance-stocks.md +0 -112
  531. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/gaming/gaming-minecraft-modpack-server.md +0 -209
  532. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/gaming/gaming-pokemon-player.md +0 -240
  533. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/health/health-fitness-nutrition.md +0 -259
  534. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/health/health-neuroskill-bci.md +0 -470
  535. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/mcp/mcp-fastmcp.md +0 -315
  536. 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
  537. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/mcp/mcp-mcporter.md +0 -138
  538. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/migration/migration-openclaw-migration.md +0 -316
  539. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/mlops/mlops-accelerate.md +0 -366
  540. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/mlops/mlops-chroma.md +0 -425
  541. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/mlops/mlops-clip.md +0 -272
  542. 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
  543. 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
  544. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/mlops/mlops-faiss.md +0 -240
  545. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/mlops/mlops-flash-attention.md +0 -388
  546. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/mlops/mlops-guidance.md +0 -595
  547. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/mlops/mlops-huggingface-tokenizers.md +0 -535
  548. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/mlops/mlops-inference-llama-cpp.md +0 -267
  549. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/mlops/mlops-inference-outlines.md +0 -679
  550. 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
  551. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/mlops/mlops-instructor.md +0 -759
  552. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/mlops/mlops-lambda-labs.md +0 -568
  553. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/mlops/mlops-llava.md +0 -323
  554. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/mlops/mlops-modal.md +0 -368
  555. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/mlops/mlops-models-huggingface-hub.md +0 -100
  556. 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
  557. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/mlops/mlops-nemo-curator.md +0 -415
  558. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/mlops/mlops-obliteratus.md +0 -360
  559. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/mlops/mlops-peft.md +0 -452
  560. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/mlops/mlops-pinecone.md +0 -396
  561. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/mlops/mlops-pytorch-fsdp.md +0 -97
  562. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/mlops/mlops-pytorch-lightning.md +0 -365
  563. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/mlops/mlops-qdrant.md +0 -522
  564. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/mlops/mlops-research-dspy.md +0 -609
  565. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/mlops/mlops-saelens.md +0 -439
  566. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/mlops/mlops-simpo.md +0 -237
  567. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/mlops/mlops-slime.md +0 -486
  568. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/mlops/mlops-stable-diffusion.md +0 -542
  569. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/mlops/mlops-tensorrt-llm.md +0 -208
  570. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/mlops/mlops-torchtitan.md +0 -404
  571. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/mlops/mlops-training-axolotl.md +0 -181
  572. 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
  573. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/mlops/mlops-training-unsloth.md +0 -98
  574. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/mlops/mlops-whisper.md +0 -336
  575. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/payments/payments-mpp-agent.md +0 -142
  576. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/payments/payments-stripe-link-cli.md +0 -202
  577. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/payments/payments-stripe-projects.md +0 -138
  578. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/productivity/productivity-canvas.md +0 -114
  579. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/productivity/productivity-decision-questionnaire.md +0 -133
  580. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/productivity/productivity-here-now.md +0 -231
  581. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/productivity/productivity-live-dashboard.md +0 -126
  582. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/productivity/productivity-memento-flashcards.md +0 -336
  583. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/productivity/productivity-property-listings.md +0 -121
  584. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/productivity/productivity-shop.md +0 -238
  585. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/productivity/productivity-shopify.md +0 -377
  586. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/productivity/productivity-siyuan.md +0 -305
  587. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/productivity/productivity-telephony.md +0 -435
  588. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/research/research-bioinformatics.md +0 -254
  589. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/research/research-blogwatcher.md +0 -162
  590. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/research/research-darwinian-evolver.md +0 -217
  591. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/research/research-domain-intel.md +0 -121
  592. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/research/research-drug-discovery.md +0 -237
  593. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/research/research-duckduckgo-search.md +0 -255
  594. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/research/research-gitnexus-explorer.md +0 -232
  595. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/research/research-osint-investigation.md +0 -295
  596. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/research/research-parallel-cli.md +0 -411
  597. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/research/research-pinecone-research.md +0 -125
  598. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/research/research-qmd.md +0 -459
  599. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/research/research-research-paper-writing.md +0 -1645
  600. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/research/research-rss-feeds.md +0 -114
  601. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/research/research-scrapling.md +0 -351
  602. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/research/research-searxng-search.md +0 -212
  603. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/security/security-1password.md +0 -173
  604. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/security/security-godmode.md +0 -421
  605. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/security/security-oss-forensics.md +0 -426
  606. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/security/security-sherlock.md +0 -208
  607. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/security/security-unbroker.md +0 -331
  608. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/security/security-web-pentest.md +0 -337
  609. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/smart-home/smart-home-openhue.md +0 -127
  610. 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
  611. 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
  612. 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
  613. 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
  614. 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
  615. 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
  616. 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
  617. 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
  618. 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
  619. 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
  620. 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
  621. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/web-development/web-development-scrollcraft.md +0 -257
  622. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/skills/optional/yuanbao/yuanbao-yuanbao.md +0 -127
  623. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/tui.md +0 -313
  624. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/which-file-does-what.md +0 -57
  625. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/windows-native.md +0 -326
  626. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-guide/windows-wsl-quickstart.md +0 -358
  627. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docs/user-stories.mdx +0 -10
  628. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/docusaurus.config.ts +0 -210
  629. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/developer-guide/acp-internals.md +0 -181
  630. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/developer-guide/adding-platform-adapters.md +0 -686
  631. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/developer-guide/adding-providers.md +0 -459
  632. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/developer-guide/adding-tools.md +0 -209
  633. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/developer-guide/agent-loop.md +0 -239
  634. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/developer-guide/architecture.md +0 -277
  635. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/developer-guide/browser-supervisor.md +0 -160
  636. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/developer-guide/context-compression-and-caching.md +0 -328
  637. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/developer-guide/context-engine-plugin.md +0 -193
  638. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/developer-guide/contributing.md +0 -253
  639. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/developer-guide/creating-skills.md +0 -375
  640. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/developer-guide/cron-internals.md +0 -236
  641. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/developer-guide/extending-the-cli.md +0 -192
  642. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/developer-guide/gateway-internals.md +0 -267
  643. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/developer-guide/image-gen-provider-plugin.md +0 -288
  644. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/developer-guide/memory-provider-plugin.md +0 -258
  645. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/developer-guide/model-provider-plugin.md +0 -267
  646. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/developer-guide/plugin-llm-access.md +0 -401
  647. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/developer-guide/plugins/index.md +0 -1156
  648. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/developer-guide/programmatic-integration.md +0 -126
  649. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/developer-guide/prompt-assembly.md +0 -273
  650. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/developer-guide/provider-runtime.md +0 -208
  651. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/developer-guide/session-storage.md +0 -420
  652. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/developer-guide/tools-runtime.md +0 -236
  653. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/developer-guide/trajectory-format.md +0 -222
  654. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/developer-guide/video-gen-provider-plugin.md +0 -231
  655. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/developer-guide/web-search-provider-plugin.md +0 -260
  656. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/getting-started/installation.md +0 -204
  657. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/getting-started/learning-path.md +0 -154
  658. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/getting-started/nix-setup.md +0 -975
  659. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/getting-started/quickstart.md +0 -352
  660. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/getting-started/termux.md +0 -236
  661. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/getting-started/updating.md +0 -231
  662. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/guides/automate-with-cron.md +0 -266
  663. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/guides/automation-blueprints.md +0 -595
  664. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/guides/aws-bedrock.md +0 -170
  665. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/guides/azure-foundry.md +0 -334
  666. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/guides/cron-script-only.md +0 -247
  667. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/guides/cron-troubleshooting.md +0 -227
  668. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/guides/daily-briefing-bot.md +0 -268
  669. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/guides/delegation-patterns.md +0 -239
  670. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/guides/github-pr-review-agent.md +0 -303
  671. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/guides/google-gemini.md +0 -254
  672. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/guides/local-llm-on-mac.md +0 -240
  673. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/guides/local-ollama-setup.md +0 -317
  674. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/guides/microsoft-graph-app-registration.md +0 -180
  675. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/guides/migrate-from-openclaw.md +0 -244
  676. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/guides/minimax-oauth.md +0 -228
  677. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/guides/oauth-over-ssh.md +0 -96
  678. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/guides/operate-teams-meeting-pipeline.md +0 -288
  679. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/guides/pipe-script-output.md +0 -217
  680. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/guides/python-library.md +0 -333
  681. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/guides/run-hermes-with-nous-portal.md +0 -273
  682. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/guides/team-telegram-assistant.md +0 -441
  683. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/guides/tips.md +0 -234
  684. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/guides/use-mcp-with-hermes.md +0 -490
  685. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/guides/use-soul-with-hermes.md +0 -264
  686. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/guides/use-voice-mode-with-hermes.md +0 -469
  687. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/guides/webhook-github-pr-review.md +0 -329
  688. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/guides/work-with-skills.md +0 -290
  689. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/guides/xai-grok-oauth.md +0 -243
  690. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/index.mdx +0 -117
  691. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/integrations/buzz.md +0 -57
  692. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/integrations/index.md +0 -100
  693. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/integrations/nous-portal.md +0 -272
  694. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/integrations/providers.md +0 -1433
  695. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/reference/cli-commands.md +0 -1259
  696. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/reference/environment-variables.md +0 -678
  697. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/reference/faq.md +0 -859
  698. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/reference/mcp-config-reference.md +0 -250
  699. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/reference/model-catalog.md +0 -103
  700. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/reference/optional-skills-catalog.md +0 -220
  701. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/reference/profile-commands.md +0 -467
  702. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/reference/skills-catalog.md +0 -156
  703. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/reference/slash-commands.md +0 -272
  704. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/reference/tools-reference.md +0 -261
  705. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/reference/toolsets-reference.md +0 -162
  706. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/checkpoints-and-rollback.md +0 -251
  707. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/cli.md +0 -445
  708. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/configuration.md +0 -1746
  709. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/configuring-models.md +0 -239
  710. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/docker.md +0 -595
  711. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/features/acp.md +0 -341
  712. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/features/api-server.md +0 -456
  713. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/features/batch-processing.md +0 -229
  714. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/features/browser.md +0 -629
  715. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/features/built-in-plugins.md +0 -269
  716. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/features/code-execution.md +0 -240
  717. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/features/codex-app-server-runtime.md +0 -441
  718. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/features/computer-use.md +0 -144
  719. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/features/context-files.md +0 -218
  720. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/features/context-references.md +0 -142
  721. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/features/credential-pools.md +0 -240
  722. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/features/cron.md +0 -761
  723. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/features/curator.md +0 -248
  724. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/features/delegation.md +0 -355
  725. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/features/deliverable-mode.md +0 -91
  726. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/features/extending-the-dashboard.md +0 -907
  727. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/features/fallback-providers.md +0 -408
  728. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/features/goals.md +0 -180
  729. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/features/honcho.md +0 -233
  730. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/features/hooks.md +0 -1388
  731. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/features/image-generation.md +0 -150
  732. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/features/kanban-tutorial.md +0 -308
  733. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/features/kanban-worker-lanes.md +0 -117
  734. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/features/kanban.md +0 -863
  735. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/features/lsp.md +0 -217
  736. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/features/mcp.md +0 -591
  737. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/features/memory-providers.md +0 -570
  738. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/features/memory.md +0 -233
  739. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/features/overview.md +0 -52
  740. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/features/personality.md +0 -271
  741. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/features/plugins.md +0 -346
  742. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/features/provider-routing.md +0 -200
  743. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/features/skills.md +0 -760
  744. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/features/skins.md +0 -271
  745. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/features/spotify.md +0 -279
  746. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/features/subscription-proxy.md +0 -163
  747. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/features/tool-gateway.md +0 -187
  748. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/features/tools.md +0 -223
  749. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/features/tts.md +0 -456
  750. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/features/vision.md +0 -210
  751. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/features/voice-mode.md +0 -521
  752. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/features/web-dashboard.md +0 -351
  753. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/features/web-search.md +0 -422
  754. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/features/x-search.md +0 -147
  755. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/git-worktrees.md +0 -173
  756. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/messaging/bluebubbles.md +0 -143
  757. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/messaging/dingtalk.md +0 -283
  758. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/messaging/discord.md +0 -843
  759. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/messaging/email.md +0 -190
  760. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/messaging/feishu.md +0 -538
  761. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/messaging/google_chat.md +0 -283
  762. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/messaging/homeassistant.md +0 -252
  763. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/messaging/index.md +0 -569
  764. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/messaging/line.md +0 -199
  765. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/messaging/matrix.md +0 -677
  766. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/messaging/mattermost.md +0 -340
  767. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/messaging/msgraph-webhook.md +0 -137
  768. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/messaging/ntfy.md +0 -155
  769. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/messaging/open-webui.md +0 -296
  770. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/messaging/qqbot.md +0 -123
  771. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/messaging/signal.md +0 -257
  772. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/messaging/simplex.md +0 -98
  773. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/messaging/slack.md +0 -614
  774. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/messaging/sms.md +0 -203
  775. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/messaging/teams-meetings.md +0 -233
  776. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/messaging/teams.md +0 -255
  777. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/messaging/telegram.md +0 -1241
  778. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/messaging/webhooks.md +0 -601
  779. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/messaging/wecom-callback.md +0 -149
  780. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/messaging/wecom.md +0 -292
  781. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/messaging/weixin.md +0 -312
  782. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/messaging/whatsapp.md +0 -236
  783. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/messaging/yuanbao.md +0 -341
  784. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/profile-distributions.md +0 -573
  785. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/profiles.md +0 -272
  786. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/secrets/bitwarden.md +0 -143
  787. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/secrets/index.md +0 -9
  788. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/security.md +0 -664
  789. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/sessions.md +0 -609
  790. 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
  791. 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
  792. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/bundled/apple/apple-findmy.md +0 -147
  793. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/bundled/apple/apple-imessage.md +0 -118
  794. 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
  795. 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
  796. 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
  797. 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
  798. 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
  799. 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
  800. 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
  801. 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
  802. 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
  803. 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
  804. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/bundled/creative/creative-comfyui.md +0 -547
  805. 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
  806. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/bundled/creative/creative-excalidraw.md +0 -210
  807. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/bundled/creative/creative-humanizer.md +0 -594
  808. 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
  809. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/bundled/creative/creative-p5js.md +0 -574
  810. 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
  811. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/bundled/creative/creative-pretext.md +0 -238
  812. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/bundled/creative/creative-sketch.md +0 -238
  813. 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
  814. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/bundled/email/email-himalaya.md +0 -305
  815. 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
  816. 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
  817. 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
  818. 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
  819. 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
  820. 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
  821. 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
  822. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/bundled/media/media-songsee.md +0 -98
  823. 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
  824. 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
  825. 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
  826. 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
  827. 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
  828. 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
  829. 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
  830. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/bundled/productivity/productivity-airtable.md +0 -243
  831. 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
  832. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/bundled/productivity/productivity-maps.md +0 -196
  833. 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
  834. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/bundled/productivity/productivity-notion.md +0 -463
  835. 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
  836. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/bundled/productivity/productivity-powerpoint.md +0 -257
  837. 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
  838. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/bundled/research/research-arxiv.md +0 -300
  839. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/bundled/research/research-blogwatcher.md +0 -152
  840. 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
  841. 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
  842. 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
  843. 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
  844. 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
  845. 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
  846. 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
  847. 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
  848. 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
  849. 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
  850. 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
  851. 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
  852. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/google-workspace.md +0 -191
  853. 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
  854. 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
  855. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/optional/blockchain/blockchain-evm.md +0 -227
  856. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/optional/blockchain/blockchain-hyperliquid.md +0 -210
  857. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/optional/blockchain/blockchain-solana.md +0 -206
  858. 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
  859. 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
  860. 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
  861. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/optional/creative/creative-heartmula.md +0 -189
  862. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/optional/creative/creative-hyperframes.md +0 -205
  863. 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
  864. 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
  865. 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
  866. 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
  867. 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
  868. 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
  869. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/optional/devops/devops-watchers.md +0 -126
  870. 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
  871. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/optional/email/email-agentmail.md +0 -143
  872. 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
  873. 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
  874. 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
  875. 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
  876. 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
  877. 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
  878. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/optional/finance/finance-polymarket.md +0 -94
  879. 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
  880. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/optional/finance/finance-stocks.md +0 -108
  881. 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
  882. 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
  883. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/optional/mcp/mcp-fastmcp.md +0 -315
  884. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/optional/mcp/mcp-mcporter.md +0 -138
  885. 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
  886. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/optional/mlops/mlops-accelerate.md +0 -350
  887. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/optional/mlops/mlops-chroma.md +0 -425
  888. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/optional/mlops/mlops-clip.md +0 -272
  889. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/optional/mlops/mlops-faiss.md +0 -240
  890. 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
  891. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/optional/mlops/mlops-guidance.md +0 -591
  892. 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
  893. 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
  894. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/optional/mlops/mlops-instructor.md +0 -759
  895. 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
  896. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/optional/mlops/mlops-llava.md +0 -323
  897. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/optional/mlops/mlops-modal.md +0 -362
  898. 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
  899. 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
  900. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/optional/mlops/mlops-peft.md +0 -452
  901. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/optional/mlops/mlops-pinecone.md +0 -377
  902. 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
  903. 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
  904. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/optional/mlops/mlops-qdrant.md +0 -514
  905. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/optional/mlops/mlops-saelens.md +0 -407
  906. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/optional/mlops/mlops-simpo.md +0 -237
  907. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/optional/mlops/mlops-slime.md +0 -486
  908. 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
  909. 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
  910. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/optional/mlops/mlops-torchtitan.md +0 -378
  911. 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
  912. 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
  913. 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
  914. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/optional/mlops/mlops-whisper.md +0 -336
  915. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/optional/productivity/productivity-canvas.md +0 -114
  916. 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
  917. 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
  918. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/optional/productivity/productivity-shop.md +0 -354
  919. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/optional/productivity/productivity-shopify.md +0 -377
  920. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/optional/productivity/productivity-siyuan.md +0 -305
  921. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/optional/productivity/productivity-telephony.md +0 -435
  922. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/optional/research/research-bioinformatics.md +0 -252
  923. 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
  924. 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
  925. 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
  926. 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
  927. 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
  928. 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
  929. 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
  930. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/optional/research/research-qmd.md +0 -435
  931. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/optional/research/research-scrapling.md +0 -351
  932. 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
  933. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/optional/security/security-1password.md +0 -173
  934. 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
  935. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/optional/security/security-sherlock.md +0 -208
  936. 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
  937. 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
  938. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/skills/optional/yuanbao/yuanbao-yuanbao.md +0 -125
  939. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/tui.md +0 -256
  940. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/windows-native.md +0 -325
  941. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-guide/windows-wsl-quickstart.md +0 -332
  942. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/i18n/zh-Hans/user-stories.mdx +0 -10
  943. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/llms-full.txt +0 -88833
  944. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/llms.txt +0 -267
  945. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/site-pages-map.txt +0 -928
  946. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src/site-pages.json +0 -4218
  947. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src-README.md +0 -101
  948. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src-scripts/clone_repo.sh +0 -17
  949. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src-scripts/crawl.py +0 -82
  950. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src-scripts/gen_mapping.py +0 -112
  951. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src-scripts/retry-none.json +0 -305
  952. package/docs/80_upstream-docs-and-skills/hermes-dev-skill/src-scripts/verify_orphans.py +0 -53
  953. package/lib/BrowserWebSocketTransport-Q5SUMk7_.js +0 -4
  954. package/lib/LaunchOptions-DlBKKKLC.js +0 -4
  955. package/lib/NodeWebSocketTransport-DyU2tm5L.js +0 -4
  956. /package/lib/{index-DZQNwO7f.d.ts → index-DTDXUe6m.d.ts} +0 -0
  957. /package/lib/{lsp-server-registry-C05QLdw0.js → lsp-server-registry-D4VLs1Sm.js} +0 -0
  958. /package/lib/{main-7c69ae95.js → main-CKFNYpqT.js} +0 -0
  959. /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 〇节,本计划不包含发包。