@zvec/zvec-grep 0.1.4 → 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 (356) hide show
  1. package/README.md +86 -162
  2. package/README_CN.md +80 -162
  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 +3 -0
  28. package/dist/cli/args.js +749 -201
  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.d.ts +3 -1
  34. package/dist/cli/commands.js +529 -180
  35. package/dist/cli/commands.js.map +1 -1
  36. package/dist/cli/errors.js +7 -6
  37. package/dist/cli/errors.js.map +1 -1
  38. package/dist/cli/format/context.d.ts +1 -0
  39. package/dist/cli/format/context.js +270 -70
  40. package/dist/cli/format/context.js.map +1 -1
  41. package/dist/cli/format/debug.js +14 -16
  42. package/dist/cli/format/debug.js.map +1 -1
  43. package/dist/cli/format/highlight.js.map +1 -1
  44. package/dist/cli/format/progress.d.ts +4 -0
  45. package/dist/cli/format/progress.js +222 -44
  46. package/dist/cli/format/progress.js.map +1 -1
  47. package/dist/cli/format/range.js.map +1 -1
  48. package/dist/cli/format/status.d.ts +77 -6
  49. package/dist/cli/format/status.js +343 -114
  50. package/dist/cli/format/status.js.map +1 -1
  51. package/dist/cli/help.d.ts +1 -1
  52. package/dist/cli/help.js +368 -84
  53. package/dist/cli/help.js.map +1 -1
  54. package/dist/cli/index.js +4 -4
  55. package/dist/cli/index.js.map +1 -1
  56. package/dist/cli/install.d.ts +4 -0
  57. package/dist/cli/install.js +845 -0
  58. package/dist/cli/install.js.map +1 -0
  59. package/dist/cli/managed-rg.d.ts +10 -0
  60. package/dist/cli/managed-rg.js +329 -0
  61. package/dist/cli/managed-rg.js.map +1 -0
  62. package/dist/cli/types.d.ts +40 -13
  63. package/dist/cli/types.js.map +1 -1
  64. package/dist/cli/version.js +3 -1
  65. package/dist/cli/version.js.map +1 -1
  66. package/dist/client/daemon-client.d.ts +19 -0
  67. package/dist/client/daemon-client.js +180 -0
  68. package/dist/client/daemon-client.js.map +1 -0
  69. package/dist/client/mode-router.d.ts +9 -0
  70. package/dist/client/mode-router.js +28 -0
  71. package/dist/client/mode-router.js.map +1 -0
  72. package/dist/client/search-policy.d.ts +11 -0
  73. package/dist/client/search-policy.js +15 -0
  74. package/dist/client/search-policy.js.map +1 -0
  75. package/dist/daemon/backend.d.ts +76 -0
  76. package/dist/daemon/backend.js +1049 -0
  77. package/dist/daemon/backend.js.map +1 -0
  78. package/dist/daemon/change-set.d.ts +25 -0
  79. package/dist/daemon/change-set.js +101 -0
  80. package/dist/daemon/change-set.js.map +1 -0
  81. package/dist/daemon/config.d.ts +24 -0
  82. package/dist/daemon/config.js +88 -0
  83. package/dist/daemon/config.js.map +1 -0
  84. package/dist/daemon/errors.d.ts +5 -0
  85. package/dist/daemon/errors.js +11 -0
  86. package/dist/daemon/errors.js.map +1 -0
  87. package/dist/daemon/http-server.d.ts +30 -0
  88. package/dist/daemon/http-server.js +287 -0
  89. package/dist/daemon/http-server.js.map +1 -0
  90. package/dist/daemon/index-coordinator.d.ts +23 -0
  91. package/dist/daemon/index-coordinator.js +68 -0
  92. package/dist/daemon/index-coordinator.js.map +1 -0
  93. package/dist/daemon/job-scheduler.d.ts +70 -0
  94. package/dist/daemon/job-scheduler.js +366 -0
  95. package/dist/daemon/job-scheduler.js.map +1 -0
  96. package/dist/daemon/logger.d.ts +9 -0
  97. package/dist/daemon/logger.js +53 -0
  98. package/dist/daemon/logger.js.map +1 -0
  99. package/dist/daemon/model-pool.d.ts +45 -0
  100. package/dist/daemon/model-pool.js +187 -0
  101. package/dist/daemon/model-pool.js.map +1 -0
  102. package/dist/daemon/root-lease.d.ts +14 -0
  103. package/dist/daemon/root-lease.js +188 -0
  104. package/dist/daemon/root-lease.js.map +1 -0
  105. package/dist/daemon/root-runtime.d.ts +78 -0
  106. package/dist/daemon/root-runtime.js +333 -0
  107. package/dist/daemon/root-runtime.js.map +1 -0
  108. package/dist/daemon/runtime-manager.d.ts +45 -0
  109. package/dist/daemon/runtime-manager.js +243 -0
  110. package/dist/daemon/runtime-manager.js.map +1 -0
  111. package/dist/daemon/runtime.d.ts +12 -0
  112. package/dist/daemon/runtime.js +102 -0
  113. package/dist/daemon/runtime.js.map +1 -0
  114. package/dist/daemon/server-controller.d.ts +39 -0
  115. package/dist/daemon/server-controller.js +203 -0
  116. package/dist/daemon/server-controller.js.map +1 -0
  117. package/dist/daemon/watch-manager.d.ts +50 -0
  118. package/dist/daemon/watch-manager.js +293 -0
  119. package/dist/daemon/watch-manager.js.map +1 -0
  120. package/dist/daemon/workspace-read-session-cache.d.ts +31 -0
  121. package/dist/daemon/workspace-read-session-cache.js +115 -0
  122. package/dist/daemon/workspace-read-session-cache.js.map +1 -0
  123. package/dist/engine/config.d.ts +50 -0
  124. package/dist/engine/config.js +321 -0
  125. package/dist/engine/config.js.map +1 -0
  126. package/dist/engine/{errors/index.d.ts → errors.d.ts} +6 -1
  127. package/dist/engine/{errors/details.js → errors.js} +17 -4
  128. package/dist/engine/errors.js.map +1 -0
  129. package/dist/engine/extraction/code/adapter.d.ts +1 -1
  130. package/dist/engine/extraction/code/adapter.js.map +1 -1
  131. package/dist/engine/extraction/code/extractor.d.ts +5 -11
  132. package/dist/engine/extraction/code/extractor.js +184 -109
  133. package/dist/engine/extraction/code/extractor.js.map +1 -1
  134. package/dist/engine/extraction/code/families/c-family.js +13 -7
  135. package/dist/engine/extraction/code/families/c-family.js.map +1 -1
  136. package/dist/engine/extraction/code/families/js-ts.d.ts +1 -1
  137. package/dist/engine/extraction/code/families/js-ts.js +24 -18
  138. package/dist/engine/extraction/code/families/js-ts.js.map +1 -1
  139. package/dist/engine/extraction/code/families/metadata.d.ts +1 -1
  140. package/dist/engine/extraction/code/families/metadata.js +11 -8
  141. package/dist/engine/extraction/code/families/metadata.js.map +1 -1
  142. package/dist/engine/extraction/code/families/name-field.js +5 -5
  143. package/dist/engine/extraction/code/families/name-field.js.map +1 -1
  144. package/dist/engine/extraction/code/languages/c.js +1 -4
  145. package/dist/engine/extraction/code/languages/c.js.map +1 -1
  146. package/dist/engine/extraction/code/languages/cpp.js.map +1 -1
  147. package/dist/engine/extraction/code/languages/go.js +1 -3
  148. package/dist/engine/extraction/code/languages/go.js.map +1 -1
  149. package/dist/engine/extraction/code/languages/java.js.map +1 -1
  150. package/dist/engine/extraction/code/languages/javascript.js +1 -3
  151. package/dist/engine/extraction/code/languages/javascript.js.map +1 -1
  152. package/dist/engine/extraction/code/languages/python.js +5 -6
  153. package/dist/engine/extraction/code/languages/python.js.map +1 -1
  154. package/dist/engine/extraction/code/languages/rust.js +1 -5
  155. package/dist/engine/extraction/code/languages/rust.js.map +1 -1
  156. package/dist/engine/extraction/code/languages/typescript.js.map +1 -1
  157. package/dist/engine/extraction/code/tree-sitter/grammar.js.map +1 -0
  158. package/dist/engine/extraction/{tree-sitter → code/tree-sitter}/nodes.js +2 -1
  159. package/dist/engine/extraction/code/tree-sitter/nodes.js.map +1 -0
  160. package/dist/engine/extraction/code/tree-sitter/parser.js.map +1 -0
  161. package/dist/engine/extraction/ids.js.map +1 -1
  162. package/dist/engine/extraction/image/extractor.d.ts +5 -0
  163. package/dist/engine/extraction/image/extractor.js +35 -0
  164. package/dist/engine/extraction/image/extractor.js.map +1 -0
  165. package/dist/engine/extraction/index.d.ts +3 -44
  166. package/dist/engine/extraction/index.js +1 -280
  167. package/dist/engine/extraction/index.js.map +1 -1
  168. package/dist/engine/extraction/markdown/extractor.d.ts +5 -11
  169. package/dist/engine/extraction/markdown/extractor.js +37 -16
  170. package/dist/engine/extraction/markdown/extractor.js.map +1 -1
  171. package/dist/engine/extraction/runtime.d.ts +4 -0
  172. package/dist/engine/extraction/runtime.js +26 -0
  173. package/dist/engine/extraction/runtime.js.map +1 -0
  174. package/dist/engine/extraction/source.d.ts +18 -0
  175. package/dist/engine/extraction/source.js +22 -0
  176. package/dist/engine/extraction/source.js.map +1 -0
  177. package/dist/engine/extraction/text/extractor.d.ts +7 -0
  178. package/dist/engine/extraction/text/extractor.js +168 -0
  179. package/dist/engine/extraction/text/extractor.js.map +1 -0
  180. package/dist/engine/extraction/types.d.ts +4 -0
  181. package/dist/engine/{models → extraction}/types.js.map +1 -1
  182. package/dist/engine/{files/file-type.d.ts → file-type.d.ts} +1 -1
  183. package/dist/engine/file-type.js.map +1 -0
  184. package/dist/engine/index-status.d.ts +9 -0
  185. package/dist/engine/index-status.js +38 -0
  186. package/dist/engine/index-status.js.map +1 -0
  187. package/dist/engine/manifest.d.ts +12 -0
  188. package/dist/engine/manifest.js +120 -0
  189. package/dist/engine/manifest.js.map +1 -0
  190. package/dist/engine/models/{providers/llama-cpp/embedding.d.ts → backends/llama-cpp.d.ts} +25 -20
  191. package/dist/engine/models/{providers/llama-cpp/embedding.js → backends/llama-cpp.js} +165 -113
  192. package/dist/engine/models/backends/llama-cpp.js.map +1 -0
  193. package/dist/engine/models/backends/model2vec.d.ts +57 -0
  194. package/dist/engine/models/backends/model2vec.js +332 -0
  195. package/dist/engine/models/backends/model2vec.js.map +1 -0
  196. package/dist/engine/models/backends/qwen.d.ts +44 -0
  197. package/dist/engine/models/{providers/qwen/embedding.js → backends/qwen.js} +168 -102
  198. package/dist/engine/models/backends/qwen.js.map +1 -0
  199. package/dist/engine/models/backends/transformers-js.d.ts +87 -0
  200. package/dist/engine/models/backends/transformers-js.js +316 -0
  201. package/dist/engine/models/backends/transformers-js.js.map +1 -0
  202. package/dist/engine/models/catalog.d.ts +188 -23
  203. package/dist/engine/models/catalog.js +172 -41
  204. package/dist/engine/models/catalog.js.map +1 -1
  205. package/dist/engine/models/download-progress.d.ts +15 -0
  206. package/dist/engine/models/download-progress.js +48 -0
  207. package/dist/engine/models/download-progress.js.map +1 -0
  208. package/dist/engine/models/embeddings.d.ts +58 -18
  209. package/dist/engine/models/embeddings.js +53 -29
  210. package/dist/engine/models/embeddings.js.map +1 -1
  211. package/dist/engine/models/factory.d.ts +2 -5
  212. package/dist/engine/models/factory.js +41 -56
  213. package/dist/engine/models/factory.js.map +1 -1
  214. package/dist/engine/models/index.d.ts +4 -6
  215. package/dist/engine/models/index.js +4 -4
  216. package/dist/engine/models/index.js.map +1 -1
  217. package/dist/engine/models/ranking.d.ts +7 -3
  218. package/dist/engine/models/resolution.d.ts +8 -0
  219. package/dist/engine/models/resolution.js +22 -0
  220. package/dist/engine/models/resolution.js.map +1 -0
  221. package/dist/engine/pipeline/indexing/index.d.ts +9 -7
  222. package/dist/engine/pipeline/indexing/index.js +399 -147
  223. package/dist/engine/pipeline/indexing/index.js.map +1 -1
  224. package/dist/engine/pipeline/indexing/root-paths.js +16 -19
  225. package/dist/engine/pipeline/indexing/root-paths.js.map +1 -1
  226. package/dist/engine/pipeline/indexing/scanner/index.d.ts +6 -1
  227. package/dist/engine/pipeline/indexing/scanner/index.js +318 -66
  228. package/dist/engine/pipeline/indexing/scanner/index.js.map +1 -1
  229. package/dist/engine/pipeline/search/index.d.ts +6 -6
  230. package/dist/engine/pipeline/search/index.js +76 -34
  231. package/dist/engine/pipeline/search/index.js.map +1 -1
  232. package/dist/engine/service/index.d.ts +3 -2
  233. package/dist/engine/service/index.js +1 -1
  234. package/dist/engine/service/index.js.map +1 -1
  235. package/dist/engine/service/lexical.d.ts +14 -15
  236. package/dist/engine/service/lexical.js +78 -119
  237. package/dist/engine/service/lexical.js.map +1 -1
  238. package/dist/engine/service/root.d.ts +13 -12
  239. package/dist/engine/service/root.js +35 -24
  240. package/dist/engine/service/root.js.map +1 -1
  241. package/dist/engine/service/structure-enrichment.js +29 -25
  242. package/dist/engine/service/structure-enrichment.js.map +1 -1
  243. package/dist/engine/service/types.d.ts +61 -35
  244. package/dist/engine/service/workspace-index.d.ts +24 -0
  245. package/dist/engine/service/workspace-index.js +151 -0
  246. package/dist/engine/service/workspace-index.js.map +1 -0
  247. package/dist/engine/service/zvec-grep.d.ts +12 -1
  248. package/dist/engine/service/zvec-grep.js +878 -544
  249. package/dist/engine/service/zvec-grep.js.map +1 -1
  250. package/dist/engine/storage/index.d.ts +8 -4
  251. package/dist/engine/storage/index.js +1 -1
  252. package/dist/engine/storage/index.js.map +1 -1
  253. package/dist/engine/storage/zvec.d.ts +10 -33
  254. package/dist/engine/storage/zvec.js +110 -49
  255. package/dist/engine/storage/zvec.js.map +1 -1
  256. package/dist/engine/types.d.ts +29 -23
  257. package/dist/engine/types.js +1 -1
  258. package/dist/engine/types.js.map +1 -1
  259. package/dist/engine/utils/daemon-lease.d.ts +17 -0
  260. package/dist/engine/utils/daemon-lease.js +175 -0
  261. package/dist/engine/utils/daemon-lease.js.map +1 -0
  262. package/dist/engine/utils/file-selection.d.ts +10 -0
  263. package/dist/engine/utils/file-selection.js +157 -0
  264. package/dist/engine/utils/file-selection.js.map +1 -0
  265. package/dist/engine/utils/glob.d.ts +3 -0
  266. package/dist/engine/utils/glob.js +116 -18
  267. package/dist/engine/utils/glob.js.map +1 -1
  268. package/dist/engine/utils/hash.js.map +1 -1
  269. package/dist/engine/utils/json.d.ts +6 -2
  270. package/dist/engine/utils/json.js +50 -12
  271. package/dist/engine/utils/json.js.map +1 -1
  272. package/dist/engine/utils/lock.js +7 -7
  273. package/dist/engine/utils/lock.js.map +1 -1
  274. package/dist/engine/utils/path.js +2 -2
  275. package/dist/engine/utils/path.js.map +1 -1
  276. package/dist/engine/utils/timing.js.map +1 -1
  277. package/dist/index-progress.d.ts +10 -0
  278. package/dist/index-progress.js +159 -0
  279. package/dist/index-progress.js.map +1 -0
  280. package/dist/index.d.ts +6 -6
  281. package/dist/index.js +3 -3
  282. package/dist/index.js.map +1 -1
  283. package/dist/mcp/http-transport.d.ts +27 -0
  284. package/dist/mcp/http-transport.js +182 -0
  285. package/dist/mcp/http-transport.js.map +1 -0
  286. package/dist/mcp/input-normalization.d.ts +38 -0
  287. package/dist/mcp/input-normalization.js +95 -0
  288. package/dist/mcp/input-normalization.js.map +1 -0
  289. package/dist/mcp/progress-heartbeat.d.ts +17 -0
  290. package/dist/mcp/progress-heartbeat.js +46 -0
  291. package/dist/mcp/progress-heartbeat.js.map +1 -0
  292. package/dist/mcp/request-metadata.d.ts +2 -0
  293. package/dist/mcp/request-metadata.js +11 -0
  294. package/dist/mcp/request-metadata.js.map +1 -0
  295. package/dist/mcp/request-state.d.ts +40 -0
  296. package/dist/mcp/request-state.js +210 -0
  297. package/dist/mcp/request-state.js.map +1 -0
  298. package/dist/mcp/result-format.d.ts +13 -0
  299. package/dist/mcp/result-format.js +75 -0
  300. package/dist/mcp/result-format.js.map +1 -0
  301. package/dist/mcp/schemas.d.ts +430 -0
  302. package/dist/mcp/schemas.js +447 -0
  303. package/dist/mcp/schemas.js.map +1 -0
  304. package/dist/mcp/tools.d.ts +150 -0
  305. package/dist/mcp/tools.js +448 -0
  306. package/dist/mcp/tools.js.map +1 -0
  307. package/dist/mcp/toolset.d.ts +5 -0
  308. package/dist/mcp/toolset.js +12 -0
  309. package/dist/mcp/toolset.js.map +1 -0
  310. package/dist/observability/trace-context.d.ts +11 -0
  311. package/dist/observability/trace-context.js +138 -0
  312. package/dist/observability/trace-context.js.map +1 -0
  313. package/docs/01-agents.md +111 -0
  314. package/docs/02-cli.md +229 -0
  315. package/docs/03-mcp.md +167 -0
  316. package/docs/04-pipeline.md +218 -0
  317. package/docs/05-architecture.md +86 -0
  318. package/docs/06-server.md +210 -0
  319. package/docs/07-embedding.md +179 -0
  320. package/docs/08-roadmap.md +85 -0
  321. package/docs/README.md +53 -0
  322. package/package.json +43 -7
  323. package/skills/zvec-grep/SKILL.md +43 -123
  324. package/skills/zvec-grep/agents/openai.yaml +2 -2
  325. package/skills/zvec-grep/references/cli-fallback.md +85 -0
  326. package/dist/engine/collection/index.d.ts +0 -55
  327. package/dist/engine/collection/index.js +0 -710
  328. package/dist/engine/collection/index.js.map +0 -1
  329. package/dist/engine/errors/details.d.ts +0 -6
  330. package/dist/engine/errors/details.js.map +0 -1
  331. package/dist/engine/errors/index.js +0 -16
  332. package/dist/engine/errors/index.js.map +0 -1
  333. package/dist/engine/extraction/tree-sitter/grammar.js.map +0 -1
  334. package/dist/engine/extraction/tree-sitter/nodes.js.map +0 -1
  335. package/dist/engine/extraction/tree-sitter/parser.js.map +0 -1
  336. package/dist/engine/files/file-type.js.map +0 -1
  337. package/dist/engine/models/providers/index.d.ts +0 -2
  338. package/dist/engine/models/providers/index.js +0 -3
  339. package/dist/engine/models/providers/index.js.map +0 -1
  340. package/dist/engine/models/providers/llama-cpp/embedding.js.map +0 -1
  341. package/dist/engine/models/providers/llama-cpp/index.d.ts +0 -1
  342. package/dist/engine/models/providers/llama-cpp/index.js +0 -2
  343. package/dist/engine/models/providers/llama-cpp/index.js.map +0 -1
  344. package/dist/engine/models/providers/qwen/embedding.d.ts +0 -42
  345. package/dist/engine/models/providers/qwen/embedding.js.map +0 -1
  346. package/dist/engine/models/providers/qwen/index.d.ts +0 -1
  347. package/dist/engine/models/providers/qwen/index.js +0 -2
  348. package/dist/engine/models/providers/qwen/index.js.map +0 -1
  349. package/dist/engine/models/types.d.ts +0 -30
  350. /package/dist/engine/extraction/{tree-sitter → code/tree-sitter}/grammar.d.ts +0 -0
  351. /package/dist/engine/extraction/{tree-sitter → code/tree-sitter}/grammar.js +0 -0
  352. /package/dist/engine/extraction/{tree-sitter → code/tree-sitter}/nodes.d.ts +0 -0
  353. /package/dist/engine/extraction/{tree-sitter → code/tree-sitter}/parser.d.ts +0 -0
  354. /package/dist/engine/extraction/{tree-sitter → code/tree-sitter}/parser.js +0 -0
  355. /package/dist/engine/{models → extraction}/types.js +0 -0
  356. /package/dist/engine/{files/file-type.js → file-type.js} +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"args.js","sourceRoot":"","sources":["../../src/cli/args.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"args.js","sourceRoot":"","sources":["../../src/cli/args.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,21 @@
1
+ import { type CreateZvecGrepOptions, type EmbeddingModelInfo, type ZvecGrepInfoResult } from "../index.js";
2
+ import { type EmbeddingRuntimeConfig } from "../engine/config.js";
3
+ import { RemoteEmbeddingAuthorizationStore, withRemoteEmbeddingOperationPermit, type RemoteEmbeddingAuthorizationPlan, type RemoteEmbeddingOperationPermit } from "../authorization/index.js";
4
+ import type { WorkspaceIndexEmbeddingSchema } from "../engine/types.js";
5
+ import type { ParsedArgs, CliOptions } from "./types.js";
6
+ export declare function runAuth(parsed: ParsedArgs): Promise<void>;
7
+ export declare function authorizationStore(options: CliOptions): RemoteEmbeddingAuthorizationStore;
8
+ export declare function authorizeCliPlan(plan: RemoteEmbeddingAuthorizationPlan, options: CliOptions, alternative?: "local_search"): Promise<{
9
+ authorization?: RemoteEmbeddingOperationPermit;
10
+ alternative?: "local_search";
11
+ }>;
12
+ export declare function resolveAuthorizationSchema(reference: string | undefined, existing: WorkspaceIndexEmbeddingSchema | null | undefined): Pick<WorkspaceIndexEmbeddingSchema, "provider" | "model"> | undefined;
13
+ export declare function embeddingModelInfo(schema: Pick<WorkspaceIndexEmbeddingSchema, "provider" | "model">, options: CreateZvecGrepOptions, workspaceRuntime?: EmbeddingRuntimeConfig): Promise<EmbeddingModelInfo>;
14
+ export declare function assertEmbeddingModelCompatible(existing: WorkspaceIndexEmbeddingSchema | null | undefined, requested: Pick<WorkspaceIndexEmbeddingSchema, "provider" | "model"> | undefined, rebuild: boolean): void;
15
+ export declare function configuredEmbeddingReference(options: CliOptions, existing?: WorkspaceIndexEmbeddingSchema | null): string | undefined;
16
+ export declare function requireEmbeddingModelCatalogEntry(reference: string): import("../engine/models/catalog.js").EmbeddingCatalogEntry;
17
+ export declare function unsupportedRemoteEmbeddingProvider(reference: string, message?: string): Error;
18
+ export declare function workspaceRuntimeFromInfo(info: ZvecGrepInfoResult): EmbeddingRuntimeConfig;
19
+ export declare function assertRequestedEndpointCompatible(info: ZvecGrepInfoResult, workspaceRuntime: EmbeddingRuntimeConfig, requestedEndpoint: string | undefined, rebuild: boolean): void;
20
+ export { withRemoteEmbeddingOperationPermit };
21
+ export type { RemoteEmbeddingAuthorizationPlan, RemoteEmbeddingOperationPermit, };
@@ -0,0 +1,212 @@
1
+ import { resolve } from "node:path";
2
+ import { createInterface } from "node:readline/promises";
3
+ import { createZvecGrep, } from "../index.js";
4
+ import { readGlobalConfig, } from "../engine/config.js";
5
+ import { getEmbeddingModelCatalogEntry, listEmbeddingModels, resolveEmbeddingReference, } from "../engine/models/index.js";
6
+ import { readWorkspaceManifest } from "../engine/manifest.js";
7
+ import { findNearestWorkspace, workspaceIndexLocation, } from "../engine/service/root.js";
8
+ import { createEmbeddingModelForIdentity } from "../engine/service/index.js";
9
+ import { RemoteEmbeddingAuthorizationManager, RemoteEmbeddingAuthorizationStore, createRemoteEmbeddingTarget, formatRemoteEmbeddingAuthorizationPrompt, remoteEmbeddingDisclosureData, withRemoteEmbeddingOperationPermit, } from "../authorization/index.js";
10
+ import { printRemoteEmbeddingAuthorizationStatus } from "./format/status.js";
11
+ import { createServiceOptions } from "./commands.js";
12
+ export async function runAuth(parsed) {
13
+ const requestedRoot = resolve(parsed.positionals[0] ?? process.cwd());
14
+ const root = findNearestWorkspace(requestedRoot)?.root ?? requestedRoot;
15
+ const store = authorizationStore(parsed.options);
16
+ if (parsed.options.authAction === "status") {
17
+ const status = await store.status(root);
18
+ printRemoteEmbeddingAuthorizationStatus(root, status, parsed.options);
19
+ return;
20
+ }
21
+ if (parsed.options.authAction === "revoke") {
22
+ const revoked = await store.revokeAll(root);
23
+ console.log(revoked > 0
24
+ ? `Revoked ${revoked} Remote Embedding Workspace grant(s).`
25
+ : "No Remote Embedding Workspace grants found.");
26
+ return;
27
+ }
28
+ if (parsed.options.authAction !== "grant") {
29
+ throw new Error("zg auth requires grant, status, or revoke");
30
+ }
31
+ const serviceOptions = createServiceOptions(parsed.options, root);
32
+ const service = await createZvecGrep(serviceOptions);
33
+ try {
34
+ const info = await service.info({ root });
35
+ const schema = resolveAuthorizationSchema(configuredEmbeddingReference(parsed.options, info.workspaceIndex?.embedding), info.workspaceIndex?.embedding);
36
+ if (!schema) {
37
+ throw new Error("No embedding model is available. Pass --embedding <remote/model> or build an index first.");
38
+ }
39
+ if (schema.provider === "local") {
40
+ throw new Error("Local embedding models do not require authorization.");
41
+ }
42
+ const modelInfo = await embeddingModelInfo(schema, serviceOptions, workspaceRuntimeFromInfo(info));
43
+ const endpoint = modelInfo.endpoint;
44
+ if (endpoint === undefined) {
45
+ throw new Error(`Embedding model ${modelInfo.reference} did not provide a remote endpoint.`);
46
+ }
47
+ const target = await createRemoteEmbeddingTarget({
48
+ roots: info.workspaceIndex?.rootPaths.map((item) => item.absolutePath) ?? [root],
49
+ provider: modelInfo.provider,
50
+ model: modelInfo.name,
51
+ endpoint,
52
+ });
53
+ const manager = new RemoteEmbeddingAuthorizationManager(store);
54
+ const plan = {
55
+ operation: "query_and_index",
56
+ target,
57
+ disclosure: { queryText: true, workspaceContent: "full" },
58
+ reason: "index_create",
59
+ grantPath: store.grantPath(target),
60
+ };
61
+ await manager.grant(plan, "workspace");
62
+ printRemoteEmbeddingAuthorizationStatus(root, await store.status(root), parsed.options);
63
+ }
64
+ finally {
65
+ await service.close();
66
+ }
67
+ }
68
+ export function authorizationStore(options) {
69
+ return new RemoteEmbeddingAuthorizationStore({
70
+ signingKeyPath: createServiceOptions(options, undefined)
71
+ .authorizationSigningKeyPath,
72
+ });
73
+ }
74
+ export async function authorizeCliPlan(plan, options, alternative) {
75
+ const manager = new RemoteEmbeddingAuthorizationManager(authorizationStore(options));
76
+ const existing = await manager.existingWorkspacePermit(plan);
77
+ if (existing)
78
+ return { authorization: existing };
79
+ if (options.allowRemote) {
80
+ return {
81
+ authorization: await manager.grant(plan, "once"),
82
+ };
83
+ }
84
+ if (!process.stdin.isTTY || !process.stdout.isTTY) {
85
+ throw new Error([
86
+ "Remote Embedding authorization is required.",
87
+ "Re-run with --allow-remote, or grant Workspace authorization:",
88
+ " zg auth grant --capability embedding --scope workspace",
89
+ ].join("\n"));
90
+ }
91
+ console.error(formatRemoteEmbeddingAuthorizationPrompt({
92
+ workspaceRoots: plan.target.workspaceRoots,
93
+ provider: plan.target.provider,
94
+ model: plan.target.model,
95
+ endpoint: plan.target.endpoint,
96
+ data: remoteEmbeddingDisclosureData(plan.disclosure),
97
+ }));
98
+ console.error("");
99
+ console.error("1. Allow once");
100
+ console.error("2. Allow for this workspace");
101
+ if (alternative === "local_search")
102
+ console.error("3. Use FTS only");
103
+ const cancelChoice = alternative ? 4 : 3;
104
+ console.error(`${cancelChoice}. Cancel`);
105
+ const readline = createInterface({
106
+ input: process.stdin,
107
+ output: process.stderr,
108
+ });
109
+ try {
110
+ const answer = (await readline.question(`Choose [1-${cancelChoice}]: `)).trim();
111
+ if (answer === "1") {
112
+ return { authorization: await manager.grant(plan, "once") };
113
+ }
114
+ if (answer === "2") {
115
+ return { authorization: await manager.grant(plan, "workspace") };
116
+ }
117
+ if (answer === "3" && alternative) {
118
+ return { alternative };
119
+ }
120
+ throw new Error("Remote Embedding authorization was declined. No remote data was sent.");
121
+ }
122
+ finally {
123
+ readline.close();
124
+ }
125
+ }
126
+ export function resolveAuthorizationSchema(reference, existing) {
127
+ if (!reference)
128
+ return existing ?? undefined;
129
+ const separator = reference.indexOf("/");
130
+ if (separator <= 0 || separator === reference.length - 1) {
131
+ throw new Error(`Invalid embedding reference: ${reference}`);
132
+ }
133
+ const provider = reference.slice(0, separator);
134
+ const model = reference.slice(separator + 1);
135
+ return {
136
+ provider,
137
+ model,
138
+ };
139
+ }
140
+ export async function embeddingModelInfo(schema, options, workspaceRuntime = {}) {
141
+ const model = createEmbeddingModelForIdentity({ provider: schema.provider, name: schema.model }, options, workspaceRuntime);
142
+ try {
143
+ return model.info;
144
+ }
145
+ finally {
146
+ await model.dispose();
147
+ }
148
+ }
149
+ export function assertEmbeddingModelCompatible(existing, requested, rebuild) {
150
+ if (!existing || !requested || rebuild)
151
+ return;
152
+ if (existing.provider === requested.provider &&
153
+ existing.model === requested.model) {
154
+ return;
155
+ }
156
+ throw new Error([
157
+ "Embedding model does not match the existing index.",
158
+ `Existing model: ${existing.provider}/${existing.model}`,
159
+ `Requested model: ${requested.provider}/${requested.model}`,
160
+ "Re-run with --rebuild to change the embedding model.",
161
+ ].join("\n"));
162
+ }
163
+ export function configuredEmbeddingReference(options, existing) {
164
+ return resolveEmbeddingReference({
165
+ explicit: options.embedding,
166
+ existing: existing ? `${existing.provider}/${existing.model}` : undefined,
167
+ globalDefault: readGlobalConfig().defaults?.embedding,
168
+ });
169
+ }
170
+ export function requireEmbeddingModelCatalogEntry(reference) {
171
+ const entry = getEmbeddingModelCatalogEntry(reference);
172
+ if (entry) {
173
+ return entry;
174
+ }
175
+ throw new Error([
176
+ `Unsupported embedding model: ${reference}`,
177
+ "Supported embedding models:",
178
+ ...[...listEmbeddingModels()]
179
+ .sort((left, right) => left.provider.localeCompare(right.provider))
180
+ .map((model) => ` ${model.reference}`),
181
+ ].join("\n"));
182
+ }
183
+ export function unsupportedRemoteEmbeddingProvider(reference, message = "Unsupported remote embedding provider") {
184
+ const providers = [
185
+ ...new Set(listEmbeddingModels()
186
+ .map((model) => model.provider)
187
+ .filter((provider) => provider !== "local")),
188
+ ];
189
+ return new Error([
190
+ `${message}: ${reference}`,
191
+ "Supported remote embedding providers:",
192
+ ...providers.map((provider) => ` ${provider}`),
193
+ ].join("\n"));
194
+ }
195
+ export function workspaceRuntimeFromInfo(info) {
196
+ const workspaceIndex = info.workspaceIndex;
197
+ if (!workspaceIndex)
198
+ return {};
199
+ const location = workspaceIndexLocation(info.root);
200
+ return readWorkspaceManifest(location.home)?.embeddingRuntime ?? {};
201
+ }
202
+ export function assertRequestedEndpointCompatible(info, workspaceRuntime, requestedEndpoint, rebuild) {
203
+ if (rebuild ||
204
+ !info.workspaceIndex?.embedding ||
205
+ requestedEndpoint === undefined ||
206
+ workspaceRuntime.endpoint === requestedEndpoint) {
207
+ return;
208
+ }
209
+ throw new Error("The requested embedding endpoint differs from the workspace snapshot. Run zg index --endpoint <url> --rebuild first.");
210
+ }
211
+ export { withRemoteEmbeddingOperationPermit };
212
+ //# sourceMappingURL=auth.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"auth.js","sourceRoot":"","sources":["../../src/cli/auth.ts"],"names":[],"mappings":"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"}
@@ -1,2 +1,4 @@
1
- import type { ParsedArgs } from "./types.js";
1
+ import { type CreateZvecGrepOptions } from "../index.js";
2
+ import type { ParsedArgs, CliOptions } from "./types.js";
2
3
  export declare function runParsedCommand(parsed: ParsedArgs): Promise<void>;
4
+ export declare function createServiceOptions(options: CliOptions, root: string | undefined): CreateZvecGrepOptions;