@zvec/zvec-grep 0.1.5 → 0.1.6

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 (317) hide show
  1. package/README.md +88 -249
  2. package/README_CN.md +82 -246
  3. package/dist/authorization/index.d.ts +7 -0
  4. package/dist/authorization/index.js +7 -0
  5. package/dist/authorization/index.js.map +1 -0
  6. package/dist/authorization/manager.d.ts +8 -0
  7. package/dist/authorization/manager.js +19 -0
  8. package/dist/authorization/manager.js.map +1 -0
  9. package/dist/authorization/operation.d.ts +7 -0
  10. package/dist/authorization/operation.js +50 -0
  11. package/dist/authorization/operation.js.map +1 -0
  12. package/dist/authorization/planner.d.ts +21 -0
  13. package/dist/authorization/planner.js +97 -0
  14. package/dist/authorization/planner.js.map +1 -0
  15. package/dist/authorization/prompt.d.ts +11 -0
  16. package/dist/authorization/prompt.js +62 -0
  17. package/dist/authorization/prompt.js.map +1 -0
  18. package/dist/authorization/store.d.ts +20 -0
  19. package/dist/authorization/store.js +251 -0
  20. package/dist/authorization/store.js.map +1 -0
  21. package/dist/authorization/target.d.ts +15 -0
  22. package/dist/authorization/target.js +49 -0
  23. package/dist/authorization/target.js.map +1 -0
  24. package/dist/authorization/types.d.ts +61 -0
  25. package/dist/authorization/types.js +2 -0
  26. package/dist/authorization/types.js.map +1 -0
  27. package/dist/cli/args.d.ts +1 -1
  28. package/dist/cli/args.js +304 -54
  29. package/dist/cli/args.js.map +1 -1
  30. package/dist/cli/auth.d.ts +21 -0
  31. package/dist/cli/auth.js +212 -0
  32. package/dist/cli/auth.js.map +1 -0
  33. package/dist/cli/commands.js +433 -618
  34. package/dist/cli/commands.js.map +1 -1
  35. package/dist/cli/errors.js +2 -2
  36. package/dist/cli/errors.js.map +1 -1
  37. package/dist/cli/format/context.d.ts +1 -0
  38. package/dist/cli/format/context.js +241 -45
  39. package/dist/cli/format/context.js.map +1 -1
  40. package/dist/cli/format/debug.js +2 -2
  41. package/dist/cli/format/debug.js.map +1 -1
  42. package/dist/cli/format/progress.d.ts +4 -0
  43. package/dist/cli/format/progress.js +219 -46
  44. package/dist/cli/format/progress.js.map +1 -1
  45. package/dist/cli/format/status.d.ts +77 -6
  46. package/dist/cli/format/status.js +302 -106
  47. package/dist/cli/format/status.js.map +1 -1
  48. package/dist/cli/help.js +258 -59
  49. package/dist/cli/help.js.map +1 -1
  50. package/dist/cli/index.js +0 -0
  51. package/dist/cli/install.d.ts +4 -0
  52. package/dist/cli/install.js +845 -0
  53. package/dist/cli/install.js.map +1 -0
  54. package/dist/cli/managed-rg.d.ts +10 -0
  55. package/dist/cli/managed-rg.js +329 -0
  56. package/dist/cli/managed-rg.js.map +1 -0
  57. package/dist/cli/types.d.ts +20 -6
  58. package/dist/cli/types.js.map +1 -1
  59. package/dist/client/daemon-client.d.ts +19 -0
  60. package/dist/client/daemon-client.js +180 -0
  61. package/dist/client/daemon-client.js.map +1 -0
  62. package/dist/client/mode-router.d.ts +9 -0
  63. package/dist/client/mode-router.js +28 -0
  64. package/dist/client/mode-router.js.map +1 -0
  65. package/dist/client/search-policy.d.ts +11 -0
  66. package/dist/client/search-policy.js +15 -0
  67. package/dist/client/search-policy.js.map +1 -0
  68. package/dist/daemon/backend.d.ts +76 -0
  69. package/dist/daemon/backend.js +1049 -0
  70. package/dist/daemon/backend.js.map +1 -0
  71. package/dist/daemon/change-set.d.ts +25 -0
  72. package/dist/daemon/change-set.js +101 -0
  73. package/dist/daemon/change-set.js.map +1 -0
  74. package/dist/daemon/config.d.ts +24 -0
  75. package/dist/daemon/config.js +88 -0
  76. package/dist/daemon/config.js.map +1 -0
  77. package/dist/daemon/errors.d.ts +5 -0
  78. package/dist/daemon/errors.js +11 -0
  79. package/dist/daemon/errors.js.map +1 -0
  80. package/dist/daemon/http-server.d.ts +30 -0
  81. package/dist/daemon/http-server.js +287 -0
  82. package/dist/daemon/http-server.js.map +1 -0
  83. package/dist/daemon/index-coordinator.d.ts +23 -0
  84. package/dist/daemon/index-coordinator.js +68 -0
  85. package/dist/daemon/index-coordinator.js.map +1 -0
  86. package/dist/daemon/job-scheduler.d.ts +70 -0
  87. package/dist/daemon/job-scheduler.js +366 -0
  88. package/dist/daemon/job-scheduler.js.map +1 -0
  89. package/dist/daemon/logger.d.ts +9 -0
  90. package/dist/daemon/logger.js +53 -0
  91. package/dist/daemon/logger.js.map +1 -0
  92. package/dist/daemon/model-pool.d.ts +45 -0
  93. package/dist/daemon/model-pool.js +187 -0
  94. package/dist/daemon/model-pool.js.map +1 -0
  95. package/dist/daemon/root-lease.d.ts +14 -0
  96. package/dist/daemon/root-lease.js +188 -0
  97. package/dist/daemon/root-lease.js.map +1 -0
  98. package/dist/daemon/root-runtime.d.ts +78 -0
  99. package/dist/daemon/root-runtime.js +333 -0
  100. package/dist/daemon/root-runtime.js.map +1 -0
  101. package/dist/daemon/runtime-manager.d.ts +45 -0
  102. package/dist/daemon/runtime-manager.js +243 -0
  103. package/dist/daemon/runtime-manager.js.map +1 -0
  104. package/dist/daemon/runtime.d.ts +12 -0
  105. package/dist/daemon/runtime.js +102 -0
  106. package/dist/daemon/runtime.js.map +1 -0
  107. package/dist/daemon/server-controller.d.ts +39 -0
  108. package/dist/daemon/server-controller.js +203 -0
  109. package/dist/daemon/server-controller.js.map +1 -0
  110. package/dist/daemon/watch-manager.d.ts +50 -0
  111. package/dist/daemon/watch-manager.js +293 -0
  112. package/dist/daemon/watch-manager.js.map +1 -0
  113. package/dist/daemon/workspace-read-session-cache.d.ts +31 -0
  114. package/dist/daemon/workspace-read-session-cache.js +115 -0
  115. package/dist/daemon/workspace-read-session-cache.js.map +1 -0
  116. package/dist/engine/config.d.ts +30 -8
  117. package/dist/engine/config.js +171 -45
  118. package/dist/engine/config.js.map +1 -1
  119. package/dist/engine/{errors/index.d.ts → errors.d.ts} +6 -1
  120. package/dist/engine/{errors/details.js → errors.js} +17 -4
  121. package/dist/engine/errors.js.map +1 -0
  122. package/dist/engine/extraction/code/adapter.d.ts +1 -1
  123. package/dist/engine/extraction/code/extractor.d.ts +5 -11
  124. package/dist/engine/extraction/code/extractor.js +105 -44
  125. package/dist/engine/extraction/code/extractor.js.map +1 -1
  126. package/dist/engine/extraction/code/families/c-family.js +1 -1
  127. package/dist/engine/extraction/code/families/c-family.js.map +1 -1
  128. package/dist/engine/extraction/code/families/js-ts.d.ts +1 -1
  129. package/dist/engine/extraction/code/families/metadata.d.ts +1 -1
  130. package/dist/engine/extraction/code/tree-sitter/grammar.js.map +1 -0
  131. package/dist/engine/extraction/code/tree-sitter/nodes.js.map +1 -0
  132. package/dist/engine/extraction/code/tree-sitter/parser.js.map +1 -0
  133. package/dist/engine/extraction/image/extractor.d.ts +5 -0
  134. package/dist/engine/extraction/image/extractor.js +35 -0
  135. package/dist/engine/extraction/image/extractor.js.map +1 -0
  136. package/dist/engine/extraction/index.d.ts +3 -44
  137. package/dist/engine/extraction/index.js +1 -280
  138. package/dist/engine/extraction/index.js.map +1 -1
  139. package/dist/engine/extraction/markdown/extractor.d.ts +5 -11
  140. package/dist/engine/extraction/markdown/extractor.js +35 -16
  141. package/dist/engine/extraction/markdown/extractor.js.map +1 -1
  142. package/dist/engine/extraction/runtime.d.ts +4 -0
  143. package/dist/engine/extraction/runtime.js +26 -0
  144. package/dist/engine/extraction/runtime.js.map +1 -0
  145. package/dist/engine/extraction/source.d.ts +18 -0
  146. package/dist/engine/extraction/source.js +22 -0
  147. package/dist/engine/extraction/source.js.map +1 -0
  148. package/dist/engine/extraction/text/extractor.d.ts +7 -0
  149. package/dist/engine/extraction/text/extractor.js +168 -0
  150. package/dist/engine/extraction/text/extractor.js.map +1 -0
  151. package/dist/engine/extraction/types.d.ts +4 -0
  152. package/dist/engine/{models → extraction}/types.js.map +1 -1
  153. package/dist/engine/{files/file-type.d.ts → file-type.d.ts} +1 -1
  154. package/dist/engine/file-type.js.map +1 -0
  155. package/dist/engine/index-status.d.ts +9 -0
  156. package/dist/engine/index-status.js +38 -0
  157. package/dist/engine/index-status.js.map +1 -0
  158. package/dist/engine/manifest.d.ts +12 -0
  159. package/dist/engine/manifest.js +120 -0
  160. package/dist/engine/manifest.js.map +1 -0
  161. package/dist/engine/models/{providers/llama-cpp/embedding.d.ts → backends/llama-cpp.d.ts} +25 -20
  162. package/dist/engine/models/{providers/llama-cpp/embedding.js → backends/llama-cpp.js} +127 -106
  163. package/dist/engine/models/backends/llama-cpp.js.map +1 -0
  164. package/dist/engine/models/backends/model2vec.d.ts +57 -0
  165. package/dist/engine/models/backends/model2vec.js +332 -0
  166. package/dist/engine/models/backends/model2vec.js.map +1 -0
  167. package/dist/engine/models/backends/qwen.d.ts +44 -0
  168. package/dist/engine/models/{providers/qwen/embedding.js → backends/qwen.js} +155 -94
  169. package/dist/engine/models/backends/qwen.js.map +1 -0
  170. package/dist/engine/models/backends/transformers-js.d.ts +87 -0
  171. package/dist/engine/models/backends/transformers-js.js +316 -0
  172. package/dist/engine/models/backends/transformers-js.js.map +1 -0
  173. package/dist/engine/models/catalog.d.ts +188 -23
  174. package/dist/engine/models/catalog.js +172 -25
  175. package/dist/engine/models/catalog.js.map +1 -1
  176. package/dist/engine/models/download-progress.d.ts +15 -0
  177. package/dist/engine/models/download-progress.js +48 -0
  178. package/dist/engine/models/download-progress.js.map +1 -0
  179. package/dist/engine/models/embeddings.d.ts +58 -18
  180. package/dist/engine/models/embeddings.js +52 -28
  181. package/dist/engine/models/embeddings.js.map +1 -1
  182. package/dist/engine/models/factory.d.ts +2 -5
  183. package/dist/engine/models/factory.js +41 -56
  184. package/dist/engine/models/factory.js.map +1 -1
  185. package/dist/engine/models/index.d.ts +4 -6
  186. package/dist/engine/models/index.js +4 -4
  187. package/dist/engine/models/index.js.map +1 -1
  188. package/dist/engine/models/ranking.d.ts +7 -3
  189. package/dist/engine/models/resolution.d.ts +8 -0
  190. package/dist/engine/models/resolution.js +22 -0
  191. package/dist/engine/models/resolution.js.map +1 -0
  192. package/dist/engine/pipeline/indexing/index.d.ts +9 -7
  193. package/dist/engine/pipeline/indexing/index.js +360 -121
  194. package/dist/engine/pipeline/indexing/index.js.map +1 -1
  195. package/dist/engine/pipeline/indexing/root-paths.js +6 -6
  196. package/dist/engine/pipeline/indexing/root-paths.js.map +1 -1
  197. package/dist/engine/pipeline/indexing/scanner/index.d.ts +6 -1
  198. package/dist/engine/pipeline/indexing/scanner/index.js +233 -29
  199. package/dist/engine/pipeline/indexing/scanner/index.js.map +1 -1
  200. package/dist/engine/pipeline/search/index.d.ts +6 -6
  201. package/dist/engine/pipeline/search/index.js +8 -10
  202. package/dist/engine/pipeline/search/index.js.map +1 -1
  203. package/dist/engine/service/index.d.ts +3 -2
  204. package/dist/engine/service/index.js +1 -1
  205. package/dist/engine/service/index.js.map +1 -1
  206. package/dist/engine/service/root.d.ts +13 -12
  207. package/dist/engine/service/root.js +35 -24
  208. package/dist/engine/service/root.js.map +1 -1
  209. package/dist/engine/service/structure-enrichment.js +12 -14
  210. package/dist/engine/service/structure-enrichment.js.map +1 -1
  211. package/dist/engine/service/types.d.ts +32 -37
  212. package/dist/engine/service/workspace-index.d.ts +24 -0
  213. package/dist/engine/service/workspace-index.js +151 -0
  214. package/dist/engine/service/workspace-index.js.map +1 -0
  215. package/dist/engine/service/zvec-grep.d.ts +12 -1
  216. package/dist/engine/service/zvec-grep.js +677 -486
  217. package/dist/engine/service/zvec-grep.js.map +1 -1
  218. package/dist/engine/storage/index.d.ts +8 -4
  219. package/dist/engine/storage/index.js +1 -1
  220. package/dist/engine/storage/index.js.map +1 -1
  221. package/dist/engine/storage/zvec.d.ts +10 -33
  222. package/dist/engine/storage/zvec.js +95 -38
  223. package/dist/engine/storage/zvec.js.map +1 -1
  224. package/dist/engine/types.d.ts +15 -23
  225. package/dist/engine/types.js +1 -1
  226. package/dist/engine/types.js.map +1 -1
  227. package/dist/engine/utils/daemon-lease.d.ts +17 -0
  228. package/dist/engine/utils/daemon-lease.js +175 -0
  229. package/dist/engine/utils/daemon-lease.js.map +1 -0
  230. package/dist/engine/utils/file-selection.js +38 -1
  231. package/dist/engine/utils/file-selection.js.map +1 -1
  232. package/dist/engine/utils/lock.js +1 -1
  233. package/dist/engine/utils/lock.js.map +1 -1
  234. package/dist/index-progress.d.ts +10 -0
  235. package/dist/index-progress.js +159 -0
  236. package/dist/index-progress.js.map +1 -0
  237. package/dist/index.d.ts +4 -4
  238. package/dist/index.js +1 -1
  239. package/dist/index.js.map +1 -1
  240. package/dist/mcp/http-transport.d.ts +27 -0
  241. package/dist/mcp/http-transport.js +182 -0
  242. package/dist/mcp/http-transport.js.map +1 -0
  243. package/dist/mcp/input-normalization.d.ts +38 -0
  244. package/dist/mcp/input-normalization.js +95 -0
  245. package/dist/mcp/input-normalization.js.map +1 -0
  246. package/dist/mcp/progress-heartbeat.d.ts +17 -0
  247. package/dist/mcp/progress-heartbeat.js +46 -0
  248. package/dist/mcp/progress-heartbeat.js.map +1 -0
  249. package/dist/mcp/request-metadata.d.ts +2 -0
  250. package/dist/mcp/request-metadata.js +11 -0
  251. package/dist/mcp/request-metadata.js.map +1 -0
  252. package/dist/mcp/request-state.d.ts +40 -0
  253. package/dist/mcp/request-state.js +210 -0
  254. package/dist/mcp/request-state.js.map +1 -0
  255. package/dist/mcp/result-format.d.ts +13 -0
  256. package/dist/mcp/result-format.js +75 -0
  257. package/dist/mcp/result-format.js.map +1 -0
  258. package/dist/mcp/schemas.d.ts +430 -0
  259. package/dist/mcp/schemas.js +447 -0
  260. package/dist/mcp/schemas.js.map +1 -0
  261. package/dist/mcp/tools.d.ts +150 -0
  262. package/dist/mcp/tools.js +448 -0
  263. package/dist/mcp/tools.js.map +1 -0
  264. package/dist/mcp/toolset.d.ts +5 -0
  265. package/dist/mcp/toolset.js +12 -0
  266. package/dist/mcp/toolset.js.map +1 -0
  267. package/dist/observability/trace-context.d.ts +11 -0
  268. package/dist/observability/trace-context.js +138 -0
  269. package/dist/observability/trace-context.js.map +1 -0
  270. package/docs/01-agents.md +111 -0
  271. package/docs/02-cli.md +229 -0
  272. package/docs/03-mcp.md +167 -0
  273. package/docs/04-pipeline.md +218 -0
  274. package/docs/05-architecture.md +86 -0
  275. package/docs/06-server.md +210 -0
  276. package/docs/07-embedding.md +179 -0
  277. package/docs/08-roadmap.md +85 -0
  278. package/docs/README.md +53 -0
  279. package/package.json +17 -8
  280. package/skills/zvec-grep/SKILL.md +43 -133
  281. package/skills/zvec-grep/agents/openai.yaml +2 -2
  282. package/skills/zvec-grep/references/cli-fallback.md +85 -0
  283. package/dist/cli/mcp.d.ts +0 -2
  284. package/dist/cli/mcp.js +0 -354
  285. package/dist/cli/mcp.js.map +0 -1
  286. package/dist/engine/collection/index.d.ts +0 -55
  287. package/dist/engine/collection/index.js +0 -710
  288. package/dist/engine/collection/index.js.map +0 -1
  289. package/dist/engine/errors/details.d.ts +0 -6
  290. package/dist/engine/errors/details.js.map +0 -1
  291. package/dist/engine/errors/index.js +0 -16
  292. package/dist/engine/errors/index.js.map +0 -1
  293. package/dist/engine/extraction/tree-sitter/grammar.js.map +0 -1
  294. package/dist/engine/extraction/tree-sitter/nodes.js.map +0 -1
  295. package/dist/engine/extraction/tree-sitter/parser.js.map +0 -1
  296. package/dist/engine/files/file-type.js.map +0 -1
  297. package/dist/engine/models/providers/index.d.ts +0 -2
  298. package/dist/engine/models/providers/index.js +0 -3
  299. package/dist/engine/models/providers/index.js.map +0 -1
  300. package/dist/engine/models/providers/llama-cpp/embedding.js.map +0 -1
  301. package/dist/engine/models/providers/llama-cpp/index.d.ts +0 -1
  302. package/dist/engine/models/providers/llama-cpp/index.js +0 -2
  303. package/dist/engine/models/providers/llama-cpp/index.js.map +0 -1
  304. package/dist/engine/models/providers/qwen/embedding.d.ts +0 -42
  305. package/dist/engine/models/providers/qwen/embedding.js.map +0 -1
  306. package/dist/engine/models/providers/qwen/index.d.ts +0 -1
  307. package/dist/engine/models/providers/qwen/index.js +0 -2
  308. package/dist/engine/models/providers/qwen/index.js.map +0 -1
  309. package/dist/engine/models/types.d.ts +0 -30
  310. /package/dist/engine/extraction/{tree-sitter → code/tree-sitter}/grammar.d.ts +0 -0
  311. /package/dist/engine/extraction/{tree-sitter → code/tree-sitter}/grammar.js +0 -0
  312. /package/dist/engine/extraction/{tree-sitter → code/tree-sitter}/nodes.d.ts +0 -0
  313. /package/dist/engine/extraction/{tree-sitter → code/tree-sitter}/nodes.js +0 -0
  314. /package/dist/engine/extraction/{tree-sitter → code/tree-sitter}/parser.d.ts +0 -0
  315. /package/dist/engine/extraction/{tree-sitter → code/tree-sitter}/parser.js +0 -0
  316. /package/dist/engine/{models → extraction}/types.js +0 -0
  317. /package/dist/engine/{files/file-type.js → file-type.js} +0 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"trace-context.js","sourceRoot":"","sources":["../../src/observability/trace-context.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,111 @@
1
+ # Agent integrations
2
+
3
+ [Documentation](./README.md) · [Agents](./01-agents.md) ·
4
+ [CLI](./02-cli.md) · [MCP](./03-mcp.md) · [Pipeline](./04-pipeline.md) ·
5
+ [Architecture](./05-architecture.md) · [Server](./06-server.md) ·
6
+ [Embedding](./07-embedding.md) · [Roadmap](./08-roadmap.md)
7
+
8
+ `zg install` connects zvec-grep to supported agents through the local MCP
9
+ server. After that, the agent can use zg for conceptual discovery and exact
10
+ search without switching between unrelated search tools.
11
+
12
+ ## Supported agents
13
+
14
+ | Agent | Target | Managed configuration |
15
+ | --- | --- | --- |
16
+ | Codex | `codex` | `~/.codex/config.toml` and `~/.codex/AGENTS.md` |
17
+ | Claude Code | `claude` | `~/.claude.json`, `~/.claude/settings.json`, and `~/.claude/CLAUDE.md` |
18
+ | OpenCode | `opencode` | `~/.config/opencode/opencode.json` and the adjacent `AGENTS.md` |
19
+ | Cursor | `cursor` | `~/.cursor/mcp.json` |
20
+
21
+ The standard environment overrides used by each agent are respected, including
22
+ `CODEX_HOME`, `CLAUDE_CONFIG_DIR`, `OPENCODE_CONFIG`, and
23
+ `CURSOR_CONFIG_DIR`.
24
+
25
+ ## Install an integration
26
+
27
+ Run the guided installer to select from detected agents:
28
+
29
+ ```bash
30
+ zg install
31
+ ```
32
+
33
+ For scripts or repeatable setup, select targets explicitly:
34
+
35
+ ```bash
36
+ zg install --target codex --yes
37
+ zg install --target claude --target cursor --yes
38
+ zg install --target all --yes
39
+ ```
40
+
41
+ The installer:
42
+
43
+ 1. adds a managed `zvec_grep` MCP entry;
44
+ 2. adds search guidance where the agent supports it;
45
+ 3. adds local MCP tool approval for Codex and Claude Code;
46
+ 4. starts the local zvec-grep server when possible.
47
+
48
+ The [Server guide](./06-server.md) explains when the daemon is useful and how its
49
+ lifecycle differs from Direct execution.
50
+
51
+ Managed text blocks use `ZVEC_GREP_START` and `ZVEC_GREP_END` markers. Existing
52
+ content outside those blocks is preserved. If an unmanaged `zvec_grep` entry
53
+ already exists, inspect it before using `--force` to replace it.
54
+
55
+ Restart the selected agent, or open a new session, after installation.
56
+
57
+ ## How the agent searches
58
+
59
+ The default MCP surface gives the agent one indexed search tool and leaves exact
60
+ lexical lookup to the agent's native tools:
61
+
62
+ | Intent | Tool |
63
+ | --- | --- |
64
+ | Locating known words, symbols, filenames, paths, or regexes is sufficient | Native grep or rg |
65
+ | The answer requires conceptual discovery, architecture, lifecycle, or cross-component flow | `zvec_grep_search` |
66
+ | Exact symbols are known but the answer spans components, files, or stages | `zvec_grep_search`, then native grep or rg |
67
+
68
+ `zvec_grep_search` needs an existing index. Managed rg remains available through
69
+ `zg query --rg` and through the optional `full` MCP toolset. See the
70
+ [Pipeline guide](./04-pipeline.md) for the distinction and the
71
+ [MCP guide](./03-mcp.md) for tool inputs.
72
+
73
+ ## Verify the setup
74
+
75
+ Check the server first:
76
+
77
+ ```bash
78
+ zg server status --check-ready
79
+ ```
80
+
81
+ Then start a new agent session and confirm that `zvec_grep_search` is available.
82
+ If the MCP connection is unavailable, the same indexed search and optional
83
+ managed-rg route remain available from the shell:
84
+
85
+ ```bash
86
+ zg query "where theme preferences are restored"
87
+ zg query --rg -F "loadTheme" src
88
+ ```
89
+
90
+ ## Permissions and remote data
91
+
92
+ The server listens on loopback and has no token by default. See
93
+ [Server authentication](./06-server.md#bearer-authentication) when a local Bearer
94
+ token is required.
95
+
96
+ MCP tool approval only authorizes calls to the local server. It does **not**
97
+ authorize sending query text or workspace content to a remote Embedding
98
+ provider. Remote Embedding asks separately on first use; see
99
+ [Embedding models](./07-embedding.md#remote-embedding-and-authorization).
100
+
101
+ ## Remove an integration
102
+
103
+ Use the same target names to remove only zvec-grep-managed entries:
104
+
105
+ ```bash
106
+ zg uninstall --target codex --yes
107
+ zg uninstall --target all --yes
108
+ ```
109
+
110
+ Restart the agent or open a new session to apply the change. Uninstalling an
111
+ agent integration does not delete repository indexes or the npm package.
package/docs/02-cli.md ADDED
@@ -0,0 +1,229 @@
1
+ # CLI guide
2
+
3
+ [Documentation](./README.md) · [Agents](./01-agents.md) ·
4
+ [CLI](./02-cli.md) · [MCP](./03-mcp.md) · [Pipeline](./04-pipeline.md) ·
5
+ [Architecture](./05-architecture.md) · [Server](./06-server.md) ·
6
+ [Embedding](./07-embedding.md) · [Roadmap](./08-roadmap.md)
7
+
8
+ The `zg` command is the human and shell interface to the same local search
9
+ layer used by agents. This page groups the main commands and options; use the
10
+ installed CLI for version-specific help:
11
+
12
+ ```bash
13
+ zg help
14
+ zg help query
15
+ zg help environment
16
+ zg <command> --help
17
+ ```
18
+
19
+ ## Command overview
20
+
21
+ | Command | Purpose |
22
+ | --- | --- |
23
+ | `query` | Search an index or run managed ripgrep |
24
+ | `index` | Build, update, rebuild, or drop a Workspace index |
25
+ | `status` | Inspect Workspace and index state |
26
+ | `install` / `uninstall` | Manage agent integrations |
27
+ | `config` | Configure provider credentials and model defaults |
28
+ | `auth` | Manage Remote Embedding authorization |
29
+ | `server` | Manage the shared MCP server |
30
+ | `help` / `version` | Show help or the installed version |
31
+
32
+ ## `zg query`
33
+
34
+ ```text
35
+ zg query <query> [options]
36
+ zg query --hybrid <query> --fts <query> --vector <query> [--fuse]
37
+ zg query --rg [rg-options] <pattern> [path...]
38
+ ```
39
+
40
+ Search routes:
41
+
42
+ | Option | Meaning |
43
+ | --- | --- |
44
+ | positional query | Hybrid lexical and vector retrieval |
45
+ | `--hybrid <query>` | Add an explicit hybrid query group |
46
+ | `--fts <query>` | Add a ranked lexical query group |
47
+ | `--vector <query>` | Add a semantic-only query group |
48
+ | `--fuse` | Combine all groups into one ranked plan |
49
+ | `--rg` | Run exhaustive managed ripgrep without an index |
50
+
51
+ Result controls:
52
+
53
+ | Option | Meaning |
54
+ | --- | --- |
55
+ | `--limit <n>` | Maximum returned items per group |
56
+ | `--human` | Terminal-oriented output with full previews by default |
57
+ | `--preview none\|short\|full` | Indexed source preview size |
58
+ | `--refresh background\|wait\|off` | Index refresh policy |
59
+ | `--mode direct\|server\|auto` | Execution transport |
60
+ | `--debug` | Print diagnostics to stderr |
61
+ | `--trace` | Add per-hit indexed search trace |
62
+ | `--prefer-symbol` | Prefer an exact indexed symbol |
63
+ | `--symbol-type <type>` | Restrict results to a symbol type |
64
+ | `--modified-after <time>` | Search files modified after a time |
65
+ | `--modified-before <time>` | Search files modified before a time |
66
+
67
+ Valid symbol types are `module`, `class`, `interface`, `function`, `value`, and
68
+ `alias`.
69
+
70
+ Common scope options for indexed search are `-g/--glob`, `--iglob`, `-t/--type`,
71
+ and `-T/--type-not`. Managed rg additionally supports common ripgrep matching,
72
+ context, discovery, encoding, and regex-engine flags.
73
+
74
+ Examples:
75
+
76
+ ```bash
77
+ zg query "theme preference persistence on startup"
78
+ zg query --fts "loadTheme" -g "src/**" -t ts
79
+ zg query --vector "where user preferences are restored" --limit 5
80
+ zg query --human "plugin lifecycle" --preview full
81
+ zg query --rg -i -C 2 -g "*.ts" "dark mode" src
82
+ ```
83
+
84
+ See [Retrieval pipeline](./04-pipeline.md#3-query-through-one-search-layer) for
85
+ route selection and freshness behavior.
86
+
87
+ ## `zg index`
88
+
89
+ ```text
90
+ zg index [root] [options]
91
+ zg index [root] --rebuild [options]
92
+ zg index [root] --drop [--yes]
93
+ ```
94
+
95
+ Core options:
96
+
97
+ | Option | Meaning |
98
+ | --- | --- |
99
+ | `--embedding <model>` | Model for a new or rebuilt index |
100
+ | `--rebuild` | Recreate an existing index |
101
+ | `--drop` | Permanently remove the Workspace index |
102
+ | `--yes` | Confirm `--drop` without a prompt |
103
+ | `--reset-paths` | Replace stored file-selection settings |
104
+ | `--mode direct\|server\|auto` | Execution transport |
105
+ | `--api-key <key>` | One-command provider credential |
106
+ | `--endpoint <url>` | Remote provider endpoint |
107
+ | `--model-cache <path>` | Local model cache directory |
108
+ | `--device <device>` | `auto`, `cpu`, `metal`, `vulkan`, or `cuda` |
109
+ | `--embedding-concurrency <n>` | Concurrent Embedding tasks |
110
+ | `--allow-remote` | Authorize Remote Embedding for this command |
111
+
112
+ File discovery accepts `-g/--glob`, `--iglob`, `-t/--type`, `-T/--type-not`,
113
+ `--hidden`, `--no-ignore`, `--ignore-file`, `--max-depth`, `--max-filesize`, and
114
+ `-L/--follow`.
115
+
116
+ Examples:
117
+
118
+ ```bash
119
+ zg index --embedding local/potion-code-16m-v2
120
+ zg index
121
+ zg index --rebuild --embedding local/jina-embeddings-v2-base-code
122
+ zg index --drop --yes
123
+ ```
124
+
125
+ ## `zg status`
126
+
127
+ ```text
128
+ zg status [root] [--mode direct|server|auto] [--check-ready]
129
+ ```
130
+
131
+ Status includes the selected root, index policy, stored schema and paths, file
132
+ counts, refresh state, and a suggested next action. `--check-ready` preserves
133
+ normal output and exits non-zero unless the index is ready, which is useful in
134
+ scripts.
135
+
136
+ ## `zg install` and `zg uninstall`
137
+
138
+ ```text
139
+ zg install [--target codex|claude|opencode|cursor|all|auto] [--yes] [--force]
140
+ zg uninstall [--target codex|claude|opencode|cursor|all|auto] [--yes]
141
+ ```
142
+
143
+ `--target` is repeatable. `zg install` also accepts:
144
+
145
+ | Option | Meaning |
146
+ | --- | --- |
147
+ | `--mcp-tool-timeout <seconds>` | Codex/OpenCode MCP timeout; default 600 seconds |
148
+ | `--mcp-token-env <name>` | Environment variable containing the server token |
149
+ | `--force` | Replace a conflicting unmanaged `zvec_grep` entry |
150
+
151
+ See [Agent integrations](./01-agents.md) before using `--force`.
152
+
153
+ ## `zg config`
154
+
155
+ ```text
156
+ zg config provider set <provider> --api-key <key>
157
+ zg config model set <model> [--endpoint <url> | --device <device>] [--default]
158
+ ```
159
+
160
+ Examples:
161
+
162
+ ```bash
163
+ zg config provider set qwen --api-key "$DASHSCOPE_API_KEY"
164
+ zg config model set qwen/text-embedding-v4 --default
165
+ zg config model set local/embeddinggemma-300m --device metal
166
+ ```
167
+
168
+ Global configuration is stored in `~/.zvec-grep/config.json`. Existing indexes
169
+ continue to use their stored model until explicitly rebuilt.
170
+
171
+ ## `zg auth`
172
+
173
+ ```text
174
+ zg auth grant [root] --capability embedding --scope workspace [--embedding <model>]
175
+ zg auth status [root]
176
+ zg auth revoke [root]
177
+ ```
178
+
179
+ Workspace grants are stored under `.zvec-grep/authorization.json` and shared by
180
+ the CLI and MCP server. `--allow-remote` is the non-persistent alternative for
181
+ one `query` or `index` command. `--embedding` selects the Remote Embedding model
182
+ to authorize; it does not run embedding. It may be omitted when the model can be
183
+ resolved from the existing Workspace index, `ZVEC_GREP_EMBEDDING`, or the global
184
+ default, in that order.
185
+
186
+ ## `zg server`
187
+
188
+ ```text
189
+ zg server on [--listen 127.0.0.1:7999] [--token-file <path>] [--mcp-toolset agent|full]
190
+ zg server off [--token-file <path>]
191
+ zg server status [--check-ready]
192
+ zg server run [--listen 127.0.0.1:7999] [--token-file <path>] [--mcp-toolset agent|full]
193
+ ```
194
+
195
+ `on` starts the background daemon; `run` keeps it in the foreground. The server
196
+ only accepts loopback listen addresses. The default public endpoint is
197
+ `http://127.0.0.1:7999/mcp` with the `agent` toolset.
198
+
199
+ See [Server and execution modes](./06-server.md) for mode selection, lifecycle,
200
+ refresh, authentication, and logs. See [MCP](./03-mcp.md) for the tool contract.
201
+
202
+ ## Environment variables
203
+
204
+ | Variable | Purpose |
205
+ | --- | --- |
206
+ | `ZVEC_GREP_HOME` | Override zvec-grep state directory |
207
+ | `ZVEC_GREP_MODE` | Default `direct`, `server`, or `auto` transport |
208
+ | `ZVEC_GREP_SERVER_URL` | Override the MCP server URL used by clients |
209
+ | `ZVEC_GREP_SERVER_TOKEN` | Server/client Bearer token |
210
+ | `ZVEC_GREP_SERVER_TOKEN_FILE` | File containing the server/client token |
211
+ | `ZVEC_GREP_MCP_TOOLSET` | Default `agent` or `full` MCP surface |
212
+ | `ZVEC_GREP_EMBEDDING` | Default model for new indexes |
213
+ | `ZVEC_GREP_API_KEY` | Embedding provider API key |
214
+ | `ZVEC_GREP_ENDPOINT` | Remote Embedding endpoint |
215
+ | `ZVEC_GREP_MODEL_CACHE` | Local model cache directory |
216
+ | `ZVEC_GREP_DEVICE` | Local model device |
217
+ | `DASHSCOPE_API_KEY` | Qwen API-key fallback after `ZVEC_GREP_API_KEY` |
218
+ | `QWEN_API_KEY` | Qwen API-key fallback after `DASHSCOPE_API_KEY` |
219
+
220
+ Run `zg help environment` for advanced variables, agent integration paths,
221
+ scope, and detailed precedence. A new index selects its model in this order:
222
+ explicit `--embedding`, `ZVEC_GREP_EMBEDDING`, then the global default. Existing
223
+ indexes continue to use their stored model unless `--embedding` and `--rebuild`
224
+ explicitly change it.
225
+
226
+ Embedding runtime values such as endpoint and device retain this order: explicit
227
+ command option, Workspace snapshot, global configuration, then environment.
228
+ `zg index` forwards its `ZVEC_GREP_EMBEDDING` value in server and auto modes;
229
+ direct MCP calls use the environment inherited when the daemon started.
package/docs/03-mcp.md ADDED
@@ -0,0 +1,167 @@
1
+ # MCP guide
2
+
3
+ [Documentation](./README.md) · [Agents](./01-agents.md) ·
4
+ [CLI](./02-cli.md) · [MCP](./03-mcp.md) · [Pipeline](./04-pipeline.md) ·
5
+ [Architecture](./05-architecture.md) · [Server](./06-server.md) ·
6
+ [Embedding](./07-embedding.md) · [Roadmap](./08-roadmap.md)
7
+
8
+ zvec-grep exposes its local search layer over Streamable HTTP MCP. The normal
9
+ endpoint is:
10
+
11
+ ```text
12
+ http://127.0.0.1:7999/mcp
13
+ ```
14
+
15
+ Run `zg install` to configure a supported agent automatically. Use this page
16
+ when building another MCP client or when you need the exact boundary between
17
+ the default and compatibility toolsets. See
18
+ [Server and execution modes](./06-server.md) for lifecycle, mode selection,
19
+ refresh, authentication, and logs.
20
+
21
+ ## Default agent toolset
22
+
23
+ The default `agent` toolset intentionally exposes only search:
24
+
25
+ | Tool | Use it when | Index required |
26
+ | --- | --- | --- |
27
+ | `zvec_grep_search` | The answer requires conceptual discovery, architecture, lifecycle, or cross-component flow | Yes |
28
+
29
+ Agents use native grep or rg when locating an exact word, symbol, filename, path,
30
+ source fragment, or regex is sufficient. For mixed tasks, start with
31
+ `zvec_grep_search`, then use native grep or rg for focused follow-up.
32
+
33
+ Every repository tool input uses an absolute `root` visible to the daemon.
34
+
35
+ ## `zvec_grep_search`
36
+
37
+ The indexed tool supports hybrid, lexical, and vector query groups. At least one
38
+ of `query`, `queries`, `fts`, or `vector` is required.
39
+
40
+ Minimal conceptual search:
41
+
42
+ ```json
43
+ {
44
+ "root": "/absolute/path/to/repository",
45
+ "query": "theme preference persistence on startup",
46
+ "limit": 5
47
+ }
48
+ ```
49
+
50
+ Explicit query routes and scope:
51
+
52
+ ```json
53
+ {
54
+ "root": "/absolute/path/to/repository",
55
+ "query": "authentication flow",
56
+ "fts": ["AuthService", "ForbiddenError"],
57
+ "globs": ["src/**", "!src/generated/**"],
58
+ "fileTypes": ["ts"],
59
+ "fuse": true,
60
+ "limit": 10
61
+ }
62
+ ```
63
+
64
+ Important inputs:
65
+
66
+ | Input | Meaning |
67
+ | --- | --- |
68
+ | `query` | One hybrid natural-language or exact query |
69
+ | `queries` | One or more hybrid query groups |
70
+ | `fts` | Ranked lexical query groups |
71
+ | `vector` | Semantic-only query groups |
72
+ | `fuse` | Combine every group into one ranked plan |
73
+ | `limit` | Maximum items per group, up to 50 |
74
+ | `globs` / `insensitiveGlobs` | Ordered path rules |
75
+ | `fileTypes` / `excludedFileTypes` | ripgrep file-type filters |
76
+ | `symbolTypes` / `preferSymbol` | Indexed symbol controls |
77
+ | `modifiedAfter` / `modifiedBefore` | File modification-time bounds |
78
+ | `freshness` | `eventual` or `wait_for_fresh` |
79
+ | `autoUpdate` | Allow an eventual search to schedule a background update |
80
+
81
+ The response is compact text designed for agent context. It begins with index
82
+ state and then groups ranked results by file:
83
+
84
+ ```text
85
+ freshness: fresh
86
+ src/theme/use-theme.ts:12-36
87
+ matched: 16-18
88
+ source:
89
+ 15 export function useTheme() {
90
+ 16 const [theme, setTheme] = useState("light");
91
+ 17 useEffect(() => saveTheme(theme), [theme]);
92
+ ```
93
+
94
+ When `freshness` is `possibly_stale`, the response may also include current
95
+ indexing state. Agents can use sufficient results immediately rather than
96
+ running a status preflight.
97
+
98
+ Remote models may cause the tool to request explicit Remote Embedding
99
+ authorization. See
100
+ [Embedding models](./07-embedding.md#remote-embedding-and-authorization).
101
+
102
+ ## `zvec_grep_rg`
103
+
104
+ This tool is retained in the optional `full` MCP toolset and is not registered
105
+ in the default `agent` toolset. The CLI equivalent, `zg query --rg`, remains
106
+ available without changing the MCP toolset.
107
+
108
+ Pass the ripgrep command you would otherwise run. The command is parsed into
109
+ arguments and is never executed by a shell:
110
+
111
+ ```json
112
+ {
113
+ "root": "/absolute/path/to/repository",
114
+ "command": "rg -n -F 'loadTheme' -g '*.ts' src"
115
+ }
116
+ ```
117
+
118
+ The tool is exhaustive by default. Append `| head -N` only when intentionally
119
+ requesting bounded output:
120
+
121
+ ```json
122
+ {
123
+ "root": "/absolute/path/to/repository",
124
+ "command": "rg -n 'TODO|FIXME' src | head -50"
125
+ }
126
+ ```
127
+
128
+ Scope broad searches with command paths, `-g/--glob`, or `-t/--type`. Managed rg
129
+ supports common ripgrep matching, context, type, glob, ignore, encoding, and
130
+ regex-engine options while preserving zvec-grep's compact result format.
131
+
132
+ ## Full compatibility toolset
133
+
134
+ The CLI owns index lifecycle and diagnostics, so agents normally do not need
135
+ administrative MCP tools. Clients that require them can restart the server with:
136
+
137
+ ```bash
138
+ zg server off
139
+ zg server on --mcp-toolset full
140
+ ```
141
+
142
+ The `full` toolset exposes six tools:
143
+
144
+ | Tool | Purpose |
145
+ | --- | --- |
146
+ | `zvec_grep_search` | Indexed retrieval |
147
+ | `zvec_grep_rg` | No-index exhaustive search |
148
+ | `zvec_grep_index` | Create, update, rebuild, or explicitly drop an index |
149
+ | `zvec_grep_index_drop` | Explicitly delete an index |
150
+ | `zvec_grep_index_status` | Inspect persisted and active index state |
151
+ | `zvec_grep_server_status` | Inspect daemon, queue, runtime, and model-pool state |
152
+
153
+ `zvec_grep_index` requires an absolute root. Its `wait` input defaults to
154
+ `false`, returning a background job identifier. Poll `zvec_grep_index_status`
155
+ only when completion, progress, failure diagnosis, or explicit monitoring is
156
+ needed. An agent must never silently create, rebuild, or delete a persistent
157
+ index.
158
+
159
+ Set `ZVEC_GREP_MCP_TOOLSET=full` as an environment fallback. An explicit
160
+ `--mcp-toolset` flag takes precedence.
161
+
162
+ ## Transport security
163
+
164
+ The MCP endpoint is loopback-only. Optional Bearer authentication protects the
165
+ local Server but remains independent of Embedding provider credentials and
166
+ Remote Embedding authorization. Configuration examples are in
167
+ [Server authentication](./06-server.md#bearer-authentication).