@zvec/zvec-grep 0.1.0

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 (201) hide show
  1. package/LICENSE +201 -0
  2. package/README.md +222 -0
  3. package/README_CN.md +222 -0
  4. package/dist/cli/args.d.ts +2 -0
  5. package/dist/cli/args.js +611 -0
  6. package/dist/cli/args.js.map +1 -0
  7. package/dist/cli/commands.d.ts +2 -0
  8. package/dist/cli/commands.js +270 -0
  9. package/dist/cli/commands.js.map +1 -0
  10. package/dist/cli/errors.d.ts +6 -0
  11. package/dist/cli/errors.js +97 -0
  12. package/dist/cli/errors.js.map +1 -0
  13. package/dist/cli/format/context.d.ts +5 -0
  14. package/dist/cli/format/context.js +490 -0
  15. package/dist/cli/format/context.js.map +1 -0
  16. package/dist/cli/format/debug.d.ts +4 -0
  17. package/dist/cli/format/debug.js +42 -0
  18. package/dist/cli/format/debug.js.map +1 -0
  19. package/dist/cli/format/highlight.d.ts +3 -0
  20. package/dist/cli/format/highlight.js +106 -0
  21. package/dist/cli/format/highlight.js.map +1 -0
  22. package/dist/cli/format/progress.d.ts +9 -0
  23. package/dist/cli/format/progress.js +92 -0
  24. package/dist/cli/format/progress.js.map +1 -0
  25. package/dist/cli/format/range.d.ts +3 -0
  26. package/dist/cli/format/range.js +24 -0
  27. package/dist/cli/format/range.js.map +1 -0
  28. package/dist/cli/format/status.d.ts +7 -0
  29. package/dist/cli/format/status.js +200 -0
  30. package/dist/cli/format/status.js.map +1 -0
  31. package/dist/cli/help.d.ts +1 -0
  32. package/dist/cli/help.js +88 -0
  33. package/dist/cli/help.js.map +1 -0
  34. package/dist/cli/index.d.ts +2 -0
  35. package/dist/cli/index.js +32 -0
  36. package/dist/cli/index.js.map +1 -0
  37. package/dist/cli/types.d.ts +56 -0
  38. package/dist/cli/types.js +10 -0
  39. package/dist/cli/types.js.map +1 -0
  40. package/dist/cli/version.d.ts +1 -0
  41. package/dist/cli/version.js +11 -0
  42. package/dist/cli/version.js.map +1 -0
  43. package/dist/engine/collection/index.d.ts +50 -0
  44. package/dist/engine/collection/index.js +388 -0
  45. package/dist/engine/collection/index.js.map +1 -0
  46. package/dist/engine/errors/details.d.ts +6 -0
  47. package/dist/engine/errors/details.js +27 -0
  48. package/dist/engine/errors/details.js.map +1 -0
  49. package/dist/engine/errors/index.d.ts +14 -0
  50. package/dist/engine/errors/index.js +16 -0
  51. package/dist/engine/errors/index.js.map +1 -0
  52. package/dist/engine/models/catalog.d.ts +47 -0
  53. package/dist/engine/models/catalog.js +68 -0
  54. package/dist/engine/models/catalog.js.map +1 -0
  55. package/dist/engine/models/embeddings.d.ts +25 -0
  56. package/dist/engine/models/embeddings.js +100 -0
  57. package/dist/engine/models/embeddings.js.map +1 -0
  58. package/dist/engine/models/factory.d.ts +5 -0
  59. package/dist/engine/models/factory.js +66 -0
  60. package/dist/engine/models/factory.js.map +1 -0
  61. package/dist/engine/models/index.d.ts +6 -0
  62. package/dist/engine/models/index.js +5 -0
  63. package/dist/engine/models/index.js.map +1 -0
  64. package/dist/engine/models/providers/index.d.ts +2 -0
  65. package/dist/engine/models/providers/index.js +3 -0
  66. package/dist/engine/models/providers/index.js.map +1 -0
  67. package/dist/engine/models/providers/llama-cpp/embedding.d.ts +94 -0
  68. package/dist/engine/models/providers/llama-cpp/embedding.js +459 -0
  69. package/dist/engine/models/providers/llama-cpp/embedding.js.map +1 -0
  70. package/dist/engine/models/providers/llama-cpp/index.d.ts +1 -0
  71. package/dist/engine/models/providers/llama-cpp/index.js +2 -0
  72. package/dist/engine/models/providers/llama-cpp/index.js.map +1 -0
  73. package/dist/engine/models/providers/qwen/embedding.d.ts +38 -0
  74. package/dist/engine/models/providers/qwen/embedding.js +322 -0
  75. package/dist/engine/models/providers/qwen/embedding.js.map +1 -0
  76. package/dist/engine/models/providers/qwen/index.d.ts +1 -0
  77. package/dist/engine/models/providers/qwen/index.js +2 -0
  78. package/dist/engine/models/providers/qwen/index.js.map +1 -0
  79. package/dist/engine/models/ranking.d.ts +15 -0
  80. package/dist/engine/models/ranking.js +2 -0
  81. package/dist/engine/models/ranking.js.map +1 -0
  82. package/dist/engine/models/types.d.ts +30 -0
  83. package/dist/engine/models/types.js +2 -0
  84. package/dist/engine/models/types.js.map +1 -0
  85. package/dist/engine/pipeline/indexing/extractor/code/adapter.d.ts +19 -0
  86. package/dist/engine/pipeline/indexing/extractor/code/adapter.js +24 -0
  87. package/dist/engine/pipeline/indexing/extractor/code/adapter.js.map +1 -0
  88. package/dist/engine/pipeline/indexing/extractor/code/extractor.d.ts +14 -0
  89. package/dist/engine/pipeline/indexing/extractor/code/extractor.js +594 -0
  90. package/dist/engine/pipeline/indexing/extractor/code/extractor.js.map +1 -0
  91. package/dist/engine/pipeline/indexing/extractor/code/families/c-family.d.ts +2 -0
  92. package/dist/engine/pipeline/indexing/extractor/code/families/c-family.js +116 -0
  93. package/dist/engine/pipeline/indexing/extractor/code/families/c-family.js.map +1 -0
  94. package/dist/engine/pipeline/indexing/extractor/code/families/js-ts.d.ts +12 -0
  95. package/dist/engine/pipeline/indexing/extractor/code/families/js-ts.js +112 -0
  96. package/dist/engine/pipeline/indexing/extractor/code/families/js-ts.js.map +1 -0
  97. package/dist/engine/pipeline/indexing/extractor/code/families/metadata.d.ts +8 -0
  98. package/dist/engine/pipeline/indexing/extractor/code/families/metadata.js +83 -0
  99. package/dist/engine/pipeline/indexing/extractor/code/families/metadata.js.map +1 -0
  100. package/dist/engine/pipeline/indexing/extractor/code/families/name-field.d.ts +3 -0
  101. package/dist/engine/pipeline/indexing/extractor/code/families/name-field.js +22 -0
  102. package/dist/engine/pipeline/indexing/extractor/code/families/name-field.js.map +1 -0
  103. package/dist/engine/pipeline/indexing/extractor/code/languages/c.d.ts +1 -0
  104. package/dist/engine/pipeline/indexing/extractor/code/languages/c.js +15 -0
  105. package/dist/engine/pipeline/indexing/extractor/code/languages/c.js.map +1 -0
  106. package/dist/engine/pipeline/indexing/extractor/code/languages/cpp.d.ts +1 -0
  107. package/dist/engine/pipeline/indexing/extractor/code/languages/cpp.js +18 -0
  108. package/dist/engine/pipeline/indexing/extractor/code/languages/cpp.js.map +1 -0
  109. package/dist/engine/pipeline/indexing/extractor/code/languages/go.d.ts +2 -0
  110. package/dist/engine/pipeline/indexing/extractor/code/languages/go.js +72 -0
  111. package/dist/engine/pipeline/indexing/extractor/code/languages/go.js.map +1 -0
  112. package/dist/engine/pipeline/indexing/extractor/code/languages/java.d.ts +1 -0
  113. package/dist/engine/pipeline/indexing/extractor/code/languages/java.js +17 -0
  114. package/dist/engine/pipeline/indexing/extractor/code/languages/java.js.map +1 -0
  115. package/dist/engine/pipeline/indexing/extractor/code/languages/javascript.d.ts +2 -0
  116. package/dist/engine/pipeline/indexing/extractor/code/languages/javascript.js +25 -0
  117. package/dist/engine/pipeline/indexing/extractor/code/languages/javascript.js.map +1 -0
  118. package/dist/engine/pipeline/indexing/extractor/code/languages/python.d.ts +2 -0
  119. package/dist/engine/pipeline/indexing/extractor/code/languages/python.js +53 -0
  120. package/dist/engine/pipeline/indexing/extractor/code/languages/python.js.map +1 -0
  121. package/dist/engine/pipeline/indexing/extractor/code/languages/rust.d.ts +2 -0
  122. package/dist/engine/pipeline/indexing/extractor/code/languages/rust.js +29 -0
  123. package/dist/engine/pipeline/indexing/extractor/code/languages/rust.js.map +1 -0
  124. package/dist/engine/pipeline/indexing/extractor/code/languages/typescript.d.ts +2 -0
  125. package/dist/engine/pipeline/indexing/extractor/code/languages/typescript.js +37 -0
  126. package/dist/engine/pipeline/indexing/extractor/code/languages/typescript.js.map +1 -0
  127. package/dist/engine/pipeline/indexing/extractor/index.d.ts +44 -0
  128. package/dist/engine/pipeline/indexing/extractor/index.js +281 -0
  129. package/dist/engine/pipeline/indexing/extractor/index.js.map +1 -0
  130. package/dist/engine/pipeline/indexing/extractor/markdown/extractor.d.ts +13 -0
  131. package/dist/engine/pipeline/indexing/extractor/markdown/extractor.js +339 -0
  132. package/dist/engine/pipeline/indexing/extractor/markdown/extractor.js.map +1 -0
  133. package/dist/engine/pipeline/indexing/extractor/tree-sitter/grammar.d.ts +4 -0
  134. package/dist/engine/pipeline/indexing/extractor/tree-sitter/grammar.js +49 -0
  135. package/dist/engine/pipeline/indexing/extractor/tree-sitter/grammar.js.map +1 -0
  136. package/dist/engine/pipeline/indexing/extractor/tree-sitter/nodes.d.ts +3 -0
  137. package/dist/engine/pipeline/indexing/extractor/tree-sitter/nodes.js +26 -0
  138. package/dist/engine/pipeline/indexing/extractor/tree-sitter/nodes.js.map +1 -0
  139. package/dist/engine/pipeline/indexing/extractor/tree-sitter/parser.d.ts +2 -0
  140. package/dist/engine/pipeline/indexing/extractor/tree-sitter/parser.js +31 -0
  141. package/dist/engine/pipeline/indexing/extractor/tree-sitter/parser.js.map +1 -0
  142. package/dist/engine/pipeline/indexing/ids.d.ts +1 -0
  143. package/dist/engine/pipeline/indexing/ids.js +5 -0
  144. package/dist/engine/pipeline/indexing/ids.js.map +1 -0
  145. package/dist/engine/pipeline/indexing/index.d.ts +12 -0
  146. package/dist/engine/pipeline/indexing/index.js +538 -0
  147. package/dist/engine/pipeline/indexing/index.js.map +1 -0
  148. package/dist/engine/pipeline/indexing/root-paths.d.ts +7 -0
  149. package/dist/engine/pipeline/indexing/root-paths.js +151 -0
  150. package/dist/engine/pipeline/indexing/root-paths.js.map +1 -0
  151. package/dist/engine/pipeline/indexing/scanner/index.d.ts +5 -0
  152. package/dist/engine/pipeline/indexing/scanner/index.js +504 -0
  153. package/dist/engine/pipeline/indexing/scanner/index.js.map +1 -0
  154. package/dist/engine/pipeline/search/index.d.ts +12 -0
  155. package/dist/engine/pipeline/search/index.js +761 -0
  156. package/dist/engine/pipeline/search/index.js.map +1 -0
  157. package/dist/engine/service/index.d.ts +2 -0
  158. package/dist/engine/service/index.js +2 -0
  159. package/dist/engine/service/index.js.map +1 -0
  160. package/dist/engine/service/lexical.d.ts +29 -0
  161. package/dist/engine/service/lexical.js +482 -0
  162. package/dist/engine/service/lexical.js.map +1 -0
  163. package/dist/engine/service/root.d.ts +15 -0
  164. package/dist/engine/service/root.js +44 -0
  165. package/dist/engine/service/root.js.map +1 -0
  166. package/dist/engine/service/types.d.ts +157 -0
  167. package/dist/engine/service/types.js +2 -0
  168. package/dist/engine/service/types.js.map +1 -0
  169. package/dist/engine/service/zvec-grep.d.ts +2 -0
  170. package/dist/engine/service/zvec-grep.js +935 -0
  171. package/dist/engine/service/zvec-grep.js.map +1 -0
  172. package/dist/engine/storage/index.d.ts +42 -0
  173. package/dist/engine/storage/index.js +2 -0
  174. package/dist/engine/storage/index.js.map +1 -0
  175. package/dist/engine/storage/zvec.d.ts +51 -0
  176. package/dist/engine/storage/zvec.js +706 -0
  177. package/dist/engine/storage/zvec.js.map +1 -0
  178. package/dist/engine/types.d.ts +266 -0
  179. package/dist/engine/types.js +14 -0
  180. package/dist/engine/types.js.map +1 -0
  181. package/dist/engine/utils/glob.d.ts +6 -0
  182. package/dist/engine/utils/glob.js +110 -0
  183. package/dist/engine/utils/glob.js.map +1 -0
  184. package/dist/engine/utils/hash.d.ts +2 -0
  185. package/dist/engine/utils/hash.js +8 -0
  186. package/dist/engine/utils/hash.js.map +1 -0
  187. package/dist/engine/utils/json.d.ts +4 -0
  188. package/dist/engine/utils/json.js +45 -0
  189. package/dist/engine/utils/json.js.map +1 -0
  190. package/dist/engine/utils/lock.d.ts +19 -0
  191. package/dist/engine/utils/lock.js +254 -0
  192. package/dist/engine/utils/lock.js.map +1 -0
  193. package/dist/engine/utils/path.d.ts +4 -0
  194. package/dist/engine/utils/path.js +18 -0
  195. package/dist/engine/utils/path.js.map +1 -0
  196. package/dist/index.d.ts +6 -0
  197. package/dist/index.js +4 -0
  198. package/dist/index.js.map +1 -0
  199. package/package.json +47 -0
  200. package/skills/zvec-grep/SKILL.md +141 -0
  201. package/skills/zvec-grep/agents/openai.yaml +4 -0
@@ -0,0 +1,611 @@
1
+ import { VALID_SYMBOL_TYPES } from "./types.js";
2
+ const RG_OPTIONS_WITH_VALUE = new Set([
3
+ "--encoding",
4
+ "--engine",
5
+ "--ignore-file",
6
+ "--max-depth",
7
+ "--type",
8
+ "--type-not",
9
+ ]);
10
+ const RG_OPTIONS_WITHOUT_VALUE = new Set([
11
+ "--auto-hybrid-regex",
12
+ "--case-sensitive",
13
+ "--glob-case-insensitive",
14
+ "--multiline",
15
+ "--multiline-dotall",
16
+ "--no-ignore",
17
+ "--no-ignore-dot",
18
+ "--no-ignore-files",
19
+ "--no-ignore-global",
20
+ "--no-ignore-parent",
21
+ "--no-ignore-vcs",
22
+ "--pcre2",
23
+ "--search-zip",
24
+ "--smart-case",
25
+ ]);
26
+ const MANAGED_RG_OUTPUT_OPTIONS = new Set([
27
+ "--count",
28
+ "--count-matches",
29
+ "--files",
30
+ "--files-with-matches",
31
+ "--files-without-match",
32
+ "--json",
33
+ "--only-matching",
34
+ "--replace",
35
+ "--vimgrep",
36
+ "-c",
37
+ "-l",
38
+ "-o",
39
+ ]);
40
+ export function parseArgs(args) {
41
+ const options = {};
42
+ const positionals = [];
43
+ for (let index = 0; index < args.length; index++) {
44
+ const arg = args[index];
45
+ if (arg === "--") {
46
+ positionals.push(...args.slice(index + 1));
47
+ break;
48
+ }
49
+ if (!arg.startsWith("-") || arg === "-") {
50
+ positionals.push(arg);
51
+ continue;
52
+ }
53
+ if (arg === "--help" || arg === "-h") {
54
+ options.help = true;
55
+ }
56
+ else if (arg === "--version" || arg === "-v") {
57
+ options.version = true;
58
+ }
59
+ else if (arg === "--init") {
60
+ options.init = true;
61
+ }
62
+ else if (arg === "--info") {
63
+ options.info = true;
64
+ }
65
+ else if (arg === "--collections") {
66
+ options.collections = true;
67
+ }
68
+ else if (arg === "--rg") {
69
+ options.rg = true;
70
+ }
71
+ else if (arg === "--debug") {
72
+ options.debug = true;
73
+ }
74
+ else if (arg === "--trace") {
75
+ options.trace = true;
76
+ }
77
+ else if (arg === "--human") {
78
+ options.human = true;
79
+ }
80
+ else if (isLongOptionWithValue(arg, "--preview")) {
81
+ options.preview = parsePreviewMode(valueFromLongOption(arg));
82
+ }
83
+ else if (arg === "--preview") {
84
+ options.preview = parsePreviewMode(readOptionValue(args, ++index, arg));
85
+ }
86
+ else if (arg === "--json") {
87
+ throw new Error("--json has been removed; use the default agent markdown output or --human");
88
+ }
89
+ else if (arg === "--no-color") {
90
+ options.color = "never";
91
+ }
92
+ else if (arg === "--rebuild") {
93
+ options.rebuild = true;
94
+ }
95
+ else if (arg === "--reset-paths") {
96
+ options.resetPaths = true;
97
+ }
98
+ else if (arg === "--no-fallback") {
99
+ options.noFallback = true;
100
+ }
101
+ else if (arg === "--no-auto-update") {
102
+ options.noAutoUpdate = true;
103
+ }
104
+ else if (arg === "--prefer-symbol") {
105
+ options.preferSymbol = true;
106
+ }
107
+ else if (arg === "--collection") {
108
+ options.collection = readOptionValue(args, ++index, arg);
109
+ }
110
+ else if (arg === "--home") {
111
+ options.home = readOptionValue(args, ++index, arg);
112
+ }
113
+ else if (arg === "--embedding") {
114
+ options.embedding = readOptionValue(args, ++index, arg);
115
+ }
116
+ else if (arg === "--model-cache") {
117
+ options.modelCacheDir = readOptionValue(args, ++index, arg);
118
+ }
119
+ else if (arg === "--gpu") {
120
+ options.llamaGpu = "auto";
121
+ }
122
+ else if (arg === "--no-gpu") {
123
+ options.llamaGpu = false;
124
+ }
125
+ else if (arg === "--llama-gpu") {
126
+ options.llamaGpu = parseLlamaGpu(readOptionValue(args, ++index, arg));
127
+ }
128
+ else if (arg === "--embedding-parallelism") {
129
+ options.embeddingParallelism = parsePositiveInteger(readOptionValue(args, ++index, arg), arg);
130
+ }
131
+ else if (arg === "--api-key") {
132
+ options.apiKey = readOptionValue(args, ++index, arg);
133
+ }
134
+ else if (arg === "--endpoint") {
135
+ options.endpoint = readOptionValue(args, ++index, arg);
136
+ }
137
+ else if (arg === "--limit") {
138
+ options.limit = parsePositiveInteger(readOptionValue(args, ++index, arg), arg);
139
+ }
140
+ else if (arg === "--embedding-concurrency") {
141
+ options.embeddingConcurrency = parsePositiveInteger(readOptionValue(args, ++index, arg), arg);
142
+ }
143
+ else if (arg === "--fts") {
144
+ const routeValues = readRouteOptionValues(args, index + 1, arg);
145
+ options.routes = appendRoutes(options.routes, "fts", routeValues.values);
146
+ index = routeValues.nextIndex - 1;
147
+ }
148
+ else if (arg === "--vector") {
149
+ const routeValues = readRouteOptionValues(args, index + 1, arg);
150
+ options.routes = appendRoutes(options.routes, "vector", routeValues.values);
151
+ index = routeValues.nextIndex - 1;
152
+ }
153
+ else if (arg === "--color") {
154
+ options.color = parseColorMode(readOptionValue(args, ++index, arg));
155
+ }
156
+ else if (isLongOptionWithValue(arg, "--include")) {
157
+ options.includePaths = appendPathFilters(options.includePaths, valueFromLongOption(arg));
158
+ }
159
+ else if (arg === "--include") {
160
+ options.includePaths = appendPathFilters(options.includePaths, readOptionValue(args, ++index, arg));
161
+ }
162
+ else if (isLongOptionWithValue(arg, "--exclude")) {
163
+ options.excludePaths = appendPathFilters(options.excludePaths, valueFromLongOption(arg));
164
+ }
165
+ else if (arg === "--exclude") {
166
+ options.excludePaths = appendPathFilters(options.excludePaths, readOptionValue(args, ++index, arg));
167
+ }
168
+ else if (arg === "--ignore-case") {
169
+ options.rgOptions = {
170
+ ...(options.rgOptions ?? {}),
171
+ ignoreCase: true,
172
+ };
173
+ markRgCompatibilityOption(options, arg);
174
+ }
175
+ else if (arg === "--word-regexp") {
176
+ options.rgOptions = {
177
+ ...(options.rgOptions ?? {}),
178
+ wordRegexp: true,
179
+ };
180
+ markRgCompatibilityOption(options, arg);
181
+ }
182
+ else if (arg === "--fixed-strings") {
183
+ options.rgOptions = {
184
+ ...(options.rgOptions ?? {}),
185
+ fixedStrings: true,
186
+ };
187
+ markRgCompatibilityOption(options, arg);
188
+ }
189
+ else if (arg === "--hidden") {
190
+ options.rgOptions = {
191
+ ...(options.rgOptions ?? {}),
192
+ hidden: true,
193
+ };
194
+ markRgCompatibilityOption(options, arg);
195
+ }
196
+ else if (isRgFlagWithValue(arg)) {
197
+ const option = optionNameFromLong(arg);
198
+ options.rgOptions = appendRgExtraArgs(options.rgOptions, [
199
+ option,
200
+ valueFromLongOption(arg),
201
+ ]);
202
+ markRgCompatibilityOption(options, option);
203
+ }
204
+ else if (RG_OPTIONS_WITH_VALUE.has(arg)) {
205
+ options.rgOptions = appendRgExtraArgs(options.rgOptions, [
206
+ arg,
207
+ readOptionValue(args, ++index, arg),
208
+ ]);
209
+ markRgCompatibilityOption(options, arg);
210
+ }
211
+ else if (RG_OPTIONS_WITHOUT_VALUE.has(arg)) {
212
+ options.rgOptions = appendRgExtraArgs(options.rgOptions, [arg]);
213
+ markRgCompatibilityOption(options, arg);
214
+ }
215
+ else if (arg === "--recursive" || arg === "--line-number" || arg === "--with-filename") {
216
+ markRgCompatibilityOption(options, arg);
217
+ }
218
+ else if (isLongOptionWithValue(arg, "--regexp")) {
219
+ options.rgOptions = appendRgPattern(options.rgOptions, valueFromLongOption(arg));
220
+ markRgCompatibilityOption(options, "--regexp");
221
+ }
222
+ else if (arg === "--regexp") {
223
+ options.rgOptions = appendRgPattern(options.rgOptions, readOptionValue(args, ++index, arg));
224
+ markRgCompatibilityOption(options, arg);
225
+ }
226
+ else if (isLongOptionWithValue(arg, "--context")) {
227
+ options.rgOptions = setRgContext(options.rgOptions, "both", valueFromLongOption(arg), "--context");
228
+ markRgCompatibilityOption(options, "--context");
229
+ }
230
+ else if (arg === "--context") {
231
+ options.rgOptions = setRgContext(options.rgOptions, "both", readOptionValue(args, ++index, arg), arg);
232
+ markRgCompatibilityOption(options, arg);
233
+ }
234
+ else if (isLongOptionWithValue(arg, "--before-context")) {
235
+ options.rgOptions = setRgContext(options.rgOptions, "before", valueFromLongOption(arg), "--before-context");
236
+ markRgCompatibilityOption(options, "--before-context");
237
+ }
238
+ else if (arg === "--before-context") {
239
+ options.rgOptions = setRgContext(options.rgOptions, "before", readOptionValue(args, ++index, arg), arg);
240
+ markRgCompatibilityOption(options, arg);
241
+ }
242
+ else if (isLongOptionWithValue(arg, "--after-context")) {
243
+ options.rgOptions = setRgContext(options.rgOptions, "after", valueFromLongOption(arg), "--after-context");
244
+ markRgCompatibilityOption(options, "--after-context");
245
+ }
246
+ else if (arg === "--after-context") {
247
+ options.rgOptions = setRgContext(options.rgOptions, "after", readOptionValue(args, ++index, arg), arg);
248
+ markRgCompatibilityOption(options, arg);
249
+ }
250
+ else if (isLongOptionWithValue(arg, "--glob")) {
251
+ appendRgGlobFilter(options, valueFromLongOption(arg));
252
+ markRgCompatibilityOption(options, "--glob");
253
+ }
254
+ else if (arg === "--glob") {
255
+ appendRgGlobFilter(options, readOptionValue(args, ++index, arg));
256
+ markRgCompatibilityOption(options, arg);
257
+ }
258
+ else if (arg === "-g") {
259
+ appendRgGlobFilter(options, readOptionValue(args, ++index, arg));
260
+ markRgCompatibilityOption(options, arg);
261
+ }
262
+ else if (isManagedRgOutputOption(arg)) {
263
+ throw new Error(`${arg} changes rg output and cannot be used with managed --rg`);
264
+ }
265
+ else if (isShortRgOptionGroup(arg)) {
266
+ index = parseShortRgOptionGroup(args, index, options);
267
+ }
268
+ else if (arg === "--modified-after") {
269
+ options.modifiedAfter = parseModifiedTime(readOptionValue(args, ++index, arg), arg);
270
+ }
271
+ else if (arg === "--modified-before") {
272
+ options.modifiedBefore = parseModifiedTime(readOptionValue(args, ++index, arg), arg);
273
+ }
274
+ else if (arg === "--symbol-type") {
275
+ options.symbolTypes = [...(options.symbolTypes ?? []), parseSymbolType(readOptionValue(args, ++index, arg))];
276
+ }
277
+ else {
278
+ throw new Error(`Unknown option: ${arg}`);
279
+ }
280
+ }
281
+ validateCliShape(options);
282
+ return { options, positionals };
283
+ }
284
+ function validateCliShape(options) {
285
+ if (options.init && options.collections) {
286
+ throw new Error("--init and --collections cannot be used together");
287
+ }
288
+ if (options.info && options.collections) {
289
+ throw new Error("--info and --collections cannot be used together");
290
+ }
291
+ if (options.info && options.init) {
292
+ throw new Error("--info and --init cannot be used together");
293
+ }
294
+ if (options.info && options.collection) {
295
+ throw new Error("--info does not accept --collection; use --collections info <name>");
296
+ }
297
+ if (options.init && options.collection) {
298
+ throw new Error("--init does not accept --collection");
299
+ }
300
+ if (options.rg && options.collection) {
301
+ throw new Error("--rg does not accept --collection");
302
+ }
303
+ if (options.collections && options.collection) {
304
+ throw new Error("--collections and --collection cannot be used together");
305
+ }
306
+ if ((options.init || options.info || options.collections) && hasExplicitRoutes(options)) {
307
+ throw new Error("--fts and --vector can only be used with query commands");
308
+ }
309
+ if ((options.init || options.info || options.collections) && options.rg) {
310
+ throw new Error("--rg can only be used with query commands");
311
+ }
312
+ if ((options.init || options.info || options.collections) && options.preview) {
313
+ throw new Error("--preview can only be used with query commands");
314
+ }
315
+ if ((options.init || options.info || options.collections) && options.noAutoUpdate) {
316
+ throw new Error("--no-auto-update can only be used with query commands");
317
+ }
318
+ if (options.rg && hasExplicitRoutes(options)) {
319
+ throw new Error("--rg cannot be combined with --fts or --vector");
320
+ }
321
+ if (options.rg && options.preview) {
322
+ throw new Error("--preview is not supported with --rg; use -A/-B/-C for rg context");
323
+ }
324
+ if (options.rg && options.noFallback) {
325
+ throw new Error("--rg cannot be combined with --no-fallback");
326
+ }
327
+ if (options.rg && options.trace) {
328
+ throw new Error("--rg cannot be combined with --trace");
329
+ }
330
+ if (options.rg && (options.preferSymbol || options.symbolTypes?.length)) {
331
+ throw new Error("--rg cannot be combined with indexed symbol options");
332
+ }
333
+ if (options.resetPaths && !options.init && !options.collections) {
334
+ throw new Error("--reset-paths can only be used with --init or --collections index");
335
+ }
336
+ if (!options.rg && (options.rgCompatibilityOptions?.length ?? 0) > 0) {
337
+ const [option] = options.rgCompatibilityOptions;
338
+ throw new Error(`${option} can only be used with --rg`);
339
+ }
340
+ }
341
+ function readOptionValue(args, index, option) {
342
+ const value = args[index];
343
+ if (value === undefined || value.length === 0) {
344
+ throw new Error(`${option} requires a value`);
345
+ }
346
+ return value;
347
+ }
348
+ function isLongOptionWithValue(arg, option) {
349
+ return arg.startsWith(`${option}=`);
350
+ }
351
+ function valueFromLongOption(arg) {
352
+ const separator = arg.indexOf("=");
353
+ return separator >= 0 ? arg.slice(separator + 1) : "";
354
+ }
355
+ function optionNameFromLong(arg) {
356
+ const separator = arg.indexOf("=");
357
+ return separator >= 0 ? arg.slice(0, separator) : arg;
358
+ }
359
+ function isRgFlagWithValue(arg) {
360
+ const option = optionNameFromLong(arg);
361
+ return arg.includes("=") && RG_OPTIONS_WITH_VALUE.has(option);
362
+ }
363
+ function isManagedRgOutputOption(arg) {
364
+ const option = optionNameFromLong(arg);
365
+ return MANAGED_RG_OUTPUT_OPTIONS.has(option);
366
+ }
367
+ function isShortRgOptionGroup(arg) {
368
+ return /^-[A-Za-z].*$/.test(arg)
369
+ && arg !== "-h"
370
+ && arg !== "-v";
371
+ }
372
+ function parseShortRgOptionGroup(args, index, options) {
373
+ const arg = args[index];
374
+ for (let offset = 1; offset < arg.length; offset++) {
375
+ const option = arg[offset];
376
+ const flag = `-${option}`;
377
+ switch (option) {
378
+ case "n":
379
+ case "H":
380
+ markRgCompatibilityOption(options, flag);
381
+ break;
382
+ case "F":
383
+ options.rgOptions = {
384
+ ...(options.rgOptions ?? {}),
385
+ fixedStrings: true,
386
+ };
387
+ markRgCompatibilityOption(options, flag);
388
+ break;
389
+ case "i":
390
+ options.rgOptions = {
391
+ ...(options.rgOptions ?? {}),
392
+ ignoreCase: true,
393
+ };
394
+ markRgCompatibilityOption(options, flag);
395
+ break;
396
+ case "w":
397
+ options.rgOptions = {
398
+ ...(options.rgOptions ?? {}),
399
+ wordRegexp: true,
400
+ };
401
+ markRgCompatibilityOption(options, flag);
402
+ break;
403
+ case "P":
404
+ case "S":
405
+ case "s":
406
+ case "u":
407
+ case "U":
408
+ case "z":
409
+ options.rgOptions = appendRgExtraArgs(options.rgOptions, [flag]);
410
+ markRgCompatibilityOption(options, flag);
411
+ break;
412
+ case "e": {
413
+ const value = readShortOptionValue(args, index, offset, arg, flag);
414
+ options.rgOptions = appendRgPattern(options.rgOptions, value.value);
415
+ markRgCompatibilityOption(options, flag);
416
+ return value.nextIndex;
417
+ }
418
+ case "g": {
419
+ const value = readShortOptionValue(args, index, offset, arg, flag);
420
+ appendRgGlobFilter(options, value.value);
421
+ markRgCompatibilityOption(options, flag);
422
+ return value.nextIndex;
423
+ }
424
+ case "t":
425
+ case "T":
426
+ case "E": {
427
+ const value = readShortOptionValue(args, index, offset, arg, flag);
428
+ options.rgOptions = appendRgExtraArgs(options.rgOptions, [flag, value.value]);
429
+ markRgCompatibilityOption(options, flag);
430
+ return value.nextIndex;
431
+ }
432
+ case "A":
433
+ case "B":
434
+ case "C": {
435
+ const value = readShortOptionValue(args, index, offset, arg, flag);
436
+ const direction = option === "A"
437
+ ? "after"
438
+ : option === "B"
439
+ ? "before"
440
+ : "both";
441
+ options.rgOptions = setRgContext(options.rgOptions, direction, value.value, flag);
442
+ markRgCompatibilityOption(options, flag);
443
+ return value.nextIndex;
444
+ }
445
+ default:
446
+ if (isManagedRgOutputOption(flag)) {
447
+ throw new Error(`${flag} changes rg output and cannot be used with managed --rg`);
448
+ }
449
+ throw new Error(`Unsupported --rg option: ${flag}`);
450
+ }
451
+ }
452
+ return index;
453
+ }
454
+ function readShortOptionValue(args, index, offset, arg, option) {
455
+ const inline = arg.slice(offset + 1);
456
+ if (inline.length > 0) {
457
+ return {
458
+ value: inline,
459
+ nextIndex: index,
460
+ };
461
+ }
462
+ return {
463
+ value: readOptionValue(args, index + 1, option),
464
+ nextIndex: index + 1,
465
+ };
466
+ }
467
+ function markRgCompatibilityOption(options, option) {
468
+ options.rgCompatibilityOptions = [
469
+ ...(options.rgCompatibilityOptions ?? []),
470
+ option,
471
+ ];
472
+ }
473
+ function appendRgPattern(existing, value) {
474
+ return {
475
+ ...(existing ?? {}),
476
+ patterns: [
477
+ ...(existing?.patterns ?? []),
478
+ value,
479
+ ],
480
+ };
481
+ }
482
+ function setRgContext(existing, direction, value, option) {
483
+ const parsed = parseNonNegativeInteger(value, option);
484
+ return {
485
+ ...(existing ?? {}),
486
+ beforeContext: direction === "before" || direction === "both"
487
+ ? parsed
488
+ : existing?.beforeContext,
489
+ afterContext: direction === "after" || direction === "both"
490
+ ? parsed
491
+ : existing?.afterContext,
492
+ };
493
+ }
494
+ function appendRgExtraArgs(existing, args) {
495
+ return {
496
+ ...(existing ?? {}),
497
+ extraArgs: [
498
+ ...(existing?.extraArgs ?? []),
499
+ ...args,
500
+ ],
501
+ };
502
+ }
503
+ function appendRgGlobFilter(options, value) {
504
+ if (value.startsWith("!")) {
505
+ options.excludePaths = appendPathFilters(options.excludePaths, value.slice(1));
506
+ return;
507
+ }
508
+ options.includePaths = appendPathFilters(options.includePaths, value);
509
+ }
510
+ function readRouteOptionValues(args, index, option) {
511
+ const values = [];
512
+ let nextIndex = index;
513
+ while (nextIndex < args.length) {
514
+ const value = args[nextIndex];
515
+ if (value.startsWith("-") && value !== "-") {
516
+ break;
517
+ }
518
+ if (value.trim().length > 0) {
519
+ values.push(value);
520
+ }
521
+ nextIndex++;
522
+ }
523
+ if (values.length === 0) {
524
+ throw new Error(`${option} requires at least one query`);
525
+ }
526
+ return { values, nextIndex };
527
+ }
528
+ function parsePositiveInteger(value, option) {
529
+ const parsed = Number.parseInt(value, 10);
530
+ if (!Number.isInteger(parsed) || parsed < 1) {
531
+ throw new Error(`${option} requires a positive integer`);
532
+ }
533
+ return parsed;
534
+ }
535
+ function parseNonNegativeInteger(value, option) {
536
+ const parsed = Number.parseInt(value, 10);
537
+ if (!Number.isInteger(parsed) || parsed < 0) {
538
+ throw new Error(`${option} requires a non-negative integer`);
539
+ }
540
+ return parsed;
541
+ }
542
+ function parseColorMode(value) {
543
+ if (value === "auto" || value === "always" || value === "never") {
544
+ return value;
545
+ }
546
+ throw new Error(`Unsupported color mode: ${value}`);
547
+ }
548
+ function parsePreviewMode(value) {
549
+ if (value === "none" || value === "short" || value === "full") {
550
+ return value;
551
+ }
552
+ throw new Error(`Unsupported preview mode: ${value}`);
553
+ }
554
+ function parseLlamaGpu(value) {
555
+ const normalized = value.trim().toLowerCase();
556
+ if (normalized === "auto" || normalized === "metal" || normalized === "vulkan" || normalized === "cuda") {
557
+ return normalized;
558
+ }
559
+ if (["false", "off", "none", "disable", "disabled", "0"].includes(normalized)) {
560
+ return false;
561
+ }
562
+ throw new Error(`Unsupported llama GPU mode: ${value}`);
563
+ }
564
+ function hasExplicitRoutes(options) {
565
+ return (options.routes?.length ?? 0) > 0;
566
+ }
567
+ function appendRoutes(existing, mode, queries) {
568
+ return [
569
+ ...(existing ?? []),
570
+ ...queries.map((query) => ({ mode, query })),
571
+ ];
572
+ }
573
+ function parseSymbolType(value) {
574
+ if (VALID_SYMBOL_TYPES.has(value)) {
575
+ return value;
576
+ }
577
+ throw new Error(`Unsupported symbol type: ${value}`);
578
+ }
579
+ function appendPathFilters(existing, value) {
580
+ const values = value
581
+ .split(",")
582
+ .map((item) => item.trim())
583
+ .filter((item) => item.length > 0);
584
+ return [...(existing ?? []), ...values];
585
+ }
586
+ function parseModifiedTime(value, option) {
587
+ if (/^\d+$/.test(value)) {
588
+ const parsed = Number.parseInt(value, 10);
589
+ if (Number.isSafeInteger(parsed) && parsed >= 0) {
590
+ return parsed;
591
+ }
592
+ }
593
+ const dateOnly = value.match(/^(\d{4})-(\d{2})-(\d{2})$/);
594
+ if (dateOnly) {
595
+ const year = Number.parseInt(dateOnly[1], 10);
596
+ const month = Number.parseInt(dateOnly[2], 10);
597
+ const day = Number.parseInt(dateOnly[3], 10);
598
+ const date = new Date(year, month - 1, day);
599
+ if (date.getFullYear() === year
600
+ && date.getMonth() === month - 1
601
+ && date.getDate() === day) {
602
+ return date.getTime();
603
+ }
604
+ }
605
+ const parsed = Date.parse(value);
606
+ if (Number.isFinite(parsed)) {
607
+ return parsed;
608
+ }
609
+ throw new Error(`${option} requires an epoch millisecond value or a parseable date`);
610
+ }
611
+ //# sourceMappingURL=args.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"args.js","sourceRoot":"","sources":["../../src/cli/args.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ import type { ParsedArgs } from "./types.js";
2
+ export declare function runParsedCommand(parsed: ParsedArgs): Promise<void>;