@copilotkit/pathfinder 1.1.0 → 1.5.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 (154) hide show
  1. package/CHANGELOG.md +39 -1
  2. package/README.md +65 -248
  3. package/dist/cli.d.ts +3 -0
  4. package/dist/cli.d.ts.map +1 -0
  5. package/dist/cli.js +70 -0
  6. package/dist/cli.js.map +1 -0
  7. package/dist/config.d.ts +8 -0
  8. package/dist/config.d.ts.map +1 -1
  9. package/dist/config.js +58 -5
  10. package/dist/config.js.map +1 -1
  11. package/dist/db/client.d.ts.map +1 -1
  12. package/dist/db/client.js +3 -1
  13. package/dist/db/client.js.map +1 -1
  14. package/dist/db/queries.d.ts +21 -4
  15. package/dist/db/queries.d.ts.map +1 -1
  16. package/dist/db/queries.js +101 -45
  17. package/dist/db/queries.js.map +1 -1
  18. package/dist/db/schema.d.ts +5 -0
  19. package/dist/db/schema.d.ts.map +1 -1
  20. package/dist/db/schema.js +11 -0
  21. package/dist/db/schema.js.map +1 -1
  22. package/dist/faq-txt.d.ts +12 -0
  23. package/dist/faq-txt.d.ts.map +1 -0
  24. package/dist/faq-txt.js +37 -0
  25. package/dist/faq-txt.js.map +1 -0
  26. package/dist/index.js +2 -362
  27. package/dist/index.js.map +1 -1
  28. package/dist/indexing/chunking/html.d.ts +7 -0
  29. package/dist/indexing/chunking/html.d.ts.map +1 -0
  30. package/dist/indexing/chunking/html.js +356 -0
  31. package/dist/indexing/chunking/html.js.map +1 -0
  32. package/dist/indexing/chunking/index.js +5 -0
  33. package/dist/indexing/chunking/index.js.map +1 -1
  34. package/dist/indexing/chunking/qa.d.ts +8 -0
  35. package/dist/indexing/chunking/qa.d.ts.map +1 -0
  36. package/dist/indexing/chunking/qa.js +22 -0
  37. package/dist/indexing/chunking/qa.js.map +1 -0
  38. package/dist/indexing/distiller.d.ts +29 -0
  39. package/dist/indexing/distiller.d.ts.map +1 -0
  40. package/dist/indexing/distiller.js +104 -0
  41. package/dist/indexing/distiller.js.map +1 -0
  42. package/dist/indexing/orchestrator.d.ts +9 -3
  43. package/dist/indexing/orchestrator.d.ts.map +1 -1
  44. package/dist/indexing/orchestrator.js +113 -83
  45. package/dist/indexing/orchestrator.js.map +1 -1
  46. package/dist/indexing/pipeline.d.ts +18 -0
  47. package/dist/indexing/pipeline.d.ts.map +1 -0
  48. package/dist/indexing/pipeline.js +68 -0
  49. package/dist/indexing/pipeline.js.map +1 -0
  50. package/dist/indexing/providers/discord-api.d.ts +79 -0
  51. package/dist/indexing/providers/discord-api.d.ts.map +1 -0
  52. package/dist/indexing/providers/discord-api.js +167 -0
  53. package/dist/indexing/providers/discord-api.js.map +1 -0
  54. package/dist/indexing/providers/discord.d.ts +25 -0
  55. package/dist/indexing/providers/discord.d.ts.map +1 -0
  56. package/dist/indexing/providers/discord.js +282 -0
  57. package/dist/indexing/providers/discord.js.map +1 -0
  58. package/dist/indexing/providers/file.d.ts +18 -0
  59. package/dist/indexing/providers/file.d.ts.map +1 -0
  60. package/dist/indexing/providers/file.js +262 -0
  61. package/dist/indexing/providers/file.js.map +1 -0
  62. package/dist/indexing/providers/index.d.ts +5 -0
  63. package/dist/indexing/providers/index.d.ts.map +1 -0
  64. package/dist/indexing/providers/index.js +22 -0
  65. package/dist/indexing/providers/index.js.map +1 -0
  66. package/dist/indexing/providers/slack-api.d.ts +62 -0
  67. package/dist/indexing/providers/slack-api.d.ts.map +1 -0
  68. package/dist/indexing/providers/slack-api.js +167 -0
  69. package/dist/indexing/providers/slack-api.js.map +1 -0
  70. package/dist/indexing/providers/slack.d.ts +21 -0
  71. package/dist/indexing/providers/slack.d.ts.map +1 -0
  72. package/dist/indexing/providers/slack.js +192 -0
  73. package/dist/indexing/providers/slack.js.map +1 -0
  74. package/dist/indexing/providers/types.d.ts +56 -0
  75. package/dist/indexing/providers/types.d.ts.map +1 -0
  76. package/dist/indexing/providers/types.js +3 -0
  77. package/dist/indexing/providers/types.js.map +1 -0
  78. package/dist/indexing/url-derivation.d.ts +2 -2
  79. package/dist/indexing/url-derivation.d.ts.map +1 -1
  80. package/dist/indexing/url-derivation.js.map +1 -1
  81. package/dist/indexing/utils.d.ts +19 -0
  82. package/dist/indexing/utils.d.ts.map +1 -0
  83. package/dist/indexing/utils.js +63 -0
  84. package/dist/indexing/utils.js.map +1 -0
  85. package/dist/ip-limiter.d.ts +11 -0
  86. package/dist/ip-limiter.d.ts.map +1 -0
  87. package/dist/ip-limiter.js +40 -0
  88. package/dist/ip-limiter.js.map +1 -0
  89. package/dist/llms-txt.d.ts +11 -0
  90. package/dist/llms-txt.d.ts.map +1 -0
  91. package/dist/llms-txt.js +43 -0
  92. package/dist/llms-txt.js.map +1 -0
  93. package/dist/mcp/server.d.ts +3 -1
  94. package/dist/mcp/server.d.ts.map +1 -1
  95. package/dist/mcp/server.js +9 -1
  96. package/dist/mcp/server.js.map +1 -1
  97. package/dist/mcp/tools/bash-fs.d.ts.map +1 -1
  98. package/dist/mcp/tools/bash-fs.js +4 -1
  99. package/dist/mcp/tools/bash-fs.js.map +1 -1
  100. package/dist/mcp/tools/bash.d.ts +8 -0
  101. package/dist/mcp/tools/bash.d.ts.map +1 -1
  102. package/dist/mcp/tools/bash.js +59 -0
  103. package/dist/mcp/tools/bash.js.map +1 -1
  104. package/dist/mcp/tools/knowledge.d.ts +13 -0
  105. package/dist/mcp/tools/knowledge.d.ts.map +1 -0
  106. package/dist/mcp/tools/knowledge.js +92 -0
  107. package/dist/mcp/tools/knowledge.js.map +1 -0
  108. package/dist/mcp/tools/search.d.ts.map +1 -1
  109. package/dist/mcp/tools/search.js +11 -3
  110. package/dist/mcp/tools/search.js.map +1 -1
  111. package/dist/server.d.ts +6 -0
  112. package/dist/server.d.ts.map +1 -0
  113. package/dist/server.js +595 -0
  114. package/dist/server.js.map +1 -0
  115. package/dist/skill-md.d.ts +3 -0
  116. package/dist/skill-md.d.ts.map +1 -0
  117. package/dist/skill-md.js +75 -0
  118. package/dist/skill-md.js.map +1 -0
  119. package/dist/types.d.ts +844 -38
  120. package/dist/types.d.ts.map +1 -1
  121. package/dist/types.js +88 -6
  122. package/dist/types.js.map +1 -1
  123. package/dist/validate.d.ts +29 -0
  124. package/dist/validate.d.ts.map +1 -0
  125. package/dist/validate.js +192 -0
  126. package/dist/validate.js.map +1 -0
  127. package/dist/webhooks/discord.d.ts +13 -0
  128. package/dist/webhooks/discord.d.ts.map +1 -0
  129. package/dist/webhooks/discord.js +57 -0
  130. package/dist/webhooks/discord.js.map +1 -0
  131. package/dist/webhooks/slack.d.ts +13 -0
  132. package/dist/webhooks/slack.d.ts.map +1 -0
  133. package/dist/webhooks/slack.js +106 -0
  134. package/dist/webhooks/slack.js.map +1 -0
  135. package/dist/workspace.d.ts +13 -0
  136. package/dist/workspace.d.ts.map +1 -0
  137. package/dist/workspace.js +118 -0
  138. package/dist/workspace.js.map +1 -0
  139. package/package.json +27 -2
  140. package/pathfinder-docs.yaml +54 -0
  141. package/pathfinder.example.yaml +48 -0
  142. package/.superpowers/brainstorm/47098-1775507869/content/homepage-mockup.html +0 -324
  143. package/.superpowers/brainstorm/47098-1775507869/state/server-stopped +0 -1
  144. package/.superpowers/brainstorm/47098-1775507869/state/server.log +0 -13
  145. package/.superpowers/brainstorm/47098-1775507869/state/server.pid +0 -1
  146. package/.superpowers/brainstorm/82141-1775511032/content/migration-v2.html +0 -340
  147. package/.superpowers/brainstorm/82141-1775511032/content/migration.html +0 -340
  148. package/.superpowers/brainstorm/82141-1775511032/state/server-stopped +0 -1
  149. package/.superpowers/brainstorm/82141-1775511032/state/server.log +0 -4
  150. package/.superpowers/brainstorm/82141-1775511032/state/server.pid +0 -1
  151. package/dist/indexing/source-indexer.d.ts +0 -68
  152. package/dist/indexing/source-indexer.d.ts.map +0 -1
  153. package/dist/indexing/source-indexer.js +0 -379
  154. package/dist/indexing/source-indexer.js.map +0 -1
package/dist/types.d.ts CHANGED
@@ -31,9 +31,8 @@ export declare const ChunkConfigSchema: z.ZodObject<{
31
31
  target_lines?: number | undefined;
32
32
  overlap_lines?: number | undefined;
33
33
  }>;
34
- export declare const SourceConfigSchema: z.ZodObject<{
35
- name: z.ZodString;
36
- type: z.ZodEnum<["markdown", "code", "raw-text"]>;
34
+ export declare const FileSourceConfigSchema: z.ZodObject<{
35
+ type: z.ZodEnum<["markdown", "code", "raw-text", "html"]>;
37
36
  repo: z.ZodOptional<z.ZodString>;
38
37
  branch: z.ZodOptional<z.ZodString>;
39
38
  path: z.ZodString;
@@ -58,6 +57,7 @@ export declare const SourceConfigSchema: z.ZodObject<{
58
57
  exclude_patterns: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
59
58
  skip_dirs: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
60
59
  max_file_size: z.ZodOptional<z.ZodNumber>;
60
+ name: z.ZodString;
61
61
  chunk: z.ZodObject<{
62
62
  target_tokens: z.ZodOptional<z.ZodNumber>;
63
63
  overlap_tokens: z.ZodOptional<z.ZodNumber>;
@@ -74,11 +74,38 @@ export declare const SourceConfigSchema: z.ZodObject<{
74
74
  target_lines?: number | undefined;
75
75
  overlap_lines?: number | undefined;
76
76
  }>;
77
+ version: z.ZodOptional<z.ZodString>;
78
+ category: z.ZodOptional<z.ZodEnum<["faq"]>>;
77
79
  }, "strip", z.ZodTypeAny, {
78
80
  path: string;
79
- type: "code" | "markdown" | "raw-text";
81
+ type: "code" | "markdown" | "raw-text" | "html";
82
+ file_patterns: string[];
80
83
  name: string;
84
+ chunk: {
85
+ target_tokens?: number | undefined;
86
+ overlap_tokens?: number | undefined;
87
+ target_lines?: number | undefined;
88
+ overlap_lines?: number | undefined;
89
+ };
90
+ repo?: string | undefined;
91
+ branch?: string | undefined;
92
+ base_url?: string | undefined;
93
+ url_derivation?: {
94
+ strip_prefix?: string | undefined;
95
+ strip_suffix?: string | undefined;
96
+ strip_route_groups?: boolean | undefined;
97
+ strip_index?: boolean | undefined;
98
+ } | undefined;
99
+ exclude_patterns?: string[] | undefined;
100
+ skip_dirs?: string[] | undefined;
101
+ max_file_size?: number | undefined;
102
+ version?: string | undefined;
103
+ category?: "faq" | undefined;
104
+ }, {
105
+ path: string;
106
+ type: "code" | "markdown" | "raw-text" | "html";
81
107
  file_patterns: string[];
108
+ name: string;
82
109
  chunk: {
83
110
  target_tokens?: number | undefined;
84
111
  overlap_tokens?: number | undefined;
@@ -97,11 +124,227 @@ export declare const SourceConfigSchema: z.ZodObject<{
97
124
  exclude_patterns?: string[] | undefined;
98
125
  skip_dirs?: string[] | undefined;
99
126
  max_file_size?: number | undefined;
127
+ version?: string | undefined;
128
+ category?: "faq" | undefined;
129
+ }>;
130
+ export declare const SlackSourceConfigSchema: z.ZodObject<{
131
+ type: z.ZodLiteral<"slack">;
132
+ category: z.ZodDefault<z.ZodEnum<["faq"]>>;
133
+ channels: z.ZodArray<z.ZodString, "many">;
134
+ confidence_threshold: z.ZodDefault<z.ZodNumber>;
135
+ trigger_emoji: z.ZodDefault<z.ZodString>;
136
+ min_thread_replies: z.ZodDefault<z.ZodNumber>;
137
+ distiller_model: z.ZodOptional<z.ZodString>;
138
+ name: z.ZodString;
139
+ chunk: z.ZodObject<{
140
+ target_tokens: z.ZodOptional<z.ZodNumber>;
141
+ overlap_tokens: z.ZodOptional<z.ZodNumber>;
142
+ target_lines: z.ZodOptional<z.ZodNumber>;
143
+ overlap_lines: z.ZodOptional<z.ZodNumber>;
144
+ }, "strip", z.ZodTypeAny, {
145
+ target_tokens?: number | undefined;
146
+ overlap_tokens?: number | undefined;
147
+ target_lines?: number | undefined;
148
+ overlap_lines?: number | undefined;
149
+ }, {
150
+ target_tokens?: number | undefined;
151
+ overlap_tokens?: number | undefined;
152
+ target_lines?: number | undefined;
153
+ overlap_lines?: number | undefined;
154
+ }>;
155
+ version: z.ZodOptional<z.ZodString>;
156
+ }, "strip", z.ZodTypeAny, {
157
+ type: "slack";
158
+ name: string;
159
+ chunk: {
160
+ target_tokens?: number | undefined;
161
+ overlap_tokens?: number | undefined;
162
+ target_lines?: number | undefined;
163
+ overlap_lines?: number | undefined;
164
+ };
165
+ category: "faq";
166
+ channels: string[];
167
+ confidence_threshold: number;
168
+ trigger_emoji: string;
169
+ min_thread_replies: number;
170
+ version?: string | undefined;
171
+ distiller_model?: string | undefined;
172
+ }, {
173
+ type: "slack";
174
+ name: string;
175
+ chunk: {
176
+ target_tokens?: number | undefined;
177
+ overlap_tokens?: number | undefined;
178
+ target_lines?: number | undefined;
179
+ overlap_lines?: number | undefined;
180
+ };
181
+ channels: string[];
182
+ version?: string | undefined;
183
+ category?: "faq" | undefined;
184
+ confidence_threshold?: number | undefined;
185
+ trigger_emoji?: string | undefined;
186
+ min_thread_replies?: number | undefined;
187
+ distiller_model?: string | undefined;
188
+ }>;
189
+ export declare const DiscordChannelConfigSchema: z.ZodObject<{
190
+ id: z.ZodString;
191
+ type: z.ZodEnum<["text", "forum"]>;
192
+ }, "strip", z.ZodTypeAny, {
193
+ type: "text" | "forum";
194
+ id: string;
100
195
  }, {
196
+ type: "text" | "forum";
197
+ id: string;
198
+ }>;
199
+ export declare const DiscordSourceConfigSchema: z.ZodObject<{
200
+ type: z.ZodLiteral<"discord">;
201
+ category: z.ZodDefault<z.ZodEnum<["faq"]>>;
202
+ guild_id: z.ZodString;
203
+ channels: z.ZodArray<z.ZodObject<{
204
+ id: z.ZodString;
205
+ type: z.ZodEnum<["text", "forum"]>;
206
+ }, "strip", z.ZodTypeAny, {
207
+ type: "text" | "forum";
208
+ id: string;
209
+ }, {
210
+ type: "text" | "forum";
211
+ id: string;
212
+ }>, "many">;
213
+ confidence_threshold: z.ZodDefault<z.ZodNumber>;
214
+ min_thread_replies: z.ZodDefault<z.ZodNumber>;
215
+ distiller_model: z.ZodOptional<z.ZodString>;
216
+ name: z.ZodString;
217
+ chunk: z.ZodObject<{
218
+ target_tokens: z.ZodOptional<z.ZodNumber>;
219
+ overlap_tokens: z.ZodOptional<z.ZodNumber>;
220
+ target_lines: z.ZodOptional<z.ZodNumber>;
221
+ overlap_lines: z.ZodOptional<z.ZodNumber>;
222
+ }, "strip", z.ZodTypeAny, {
223
+ target_tokens?: number | undefined;
224
+ overlap_tokens?: number | undefined;
225
+ target_lines?: number | undefined;
226
+ overlap_lines?: number | undefined;
227
+ }, {
228
+ target_tokens?: number | undefined;
229
+ overlap_tokens?: number | undefined;
230
+ target_lines?: number | undefined;
231
+ overlap_lines?: number | undefined;
232
+ }>;
233
+ version: z.ZodOptional<z.ZodString>;
234
+ }, "strip", z.ZodTypeAny, {
235
+ type: "discord";
236
+ name: string;
237
+ chunk: {
238
+ target_tokens?: number | undefined;
239
+ overlap_tokens?: number | undefined;
240
+ target_lines?: number | undefined;
241
+ overlap_lines?: number | undefined;
242
+ };
243
+ category: "faq";
244
+ channels: {
245
+ type: "text" | "forum";
246
+ id: string;
247
+ }[];
248
+ confidence_threshold: number;
249
+ min_thread_replies: number;
250
+ guild_id: string;
251
+ version?: string | undefined;
252
+ distiller_model?: string | undefined;
253
+ }, {
254
+ type: "discord";
255
+ name: string;
256
+ chunk: {
257
+ target_tokens?: number | undefined;
258
+ overlap_tokens?: number | undefined;
259
+ target_lines?: number | undefined;
260
+ overlap_lines?: number | undefined;
261
+ };
262
+ channels: {
263
+ type: "text" | "forum";
264
+ id: string;
265
+ }[];
266
+ guild_id: string;
267
+ version?: string | undefined;
268
+ category?: "faq" | undefined;
269
+ confidence_threshold?: number | undefined;
270
+ min_thread_replies?: number | undefined;
271
+ distiller_model?: string | undefined;
272
+ }>;
273
+ export declare const SourceConfigSchema: z.ZodDiscriminatedUnion<"type", [z.ZodObject<{
274
+ type: z.ZodEnum<["markdown", "code", "raw-text", "html"]>;
275
+ repo: z.ZodOptional<z.ZodString>;
276
+ branch: z.ZodOptional<z.ZodString>;
277
+ path: z.ZodString;
278
+ base_url: z.ZodOptional<z.ZodString>;
279
+ url_derivation: z.ZodOptional<z.ZodObject<{
280
+ strip_prefix: z.ZodOptional<z.ZodString>;
281
+ strip_suffix: z.ZodOptional<z.ZodString>;
282
+ strip_route_groups: z.ZodOptional<z.ZodBoolean>;
283
+ strip_index: z.ZodOptional<z.ZodBoolean>;
284
+ }, "strip", z.ZodTypeAny, {
285
+ strip_prefix?: string | undefined;
286
+ strip_suffix?: string | undefined;
287
+ strip_route_groups?: boolean | undefined;
288
+ strip_index?: boolean | undefined;
289
+ }, {
290
+ strip_prefix?: string | undefined;
291
+ strip_suffix?: string | undefined;
292
+ strip_route_groups?: boolean | undefined;
293
+ strip_index?: boolean | undefined;
294
+ }>>;
295
+ file_patterns: z.ZodArray<z.ZodString, "many">;
296
+ exclude_patterns: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
297
+ skip_dirs: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
298
+ max_file_size: z.ZodOptional<z.ZodNumber>;
299
+ name: z.ZodString;
300
+ chunk: z.ZodObject<{
301
+ target_tokens: z.ZodOptional<z.ZodNumber>;
302
+ overlap_tokens: z.ZodOptional<z.ZodNumber>;
303
+ target_lines: z.ZodOptional<z.ZodNumber>;
304
+ overlap_lines: z.ZodOptional<z.ZodNumber>;
305
+ }, "strip", z.ZodTypeAny, {
306
+ target_tokens?: number | undefined;
307
+ overlap_tokens?: number | undefined;
308
+ target_lines?: number | undefined;
309
+ overlap_lines?: number | undefined;
310
+ }, {
311
+ target_tokens?: number | undefined;
312
+ overlap_tokens?: number | undefined;
313
+ target_lines?: number | undefined;
314
+ overlap_lines?: number | undefined;
315
+ }>;
316
+ version: z.ZodOptional<z.ZodString>;
317
+ category: z.ZodOptional<z.ZodEnum<["faq"]>>;
318
+ }, "strip", z.ZodTypeAny, {
101
319
  path: string;
102
- type: "code" | "markdown" | "raw-text";
320
+ type: "code" | "markdown" | "raw-text" | "html";
321
+ file_patterns: string[];
103
322
  name: string;
323
+ chunk: {
324
+ target_tokens?: number | undefined;
325
+ overlap_tokens?: number | undefined;
326
+ target_lines?: number | undefined;
327
+ overlap_lines?: number | undefined;
328
+ };
329
+ repo?: string | undefined;
330
+ branch?: string | undefined;
331
+ base_url?: string | undefined;
332
+ url_derivation?: {
333
+ strip_prefix?: string | undefined;
334
+ strip_suffix?: string | undefined;
335
+ strip_route_groups?: boolean | undefined;
336
+ strip_index?: boolean | undefined;
337
+ } | undefined;
338
+ exclude_patterns?: string[] | undefined;
339
+ skip_dirs?: string[] | undefined;
340
+ max_file_size?: number | undefined;
341
+ version?: string | undefined;
342
+ category?: "faq" | undefined;
343
+ }, {
344
+ path: string;
345
+ type: "code" | "markdown" | "raw-text" | "html";
104
346
  file_patterns: string[];
347
+ name: string;
105
348
  chunk: {
106
349
  target_tokens?: number | undefined;
107
350
  overlap_tokens?: number | undefined;
@@ -120,7 +363,140 @@ export declare const SourceConfigSchema: z.ZodObject<{
120
363
  exclude_patterns?: string[] | undefined;
121
364
  skip_dirs?: string[] | undefined;
122
365
  max_file_size?: number | undefined;
123
- }>;
366
+ version?: string | undefined;
367
+ category?: "faq" | undefined;
368
+ }>, z.ZodObject<{
369
+ type: z.ZodLiteral<"slack">;
370
+ category: z.ZodDefault<z.ZodEnum<["faq"]>>;
371
+ channels: z.ZodArray<z.ZodString, "many">;
372
+ confidence_threshold: z.ZodDefault<z.ZodNumber>;
373
+ trigger_emoji: z.ZodDefault<z.ZodString>;
374
+ min_thread_replies: z.ZodDefault<z.ZodNumber>;
375
+ distiller_model: z.ZodOptional<z.ZodString>;
376
+ name: z.ZodString;
377
+ chunk: z.ZodObject<{
378
+ target_tokens: z.ZodOptional<z.ZodNumber>;
379
+ overlap_tokens: z.ZodOptional<z.ZodNumber>;
380
+ target_lines: z.ZodOptional<z.ZodNumber>;
381
+ overlap_lines: z.ZodOptional<z.ZodNumber>;
382
+ }, "strip", z.ZodTypeAny, {
383
+ target_tokens?: number | undefined;
384
+ overlap_tokens?: number | undefined;
385
+ target_lines?: number | undefined;
386
+ overlap_lines?: number | undefined;
387
+ }, {
388
+ target_tokens?: number | undefined;
389
+ overlap_tokens?: number | undefined;
390
+ target_lines?: number | undefined;
391
+ overlap_lines?: number | undefined;
392
+ }>;
393
+ version: z.ZodOptional<z.ZodString>;
394
+ }, "strip", z.ZodTypeAny, {
395
+ type: "slack";
396
+ name: string;
397
+ chunk: {
398
+ target_tokens?: number | undefined;
399
+ overlap_tokens?: number | undefined;
400
+ target_lines?: number | undefined;
401
+ overlap_lines?: number | undefined;
402
+ };
403
+ category: "faq";
404
+ channels: string[];
405
+ confidence_threshold: number;
406
+ trigger_emoji: string;
407
+ min_thread_replies: number;
408
+ version?: string | undefined;
409
+ distiller_model?: string | undefined;
410
+ }, {
411
+ type: "slack";
412
+ name: string;
413
+ chunk: {
414
+ target_tokens?: number | undefined;
415
+ overlap_tokens?: number | undefined;
416
+ target_lines?: number | undefined;
417
+ overlap_lines?: number | undefined;
418
+ };
419
+ channels: string[];
420
+ version?: string | undefined;
421
+ category?: "faq" | undefined;
422
+ confidence_threshold?: number | undefined;
423
+ trigger_emoji?: string | undefined;
424
+ min_thread_replies?: number | undefined;
425
+ distiller_model?: string | undefined;
426
+ }>, z.ZodObject<{
427
+ type: z.ZodLiteral<"discord">;
428
+ category: z.ZodDefault<z.ZodEnum<["faq"]>>;
429
+ guild_id: z.ZodString;
430
+ channels: z.ZodArray<z.ZodObject<{
431
+ id: z.ZodString;
432
+ type: z.ZodEnum<["text", "forum"]>;
433
+ }, "strip", z.ZodTypeAny, {
434
+ type: "text" | "forum";
435
+ id: string;
436
+ }, {
437
+ type: "text" | "forum";
438
+ id: string;
439
+ }>, "many">;
440
+ confidence_threshold: z.ZodDefault<z.ZodNumber>;
441
+ min_thread_replies: z.ZodDefault<z.ZodNumber>;
442
+ distiller_model: z.ZodOptional<z.ZodString>;
443
+ name: z.ZodString;
444
+ chunk: z.ZodObject<{
445
+ target_tokens: z.ZodOptional<z.ZodNumber>;
446
+ overlap_tokens: z.ZodOptional<z.ZodNumber>;
447
+ target_lines: z.ZodOptional<z.ZodNumber>;
448
+ overlap_lines: z.ZodOptional<z.ZodNumber>;
449
+ }, "strip", z.ZodTypeAny, {
450
+ target_tokens?: number | undefined;
451
+ overlap_tokens?: number | undefined;
452
+ target_lines?: number | undefined;
453
+ overlap_lines?: number | undefined;
454
+ }, {
455
+ target_tokens?: number | undefined;
456
+ overlap_tokens?: number | undefined;
457
+ target_lines?: number | undefined;
458
+ overlap_lines?: number | undefined;
459
+ }>;
460
+ version: z.ZodOptional<z.ZodString>;
461
+ }, "strip", z.ZodTypeAny, {
462
+ type: "discord";
463
+ name: string;
464
+ chunk: {
465
+ target_tokens?: number | undefined;
466
+ overlap_tokens?: number | undefined;
467
+ target_lines?: number | undefined;
468
+ overlap_lines?: number | undefined;
469
+ };
470
+ category: "faq";
471
+ channels: {
472
+ type: "text" | "forum";
473
+ id: string;
474
+ }[];
475
+ confidence_threshold: number;
476
+ min_thread_replies: number;
477
+ guild_id: string;
478
+ version?: string | undefined;
479
+ distiller_model?: string | undefined;
480
+ }, {
481
+ type: "discord";
482
+ name: string;
483
+ chunk: {
484
+ target_tokens?: number | undefined;
485
+ overlap_tokens?: number | undefined;
486
+ target_lines?: number | undefined;
487
+ overlap_lines?: number | undefined;
488
+ };
489
+ channels: {
490
+ type: "text" | "forum";
491
+ id: string;
492
+ }[];
493
+ guild_id: string;
494
+ version?: string | undefined;
495
+ category?: "faq" | undefined;
496
+ confidence_threshold?: number | undefined;
497
+ min_thread_replies?: number | undefined;
498
+ distiller_model?: string | undefined;
499
+ }>]>;
124
500
  export declare const SearchToolConfigSchema: z.ZodObject<{
125
501
  name: z.ZodString;
126
502
  type: z.ZodLiteral<"search">;
@@ -129,6 +505,7 @@ export declare const SearchToolConfigSchema: z.ZodObject<{
129
505
  default_limit: z.ZodNumber;
130
506
  max_limit: z.ZodNumber;
131
507
  result_format: z.ZodEnum<["docs", "code", "raw"]>;
508
+ min_score: z.ZodOptional<z.ZodNumber>;
132
509
  }, "strip", z.ZodTypeAny, {
133
510
  type: "search";
134
511
  name: string;
@@ -137,6 +514,7 @@ export declare const SearchToolConfigSchema: z.ZodObject<{
137
514
  default_limit: number;
138
515
  max_limit: number;
139
516
  result_format: "code" | "docs" | "raw";
517
+ min_score?: number | undefined;
140
518
  }, {
141
519
  type: "search";
142
520
  name: string;
@@ -145,6 +523,7 @@ export declare const SearchToolConfigSchema: z.ZodObject<{
145
523
  default_limit: number;
146
524
  max_limit: number;
147
525
  result_format: "code" | "docs" | "raw";
526
+ min_score?: number | undefined;
148
527
  }>;
149
528
  export declare const BashCacheConfigSchema: z.ZodObject<{
150
529
  max_entries: z.ZodNumber;
@@ -342,6 +721,31 @@ export declare const CollectToolConfigSchema: z.ZodObject<{
342
721
  required?: boolean | undefined;
343
722
  }>;
344
723
  }>;
724
+ export declare const KnowledgeToolConfigSchema: z.ZodObject<{
725
+ name: z.ZodString;
726
+ type: z.ZodLiteral<"knowledge">;
727
+ description: z.ZodString;
728
+ sources: z.ZodArray<z.ZodString, "many">;
729
+ min_confidence: z.ZodDefault<z.ZodNumber>;
730
+ default_limit: z.ZodDefault<z.ZodNumber>;
731
+ max_limit: z.ZodDefault<z.ZodNumber>;
732
+ }, "strip", z.ZodTypeAny, {
733
+ type: "knowledge";
734
+ name: string;
735
+ description: string;
736
+ default_limit: number;
737
+ max_limit: number;
738
+ sources: string[];
739
+ min_confidence: number;
740
+ }, {
741
+ type: "knowledge";
742
+ name: string;
743
+ description: string;
744
+ sources: string[];
745
+ default_limit?: number | undefined;
746
+ max_limit?: number | undefined;
747
+ min_confidence?: number | undefined;
748
+ }>;
345
749
  export declare const AnyToolConfigSchema: z.ZodDiscriminatedUnion<"type", [z.ZodObject<{
346
750
  name: z.ZodString;
347
751
  type: z.ZodLiteral<"search">;
@@ -350,6 +754,7 @@ export declare const AnyToolConfigSchema: z.ZodDiscriminatedUnion<"type", [z.Zod
350
754
  default_limit: z.ZodNumber;
351
755
  max_limit: z.ZodNumber;
352
756
  result_format: z.ZodEnum<["docs", "code", "raw"]>;
757
+ min_score: z.ZodOptional<z.ZodNumber>;
353
758
  }, "strip", z.ZodTypeAny, {
354
759
  type: "search";
355
760
  name: string;
@@ -358,6 +763,7 @@ export declare const AnyToolConfigSchema: z.ZodDiscriminatedUnion<"type", [z.Zod
358
763
  default_limit: number;
359
764
  max_limit: number;
360
765
  result_format: "code" | "docs" | "raw";
766
+ min_score?: number | undefined;
361
767
  }, {
362
768
  type: "search";
363
769
  name: string;
@@ -366,6 +772,7 @@ export declare const AnyToolConfigSchema: z.ZodDiscriminatedUnion<"type", [z.Zod
366
772
  default_limit: number;
367
773
  max_limit: number;
368
774
  result_format: "code" | "docs" | "raw";
775
+ min_score?: number | undefined;
369
776
  }>, z.ZodObject<{
370
777
  name: z.ZodString;
371
778
  type: z.ZodLiteral<"collect">;
@@ -513,18 +920,42 @@ export declare const AnyToolConfigSchema: z.ZodDiscriminatedUnion<"type", [z.Zod
513
920
  ttl_seconds: number;
514
921
  } | undefined;
515
922
  } | undefined;
923
+ }>, z.ZodObject<{
924
+ name: z.ZodString;
925
+ type: z.ZodLiteral<"knowledge">;
926
+ description: z.ZodString;
927
+ sources: z.ZodArray<z.ZodString, "many">;
928
+ min_confidence: z.ZodDefault<z.ZodNumber>;
929
+ default_limit: z.ZodDefault<z.ZodNumber>;
930
+ max_limit: z.ZodDefault<z.ZodNumber>;
931
+ }, "strip", z.ZodTypeAny, {
932
+ type: "knowledge";
933
+ name: string;
934
+ description: string;
935
+ default_limit: number;
936
+ max_limit: number;
937
+ sources: string[];
938
+ min_confidence: number;
939
+ }, {
940
+ type: "knowledge";
941
+ name: string;
942
+ description: string;
943
+ sources: string[];
944
+ default_limit?: number | undefined;
945
+ max_limit?: number | undefined;
946
+ min_confidence?: number | undefined;
516
947
  }>]>;
517
948
  export declare const EmbeddingConfigSchema: z.ZodObject<{
518
949
  provider: z.ZodEnum<["openai"]>;
519
950
  model: z.ZodString;
520
951
  dimensions: z.ZodNumber;
521
952
  }, "strip", z.ZodTypeAny, {
522
- provider: "openai";
523
953
  model: string;
954
+ provider: "openai";
524
955
  dimensions: number;
525
956
  }, {
526
- provider: "openai";
527
957
  model: string;
958
+ provider: "openai";
528
959
  dimensions: number;
529
960
  }>;
530
961
  export declare const IndexingConfigSchema: z.ZodObject<{
@@ -554,16 +985,21 @@ export declare const ServerConfigSchema: z.ZodEffects<z.ZodObject<{
554
985
  server: z.ZodObject<{
555
986
  name: z.ZodString;
556
987
  version: z.ZodString;
988
+ max_sessions_per_ip: z.ZodOptional<z.ZodNumber>;
989
+ session_ttl_minutes: z.ZodOptional<z.ZodNumber>;
557
990
  }, "strip", z.ZodTypeAny, {
558
991
  name: string;
559
992
  version: string;
993
+ max_sessions_per_ip?: number | undefined;
994
+ session_ttl_minutes?: number | undefined;
560
995
  }, {
561
996
  name: string;
562
997
  version: string;
998
+ max_sessions_per_ip?: number | undefined;
999
+ session_ttl_minutes?: number | undefined;
563
1000
  }>;
564
- sources: z.ZodArray<z.ZodObject<{
565
- name: z.ZodString;
566
- type: z.ZodEnum<["markdown", "code", "raw-text"]>;
1001
+ sources: z.ZodArray<z.ZodDiscriminatedUnion<"type", [z.ZodObject<{
1002
+ type: z.ZodEnum<["markdown", "code", "raw-text", "html"]>;
567
1003
  repo: z.ZodOptional<z.ZodString>;
568
1004
  branch: z.ZodOptional<z.ZodString>;
569
1005
  path: z.ZodString;
@@ -588,6 +1024,7 @@ export declare const ServerConfigSchema: z.ZodEffects<z.ZodObject<{
588
1024
  exclude_patterns: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
589
1025
  skip_dirs: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
590
1026
  max_file_size: z.ZodOptional<z.ZodNumber>;
1027
+ name: z.ZodString;
591
1028
  chunk: z.ZodObject<{
592
1029
  target_tokens: z.ZodOptional<z.ZodNumber>;
593
1030
  overlap_tokens: z.ZodOptional<z.ZodNumber>;
@@ -604,11 +1041,13 @@ export declare const ServerConfigSchema: z.ZodEffects<z.ZodObject<{
604
1041
  target_lines?: number | undefined;
605
1042
  overlap_lines?: number | undefined;
606
1043
  }>;
1044
+ version: z.ZodOptional<z.ZodString>;
1045
+ category: z.ZodOptional<z.ZodEnum<["faq"]>>;
607
1046
  }, "strip", z.ZodTypeAny, {
608
1047
  path: string;
609
- type: "code" | "markdown" | "raw-text";
610
- name: string;
1048
+ type: "code" | "markdown" | "raw-text" | "html";
611
1049
  file_patterns: string[];
1050
+ name: string;
612
1051
  chunk: {
613
1052
  target_tokens?: number | undefined;
614
1053
  overlap_tokens?: number | undefined;
@@ -627,11 +1066,13 @@ export declare const ServerConfigSchema: z.ZodEffects<z.ZodObject<{
627
1066
  exclude_patterns?: string[] | undefined;
628
1067
  skip_dirs?: string[] | undefined;
629
1068
  max_file_size?: number | undefined;
1069
+ version?: string | undefined;
1070
+ category?: "faq" | undefined;
630
1071
  }, {
631
1072
  path: string;
632
- type: "code" | "markdown" | "raw-text";
633
- name: string;
1073
+ type: "code" | "markdown" | "raw-text" | "html";
634
1074
  file_patterns: string[];
1075
+ name: string;
635
1076
  chunk: {
636
1077
  target_tokens?: number | undefined;
637
1078
  overlap_tokens?: number | undefined;
@@ -650,7 +1091,140 @@ export declare const ServerConfigSchema: z.ZodEffects<z.ZodObject<{
650
1091
  exclude_patterns?: string[] | undefined;
651
1092
  skip_dirs?: string[] | undefined;
652
1093
  max_file_size?: number | undefined;
653
- }>, "many">;
1094
+ version?: string | undefined;
1095
+ category?: "faq" | undefined;
1096
+ }>, z.ZodObject<{
1097
+ type: z.ZodLiteral<"slack">;
1098
+ category: z.ZodDefault<z.ZodEnum<["faq"]>>;
1099
+ channels: z.ZodArray<z.ZodString, "many">;
1100
+ confidence_threshold: z.ZodDefault<z.ZodNumber>;
1101
+ trigger_emoji: z.ZodDefault<z.ZodString>;
1102
+ min_thread_replies: z.ZodDefault<z.ZodNumber>;
1103
+ distiller_model: z.ZodOptional<z.ZodString>;
1104
+ name: z.ZodString;
1105
+ chunk: z.ZodObject<{
1106
+ target_tokens: z.ZodOptional<z.ZodNumber>;
1107
+ overlap_tokens: z.ZodOptional<z.ZodNumber>;
1108
+ target_lines: z.ZodOptional<z.ZodNumber>;
1109
+ overlap_lines: z.ZodOptional<z.ZodNumber>;
1110
+ }, "strip", z.ZodTypeAny, {
1111
+ target_tokens?: number | undefined;
1112
+ overlap_tokens?: number | undefined;
1113
+ target_lines?: number | undefined;
1114
+ overlap_lines?: number | undefined;
1115
+ }, {
1116
+ target_tokens?: number | undefined;
1117
+ overlap_tokens?: number | undefined;
1118
+ target_lines?: number | undefined;
1119
+ overlap_lines?: number | undefined;
1120
+ }>;
1121
+ version: z.ZodOptional<z.ZodString>;
1122
+ }, "strip", z.ZodTypeAny, {
1123
+ type: "slack";
1124
+ name: string;
1125
+ chunk: {
1126
+ target_tokens?: number | undefined;
1127
+ overlap_tokens?: number | undefined;
1128
+ target_lines?: number | undefined;
1129
+ overlap_lines?: number | undefined;
1130
+ };
1131
+ category: "faq";
1132
+ channels: string[];
1133
+ confidence_threshold: number;
1134
+ trigger_emoji: string;
1135
+ min_thread_replies: number;
1136
+ version?: string | undefined;
1137
+ distiller_model?: string | undefined;
1138
+ }, {
1139
+ type: "slack";
1140
+ name: string;
1141
+ chunk: {
1142
+ target_tokens?: number | undefined;
1143
+ overlap_tokens?: number | undefined;
1144
+ target_lines?: number | undefined;
1145
+ overlap_lines?: number | undefined;
1146
+ };
1147
+ channels: string[];
1148
+ version?: string | undefined;
1149
+ category?: "faq" | undefined;
1150
+ confidence_threshold?: number | undefined;
1151
+ trigger_emoji?: string | undefined;
1152
+ min_thread_replies?: number | undefined;
1153
+ distiller_model?: string | undefined;
1154
+ }>, z.ZodObject<{
1155
+ type: z.ZodLiteral<"discord">;
1156
+ category: z.ZodDefault<z.ZodEnum<["faq"]>>;
1157
+ guild_id: z.ZodString;
1158
+ channels: z.ZodArray<z.ZodObject<{
1159
+ id: z.ZodString;
1160
+ type: z.ZodEnum<["text", "forum"]>;
1161
+ }, "strip", z.ZodTypeAny, {
1162
+ type: "text" | "forum";
1163
+ id: string;
1164
+ }, {
1165
+ type: "text" | "forum";
1166
+ id: string;
1167
+ }>, "many">;
1168
+ confidence_threshold: z.ZodDefault<z.ZodNumber>;
1169
+ min_thread_replies: z.ZodDefault<z.ZodNumber>;
1170
+ distiller_model: z.ZodOptional<z.ZodString>;
1171
+ name: z.ZodString;
1172
+ chunk: z.ZodObject<{
1173
+ target_tokens: z.ZodOptional<z.ZodNumber>;
1174
+ overlap_tokens: z.ZodOptional<z.ZodNumber>;
1175
+ target_lines: z.ZodOptional<z.ZodNumber>;
1176
+ overlap_lines: z.ZodOptional<z.ZodNumber>;
1177
+ }, "strip", z.ZodTypeAny, {
1178
+ target_tokens?: number | undefined;
1179
+ overlap_tokens?: number | undefined;
1180
+ target_lines?: number | undefined;
1181
+ overlap_lines?: number | undefined;
1182
+ }, {
1183
+ target_tokens?: number | undefined;
1184
+ overlap_tokens?: number | undefined;
1185
+ target_lines?: number | undefined;
1186
+ overlap_lines?: number | undefined;
1187
+ }>;
1188
+ version: z.ZodOptional<z.ZodString>;
1189
+ }, "strip", z.ZodTypeAny, {
1190
+ type: "discord";
1191
+ name: string;
1192
+ chunk: {
1193
+ target_tokens?: number | undefined;
1194
+ overlap_tokens?: number | undefined;
1195
+ target_lines?: number | undefined;
1196
+ overlap_lines?: number | undefined;
1197
+ };
1198
+ category: "faq";
1199
+ channels: {
1200
+ type: "text" | "forum";
1201
+ id: string;
1202
+ }[];
1203
+ confidence_threshold: number;
1204
+ min_thread_replies: number;
1205
+ guild_id: string;
1206
+ version?: string | undefined;
1207
+ distiller_model?: string | undefined;
1208
+ }, {
1209
+ type: "discord";
1210
+ name: string;
1211
+ chunk: {
1212
+ target_tokens?: number | undefined;
1213
+ overlap_tokens?: number | undefined;
1214
+ target_lines?: number | undefined;
1215
+ overlap_lines?: number | undefined;
1216
+ };
1217
+ channels: {
1218
+ type: "text" | "forum";
1219
+ id: string;
1220
+ }[];
1221
+ guild_id: string;
1222
+ version?: string | undefined;
1223
+ category?: "faq" | undefined;
1224
+ confidence_threshold?: number | undefined;
1225
+ min_thread_replies?: number | undefined;
1226
+ distiller_model?: string | undefined;
1227
+ }>]>, "many">;
654
1228
  tools: z.ZodArray<z.ZodDiscriminatedUnion<"type", [z.ZodObject<{
655
1229
  name: z.ZodString;
656
1230
  type: z.ZodLiteral<"search">;
@@ -659,6 +1233,7 @@ export declare const ServerConfigSchema: z.ZodEffects<z.ZodObject<{
659
1233
  default_limit: z.ZodNumber;
660
1234
  max_limit: z.ZodNumber;
661
1235
  result_format: z.ZodEnum<["docs", "code", "raw"]>;
1236
+ min_score: z.ZodOptional<z.ZodNumber>;
662
1237
  }, "strip", z.ZodTypeAny, {
663
1238
  type: "search";
664
1239
  name: string;
@@ -667,6 +1242,7 @@ export declare const ServerConfigSchema: z.ZodEffects<z.ZodObject<{
667
1242
  default_limit: number;
668
1243
  max_limit: number;
669
1244
  result_format: "code" | "docs" | "raw";
1245
+ min_score?: number | undefined;
670
1246
  }, {
671
1247
  type: "search";
672
1248
  name: string;
@@ -675,6 +1251,7 @@ export declare const ServerConfigSchema: z.ZodEffects<z.ZodObject<{
675
1251
  default_limit: number;
676
1252
  max_limit: number;
677
1253
  result_format: "code" | "docs" | "raw";
1254
+ min_score?: number | undefined;
678
1255
  }>, z.ZodObject<{
679
1256
  name: z.ZodString;
680
1257
  type: z.ZodLiteral<"collect">;
@@ -822,18 +1399,42 @@ export declare const ServerConfigSchema: z.ZodEffects<z.ZodObject<{
822
1399
  ttl_seconds: number;
823
1400
  } | undefined;
824
1401
  } | undefined;
1402
+ }>, z.ZodObject<{
1403
+ name: z.ZodString;
1404
+ type: z.ZodLiteral<"knowledge">;
1405
+ description: z.ZodString;
1406
+ sources: z.ZodArray<z.ZodString, "many">;
1407
+ min_confidence: z.ZodDefault<z.ZodNumber>;
1408
+ default_limit: z.ZodDefault<z.ZodNumber>;
1409
+ max_limit: z.ZodDefault<z.ZodNumber>;
1410
+ }, "strip", z.ZodTypeAny, {
1411
+ type: "knowledge";
1412
+ name: string;
1413
+ description: string;
1414
+ default_limit: number;
1415
+ max_limit: number;
1416
+ sources: string[];
1417
+ min_confidence: number;
1418
+ }, {
1419
+ type: "knowledge";
1420
+ name: string;
1421
+ description: string;
1422
+ sources: string[];
1423
+ default_limit?: number | undefined;
1424
+ max_limit?: number | undefined;
1425
+ min_confidence?: number | undefined;
825
1426
  }>]>, "many">;
826
1427
  embedding: z.ZodOptional<z.ZodObject<{
827
1428
  provider: z.ZodEnum<["openai"]>;
828
1429
  model: z.ZodString;
829
1430
  dimensions: z.ZodNumber;
830
1431
  }, "strip", z.ZodTypeAny, {
831
- provider: "openai";
832
1432
  model: string;
1433
+ provider: "openai";
833
1434
  dimensions: number;
834
1435
  }, {
835
- provider: "openai";
836
1436
  model: string;
1437
+ provider: "openai";
837
1438
  dimensions: number;
838
1439
  }>>;
839
1440
  indexing: z.ZodOptional<z.ZodObject<{
@@ -860,11 +1461,11 @@ export declare const ServerConfigSchema: z.ZodEffects<z.ZodObject<{
860
1461
  path_triggers: Record<string, string[]>;
861
1462
  }>>;
862
1463
  }, "strip", z.ZodTypeAny, {
863
- sources: {
1464
+ sources: ({
864
1465
  path: string;
865
- type: "code" | "markdown" | "raw-text";
866
- name: string;
1466
+ type: "code" | "markdown" | "raw-text" | "html";
867
1467
  file_patterns: string[];
1468
+ name: string;
868
1469
  chunk: {
869
1470
  target_tokens?: number | undefined;
870
1471
  overlap_tokens?: number | undefined;
@@ -883,10 +1484,49 @@ export declare const ServerConfigSchema: z.ZodEffects<z.ZodObject<{
883
1484
  exclude_patterns?: string[] | undefined;
884
1485
  skip_dirs?: string[] | undefined;
885
1486
  max_file_size?: number | undefined;
886
- }[];
1487
+ version?: string | undefined;
1488
+ category?: "faq" | undefined;
1489
+ } | {
1490
+ type: "slack";
1491
+ name: string;
1492
+ chunk: {
1493
+ target_tokens?: number | undefined;
1494
+ overlap_tokens?: number | undefined;
1495
+ target_lines?: number | undefined;
1496
+ overlap_lines?: number | undefined;
1497
+ };
1498
+ category: "faq";
1499
+ channels: string[];
1500
+ confidence_threshold: number;
1501
+ trigger_emoji: string;
1502
+ min_thread_replies: number;
1503
+ version?: string | undefined;
1504
+ distiller_model?: string | undefined;
1505
+ } | {
1506
+ type: "discord";
1507
+ name: string;
1508
+ chunk: {
1509
+ target_tokens?: number | undefined;
1510
+ overlap_tokens?: number | undefined;
1511
+ target_lines?: number | undefined;
1512
+ overlap_lines?: number | undefined;
1513
+ };
1514
+ category: "faq";
1515
+ channels: {
1516
+ type: "text" | "forum";
1517
+ id: string;
1518
+ }[];
1519
+ confidence_threshold: number;
1520
+ min_thread_replies: number;
1521
+ guild_id: string;
1522
+ version?: string | undefined;
1523
+ distiller_model?: string | undefined;
1524
+ })[];
887
1525
  server: {
888
1526
  name: string;
889
1527
  version: string;
1528
+ max_sessions_per_ip?: number | undefined;
1529
+ session_ttl_minutes?: number | undefined;
890
1530
  };
891
1531
  tools: ({
892
1532
  type: "search";
@@ -896,6 +1536,7 @@ export declare const ServerConfigSchema: z.ZodEffects<z.ZodObject<{
896
1536
  default_limit: number;
897
1537
  max_limit: number;
898
1538
  result_format: "code" | "docs" | "raw";
1539
+ min_score?: number | undefined;
899
1540
  } | {
900
1541
  type: "bash";
901
1542
  name: string;
@@ -923,10 +1564,18 @@ export declare const ServerConfigSchema: z.ZodEffects<z.ZodObject<{
923
1564
  description?: string | undefined;
924
1565
  required?: boolean | undefined;
925
1566
  }>;
1567
+ } | {
1568
+ type: "knowledge";
1569
+ name: string;
1570
+ description: string;
1571
+ default_limit: number;
1572
+ max_limit: number;
1573
+ sources: string[];
1574
+ min_confidence: number;
926
1575
  })[];
927
1576
  embedding?: {
928
- provider: "openai";
929
1577
  model: string;
1578
+ provider: "openai";
930
1579
  dimensions: number;
931
1580
  } | undefined;
932
1581
  indexing?: {
@@ -939,11 +1588,11 @@ export declare const ServerConfigSchema: z.ZodEffects<z.ZodObject<{
939
1588
  path_triggers: Record<string, string[]>;
940
1589
  } | undefined;
941
1590
  }, {
942
- sources: {
1591
+ sources: ({
943
1592
  path: string;
944
- type: "code" | "markdown" | "raw-text";
945
- name: string;
1593
+ type: "code" | "markdown" | "raw-text" | "html";
946
1594
  file_patterns: string[];
1595
+ name: string;
947
1596
  chunk: {
948
1597
  target_tokens?: number | undefined;
949
1598
  overlap_tokens?: number | undefined;
@@ -962,10 +1611,49 @@ export declare const ServerConfigSchema: z.ZodEffects<z.ZodObject<{
962
1611
  exclude_patterns?: string[] | undefined;
963
1612
  skip_dirs?: string[] | undefined;
964
1613
  max_file_size?: number | undefined;
965
- }[];
1614
+ version?: string | undefined;
1615
+ category?: "faq" | undefined;
1616
+ } | {
1617
+ type: "slack";
1618
+ name: string;
1619
+ chunk: {
1620
+ target_tokens?: number | undefined;
1621
+ overlap_tokens?: number | undefined;
1622
+ target_lines?: number | undefined;
1623
+ overlap_lines?: number | undefined;
1624
+ };
1625
+ channels: string[];
1626
+ version?: string | undefined;
1627
+ category?: "faq" | undefined;
1628
+ confidence_threshold?: number | undefined;
1629
+ trigger_emoji?: string | undefined;
1630
+ min_thread_replies?: number | undefined;
1631
+ distiller_model?: string | undefined;
1632
+ } | {
1633
+ type: "discord";
1634
+ name: string;
1635
+ chunk: {
1636
+ target_tokens?: number | undefined;
1637
+ overlap_tokens?: number | undefined;
1638
+ target_lines?: number | undefined;
1639
+ overlap_lines?: number | undefined;
1640
+ };
1641
+ channels: {
1642
+ type: "text" | "forum";
1643
+ id: string;
1644
+ }[];
1645
+ guild_id: string;
1646
+ version?: string | undefined;
1647
+ category?: "faq" | undefined;
1648
+ confidence_threshold?: number | undefined;
1649
+ min_thread_replies?: number | undefined;
1650
+ distiller_model?: string | undefined;
1651
+ })[];
966
1652
  server: {
967
1653
  name: string;
968
1654
  version: string;
1655
+ max_sessions_per_ip?: number | undefined;
1656
+ session_ttl_minutes?: number | undefined;
969
1657
  };
970
1658
  tools: ({
971
1659
  type: "search";
@@ -975,6 +1663,7 @@ export declare const ServerConfigSchema: z.ZodEffects<z.ZodObject<{
975
1663
  default_limit: number;
976
1664
  max_limit: number;
977
1665
  result_format: "code" | "docs" | "raw";
1666
+ min_score?: number | undefined;
978
1667
  } | {
979
1668
  type: "bash";
980
1669
  name: string;
@@ -1002,10 +1691,18 @@ export declare const ServerConfigSchema: z.ZodEffects<z.ZodObject<{
1002
1691
  description?: string | undefined;
1003
1692
  required?: boolean | undefined;
1004
1693
  }>;
1694
+ } | {
1695
+ type: "knowledge";
1696
+ name: string;
1697
+ description: string;
1698
+ sources: string[];
1699
+ default_limit?: number | undefined;
1700
+ max_limit?: number | undefined;
1701
+ min_confidence?: number | undefined;
1005
1702
  })[];
1006
1703
  embedding?: {
1007
- provider: "openai";
1008
1704
  model: string;
1705
+ provider: "openai";
1009
1706
  dimensions: number;
1010
1707
  } | undefined;
1011
1708
  indexing?: {
@@ -1018,11 +1715,11 @@ export declare const ServerConfigSchema: z.ZodEffects<z.ZodObject<{
1018
1715
  path_triggers: Record<string, string[]>;
1019
1716
  } | undefined;
1020
1717
  }>, {
1021
- sources: {
1718
+ sources: ({
1022
1719
  path: string;
1023
- type: "code" | "markdown" | "raw-text";
1024
- name: string;
1720
+ type: "code" | "markdown" | "raw-text" | "html";
1025
1721
  file_patterns: string[];
1722
+ name: string;
1026
1723
  chunk: {
1027
1724
  target_tokens?: number | undefined;
1028
1725
  overlap_tokens?: number | undefined;
@@ -1041,10 +1738,49 @@ export declare const ServerConfigSchema: z.ZodEffects<z.ZodObject<{
1041
1738
  exclude_patterns?: string[] | undefined;
1042
1739
  skip_dirs?: string[] | undefined;
1043
1740
  max_file_size?: number | undefined;
1044
- }[];
1741
+ version?: string | undefined;
1742
+ category?: "faq" | undefined;
1743
+ } | {
1744
+ type: "slack";
1745
+ name: string;
1746
+ chunk: {
1747
+ target_tokens?: number | undefined;
1748
+ overlap_tokens?: number | undefined;
1749
+ target_lines?: number | undefined;
1750
+ overlap_lines?: number | undefined;
1751
+ };
1752
+ category: "faq";
1753
+ channels: string[];
1754
+ confidence_threshold: number;
1755
+ trigger_emoji: string;
1756
+ min_thread_replies: number;
1757
+ version?: string | undefined;
1758
+ distiller_model?: string | undefined;
1759
+ } | {
1760
+ type: "discord";
1761
+ name: string;
1762
+ chunk: {
1763
+ target_tokens?: number | undefined;
1764
+ overlap_tokens?: number | undefined;
1765
+ target_lines?: number | undefined;
1766
+ overlap_lines?: number | undefined;
1767
+ };
1768
+ category: "faq";
1769
+ channels: {
1770
+ type: "text" | "forum";
1771
+ id: string;
1772
+ }[];
1773
+ confidence_threshold: number;
1774
+ min_thread_replies: number;
1775
+ guild_id: string;
1776
+ version?: string | undefined;
1777
+ distiller_model?: string | undefined;
1778
+ })[];
1045
1779
  server: {
1046
1780
  name: string;
1047
1781
  version: string;
1782
+ max_sessions_per_ip?: number | undefined;
1783
+ session_ttl_minutes?: number | undefined;
1048
1784
  };
1049
1785
  tools: ({
1050
1786
  type: "search";
@@ -1054,6 +1790,7 @@ export declare const ServerConfigSchema: z.ZodEffects<z.ZodObject<{
1054
1790
  default_limit: number;
1055
1791
  max_limit: number;
1056
1792
  result_format: "code" | "docs" | "raw";
1793
+ min_score?: number | undefined;
1057
1794
  } | {
1058
1795
  type: "bash";
1059
1796
  name: string;
@@ -1081,10 +1818,18 @@ export declare const ServerConfigSchema: z.ZodEffects<z.ZodObject<{
1081
1818
  description?: string | undefined;
1082
1819
  required?: boolean | undefined;
1083
1820
  }>;
1821
+ } | {
1822
+ type: "knowledge";
1823
+ name: string;
1824
+ description: string;
1825
+ default_limit: number;
1826
+ max_limit: number;
1827
+ sources: string[];
1828
+ min_confidence: number;
1084
1829
  })[];
1085
1830
  embedding?: {
1086
- provider: "openai";
1087
1831
  model: string;
1832
+ provider: "openai";
1088
1833
  dimensions: number;
1089
1834
  } | undefined;
1090
1835
  indexing?: {
@@ -1097,11 +1842,11 @@ export declare const ServerConfigSchema: z.ZodEffects<z.ZodObject<{
1097
1842
  path_triggers: Record<string, string[]>;
1098
1843
  } | undefined;
1099
1844
  }, {
1100
- sources: {
1845
+ sources: ({
1101
1846
  path: string;
1102
- type: "code" | "markdown" | "raw-text";
1103
- name: string;
1847
+ type: "code" | "markdown" | "raw-text" | "html";
1104
1848
  file_patterns: string[];
1849
+ name: string;
1105
1850
  chunk: {
1106
1851
  target_tokens?: number | undefined;
1107
1852
  overlap_tokens?: number | undefined;
@@ -1120,10 +1865,49 @@ export declare const ServerConfigSchema: z.ZodEffects<z.ZodObject<{
1120
1865
  exclude_patterns?: string[] | undefined;
1121
1866
  skip_dirs?: string[] | undefined;
1122
1867
  max_file_size?: number | undefined;
1123
- }[];
1868
+ version?: string | undefined;
1869
+ category?: "faq" | undefined;
1870
+ } | {
1871
+ type: "slack";
1872
+ name: string;
1873
+ chunk: {
1874
+ target_tokens?: number | undefined;
1875
+ overlap_tokens?: number | undefined;
1876
+ target_lines?: number | undefined;
1877
+ overlap_lines?: number | undefined;
1878
+ };
1879
+ channels: string[];
1880
+ version?: string | undefined;
1881
+ category?: "faq" | undefined;
1882
+ confidence_threshold?: number | undefined;
1883
+ trigger_emoji?: string | undefined;
1884
+ min_thread_replies?: number | undefined;
1885
+ distiller_model?: string | undefined;
1886
+ } | {
1887
+ type: "discord";
1888
+ name: string;
1889
+ chunk: {
1890
+ target_tokens?: number | undefined;
1891
+ overlap_tokens?: number | undefined;
1892
+ target_lines?: number | undefined;
1893
+ overlap_lines?: number | undefined;
1894
+ };
1895
+ channels: {
1896
+ type: "text" | "forum";
1897
+ id: string;
1898
+ }[];
1899
+ guild_id: string;
1900
+ version?: string | undefined;
1901
+ category?: "faq" | undefined;
1902
+ confidence_threshold?: number | undefined;
1903
+ min_thread_replies?: number | undefined;
1904
+ distiller_model?: string | undefined;
1905
+ })[];
1124
1906
  server: {
1125
1907
  name: string;
1126
1908
  version: string;
1909
+ max_sessions_per_ip?: number | undefined;
1910
+ session_ttl_minutes?: number | undefined;
1127
1911
  };
1128
1912
  tools: ({
1129
1913
  type: "search";
@@ -1133,6 +1917,7 @@ export declare const ServerConfigSchema: z.ZodEffects<z.ZodObject<{
1133
1917
  default_limit: number;
1134
1918
  max_limit: number;
1135
1919
  result_format: "code" | "docs" | "raw";
1920
+ min_score?: number | undefined;
1136
1921
  } | {
1137
1922
  type: "bash";
1138
1923
  name: string;
@@ -1160,10 +1945,18 @@ export declare const ServerConfigSchema: z.ZodEffects<z.ZodObject<{
1160
1945
  description?: string | undefined;
1161
1946
  required?: boolean | undefined;
1162
1947
  }>;
1948
+ } | {
1949
+ type: "knowledge";
1950
+ name: string;
1951
+ description: string;
1952
+ sources: string[];
1953
+ default_limit?: number | undefined;
1954
+ max_limit?: number | undefined;
1955
+ min_confidence?: number | undefined;
1163
1956
  })[];
1164
1957
  embedding?: {
1165
- provider: "openai";
1166
1958
  model: string;
1959
+ provider: "openai";
1167
1960
  dimensions: number;
1168
1961
  } | undefined;
1169
1962
  indexing?: {
@@ -1179,15 +1972,23 @@ export declare const ServerConfigSchema: z.ZodEffects<z.ZodObject<{
1179
1972
  export type UrlDerivationConfig = z.infer<typeof UrlDerivationConfigSchema>;
1180
1973
  export type ChunkConfig = z.infer<typeof ChunkConfigSchema>;
1181
1974
  export type SourceConfig = z.infer<typeof SourceConfigSchema>;
1975
+ export type FileSourceConfig = z.infer<typeof FileSourceConfigSchema>;
1976
+ export type SlackSourceConfig = z.infer<typeof SlackSourceConfigSchema>;
1977
+ export type DiscordChannelConfig = z.infer<typeof DiscordChannelConfigSchema>;
1978
+ export type DiscordSourceConfig = z.infer<typeof DiscordSourceConfigSchema>;
1182
1979
  export type SearchToolConfig = z.infer<typeof SearchToolConfigSchema>;
1183
1980
  export type BashToolConfig = z.infer<typeof BashToolConfigSchema>;
1184
1981
  export type CollectToolConfig = z.infer<typeof CollectToolConfigSchema>;
1982
+ export type KnowledgeToolConfig = z.infer<typeof KnowledgeToolConfigSchema>;
1185
1983
  export type EmbeddingConfig = z.infer<typeof EmbeddingConfigSchema>;
1186
1984
  export type IndexingConfig = z.infer<typeof IndexingConfigSchema>;
1187
1985
  export type WebhookConfig = z.infer<typeof WebhookConfigSchema>;
1188
1986
  export type ServerConfig = z.infer<typeof ServerConfigSchema>;
1189
1987
  export type BashCacheConfig = z.infer<typeof BashCacheConfigSchema>;
1190
1988
  export type BashOptions = z.infer<typeof BashOptionsSchema>;
1989
+ export declare function isFileSourceConfig(config: SourceConfig): config is FileSourceConfig;
1990
+ export declare function isSlackSourceConfig(config: SourceConfig): config is SlackSourceConfig;
1991
+ export declare function isDiscordSourceConfig(config: SourceConfig): config is DiscordSourceConfig;
1191
1992
  export interface Chunk {
1192
1993
  source_name: string;
1193
1994
  source_url?: string | null;
@@ -1202,6 +2003,7 @@ export interface Chunk {
1202
2003
  chunk_index: number;
1203
2004
  metadata?: Record<string, unknown>;
1204
2005
  commit_sha?: string | null;
2006
+ version?: string | null;
1205
2007
  }
1206
2008
  export interface ChunkResult {
1207
2009
  id: number;
@@ -1216,6 +2018,10 @@ export interface ChunkResult {
1216
2018
  language: string | null;
1217
2019
  similarity: number;
1218
2020
  }
2021
+ export interface FaqChunkResult extends ChunkResult {
2022
+ metadata: Record<string, unknown>;
2023
+ confidence: number;
2024
+ }
1219
2025
  export interface ChunkOutput {
1220
2026
  content: string;
1221
2027
  title?: string;