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
@@ -1,11 +1,13 @@
1
+ import { r as __toESM, t as __commonJS } from "../chunk-DQxbwPpZ.js";
1
2
  import { t as Schema } from "../lib-C8_jXvwA.js";
2
3
  import { a as PACKAGE_ROOT } from "../kernel-env-BLPZE-I3.js";
3
4
  import { n as captureNativeTools } from "../native-capture-BEByDXYM.js";
4
5
  import { a as createHttpHandler, c as listDvcDevices, d as UrlResolver, f as UrlSchemesError, h as SCHEME_NAMES, i as HTTP_SCHEMES, l as registerDvcDevice, m as parseUrl, n as wrapFsWithSchemes, o as createDvcHandler, p as applySelector, r as resolveDocsDir, s as dispatchDvcWrite, u as createDshHandler } from "../wrap-0VA0uFx8.js";
5
- import { a as primaryServerForFile, c as serversForFile, n as findWorkspaceRoot, o as resolveCommandPath, r as installHintFor, s as serverByName } from "../lsp-server-registry-C05QLdw0.js";
6
+ import { n as Parser } from "../web-tree-sitter-CPrPD4J2.js";
7
+ import { a as primaryServerForFile, c as serversForFile, n as findWorkspaceRoot, o as resolveCommandPath, r as installHintFor, s as serverByName } from "../lsp-server-registry-D4VLs1Sm.js";
6
8
  import { createRequire } from "node:module";
7
9
  import { createHash, randomUUID } from "node:crypto";
8
- import { accessSync, constants, existsSync, readFileSync, statSync } from "node:fs";
10
+ import { accessSync, constants, existsSync, readFileSync, readdirSync, statSync, writeFileSync } from "node:fs";
9
11
  import * as path$1 from "node:path";
10
12
  import { dirname, isAbsolute, join, posix, relative, resolve, sep } from "node:path";
11
13
  import { spawn } from "node:child_process";
@@ -22,6 +24,1175 @@ import { resolveDshHome } from "@deepseek-ai/dsh-home-paths";
22
24
  import { DatabaseSync } from "node:sqlite";
23
25
  import { AsyncLocalStorage } from "node:async_hooks";
24
26
 
27
+ //#region src/devices/ast/engine/grammar-manifest.mjs
28
+ /**
29
+ * AST 引擎的资产清单 —— 拷贝脚本(scripts/copy-ast-assets.mjs)与运行时注册表
30
+ * (engine/grammars.ts)的单一真相源。三个包都无 install script、无传递依赖。
31
+ * ABI 锁步:@lumis-sh/wasm-* 与 web-tree-sitter 必须同为主版本 0.26(dylink.0)。
32
+ */
33
+ const ENGINE_ASSETS = [{
34
+ file: "ast-grep.wasm",
35
+ subpath: "@ast-grep/wasm/wasm_bg.wasm"
36
+ }, {
37
+ file: "tree-sitter.wasm",
38
+ subpath: "web-tree-sitter/web-tree-sitter.wasm"
39
+ }];
40
+ const GRAMMAR_PACKAGES = {
41
+ python: "@lumis-sh/wasm-python",
42
+ javascript: "@lumis-sh/wasm-javascript",
43
+ typescript: "@lumis-sh/wasm-typescript",
44
+ tsx: "@lumis-sh/wasm-tsx",
45
+ rust: "@lumis-sh/wasm-rust",
46
+ go: "@lumis-sh/wasm-go",
47
+ c: "@lumis-sh/wasm-c",
48
+ cpp: "@lumis-sh/wasm-cpp",
49
+ html: "@lumis-sh/wasm-html",
50
+ css: "@lumis-sh/wasm-css",
51
+ json: "@lumis-sh/wasm-json",
52
+ yaml: "@lumis-sh/wasm-yaml",
53
+ bash: "@lumis-sh/wasm-bash",
54
+ ruby: "@lumis-sh/wasm-ruby"
55
+ };
56
+ /** lang → { file: 包内资产名, subpath: 可 require.resolve 的完整子路径 } */
57
+ const GRAMMAR_ASSETS = Object.fromEntries(Object.entries(GRAMMAR_PACKAGES).map(([lang, pkg]) => [lang, {
58
+ file: `tree-sitter-${lang}.wasm`,
59
+ subpath: `${pkg}/tree-sitter-${lang}.wasm`
60
+ }]));
61
+
62
+ //#endregion
63
+ //#region src/devices/ast/engine/language-map.ts
64
+ /**
65
+ * 扩展名 → 内置 tree-sitter 语法。AST 语言面的单一真相源:
66
+ * walker 的语言推断与 ast-reminder 的提醒集合都从这里派生,
67
+ * 不再各自维护(也不再"对 shipped 二进制实测")。
68
+ */
69
+ const EXTENSION_TO_LANGUAGE = {
70
+ ".py": "python",
71
+ ".pyi": "python",
72
+ ".js": "javascript",
73
+ ".jsx": "javascript",
74
+ ".mjs": "javascript",
75
+ ".cjs": "javascript",
76
+ ".ts": "typescript",
77
+ ".mts": "typescript",
78
+ ".cts": "typescript",
79
+ ".tsx": "tsx",
80
+ ".rs": "rust",
81
+ ".go": "go",
82
+ ".c": "c",
83
+ ".h": "c",
84
+ ".cpp": "cpp",
85
+ ".hpp": "cpp",
86
+ ".html": "html",
87
+ ".css": "css",
88
+ ".json": "json",
89
+ ".yaml": "yaml",
90
+ ".yml": "yaml",
91
+ ".sh": "bash",
92
+ ".rb": "ruby"
93
+ };
94
+ /** 该设备支持的全部语法(去重、稳定序)。 */
95
+ const AST_LANGUAGES = [...new Set(Object.values(EXTENSION_TO_LANGUAGE))];
96
+ /** 小写扩展名 → 语法;未知扩展名返回 undefined。 */
97
+ function languageForPath(filePath) {
98
+ const dot = filePath.lastIndexOf(".");
99
+ if (dot <= filePath.lastIndexOf("/")) return void 0;
100
+ return EXTENSION_TO_LANGUAGE[filePath.slice(dot).toLowerCase()];
101
+ }
102
+
103
+ //#endregion
104
+ //#region src/devices/ast/engine/wasm.ts
105
+ const ASTGREP_WASM = ENGINE_ASSETS[0];
106
+ const TREE_SITTER_WASM = ENGINE_ASSETS[1];
107
+ /**
108
+ * WebAssembly 运行时全局。本仓 tsconfig 无 DOM lib,@types/node 也未声明该全局值
109
+ * (TS2708:仅存类型命名空间),故经 globalThis 取类型化句柄 —— 运行时是同一全局对象。
110
+ */
111
+ const WebAssemblyGlobal = globalThis.WebAssembly;
112
+ /**
113
+ * 资产解析的唯一机制,逐文件生效:构建产物 `lib/ast-assets/` 在场 → 用它(发布面);
114
+ * 否则 dev 下按 manifest subpath 在 node_modules 直解析(不要求先跑过 build)。
115
+ * 14 个语法分属 14 个 `@lumis-sh/wasm-*` 包、tree-sitter.wasm 在 web-tree-sitter ——
116
+ * 不存在装下全部资产的单一 dev 目录,故不做目录级回落。
117
+ */
118
+ function assetPath(file) {
119
+ const bundled = join(PACKAGE_ROOT, "lib", "ast-assets");
120
+ if (existsSync(bundled)) return join(bundled, file);
121
+ return createRequire(import.meta.url).resolve(subpathOf(file));
122
+ }
123
+ async function readAsset(file) {
124
+ return readFile(assetPath(file));
125
+ }
126
+ function subpathOf(file) {
127
+ return ENGINE_ASSETS.find((a) => a.file === file)?.subpath ?? Object.values(GRAMMAR_ASSETS).find((a) => a.file === file).subpath;
128
+ }
129
+ let enginePromise;
130
+ /** Boot the engine once per process; every later call returns the same instance. */
131
+ function astEngine() {
132
+ enginePromise ??= boot();
133
+ return enginePromise;
134
+ }
135
+ async function boot() {
136
+ const bg = await import("../wasm_bg-CNXhHjVg.js");
137
+ const bytes = await readAsset(ASTGREP_WASM.file);
138
+ const { instance } = await WebAssemblyGlobal.instantiate(bytes, { "./wasm_bg.js": bg });
139
+ bg.__wbg_set_wasm(instance.exports);
140
+ instance.exports.__wbindgen_start();
141
+ await Parser.init({ locateFile: () => assetPath(TREE_SITTER_WASM.file) });
142
+ await bg.initializeTreeSitter();
143
+ return {
144
+ parse: (lang, source) => bg.parse(lang, source),
145
+ registerLanguages: (entries) => bg.registerDynamicLanguage(entries)
146
+ };
147
+ }
148
+
149
+ //#endregion
150
+ //#region src/devices/ast/engine/grammars.ts
151
+ /** ast-grep 的元变量引导字符;所有语言统一用 µ(实测全语言可用)。 */
152
+ const EXPANDO_CHAR = "µ";
153
+ const broken = /* @__PURE__ */ new Set();
154
+ let registered;
155
+ function ensureLanguages() {
156
+ registered ??= (async () => {
157
+ const engine = await astEngine();
158
+ const entries = {};
159
+ for (const lang of AST_LANGUAGES) entries[lang] = {
160
+ libraryPath: assetPath(GRAMMAR_ASSETS[lang].file),
161
+ expandoChar: EXPANDO_CHAR
162
+ };
163
+ await engine.registerLanguages(entries);
164
+ for (const lang of AST_LANGUAGES) try {
165
+ engine.parse(lang, "");
166
+ } catch {
167
+ broken.add(lang);
168
+ }
169
+ })();
170
+ return registered;
171
+ }
172
+ /** 该语法是否注册成功(失败的语言由 walker 跳过并计入 parseErrors)。 */
173
+ function isLanguageAvailable(lang) {
174
+ return !broken.has(lang);
175
+ }
176
+
177
+ //#endregion
178
+ //#region src/devices/ast/engine/edit.ts
179
+ const META_TOKEN = /\$\$\$([A-Z_][A-Z0-9_]*)|\$([A-Z_][A-Z0-9_]*)/g;
180
+ const MULTI_NODE$1 = "Multiple AST nodes are detected";
181
+ /**
182
+ * 把模板里的元变量替换成该次命中的捕获文本(`$_`-匿名 → 空串)。
183
+ * `$$$A` 取整个多捕获区间的**源文本**(首捕获节点起点 → 末捕获节点终点,
184
+ * 空捕获 → 空串)——这才是 native 的实测行为(`greet( 1,2 , 3 )` → `log(1,2 , 3)`、
185
+ * `greet()` → `log()`,A/B 复核 2026-10-03);对逐节点文本做 naive join 会得到
186
+ * `1, ,, 2, ,, 3`,与 native 的 `1, 2, 3` 不符。
187
+ */
188
+ function expand(template, source, node) {
189
+ return template.replace(META_TOKEN, (whole, multi, single) => {
190
+ if (multi !== void 0) {
191
+ const parts = node.getMultipleMatches(multi);
192
+ if (parts.length === 0) return "";
193
+ const start = parts[0].range().start.index;
194
+ const end = parts[parts.length - 1].range().end.index;
195
+ return source.slice(start, end);
196
+ }
197
+ if (single === void 0) return whole;
198
+ if (single.startsWith("_")) return "";
199
+ return node.getMatch(single)?.text() ?? "";
200
+ });
201
+ }
202
+ async function editSource(source, lang, rewrites) {
203
+ await ensureLanguages();
204
+ if (!isLanguageAvailable(lang) || Object.keys(rewrites).length === 0) return {
205
+ changes: [],
206
+ rewritten: source,
207
+ totalReplacements: 0,
208
+ parseErrorCount: 0,
209
+ overlapping: 0
210
+ };
211
+ const root = (await astEngine()).parse(lang, source).root();
212
+ const edits = [];
213
+ const patternErrors = {};
214
+ for (const [pattern, template] of Object.entries(rewrites)) {
215
+ let hits;
216
+ try {
217
+ hits = root.findAll(pattern);
218
+ } catch (error) {
219
+ if (error instanceof Error && error.message.includes(MULTI_NODE$1)) {
220
+ patternErrors[pattern] = error.message;
221
+ continue;
222
+ }
223
+ throw error;
224
+ }
225
+ for (const node of hits) {
226
+ const range = node.range();
227
+ const replacement = expand(template, source, node);
228
+ const byteStart = Buffer.byteLength(source.slice(0, range.start.index), "utf8");
229
+ edits.push({
230
+ edit: {
231
+ start_pos: range.start.index,
232
+ end_pos: range.end.index,
233
+ inserted_text: replacement
234
+ },
235
+ change: {
236
+ path: "",
237
+ before: node.text(),
238
+ after: replacement,
239
+ byteStart,
240
+ byteEnd: byteStart + Buffer.byteLength(node.text(), "utf8"),
241
+ deletedLength: Buffer.byteLength(node.text(), "utf8"),
242
+ startLine: range.start.line + 1,
243
+ startColumn: range.start.column + 1,
244
+ endLine: range.end.line + 1,
245
+ endColumn: range.end.column + 1
246
+ }
247
+ });
248
+ }
249
+ }
250
+ edits.sort((a, b) => a.edit.start_pos - b.edit.start_pos);
251
+ const accepted = [];
252
+ let overlapping = 0;
253
+ let lastEnd = -1;
254
+ for (const candidate of edits) {
255
+ if (candidate.edit.start_pos < lastEnd) {
256
+ overlapping += 1;
257
+ continue;
258
+ }
259
+ accepted.push(candidate);
260
+ lastEnd = Math.max(lastEnd, candidate.edit.end_pos);
261
+ }
262
+ accepted.sort((a, b) => b.edit.start_pos - a.edit.start_pos);
263
+ const rewritten = root.commitEdits(accepted.map((e$1) => e$1.edit));
264
+ return {
265
+ changes: accepted.map((e$1) => e$1.change),
266
+ rewritten,
267
+ totalReplacements: accepted.length,
268
+ parseErrorCount: 0,
269
+ overlapping,
270
+ ...Object.keys(patternErrors).length > 0 ? { patternErrors } : {}
271
+ };
272
+ }
273
+
274
+ //#endregion
275
+ //#region src/devices/ast/engine/match.ts
276
+ const MULTI_NODE = "Multiple AST nodes are detected";
277
+ /** 字符偏移 → UTF-8 字节偏移。 */
278
+ function byteOffsetOf(source, charIndex) {
279
+ return Buffer.byteLength(source.slice(0, charIndex), "utf8");
280
+ }
281
+ function toMatch(source, node, meta) {
282
+ const range = node.range();
283
+ const byteStart = byteOffsetOf(source, range.start.index);
284
+ return {
285
+ path: "",
286
+ text: node.text(),
287
+ byteStart,
288
+ byteEnd: byteStart + Buffer.byteLength(node.text(), "utf8"),
289
+ startLine: range.start.line + 1,
290
+ startColumn: range.start.column + 1,
291
+ endLine: range.end.line + 1,
292
+ endColumn: range.end.column + 1,
293
+ ...meta !== void 0 && Object.keys(meta).length > 0 ? { metaVariables: meta } : {}
294
+ };
295
+ }
296
+ /** 单 metavar → 捕获文本;多 metavar → 复刻 native 的 Rust Debug 数组串。 */
297
+ function collectMeta(node, pattern, includeMeta) {
298
+ if (!includeMeta) return void 0;
299
+ const meta = {};
300
+ for (const raw of pattern.matchAll(/\$+\$?([A-Z_][A-Z0-9_]*)/g)) {
301
+ const token = raw[0];
302
+ const name$1 = raw[1];
303
+ if (token === `$$$${name$1}`) {
304
+ const parts = node.getMultipleMatches(name$1).map((n) => n.text());
305
+ if (parts.length > 0) meta[name$1] = `[${parts.join(", ")}]`;
306
+ } else if (!token.startsWith("$$")) {
307
+ const bound = node.getMatch(name$1);
308
+ if (bound !== void 0) meta[name$1] = bound.text();
309
+ }
310
+ }
311
+ return meta;
312
+ }
313
+ async function findInSource(source, lang, pattern, options) {
314
+ await ensureLanguages();
315
+ if (!isLanguageAvailable(lang)) return {
316
+ matches: [],
317
+ unavailable: true
318
+ };
319
+ const root = (await astEngine()).parse(lang, source).root();
320
+ let hits;
321
+ try {
322
+ hits = root.findAll(pattern);
323
+ } catch (error) {
324
+ if (error instanceof Error && error.message.includes(MULTI_NODE)) return {
325
+ matches: [],
326
+ unavailable: false,
327
+ patternError: error.message
328
+ };
329
+ throw error;
330
+ }
331
+ return {
332
+ matches: hits.map((node) => toMatch(source, node, collectMeta(node, pattern, options.includeMeta === true))),
333
+ unavailable: false
334
+ };
335
+ }
336
+
337
+ //#endregion
338
+ //#region node_modules/ignore/index.js
339
+ var require_ignore = /* @__PURE__ */ __commonJS({ "node_modules/ignore/index.js": ((exports, module) => {
340
+ function makeArray(subject) {
341
+ return Array.isArray(subject) ? subject : [subject];
342
+ }
343
+ const UNDEFINED = void 0;
344
+ const EMPTY = "";
345
+ const SPACE = " ";
346
+ const ESCAPE = "\\";
347
+ const REGEX_LITERAL_SPECIAL = /[.*+?()[\]{}^$|\\/]/;
348
+ const BOM = "";
349
+ const REGEX_INVALID_TRAILING_BACKSLASH = /(?:[^\\]|^)\\$/;
350
+ const REGEX_REPLACE_LEADING_EXCAPED_EXCLAMATION = /^\\!/;
351
+ const REGEX_REPLACE_LEADING_EXCAPED_HASH = /^\\#/;
352
+ const REGEX_SPLITALL_CRLF = /\r?\n/g;
353
+ const DOUBLE_SLASH = "//";
354
+ const SLASH_CODE = 47;
355
+ const DOT_CODE = 46;
356
+ const SLASH = "/";
357
+ let TMP_KEY_IGNORE = "node-ignore";
358
+ /* istanbul ignore else */
359
+ if (typeof Symbol !== "undefined") TMP_KEY_IGNORE = Symbol.for("node-ignore");
360
+ const KEY_IGNORE = TMP_KEY_IGNORE;
361
+ const define = (object, key, value) => {
362
+ Object.defineProperty(object, key, { value });
363
+ return value;
364
+ };
365
+ const RETURN_FALSE = () => false;
366
+ const cleanRangeBackSlash = (slashes) => {
367
+ const { length } = slashes;
368
+ return slashes.slice(0, length - length % 2);
369
+ };
370
+ const POSIX_CLASSES = {
371
+ alnum: "0-9A-Za-z",
372
+ alpha: "A-Za-z",
373
+ blank: " \\t",
374
+ cntrl: "\\x00-\\x1f\\x7f",
375
+ digit: "0-9",
376
+ graph: "!-.0-~",
377
+ lower: "a-z",
378
+ print: " -.0-~",
379
+ punct: "!-.:-@\\[-`{-~",
380
+ space: " \\t\\n\\r",
381
+ upper: "A-Z",
382
+ xdigit: "0-9A-Fa-f"
383
+ };
384
+ const CLASS_MEMBERS_TO_ESCAPE = "\\]^-[";
385
+ const escapeMember = (char) => CLASS_MEMBERS_TO_ESCAPE.indexOf(char) < 0 ? char : ESCAPE + char;
386
+ const NON_SLASH = "(?!\\/)";
387
+ const classSource = (negated, body) => {
388
+ if (negated) return `[^\\/${body}]`;
389
+ const source = `[${body}]`;
390
+ return new RegExp(source).test("/") ? NON_SLASH + source : source;
391
+ };
392
+ const scanBracket = (pattern, start) => {
393
+ const { length } = pattern;
394
+ let index = start + 1;
395
+ let negated = EMPTY;
396
+ const lead = pattern[index];
397
+ if (lead === "!" || lead === "^") {
398
+ negated = "^";
399
+ index++;
400
+ }
401
+ let body = EMPTY;
402
+ let prev = EMPTY;
403
+ for (;;) {
404
+ const char = pattern[index];
405
+ if (char === UNDEFINED) return null;
406
+ if (char === ESCAPE) {
407
+ const escaped = pattern[index + 1];
408
+ if (escaped === UNDEFINED) return null;
409
+ body += escapeMember(escaped);
410
+ prev = escaped;
411
+ index++;
412
+ } else if (char === "-" && prev && index + 1 < length && pattern[index + 1] !== "]") {
413
+ index++;
414
+ let to = pattern[index];
415
+ if (to === ESCAPE) to = pattern[index += 1];
416
+ if (prev <= to) body += `-${escapeMember(to)}`;
417
+ prev = EMPTY;
418
+ } else if (char === "[" && pattern[index + 1] === ":") {
419
+ const nameStart = index + 2;
420
+ let end = nameStart;
421
+ while (end < length && pattern[end] !== "]") end++;
422
+ if (end === length) return null;
423
+ if (end > nameStart && pattern[end - 1] === ":") {
424
+ const expanded = POSIX_CLASSES[pattern.slice(nameStart, end - 1)];
425
+ if (expanded === UNDEFINED) return null;
426
+ body += expanded;
427
+ prev = EMPTY;
428
+ index = end;
429
+ } else {
430
+ body += escapeMember("[");
431
+ prev = "[";
432
+ index = nameStart - 2;
433
+ }
434
+ } else {
435
+ body += escapeMember(char);
436
+ prev = char;
437
+ }
438
+ index++;
439
+ if (pattern[index] === "]") return {
440
+ end: index,
441
+ source: classSource(negated, body)
442
+ };
443
+ }
444
+ };
445
+ const NEVER_MATCH = "[]";
446
+ const PLACEHOLDER = "\0";
447
+ const REGEX_RESTORE_PLACEHOLDER = new RegExp(`${PLACEHOLDER}(\\d+)${PLACEHOLDER}`, "g");
448
+ const TRAILING_WILDCARD = "";
449
+ const TRAILING_DOUBLESTAR = "";
450
+ const extractBrackets = (pattern) => {
451
+ const sources = [];
452
+ const hold = (source) => `${PLACEHOLDER}${sources.push(source) - 1}${PLACEHOLDER}`;
453
+ const { length } = pattern;
454
+ let out = EMPTY;
455
+ let index = 0;
456
+ while (index < length) {
457
+ const char = pattern[index];
458
+ if (char === ESCAPE) {
459
+ const escaped = pattern[index + 1];
460
+ if (escaped === UNDEFINED || escaped === SLASH && index + 2 === length) out += hold(NEVER_MATCH);
461
+ else if (escaped === "*" || escaped === "[" || escaped === SPACE || escaped === ESCAPE) out += pattern.slice(index, index + 2);
462
+ else out += hold(REGEX_LITERAL_SPECIAL.test(escaped) ? ESCAPE + escaped : escaped);
463
+ index += 2;
464
+ } else if (char === PLACEHOLDER) {
465
+ out += hold(`[${PLACEHOLDER}]`);
466
+ index++;
467
+ } else if (char === "[") {
468
+ const scanned = scanBracket(pattern, index);
469
+ if (scanned === null) {
470
+ out += hold(NEVER_MATCH);
471
+ index = length;
472
+ } else {
473
+ out += hold(scanned.source);
474
+ index = scanned.end + 1;
475
+ }
476
+ } else {
477
+ out += char;
478
+ index++;
479
+ }
480
+ }
481
+ return {
482
+ source: out,
483
+ sources
484
+ };
485
+ };
486
+ const DIRECT = null;
487
+ const REGEX_INNER_SLASH = /\/(?!$)/;
488
+ const REPLACERS = [
489
+ [
490
+ /(\\+)( ?)/g,
491
+ (_, run, space) => space ? run.slice(0, run.length - run.length % 2) + SPACE : run,
492
+ ESCAPE + SPACE
493
+ ],
494
+ [/[\\$.|*+(){^]/g, (match) => `\\${match}`],
495
+ [
496
+ /(?!\\)\?/g,
497
+ () => "[^/]",
498
+ "?"
499
+ ],
500
+ [
501
+ /^\//,
502
+ () => "^",
503
+ SLASH
504
+ ],
505
+ [
506
+ /\//g,
507
+ () => "\\/",
508
+ SLASH
509
+ ],
510
+ [
511
+ /^\^*(?:\\\*\\\*\\\/)+/,
512
+ () => "^(?:.*\\/)?",
513
+ "*"
514
+ ],
515
+ [DIRECT, (source, pattern) => {
516
+ if (!source || source[0] === "^") return source;
517
+ return (!REGEX_INNER_SLASH.test(pattern) ? "(?:^|\\/)" : "^") + source;
518
+ }],
519
+ [
520
+ /\\\/\\\*\\\*(?=\\\/|$)/g,
521
+ (_, index, str) => index + 6 < str.length ? str.slice(index + 6) === "\\/" ? "(?:\\/[^\\/]+)+" : "(?:\\/[^\\/]+)*" : `\\/${TRAILING_DOUBLESTAR}`,
522
+ "*"
523
+ ],
524
+ [
525
+ /(^|[^\\]+)(\\\*)+(?=.+)/g,
526
+ (_, p1, p2) => {
527
+ return p1 + p2.replace(/\\\*/g, "[^\\/]*");
528
+ },
529
+ "*"
530
+ ],
531
+ [
532
+ /(^|[^\\])((?:\\\\)*)\\\*$/,
533
+ (match, p1, p2) => p2.length / 2 % 2 === 0 ? p1 + p2 + TRAILING_WILDCARD : match,
534
+ "*"
535
+ ],
536
+ [
537
+ /\\\\\\(?=[$.|*+(){^])/g,
538
+ () => ESCAPE,
539
+ ESCAPE + ESCAPE
540
+ ],
541
+ [
542
+ /\\\\/g,
543
+ () => ESCAPE,
544
+ ESCAPE + ESCAPE
545
+ ],
546
+ [
547
+ /\\\[([^\]/]*?)(\\*)($|\])/g,
548
+ (match, range, endEscape, close) => `\\[${range}${cleanRangeBackSlash(endEscape)}${close}`,
549
+ "["
550
+ ],
551
+ [DIRECT, (source) => {
552
+ const last = source[source.length - 1];
553
+ if (!last || last === TRAILING_WILDCARD || last === TRAILING_DOUBLESTAR) return source;
554
+ return last === SLASH ? `${source}$` : `${source}(?=$|\\/$)`;
555
+ }]
556
+ ];
557
+ const REGEX_REPLACE_TRAILING_WILDCARD = /(^|\\\/)?\uE000$/;
558
+ const MODE_IGNORE = "regex";
559
+ const MODE_CHECK_IGNORE = "checkRegex";
560
+ const UNDERSCORE = "_";
561
+ const replaceTrailingWildcard = (_, p1) => {
562
+ return `${p1 ? `${p1}[^/]+` : "[^/]*"}(?=$|\\/$)`;
563
+ };
564
+ const REGEX_REPLACE_TRAILING_DOUBLESTAR = /\uE001$/;
565
+ const replaceTrailingDoublestar = () => ".+(?=$|\\/$)";
566
+ const WILDCARD = "[^\\/]*";
567
+ const separatorAfter = (run, at) => {
568
+ let separator = EMPTY;
569
+ for (let index = at + 1; index < run.length && !run[index].wildcard; index++) separator += run[index].single;
570
+ return separator;
571
+ };
572
+ const pinWildcards = (source) => {
573
+ if (source.indexOf(WILDCARD) < 0) return source;
574
+ const tokens = [];
575
+ const { length } = source;
576
+ let index = 0;
577
+ while (index < length) {
578
+ const char = source[index];
579
+ if (source.startsWith(WILDCARD, index)) {
580
+ tokens.push({ wildcard: true });
581
+ index += 6;
582
+ } else if (char === "[") {
583
+ let end = index + 1;
584
+ if (source[end] === "^") end++;
585
+ if (source[end] === "]") end++;
586
+ while (end < length && source[end] !== "]") end += source[end] === ESCAPE ? 2 : 1;
587
+ end++;
588
+ tokens.push({ single: source.slice(index, end) });
589
+ index = end;
590
+ } else if (char === ESCAPE) {
591
+ tokens.push({ single: source.slice(index, index + 2) });
592
+ index += 2;
593
+ } else if (char === "(") {
594
+ let depth = 0;
595
+ let end = index;
596
+ do {
597
+ if (source[end] === ESCAPE) end++;
598
+ else if (source[end] === "(") depth++;
599
+ else if (source[end] === ")") depth--;
600
+ end++;
601
+ } while (end < length && depth > 0);
602
+ if ("*+?".indexOf(source[end]) >= 0) end++;
603
+ tokens.push({ boundary: source.slice(index, end) });
604
+ index = end;
605
+ } else if (char === "^" || char === "$") {
606
+ tokens.push({ boundary: char });
607
+ index++;
608
+ } else {
609
+ tokens.push({ single: char });
610
+ index++;
611
+ }
612
+ }
613
+ let out = EMPTY;
614
+ let run = [];
615
+ const flush = () => {
616
+ let lastWildcard;
617
+ run.forEach((token, at) => {
618
+ if (token.wildcard) lastWildcard = at;
619
+ });
620
+ run.forEach((token, at) => {
621
+ if (!token.wildcard) {
622
+ out += token.single;
623
+ return;
624
+ }
625
+ out += at === lastWildcard ? WILDCARD : `(?:(?!${separatorAfter(run, at)})[^\\/])*`;
626
+ });
627
+ run = [];
628
+ };
629
+ tokens.forEach((token) => {
630
+ if (token.boundary === void 0) {
631
+ run.push(token);
632
+ return;
633
+ }
634
+ flush();
635
+ out += token.boundary;
636
+ });
637
+ flush();
638
+ return out;
639
+ };
640
+ const makeRegexPrefix = (pattern) => {
641
+ const { source, sources } = extractBrackets(pattern);
642
+ const replaced = REPLACERS.reduce((prev, [matcher, replacer, required]) => {
643
+ if (matcher === DIRECT) return replacer(prev, pattern);
644
+ if (required !== UNDEFINED && prev.indexOf(required) < 0) return prev;
645
+ return matcher.test(prev) ? prev.replace(matcher, replacer.bind(pattern)) : prev;
646
+ }, source);
647
+ return sources.length ? replaced.replace(REGEX_RESTORE_PLACEHOLDER, (match, index) => sources[index]) : replaced;
648
+ };
649
+ const checkSourceOf = (body, prefix) => {
650
+ if (body[body.length - 1] === SLASH) prefix = makeRegexPrefix(body.slice(0, -1));
651
+ const head = prefix.slice(0, -1);
652
+ const last = prefix[prefix.length - 1];
653
+ return last === TRAILING_WILDCARD ? `${head}$` : last === TRAILING_DOUBLESTAR ? `${head}.*$` : NEVER_MATCH;
654
+ };
655
+ const matchesBasename = (body) => {
656
+ const index = body.indexOf(SLASH);
657
+ return index < 0 || index === body.length - 1;
658
+ };
659
+ const basenameOf = (path$2) => {
660
+ const end = path$2.length - 1;
661
+ const index = path$2.lastIndexOf(SLASH, path$2[end] === SLASH ? end - 1 : end);
662
+ return index < 0 ? path$2 : path$2.slice(index + 1);
663
+ };
664
+ const parentOf = (path$2) => {
665
+ if (path$2.charCodeAt(0) === SLASH_CODE || path$2.indexOf(DOUBLE_SLASH) >= 0) {
666
+ const slices = path$2.split(SLASH).filter(Boolean);
667
+ slices.pop();
668
+ return slices.length ? slices.join(SLASH) + SLASH : EMPTY;
669
+ }
670
+ const end = path$2.length - 1;
671
+ const cut = path$2.lastIndexOf(SLASH, path$2.charCodeAt(end) === SLASH_CODE ? end - 1 : end);
672
+ return cut < 0 ? EMPTY : path$2.slice(0, cut + 1);
673
+ };
674
+ const isString = (subject) => typeof subject === "string";
675
+ const checkPattern = (pattern) => pattern && isString(pattern) && !REGEX_INVALID_TRAILING_BACKSLASH.test(pattern);
676
+ const splitPattern = (pattern) => pattern.split(REGEX_SPLITALL_CRLF).filter(Boolean);
677
+ var IgnoreRule = class {
678
+ constructor(pattern, mark, body, ignoreCase, negative, prefix) {
679
+ this.pattern = pattern;
680
+ this.mark = mark;
681
+ this.negative = negative;
682
+ define(this, "body", body);
683
+ define(this, "ignoreCase", ignoreCase);
684
+ define(this, "regexPrefix", prefix);
685
+ }
686
+ get _basenameOnly() {
687
+ return define(this, "_basenameOnly", matchesBasename(this.body));
688
+ }
689
+ get regex() {
690
+ const key = UNDERSCORE + MODE_IGNORE;
691
+ if (this[key]) return this[key];
692
+ return this._make(MODE_IGNORE, key);
693
+ }
694
+ get checkRegex() {
695
+ const key = UNDERSCORE + MODE_CHECK_IGNORE;
696
+ if (this[key]) return this[key];
697
+ return this._make(MODE_CHECK_IGNORE, key);
698
+ }
699
+ _make(mode, key) {
700
+ const str = pinWildcards(mode === MODE_IGNORE ? this.regexPrefix.replace(REGEX_REPLACE_TRAILING_WILDCARD, replaceTrailingWildcard).replace(REGEX_REPLACE_TRAILING_DOUBLESTAR, replaceTrailingDoublestar) : checkSourceOf(this.body, this.regexPrefix));
701
+ const regex = this.ignoreCase ? new RegExp(str, "i") : new RegExp(str);
702
+ return define(this, key, regex);
703
+ }
704
+ };
705
+ const isLineEnd = (char) => char === "\r" || char === "\n";
706
+ const trimEnd = (body) => {
707
+ let end = body.length;
708
+ while (end && isLineEnd(body[end - 1])) end--;
709
+ const lineEnd = end;
710
+ while (end && body[end - 1] === SPACE) end--;
711
+ if (end === lineEnd) return body.slice(0, end);
712
+ let backslashes = 0;
713
+ while (backslashes < end && body[end - backslashes - 1] === ESCAPE) backslashes++;
714
+ return backslashes % 2 ? body.slice(0, end - 1) + SPACE : body.slice(0, end);
715
+ };
716
+ const createRule = ({ pattern, mark }, ignoreCase) => {
717
+ let body = pattern[0] === BOM ? pattern.slice(1) : pattern;
718
+ if (body[0] === "#") return;
719
+ let negative = false;
720
+ if (body[0] === "!") {
721
+ negative = true;
722
+ body = body.slice(1);
723
+ }
724
+ const last = body[body.length - 1];
725
+ if (last === SPACE || last === "\r" || last === "\n") body = trimEnd(body);
726
+ if (!body) return;
727
+ body = body.replace(REGEX_REPLACE_LEADING_EXCAPED_EXCLAMATION, "!").replace(REGEX_REPLACE_LEADING_EXCAPED_HASH, "#");
728
+ const regexPrefix = makeRegexPrefix(body);
729
+ return new IgnoreRule(pattern, mark, body, ignoreCase, negative, regexPrefix);
730
+ };
731
+ var RuleManager = class {
732
+ constructor(ignoreCase) {
733
+ this._ignoreCase = ignoreCase;
734
+ this._rules = [];
735
+ this._basenameCount = 0;
736
+ }
737
+ _add(pattern) {
738
+ if (pattern && pattern[KEY_IGNORE]) {
739
+ this._rules = this._rules.concat(pattern._rules._rules);
740
+ this._basenameCount += pattern._rules._basenameCount;
741
+ this._added = true;
742
+ return;
743
+ }
744
+ if (isString(pattern)) pattern = { pattern };
745
+ const rule = checkPattern(pattern.pattern) && createRule(pattern, this._ignoreCase);
746
+ if (rule) {
747
+ this._added = true;
748
+ this._rules.push(rule);
749
+ if (matchesBasename(rule.body)) this._basenameCount++;
750
+ }
751
+ }
752
+ add(pattern) {
753
+ this._added = false;
754
+ makeArray(isString(pattern) ? splitPattern(pattern) : pattern).forEach(this._add, this);
755
+ if (this._added) this._literalRules = UNDEFINED;
756
+ return this._added;
757
+ }
758
+ testLiteral(path$2) {
759
+ const rules = this._literalRules || (this._literalRules = this._rules.filter(({ body }) => body[body.length - (body[body.length - 1] === SLASH ? 2 : 1)] === "*"));
760
+ let ignored = false;
761
+ let unignored = false;
762
+ let matchedRule;
763
+ for (let index = rules.length - 1; index >= 0; index--) {
764
+ const rule = rules[index];
765
+ if (rule.checkRegex.test(path$2)) {
766
+ ignored = !rule.negative;
767
+ unignored = rule.negative;
768
+ matchedRule = rule.negative ? UNDEFINED : rule;
769
+ break;
770
+ }
771
+ }
772
+ const ret = {
773
+ ignored,
774
+ unignored
775
+ };
776
+ if (matchedRule) ret.rule = matchedRule;
777
+ return ret;
778
+ }
779
+ test(path$2, checkUnignored, mode) {
780
+ let ignored = false;
781
+ let unignored = false;
782
+ let matchedRule;
783
+ const rules = this._rules;
784
+ const { length } = rules;
785
+ const shortcut = this._basenameCount * 2 >= length;
786
+ const basename = shortcut ? basenameOf(path$2) : path$2;
787
+ for (let index = 0; index < length; index++) {
788
+ const rule = rules[index];
789
+ const { negative } = rule;
790
+ if (!(unignored === negative && ignored !== unignored || negative && !ignored && !unignored && !checkUnignored) && rule[mode].test(shortcut && rule._basenameOnly ? basename : path$2)) {
791
+ ignored = !negative;
792
+ unignored = negative;
793
+ matchedRule = negative ? UNDEFINED : rule;
794
+ }
795
+ }
796
+ const ret = {
797
+ ignored,
798
+ unignored
799
+ };
800
+ if (matchedRule) ret.rule = matchedRule;
801
+ return ret;
802
+ }
803
+ };
804
+ const throwError = (message, Ctor) => {
805
+ throw new Ctor(message);
806
+ };
807
+ const checkPath = (path$2, originalPath, doThrow) => {
808
+ if (!isString(path$2)) return doThrow(`path must be a string, but got \`${originalPath}\``, TypeError);
809
+ if (!path$2) return doThrow(`path must not be empty`, TypeError);
810
+ if (checkPath.isNotRelative(path$2)) return doThrow(`path should be a \`path.relative()\`d string, but got "${originalPath}"`, RangeError);
811
+ return true;
812
+ };
813
+ const isNotRelative = (path$2) => {
814
+ const first = path$2.charCodeAt(0);
815
+ if (first === SLASH_CODE) return true;
816
+ if (first !== DOT_CODE) return false;
817
+ if (path$2.length === 1) return true;
818
+ const second = path$2.charCodeAt(1);
819
+ if (second === SLASH_CODE) return true;
820
+ if (second !== DOT_CODE) return false;
821
+ return path$2.length === 2 || path$2.charCodeAt(2) === SLASH_CODE;
822
+ };
823
+ checkPath.isNotRelative = isNotRelative;
824
+ /* istanbul ignore next */
825
+ checkPath.convert = (p) => p;
826
+ var Ignore = class {
827
+ constructor({ ignorecase = true, ignoreCase = ignorecase, allowRelativePaths = false } = {}) {
828
+ define(this, KEY_IGNORE, true);
829
+ this._rules = new RuleManager(ignoreCase);
830
+ this._strictPathCheck = !allowRelativePaths;
831
+ this._initCache();
832
+ }
833
+ _initCache() {
834
+ this._ignoreCache = Object.create(null);
835
+ this._testCache = Object.create(null);
836
+ }
837
+ add(pattern) {
838
+ if (this._rules.add(pattern)) this._initCache();
839
+ return this;
840
+ }
841
+ addPattern(pattern) {
842
+ return this.add(pattern);
843
+ }
844
+ _test(originalPath, cache, checkUnignored) {
845
+ const path$2 = originalPath && checkPath.convert(originalPath);
846
+ checkPath(path$2, originalPath, this._strictPathCheck ? throwError : RETURN_FALSE);
847
+ return this._t(path$2, cache, checkUnignored);
848
+ }
849
+ checkIgnore(path$2) {
850
+ if (path$2.charCodeAt(path$2.length - 1) !== SLASH_CODE) return this.test(path$2);
851
+ const dir = this._t(path$2, this._testCache, true);
852
+ if (dir.ignored) return dir;
853
+ const literal = this._rules.testLiteral(path$2);
854
+ return literal.ignored || literal.unignored ? literal : dir;
855
+ }
856
+ _t(path$2, cache, checkUnignored) {
857
+ if (path$2 in cache) return cache[path$2];
858
+ const parentPath = parentOf(path$2);
859
+ const parent = parentPath ? this._t(parentPath, cache, checkUnignored) : UNDEFINED;
860
+ return cache[path$2] = parent && parent.ignored ? parent : this._rules.test(path$2, checkUnignored, MODE_IGNORE);
861
+ }
862
+ ignores(path$2) {
863
+ return this._test(path$2, this._ignoreCache, false).ignored;
864
+ }
865
+ createFilter() {
866
+ return (path$2) => !this.ignores(path$2);
867
+ }
868
+ filter(paths) {
869
+ return makeArray(paths).filter(this.createFilter());
870
+ }
871
+ test(path$2) {
872
+ return this._test(path$2, this._testCache, true);
873
+ }
874
+ };
875
+ const factory = (options) => new Ignore(options);
876
+ const isPathValid = (path$2) => checkPath(path$2 && checkPath.convert(path$2), path$2, RETURN_FALSE);
877
+ /* istanbul ignore next */
878
+ const setupWindows = () => {
879
+ const makePosix = (str) => /^\\\\\?\\/.test(str) || /["<>|\u0000-\u001F]+/u.test(str) ? str : str.replace(/\\/g, "/");
880
+ checkPath.convert = makePosix;
881
+ const REGEX_TEST_WINDOWS_PATH_ABSOLUTE = /^[a-z]:\//i;
882
+ checkPath.isNotRelative = (path$2) => REGEX_TEST_WINDOWS_PATH_ABSOLUTE.test(path$2) || isNotRelative(path$2);
883
+ };
884
+ /* istanbul ignore next */
885
+ if (typeof process !== "undefined" && process.platform === "win32") setupWindows();
886
+ module.exports = factory;
887
+ factory.default = factory;
888
+ module.exports.isPathValid = isPathValid;
889
+ define(module.exports, Symbol.for("setupWindows"), setupWindows);
890
+ }) });
891
+
892
+ //#endregion
893
+ //#region src/devices/ast/walker.ts
894
+ var import_ignore = /* @__PURE__ */ __toESM(require_ignore(), 1);
895
+ const ALWAYS_SKIP = new Set(["node_modules", ".git"]);
896
+ function ignoresFor(root) {
897
+ const ig = (0, import_ignore.default)();
898
+ let dir = root;
899
+ const chain = [];
900
+ for (;;) {
901
+ const gitignore = path$1.join(dir, ".gitignore");
902
+ try {
903
+ ig.add(readFileSync(gitignore, "utf8"));
904
+ chain.unshift(path$1.relative(root, dir) || ".");
905
+ } catch {}
906
+ const parent = path$1.dirname(dir);
907
+ if (parent === dir) break;
908
+ dir = parent;
909
+ }
910
+ return ig;
911
+ }
912
+ function matchesGlob(root, abs, glob) {
913
+ if (glob === void 0) return true;
914
+ const rel$1 = path$1.relative(root, abs).split(path$1.sep).join("/");
915
+ const ig = (0, import_ignore.default)();
916
+ ig.add(glob.startsWith("!") ? glob : glob);
917
+ return ig.ignores(rel$1);
918
+ }
919
+ async function walkSources(root, options) {
920
+ const maxFiles = options.maxFiles ?? 1e3;
921
+ const ig = ignoresFor(root);
922
+ const out = [];
923
+ let limitReached = false;
924
+ const visit = (dir) => {
925
+ if (limitReached) return;
926
+ let entries;
927
+ try {
928
+ entries = readdirSync(dir, { withFileTypes: true });
929
+ } catch {
930
+ return;
931
+ }
932
+ for (const entry of entries.sort((a, b) => a.name.localeCompare(b.name))) {
933
+ if (limitReached) return;
934
+ if (entry.name.startsWith(".") || ALWAYS_SKIP.has(entry.name)) continue;
935
+ if (entry.name.startsWith(".")) continue;
936
+ const abs = path$1.join(dir, entry.name);
937
+ const relFromRoot = path$1.relative(root, abs);
938
+ if (relFromRoot && ig.ignores(relFromRoot.split(path$1.sep).join("/"))) continue;
939
+ if (entry.isDirectory()) {
940
+ visit(abs);
941
+ continue;
942
+ }
943
+ if (languageForPath(entry.name) === void 0) continue;
944
+ if (!matchesGlob(root, abs, options.glob)) continue;
945
+ if (out.length >= maxFiles) {
946
+ limitReached = true;
947
+ return;
948
+ }
949
+ out.push(abs);
950
+ }
951
+ };
952
+ try {
953
+ if (statSync(root).isFile()) out.push(root);
954
+ else visit(root);
955
+ } catch {}
956
+ return {
957
+ files: out.sort(),
958
+ limitReached
959
+ };
960
+ }
961
+
962
+ //#endregion
963
+ //#region src/devices/ast/ast-device.ts
964
+ /** Per-run cap on distinct scanned files (upstream `PI_MAX_AST_FILES` default). */
965
+ const MAX_FILES = 1e3;
966
+ /** Glob metacharacters that mark a path segment as a pattern (upstream `GLOB_PATH_CHARS`). */
967
+ const GLOB_CHARS = /[*?[{]/;
968
+ /** The working directory for relative paths: `ctx.cwd` when threaded through, else `process.cwd()`. */
969
+ function ctxCwd(ctx) {
970
+ if (ctx !== null && typeof ctx === "object" && typeof ctx.cwd === "string") return ctx.cwd;
971
+ return process.cwd();
972
+ }
973
+ /** The cwd-relative POSIX display path for an absolute walked file. */
974
+ function rel(file, cwd) {
975
+ return path$1.relative(cwd, file).split(path$1.sep).join("/");
976
+ }
977
+ /** A validated args object for a device call. */
978
+ function argsRecord(args, device) {
979
+ if (args === null || typeof args !== "object" || Array.isArray(args)) throw new Error(`${device}: args must be a JSON object`);
980
+ return args;
981
+ }
982
+ /** A non-empty array of non-empty strings. */
983
+ function stringArray(value, field, device) {
984
+ if (!Array.isArray(value) || value.length === 0) throw new Error(`${device}: \`${field}\` must be a non-empty array of strings`);
985
+ for (const entry of value) if (typeof entry !== "string" || entry.length === 0) throw new Error(`${device}: \`${field}\` entries must be non-empty strings`);
986
+ return value;
987
+ }
988
+ /** An optional boolean field. */
989
+ function optionalBoolean(value, field, device) {
990
+ if (value === void 0) return void 0;
991
+ if (typeof value !== "boolean") throw new Error(`${device}: \`${field}\` must be a boolean`);
992
+ return value;
993
+ }
994
+ /** An optional non-negative integer field. */
995
+ function optionalCount(value, field, device) {
996
+ if (value === void 0) return void 0;
997
+ if (typeof value !== "number" || !Number.isInteger(value) || value < 0) throw new Error(`${device}: \`${field}\` must be a non-negative integer`);
998
+ return value;
999
+ }
1000
+ /**
1001
+ * Resolve one `paths` entry against `cwd`. An existing literal file or
1002
+ * directory wins as-is (upstream `parseSearchPathPreferringLiteral`);
1003
+ * otherwise the entry splits at the first glob-ish segment into
1004
+ * `{basePath, glob}` (upstream `parseSearchPath`), so a recursive glob
1005
+ * under `src` scans `src` as the root with the double-star pattern as the
1006
+ * glob tail.
1007
+ */
1008
+ function resolveTarget(entry, cwd) {
1009
+ const absolute = path$1.resolve(cwd, entry);
1010
+ try {
1011
+ statSync(absolute);
1012
+ return { root: absolute };
1013
+ } catch {}
1014
+ const normalized = entry.replace(/\\/g, "/");
1015
+ const segments = normalized.split("/");
1016
+ const globIndex = segments.findIndex((segment$1) => GLOB_CHARS.test(segment$1));
1017
+ if (globIndex === -1) return { root: absolute };
1018
+ const basePath = globIndex === 0 ? "." : segments.slice(0, globIndex).join("/");
1019
+ const glob = globIndex === 0 ? normalized : segments.slice(globIndex).join("/");
1020
+ return {
1021
+ root: path$1.resolve(cwd, basePath),
1022
+ glob
1023
+ };
1024
+ }
1025
+ /** `ast_edit` — run the validated rewrite across every target, aggregating like upstream's `runAstEditTargets`. */
1026
+ async function executeAstEdit(args, ctx) {
1027
+ await ensureLanguages();
1028
+ const cwd = ctxCwd(ctx);
1029
+ const record = argsRecord(args, "ast_edit");
1030
+ const rawOps = record.ops;
1031
+ if (!Array.isArray(rawOps) || rawOps.length === 0) throw new Error("ast_edit: `ops` must be a non-empty array of {pat, out} objects");
1032
+ const rewrites = {};
1033
+ const opIndexOf = /* @__PURE__ */ new Map();
1034
+ rawOps.forEach((rawOp, index) => {
1035
+ if (rawOp === null || typeof rawOp !== "object" || Array.isArray(rawOp)) throw new Error(`ast_edit: ops[${index}] must be a {pat, out} object`);
1036
+ const op = rawOp;
1037
+ if (typeof op.pat !== "string" || op.pat.length === 0) throw new Error(`ast_edit: ops[${index}].pat must be a non-empty pattern`);
1038
+ if (typeof op.out !== "string") throw new Error(`ast_edit: ops[${index}].out must be a string`);
1039
+ rewrites[op.pat] = op.out;
1040
+ opIndexOf.set(op.pat, index);
1041
+ });
1042
+ const targets = stringArray(record.paths, "paths", "ast_edit").map((entry) => resolveTarget(entry, cwd));
1043
+ const dryRun = optionalBoolean(record.dryRun, "dryRun", "ast_edit") ?? true;
1044
+ const pathNotFound = targets.some((target) => !existsSync(target.root));
1045
+ const changes = [];
1046
+ const fileCounts = /* @__PURE__ */ new Map();
1047
+ const parseErrors = [];
1048
+ const patternErrors = [];
1049
+ const patternErrorSeen = /* @__PURE__ */ new Set();
1050
+ let overlapping = 0;
1051
+ let totalReplacements = 0;
1052
+ let filesSearched = 0;
1053
+ let limitReached = false;
1054
+ const applied = !dryRun;
1055
+ for (const target of targets) {
1056
+ const walked = await walkSources(target.root, {
1057
+ glob: target.glob,
1058
+ maxFiles: MAX_FILES
1059
+ });
1060
+ filesSearched += walked.files.length;
1061
+ limitReached = limitReached || walked.limitReached;
1062
+ for (const file of walked.files) {
1063
+ const lang = languageForPath(file);
1064
+ if (lang === void 0) continue;
1065
+ if (!isLanguageAvailable(lang)) {
1066
+ parseErrors.push(`${rel(file, cwd)}: language unavailable`);
1067
+ continue;
1068
+ }
1069
+ let source;
1070
+ try {
1071
+ source = readFileSync(file, "utf8");
1072
+ } catch {
1073
+ continue;
1074
+ }
1075
+ const result = await editSource(source, lang, rewrites);
1076
+ for (const [pattern, message] of Object.entries(result.patternErrors ?? {})) {
1077
+ if (patternErrorSeen.has(pattern)) continue;
1078
+ patternErrorSeen.add(pattern);
1079
+ patternErrors.push(`pattern ${opIndexOf.get(pattern)} ("${pattern}"): ${message}`);
1080
+ }
1081
+ overlapping += result.overlapping;
1082
+ if (result.parseErrorCount > 0) parseErrors.push(`${rel(file, cwd)}: ${result.parseErrorCount} parse error(s)`);
1083
+ if (result.changes.length === 0) continue;
1084
+ const display = rel(file, cwd);
1085
+ changes.push(...result.changes.map((change) => ({
1086
+ ...change,
1087
+ path: display
1088
+ })));
1089
+ fileCounts.set(display, (fileCounts.get(display) ?? 0) + result.totalReplacements);
1090
+ totalReplacements += result.totalReplacements;
1091
+ if (!dryRun) writeFileSync(file, result.rewritten, "utf8");
1092
+ }
1093
+ }
1094
+ const fileChanges = [...fileCounts].map(([filePath, count]) => ({
1095
+ path: filePath,
1096
+ count
1097
+ }));
1098
+ return {
1099
+ changes,
1100
+ fileChanges,
1101
+ totalReplacements,
1102
+ filesTouched: fileChanges.length,
1103
+ filesSearched,
1104
+ applied,
1105
+ limitReached,
1106
+ ...parseErrors.length > 0 ? { parseErrors } : {},
1107
+ ...patternErrors.length > 0 ? { patternErrors } : {},
1108
+ ...overlapping > 0 ? { overlapping } : {},
1109
+ ...pathNotFound ? { pathNotFound: true } : {}
1110
+ };
1111
+ }
1112
+ /** `ast_grep` — walk the target, run every pattern per file (OR), merge, then page. */
1113
+ async function executeAstGrep(args, ctx) {
1114
+ await ensureLanguages();
1115
+ const cwd = ctxCwd(ctx);
1116
+ const record = argsRecord(args, "ast_grep");
1117
+ const patterns = stringArray(record.patterns, "patterns", "ast_grep");
1118
+ const rawPath = record.path;
1119
+ if (rawPath !== void 0 && typeof rawPath !== "string") throw new Error("ast_grep: `path` must be a string");
1120
+ const target = resolveTarget(rawPath !== void 0 && rawPath.length > 0 ? rawPath : ".", cwd);
1121
+ const pathNotFound = !existsSync(target.root);
1122
+ const offset = optionalCount(record.offset, "offset", "ast_grep");
1123
+ const limit = optionalCount(record.limit, "limit", "ast_grep");
1124
+ const includeMeta = optionalBoolean(record.includeMeta, "includeMeta", "ast_grep");
1125
+ const walked = await walkSources(target.root, {
1126
+ glob: target.glob,
1127
+ maxFiles: MAX_FILES
1128
+ });
1129
+ const matches = [];
1130
+ const parseErrors = [];
1131
+ const patternErrors = [];
1132
+ const patternErrorSeen = /* @__PURE__ */ new Set();
1133
+ let filesWithMatches = 0;
1134
+ for (const file of walked.files) {
1135
+ const lang = languageForPath(file);
1136
+ if (lang === void 0) continue;
1137
+ if (!isLanguageAvailable(lang)) {
1138
+ parseErrors.push(`${rel(file, cwd)}: language unavailable`);
1139
+ continue;
1140
+ }
1141
+ let source;
1142
+ try {
1143
+ source = readFileSync(file, "utf8");
1144
+ } catch {
1145
+ continue;
1146
+ }
1147
+ const perFile = [];
1148
+ for (const [index, pattern] of patterns.entries()) {
1149
+ const found = await findInSource(source, lang, pattern, { includeMeta });
1150
+ if (found.patternError !== void 0 && !patternErrorSeen.has(index)) {
1151
+ patternErrorSeen.add(index);
1152
+ patternErrors.push(`pattern ${index} ("${pattern}"): ${found.patternError}`);
1153
+ }
1154
+ perFile.push(...found.matches);
1155
+ }
1156
+ if (perFile.length === 0) continue;
1157
+ filesWithMatches += 1;
1158
+ perFile.sort((a, b) => a.byteStart - b.byteStart || a.byteEnd - b.byteEnd);
1159
+ matches.push(...perFile.map((match) => ({
1160
+ ...match,
1161
+ path: rel(file, cwd)
1162
+ })));
1163
+ }
1164
+ const totalMatches = matches.length;
1165
+ const start = offset ?? 0;
1166
+ const paged = matches.slice(start, start + (limit ?? Infinity));
1167
+ return {
1168
+ matches: paged,
1169
+ totalMatches,
1170
+ filesWithMatches,
1171
+ filesSearched: walked.files.length,
1172
+ limitReached: totalMatches > paged.length,
1173
+ ...parseErrors.length > 0 ? { parseErrors } : {},
1174
+ ...patternErrors.length > 0 ? { patternErrors } : {},
1175
+ ...pathNotFound ? { pathNotFound: true } : {}
1176
+ };
1177
+ }
1178
+ /** Mount both ast devices on the registry (defaults to the real dvc registry). */
1179
+ function registerAstDevices(registry = { registerDvcDevice }) {
1180
+ registry.registerDvcDevice("ast_edit", {
1181
+ summary: summaries.ast_edit,
1182
+ execute: executeAstEdit
1183
+ });
1184
+ registry.registerDvcDevice("ast_grep", {
1185
+ summary: summaries.ast_grep,
1186
+ execute: executeAstGrep
1187
+ });
1188
+ }
1189
+ /** Roster summaries for the device nameplate — one line per device. */
1190
+ const summaries = {
1191
+ ast_edit: "AST-aware structural rewrite: {ops: [{pat, out}], paths: string[], dryRun?: boolean} — ast-grep patterns; dryRun defaults true, set false to write files; performs no workspace boundary check (boundary is the approval/policy layer) and writes whatever paths it is given",
1192
+ ast_grep: "AST pattern search: {patterns: string[], path?: string, offset?: number, limit?: number, includeMeta?: boolean} — returns structured matches with optional meta variables; performs no workspace boundary check (boundary is the approval/policy layer)"
1193
+ };
1194
+
1195
+ //#endregion
25
1196
  //#region src/vendor.ts
26
1197
  /**
27
1198
  * Plugin-owned vendor root: `<packageRoot>/.vendor`, beside the managed kernel
@@ -251,351 +1422,6 @@ function satisfies(version, range) {
251
1422
  return version === range;
252
1423
  }
253
1424
 
254
- //#endregion
255
- //#region src/devices/ast/natives-loader.ts
256
- /** Platform tags with a published leaf package (mirrors the upstream loader). */
257
- const SUPPORTED_PLATFORM_TAGS = [
258
- "linux-x64",
259
- "linux-arm64",
260
- "darwin-x64",
261
- "darwin-arm64",
262
- "win32-x64"
263
- ];
264
- /** The supported platform tag for the given (or current) platform/arch, or `undefined`. */
265
- function piNativesPlatformTag(platform = process.platform, arch = process.arch) {
266
- const tag = `${platform}-${arch}`;
267
- return SUPPORTED_PLATFORM_TAGS.includes(tag) ? tag : void 0;
268
- }
269
- /** The npm leaf-package name for the given (or current) platform, or `undefined`. */
270
- function piNativesPackageName(platform = process.platform, arch = process.arch) {
271
- const tag = piNativesPlatformTag(platform, arch);
272
- return tag === void 0 ? void 0 : `@oh-my-pi/pi-natives-${tag}`;
273
- }
274
- /**
275
- * Candidate addon filenames inside the leaf package, most-preferred first
276
- * (mirrors the upstream `getAddonFilenames`): x64 ships modern/baseline CPU
277
- * variants, other arches a single default binary.
278
- */
279
- function piNativesAddonFilenames(tag, arch, preferModern = true) {
280
- const defaultFilename = `pi_natives.${tag}.node`;
281
- if (arch !== "x64") return [defaultFilename];
282
- const baseline = `pi_natives.${tag}-baseline.node`;
283
- const modern = `pi_natives.${tag}-modern.node`;
284
- return preferModern ? [
285
- modern,
286
- baseline,
287
- defaultFilename
288
- ] : [
289
- baseline,
290
- modern,
291
- defaultFilename
292
- ];
293
- }
294
- /**
295
- * AVX2 probe for the modern/baseline choice on x64. Linux reads
296
- * `/proc/cpuinfo` (upstream does the same); darwin/win32 x64 assume modern —
297
- * effectively universal there — and a dlopen failure still falls through to
298
- * the baseline candidate.
299
- */
300
- function detectAvx2(platform, arch) {
301
- if (arch !== "x64") return false;
302
- if (platform === "linux") try {
303
- return /\bavx2\b/i.test(readFileSync("/proc/cpuinfo", "utf8"));
304
- } catch {
305
- return false;
306
- }
307
- return platform === "darwin" || platform === "win32";
308
- }
309
- const here = path$1.dirname(fileURLToPath(import.meta.url));
310
- /** `require` anchored at this module — used to dlopen absolute `.node` paths. */
311
- const requireHere = createRequire(import.meta.url);
312
- /**
313
- * Locate the leaf package directory with an explicit node_modules-walk upward
314
- * from `fromDir` — the ONLY mechanism. `require.resolve` is deliberately not
315
- * used here: its fallback through the process global paths (which include the
316
- * pnpm virtual-store hoist root `.pnpm/node_modules`) can resolve the leaf
317
- * package from ANY anchor, defeating the anchor-bounded contract this loader
318
- * guarantees for its degradation tests and unsupported-platform probes.
319
- * Returns `undefined` when absent.
320
- */
321
- function findPackageDir(packageName, fromDir) {
322
- let dir = fromDir;
323
- for (;;) {
324
- const candidate = path$1.join(dir, "node_modules", packageName);
325
- if (existsSync(path$1.join(candidate, "package.json"))) return candidate;
326
- const parent = path$1.dirname(dir);
327
- if (parent === dir) return void 0;
328
- dir = parent;
329
- }
330
- }
331
- /**
332
- * Exact vendor-dir lookup. Deliberately NOT `findPackageDir`: that helper
333
- * walks `node_modules` upward, which from `<packageRoot>/.vendor` would escape
334
- * into the package's own (or the profile's) tree and defeat the anchor-bounded
335
- * contract this loader guarantees. The vendor root is flat by construction.
336
- */
337
- function vendoredPackageDir(packageName) {
338
- const candidate = path$1.join(VENDOR_ROOT, "node_modules", packageName);
339
- return existsSync(path$1.join(candidate, "package.json")) ? candidate : void 0;
340
- }
341
- /** Pinned addon release; bumping it is an explicit, tested change. */
342
- const PI_NATIVES_VERSION = "18.0.6";
343
- /**
344
- * Make the platform addon available without touching any package manager:
345
- * a package already resolvable from `fromDir` (dev checkout, legacy install)
346
- * wins; otherwise the pinned leaf package is fetched into the plugin's vendor
347
- * directory. Never throws — failure leaves `loadPiNatives()` reporting the
348
- * addon as unavailable, which the device layer turns into a structured error.
349
- * @param options - platform/arch/anchor overrides, as in `loadPiNatives`.
350
- */
351
- async function ensurePiNatives(options = {}) {
352
- const packageName = piNativesPackageName(options.platform ?? process.platform, options.arch ?? process.arch);
353
- if (packageName === void 0) return;
354
- if (findPackageDir(packageName, options.fromDir ?? here) !== void 0) return;
355
- if (options.fromDir !== void 0) return;
356
- try {
357
- await ensureVendored({
358
- name: packageName,
359
- version: PI_NATIVES_VERSION
360
- }, VENDOR_ROOT);
361
- } catch {}
362
- }
363
- /** Memoized default-args outcome: `undefined` = not attempted, `null` = attempted and unavailable. */
364
- let cachedDefaultLoad;
365
- /**
366
- * Load the pi-natives platform addon. Never throws: a missing package, an
367
- * unsupported platform, or a failed dlopen all resolve to `undefined` (the
368
- * next variant is tried first). Only default-args calls are memoized, so
369
- * option-bearing probes (tests) never pollute the cache.
370
- */
371
- function loadPiNatives(options = {}) {
372
- const isDefaultLoad = options.platform === void 0 && options.arch === void 0 && options.fromDir === void 0;
373
- if (isDefaultLoad && cachedDefaultLoad !== void 0) return cachedDefaultLoad === null ? void 0 : cachedDefaultLoad;
374
- const platform = options.platform ?? process.platform;
375
- const arch = options.arch ?? process.arch;
376
- const tag = piNativesPlatformTag(platform, arch);
377
- if (tag === void 0) {
378
- if (isDefaultLoad) cachedDefaultLoad = null;
379
- return;
380
- }
381
- const packageName = `@oh-my-pi/pi-natives-${tag}`;
382
- const packageDir = findPackageDir(packageName, options.fromDir ?? here) ?? (options.fromDir === void 0 ? vendoredPackageDir(packageName) : void 0);
383
- if (packageDir === void 0) {
384
- if (isDefaultLoad) cachedDefaultLoad = null;
385
- return;
386
- }
387
- const preferModern = detectAvx2(platform, arch);
388
- for (const filename of piNativesAddonFilenames(tag, arch, preferModern)) {
389
- const addonPath = path$1.join(packageDir, filename);
390
- if (!existsSync(addonPath)) continue;
391
- try {
392
- const bindings = requireHere(addonPath);
393
- if (typeof bindings.astGrep !== "function" || typeof bindings.astEdit !== "function") continue;
394
- const natives = {
395
- astGrep: bindings.astGrep.bind(bindings),
396
- astEdit: bindings.astEdit.bind(bindings)
397
- };
398
- if (isDefaultLoad) cachedDefaultLoad = natives;
399
- return natives;
400
- } catch {}
401
- }
402
- if (isDefaultLoad) cachedDefaultLoad = null;
403
- }
404
-
405
- //#endregion
406
- //#region src/devices/ast/ast-device.ts
407
- /** Per-run cap on distinct rewritten files (upstream `PI_MAX_AST_FILES` default). */
408
- const MAX_FILES = 1e3;
409
- /** Glob metacharacters that mark a path segment as a pattern (upstream `GLOB_PATH_CHARS`). */
410
- const GLOB_CHARS = /[*?[{]/;
411
- /**
412
- * Load the native bindings or fail the device call with an actionable
413
- * message — the dvc dispatcher wraps this into `DVC_DEVICE_ERROR`.
414
- */
415
- async function nativesOrThrow() {
416
- await ensurePiNatives();
417
- const natives = loadPiNatives();
418
- if (natives !== void 0) return natives;
419
- const tag = piNativesPlatformTag();
420
- throw new Error(tag === void 0 ? `pi-natives addon unavailable: platform ${process.platform}-${process.arch} has no published @oh-my-pi/pi-natives@18.0.6 binary` : `pi-natives addon unavailable: the plugin could not fetch @oh-my-pi/pi-natives-${tag}@18.0.6 into its own vendor dir (registry unreachable or blocked); retry with network access`);
421
- }
422
- /** The working directory for relative paths: `ctx.cwd` when threaded through, else `process.cwd()`. */
423
- function ctxCwd(ctx) {
424
- if (ctx !== null && typeof ctx === "object" && typeof ctx.cwd === "string") return ctx.cwd;
425
- return process.cwd();
426
- }
427
- /** A validated args object for a device call. */
428
- function argsRecord(args, device) {
429
- if (args === null || typeof args !== "object" || Array.isArray(args)) throw new Error(`${device}: args must be a JSON object`);
430
- return args;
431
- }
432
- /** A non-empty array of non-empty strings. */
433
- function stringArray(value, field, device) {
434
- if (!Array.isArray(value) || value.length === 0) throw new Error(`${device}: \`${field}\` must be a non-empty array of strings`);
435
- for (const entry of value) if (typeof entry !== "string" || entry.length === 0) throw new Error(`${device}: \`${field}\` entries must be non-empty strings`);
436
- return value;
437
- }
438
- /** An optional boolean field. */
439
- function optionalBoolean(value, field, device) {
440
- if (value === void 0) return void 0;
441
- if (typeof value !== "boolean") throw new Error(`${device}: \`${field}\` must be a boolean`);
442
- return value;
443
- }
444
- /** An optional non-negative integer field. */
445
- function optionalCount(value, field, device) {
446
- if (value === void 0) return void 0;
447
- if (typeof value !== "number" || !Number.isInteger(value) || value < 0) throw new Error(`${device}: \`${field}\` must be a non-negative integer`);
448
- return value;
449
- }
450
- /**
451
- * Resolve one `paths` entry against `cwd`. An existing literal file or
452
- * directory wins as-is (upstream `parseSearchPathPreferringLiteral`);
453
- * otherwise the entry splits at the first glob-ish segment into
454
- * `{basePath, glob}` (upstream `parseSearchPath`), so a recursive glob
455
- * under `src` scans `src` as the root with the double-star pattern as the
456
- * glob tail. For file targets the native reports paths relative to the
457
- * file's directory, so `rebaseBase` tracks that.
458
- */
459
- function resolveTarget(entry, cwd) {
460
- const absolute = path$1.resolve(cwd, entry);
461
- try {
462
- return statSync(absolute).isFile() ? {
463
- root: absolute,
464
- rebaseBase: path$1.dirname(absolute)
465
- } : {
466
- root: absolute,
467
- rebaseBase: absolute
468
- };
469
- } catch {}
470
- const normalized = entry.replace(/\\/g, "/");
471
- const segments = normalized.split("/");
472
- const globIndex = segments.findIndex((segment$1) => GLOB_CHARS.test(segment$1));
473
- if (globIndex === -1) return {
474
- root: absolute,
475
- rebaseBase: absolute
476
- };
477
- const basePath = globIndex === 0 ? "." : segments.slice(0, globIndex).join("/");
478
- const glob = globIndex === 0 ? normalized : segments.slice(globIndex).join("/");
479
- const root = path$1.resolve(cwd, basePath);
480
- return {
481
- root,
482
- glob,
483
- rebaseBase: root
484
- };
485
- }
486
- /** Rebase a native-reported file path (relative to the target) to a cwd-relative POSIX path. */
487
- function rebaseNativePath(filePath, target, cwd) {
488
- const relative$1 = path$1.relative(cwd, path$1.resolve(target.rebaseBase, filePath));
489
- return (relative$1 === "" ? "." : relative$1).split(path$1.sep).join("/");
490
- }
491
- /** `ast_edit` — run the validated rewrite across every target, aggregating like upstream's `runAstEditTargets`. */
492
- async function executeAstEdit(args, ctx) {
493
- const natives = await nativesOrThrow();
494
- const cwd = ctxCwd(ctx);
495
- const record = argsRecord(args, "ast_edit");
496
- const rawOps = record.ops;
497
- if (!Array.isArray(rawOps) || rawOps.length === 0) throw new Error("ast_edit: `ops` must be a non-empty array of {pat, out} objects");
498
- const rewrites = {};
499
- rawOps.forEach((rawOp, index) => {
500
- if (rawOp === null || typeof rawOp !== "object" || Array.isArray(rawOp)) throw new Error(`ast_edit: ops[${index}] must be a {pat, out} object`);
501
- const op = rawOp;
502
- if (typeof op.pat !== "string" || op.pat.length === 0) throw new Error(`ast_edit: ops[${index}].pat must be a non-empty pattern`);
503
- if (typeof op.out !== "string") throw new Error(`ast_edit: ops[${index}].out must be a string`);
504
- rewrites[op.pat] = op.out;
505
- });
506
- const targets = stringArray(record.paths, "paths", "ast_edit").map((entry) => resolveTarget(entry, cwd));
507
- const dryRun = optionalBoolean(record.dryRun, "dryRun", "ast_edit") ?? true;
508
- const changes = [];
509
- const fileCounts = /* @__PURE__ */ new Map();
510
- const parseErrors = [];
511
- let totalReplacements = 0;
512
- let filesSearched = 0;
513
- let limitReached = false;
514
- let applied = !dryRun;
515
- for (const target of targets) {
516
- const result = await natives.astEdit({
517
- rewrites,
518
- path: target.root,
519
- glob: target.glob,
520
- dryRun,
521
- maxFiles: MAX_FILES,
522
- failOnParseError: false
523
- });
524
- totalReplacements += result.totalReplacements;
525
- filesSearched += result.filesSearched;
526
- limitReached = limitReached || result.limitReached;
527
- applied = applied && result.applied;
528
- if (result.parseErrors !== void 0) parseErrors.push(...result.parseErrors);
529
- for (const change of result.changes) changes.push({
530
- ...change,
531
- path: rebaseNativePath(change.path, target, cwd)
532
- });
533
- for (const fileChange of result.fileChanges) {
534
- const rebased = rebaseNativePath(fileChange.path, target, cwd);
535
- fileCounts.set(rebased, (fileCounts.get(rebased) ?? 0) + fileChange.count);
536
- }
537
- }
538
- const fileChanges = [...fileCounts].map(([filePath, count]) => ({
539
- path: filePath,
540
- count
541
- }));
542
- return {
543
- changes,
544
- fileChanges,
545
- totalReplacements,
546
- filesTouched: fileChanges.length,
547
- filesSearched,
548
- applied,
549
- limitReached,
550
- ...parseErrors.length > 0 ? { parseErrors } : {}
551
- };
552
- }
553
- /** `ast_grep` — pass patterns/path/offset/limit/includeMeta straight to the native, rebase match paths. */
554
- async function executeAstGrep(args, ctx) {
555
- const natives = await nativesOrThrow();
556
- const cwd = ctxCwd(ctx);
557
- const record = argsRecord(args, "ast_grep");
558
- const patterns = stringArray(record.patterns, "patterns", "ast_grep");
559
- const rawPath = record.path;
560
- if (rawPath !== void 0 && typeof rawPath !== "string") throw new Error("ast_grep: `path` must be a string");
561
- const target = resolveTarget(rawPath !== void 0 && rawPath.length > 0 ? rawPath : ".", cwd);
562
- const offset = optionalCount(record.offset, "offset", "ast_grep");
563
- const limit = optionalCount(record.limit, "limit", "ast_grep");
564
- const includeMeta = optionalBoolean(record.includeMeta, "includeMeta", "ast_grep");
565
- const result = await natives.astGrep({
566
- patterns,
567
- path: target.root,
568
- ...target.glob !== void 0 ? { glob: target.glob } : {},
569
- ...offset !== void 0 ? { offset } : {},
570
- ...limit !== void 0 ? { limit } : {},
571
- ...includeMeta !== void 0 ? { includeMeta } : {}
572
- });
573
- const matches = result.matches.map((match) => ({
574
- ...match,
575
- path: rebaseNativePath(match.path, target, cwd)
576
- }));
577
- return {
578
- ...result,
579
- matches
580
- };
581
- }
582
- /** Mount both ast devices on the registry (defaults to the real dvc registry). */
583
- function registerAstDevices(registry = { registerDvcDevice }) {
584
- registry.registerDvcDevice("ast_edit", {
585
- summary: summaries.ast_edit,
586
- execute: executeAstEdit
587
- });
588
- registry.registerDvcDevice("ast_grep", {
589
- summary: summaries.ast_grep,
590
- execute: executeAstGrep
591
- });
592
- }
593
- /** Roster summaries for the device nameplate — one line per device. */
594
- const summaries = {
595
- ast_edit: "AST-aware structural rewrite: {ops: [{pat, out}], paths: string[], dryRun?: boolean} — ast-grep patterns; dryRun defaults true, set false to write files",
596
- ast_grep: "AST pattern search: {patterns: string[], path?: string, offset?: number, limit?: number, includeMeta?: boolean} — returns structured matches with optional meta variables"
597
- };
598
-
599
1425
  //#endregion
600
1426
  //#region src/devices/browser/browser-device.ts
601
1427
  let puppeteerModule;
@@ -609,7 +1435,7 @@ const PUPPETEER_CORE_VERSION = "25.3.0";
609
1435
  */
610
1436
  async function loadPuppeteer() {
611
1437
  if (puppeteerModule === void 0) try {
612
- puppeteerModule = await import("../puppeteer-core-BIIJGWPE.js");
1438
+ puppeteerModule = await import("../puppeteer-core-Bliv_vNf.js");
613
1439
  } catch {
614
1440
  try {
615
1441
  puppeteerModule = await import(pathToFileURL((await ensureVendored({
@@ -1674,7 +2500,7 @@ function ensureMustHave(gate, language) {
1674
2500
  if (!MUST_HAVE.has(language) || gate.installTried.has(language)) return;
1675
2501
  gate.installTried.add(language);
1676
2502
  (async () => {
1677
- const registry = await import("../lsp-server-registry-LUjrrLxk.js");
2503
+ const registry = await import("../lsp-server-registry-BcdkHROD.js");
1678
2504
  const probePath = `/tmp/x.${language === "python" ? "py" : "ts"}`;
1679
2505
  const primary = registry.primaryServerForFile(probePath);
1680
2506
  if (primary === null) return;
@@ -2363,7 +3189,7 @@ async function lspDeviceRead(subpath, session) {
2363
3189
  if (parsed === void 0) return `unknown read path dvc://lsp/${subpath} — reads: status | diagnostics?file=…[&all=1] | definition?file=&line=[&character=|&symbol=] | references?… | hover?…`;
2364
3190
  if (parsed.action === "status") {
2365
3191
  const availability = {};
2366
- const registry = await import("../lsp-server-registry-LUjrrLxk.js");
3192
+ const registry = await import("../lsp-server-registry-BcdkHROD.js");
2367
3193
  for (const language of [
2368
3194
  "python",
2369
3195
  "typescript",
@@ -2419,35 +3245,11 @@ function installLspDevices(registry = registerDvcDevice) {
2419
3245
  //#endregion
2420
3246
  //#region src/devices/ast/ast-reminder.ts
2421
3247
  /**
2422
- * AST-capable extension set — empirically probed against the shipped
2423
- * pi-natives binary (2026-09-27): grouped by grammar family. TS family and
2424
- * header files ride the same grammars as their proven siblings.
3248
+ * AST-capable extension set —— 从引擎的语言面**派生**(spec:单一真相源)。
3249
+ * 2026-09-27 那版是对 shipped 二进制逐扩展实测的快照;引擎内置后两者必然
3250
+ * 一致,不再人工维护第二份。
2425
3251
  */
2426
- const AST_CODE_EXTENSIONS = new Set([
2427
- ".py",
2428
- ".pyi",
2429
- ".js",
2430
- ".jsx",
2431
- ".mjs",
2432
- ".cjs",
2433
- ".ts",
2434
- ".tsx",
2435
- ".mts",
2436
- ".cts",
2437
- ".rs",
2438
- ".go",
2439
- ".c",
2440
- ".cpp",
2441
- ".h",
2442
- ".hpp",
2443
- ".html",
2444
- ".css",
2445
- ".json",
2446
- ".yaml",
2447
- ".yml",
2448
- ".sh",
2449
- ".rb"
2450
- ]);
3252
+ const AST_CODE_EXTENSIONS = new Set(Object.keys(EXTENSION_TO_LANGUAGE));
2451
3253
  /** Reminders per agent session (user ruling 2026-09-27: five is enough). */
2452
3254
  const AST_REMINDER_CAP = 5;
2453
3255
  /** The one-line availability notice (single line, both dvc:// devices). */
@@ -3223,14 +4025,14 @@ const SECTION_FILE = "url-schemes-instruction.md";
3223
4025
  * when the package's own file is absent.
3224
4026
  */
3225
4027
  function loadSectionText() {
3226
- const here$1 = fileURLToPath(import.meta.url);
3227
- let dir = dirname(here$1);
4028
+ const here = fileURLToPath(import.meta.url);
4029
+ let dir = dirname(here);
3228
4030
  for (;;) {
3229
4031
  try {
3230
4032
  return readFileSync(join(dir, SECTION_FILE), "utf8");
3231
4033
  } catch {}
3232
4034
  const parent = dirname(dir);
3233
- if (parent === dir) throw new Error(`${SECTION_FILE} not found from ${here$1} — it must ship with the package (package.json "files")`);
4035
+ if (parent === dir) throw new Error(`${SECTION_FILE} not found from ${here} — it must ship with the package (package.json "files")`);
3234
4036
  dir = parent;
3235
4037
  }
3236
4038
  }
@@ -3263,8 +4065,8 @@ function splitSkillPath(path$2) {
3263
4065
  /** Join `subpath` under the skill's resource directory, rejecting escapes. */
3264
4066
  function resolveResourcePath(baseDir, subpath) {
3265
4067
  const full = join(baseDir, subpath);
3266
- const rel = relative(baseDir, full);
3267
- if (rel === "" || rel === ".." || rel.startsWith("../")) throw new UrlSchemesError("URL_SKILL_RESOURCE_ESCAPE", `skill resource path "${subpath}" escapes its directory`);
4068
+ const rel$1 = relative(baseDir, full);
4069
+ if (rel$1 === "" || rel$1 === ".." || rel$1.startsWith("../")) throw new UrlSchemesError("URL_SKILL_RESOURCE_ESCAPE", `skill resource path "${subpath}" escapes its directory`);
3268
4070
  return full;
3269
4071
  }
3270
4072
  /**
@@ -11407,10 +12209,10 @@ function apply(ctx, config) {
11407
12209
  installLspDevices();
11408
12210
  const httpHandler = createHttpHandler();
11409
12211
  for (const scheme of HTTP_SCHEMES) resolver.register(scheme, httpHandler);
11410
- const registered = /* @__PURE__ */ new WeakSet();
12212
+ const registered$1 = /* @__PURE__ */ new WeakSet();
11411
12213
  ctx.on("agent/created", ({ agent }) => {
11412
- if (registered.has(agent)) return void 0;
11413
- registered.add(agent);
12214
+ if (registered$1.has(agent)) return void 0;
12215
+ registered$1.add(agent);
11414
12216
  installAgentTools(ctx, agent, resolver, resolveGates(config)).catch((error) => {
11415
12217
  ctx.logger("dsh-url-schemes").warn(`failed to install URL-aware tools for agent ${agent.id}: ${error instanceof Error ? error.message : String(error)}`);
11416
12218
  });