cursor-recursive-rag 0.2.0-alpha.2 → 0.2.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 (210) hide show
  1. package/README.md +179 -203
  2. package/dist/adapters/llm/anthropic.d.ts +27 -0
  3. package/dist/adapters/llm/anthropic.d.ts.map +1 -0
  4. package/dist/adapters/llm/anthropic.js +287 -0
  5. package/dist/adapters/llm/anthropic.js.map +1 -0
  6. package/dist/adapters/llm/base.d.ts +62 -0
  7. package/dist/adapters/llm/base.d.ts.map +1 -0
  8. package/dist/adapters/llm/base.js +140 -0
  9. package/dist/adapters/llm/base.js.map +1 -0
  10. package/dist/adapters/llm/deepseek.d.ts +24 -0
  11. package/dist/adapters/llm/deepseek.d.ts.map +1 -0
  12. package/dist/adapters/llm/deepseek.js +228 -0
  13. package/dist/adapters/llm/deepseek.js.map +1 -0
  14. package/dist/adapters/llm/groq.d.ts +25 -0
  15. package/dist/adapters/llm/groq.d.ts.map +1 -0
  16. package/dist/adapters/llm/groq.js +265 -0
  17. package/dist/adapters/llm/groq.js.map +1 -0
  18. package/dist/adapters/llm/index.d.ts +62 -0
  19. package/dist/adapters/llm/index.d.ts.map +1 -0
  20. package/dist/adapters/llm/index.js +380 -0
  21. package/dist/adapters/llm/index.js.map +1 -0
  22. package/dist/adapters/llm/ollama.d.ts +23 -0
  23. package/dist/adapters/llm/ollama.d.ts.map +1 -0
  24. package/dist/adapters/llm/ollama.js +261 -0
  25. package/dist/adapters/llm/ollama.js.map +1 -0
  26. package/dist/adapters/llm/openai.d.ts +22 -0
  27. package/dist/adapters/llm/openai.d.ts.map +1 -0
  28. package/dist/adapters/llm/openai.js +232 -0
  29. package/dist/adapters/llm/openai.js.map +1 -0
  30. package/dist/adapters/llm/openrouter.d.ts +27 -0
  31. package/dist/adapters/llm/openrouter.d.ts.map +1 -0
  32. package/dist/adapters/llm/openrouter.js +305 -0
  33. package/dist/adapters/llm/openrouter.js.map +1 -0
  34. package/dist/adapters/vector/index.d.ts.map +1 -1
  35. package/dist/adapters/vector/index.js +8 -0
  36. package/dist/adapters/vector/index.js.map +1 -1
  37. package/dist/adapters/vector/redis-native.d.ts +35 -0
  38. package/dist/adapters/vector/redis-native.d.ts.map +1 -0
  39. package/dist/adapters/vector/redis-native.js +170 -0
  40. package/dist/adapters/vector/redis-native.js.map +1 -0
  41. package/dist/cli/commands/chat.d.ts +4 -0
  42. package/dist/cli/commands/chat.d.ts.map +1 -0
  43. package/dist/cli/commands/chat.js +374 -0
  44. package/dist/cli/commands/chat.js.map +1 -0
  45. package/dist/cli/commands/maintenance.d.ts +4 -0
  46. package/dist/cli/commands/maintenance.d.ts.map +1 -0
  47. package/dist/cli/commands/maintenance.js +237 -0
  48. package/dist/cli/commands/maintenance.js.map +1 -0
  49. package/dist/cli/commands/rules.d.ts +9 -0
  50. package/dist/cli/commands/rules.d.ts.map +1 -0
  51. package/dist/cli/commands/rules.js +639 -0
  52. package/dist/cli/commands/rules.js.map +1 -0
  53. package/dist/cli/commands/setup.js +5 -4
  54. package/dist/cli/commands/setup.js.map +1 -1
  55. package/dist/cli/index.js +6 -0
  56. package/dist/cli/index.js.map +1 -1
  57. package/dist/config/memoryConfig.d.ts +427 -0
  58. package/dist/config/memoryConfig.d.ts.map +1 -0
  59. package/dist/config/memoryConfig.js +258 -0
  60. package/dist/config/memoryConfig.js.map +1 -0
  61. package/dist/config/rulesConfig.d.ts +486 -0
  62. package/dist/config/rulesConfig.d.ts.map +1 -0
  63. package/dist/config/rulesConfig.js +345 -0
  64. package/dist/config/rulesConfig.js.map +1 -0
  65. package/dist/dashboard/coreTools.d.ts +14 -0
  66. package/dist/dashboard/coreTools.d.ts.map +1 -0
  67. package/dist/dashboard/coreTools.js +413 -0
  68. package/dist/dashboard/coreTools.js.map +1 -0
  69. package/dist/dashboard/public/index.html +1982 -13
  70. package/dist/dashboard/server.d.ts +1 -8
  71. package/dist/dashboard/server.d.ts.map +1 -1
  72. package/dist/dashboard/server.js +846 -13
  73. package/dist/dashboard/server.js.map +1 -1
  74. package/dist/dashboard/toolRegistry.d.ts +192 -0
  75. package/dist/dashboard/toolRegistry.d.ts.map +1 -0
  76. package/dist/dashboard/toolRegistry.js +322 -0
  77. package/dist/dashboard/toolRegistry.js.map +1 -0
  78. package/dist/proxy/index.d.ts +1 -1
  79. package/dist/proxy/index.d.ts.map +1 -1
  80. package/dist/proxy/index.js +9 -6
  81. package/dist/proxy/index.js.map +1 -1
  82. package/dist/server/index.js +21 -0
  83. package/dist/server/index.js.map +1 -1
  84. package/dist/server/tools/crawl.d.ts.map +1 -1
  85. package/dist/server/tools/crawl.js +8 -0
  86. package/dist/server/tools/crawl.js.map +1 -1
  87. package/dist/server/tools/index.d.ts.map +1 -1
  88. package/dist/server/tools/index.js +19 -1
  89. package/dist/server/tools/index.js.map +1 -1
  90. package/dist/server/tools/ingest.d.ts.map +1 -1
  91. package/dist/server/tools/ingest.js +5 -0
  92. package/dist/server/tools/ingest.js.map +1 -1
  93. package/dist/server/tools/memory.d.ts +250 -0
  94. package/dist/server/tools/memory.d.ts.map +1 -0
  95. package/dist/server/tools/memory.js +472 -0
  96. package/dist/server/tools/memory.js.map +1 -0
  97. package/dist/server/tools/recursive-query.d.ts.map +1 -1
  98. package/dist/server/tools/recursive-query.js +6 -0
  99. package/dist/server/tools/recursive-query.js.map +1 -1
  100. package/dist/server/tools/search.d.ts.map +1 -1
  101. package/dist/server/tools/search.js +6 -0
  102. package/dist/server/tools/search.js.map +1 -1
  103. package/dist/services/activity-log.d.ts +10 -0
  104. package/dist/services/activity-log.d.ts.map +1 -0
  105. package/dist/services/activity-log.js +53 -0
  106. package/dist/services/activity-log.js.map +1 -0
  107. package/dist/services/categoryManager.d.ts +110 -0
  108. package/dist/services/categoryManager.d.ts.map +1 -0
  109. package/dist/services/categoryManager.js +549 -0
  110. package/dist/services/categoryManager.js.map +1 -0
  111. package/dist/services/contextEnvironment.d.ts +206 -0
  112. package/dist/services/contextEnvironment.d.ts.map +1 -0
  113. package/dist/services/contextEnvironment.js +481 -0
  114. package/dist/services/contextEnvironment.js.map +1 -0
  115. package/dist/services/conversationProcessor.d.ts +99 -0
  116. package/dist/services/conversationProcessor.d.ts.map +1 -0
  117. package/dist/services/conversationProcessor.js +311 -0
  118. package/dist/services/conversationProcessor.js.map +1 -0
  119. package/dist/services/cursorChatReader.d.ts +129 -0
  120. package/dist/services/cursorChatReader.d.ts.map +1 -0
  121. package/dist/services/cursorChatReader.js +419 -0
  122. package/dist/services/cursorChatReader.js.map +1 -0
  123. package/dist/services/decayCalculator.d.ts +85 -0
  124. package/dist/services/decayCalculator.d.ts.map +1 -0
  125. package/dist/services/decayCalculator.js +182 -0
  126. package/dist/services/decayCalculator.js.map +1 -0
  127. package/dist/services/enhancedVectorStore.d.ts +102 -0
  128. package/dist/services/enhancedVectorStore.d.ts.map +1 -0
  129. package/dist/services/enhancedVectorStore.js +245 -0
  130. package/dist/services/enhancedVectorStore.js.map +1 -0
  131. package/dist/services/hybridScorer.d.ts +120 -0
  132. package/dist/services/hybridScorer.d.ts.map +1 -0
  133. package/dist/services/hybridScorer.js +334 -0
  134. package/dist/services/hybridScorer.js.map +1 -0
  135. package/dist/services/knowledgeExtractor.d.ts +45 -0
  136. package/dist/services/knowledgeExtractor.d.ts.map +1 -0
  137. package/dist/services/knowledgeExtractor.js +436 -0
  138. package/dist/services/knowledgeExtractor.js.map +1 -0
  139. package/dist/services/knowledgeStorage.d.ts +102 -0
  140. package/dist/services/knowledgeStorage.d.ts.map +1 -0
  141. package/dist/services/knowledgeStorage.js +383 -0
  142. package/dist/services/knowledgeStorage.js.map +1 -0
  143. package/dist/services/maintenanceScheduler.d.ts +89 -0
  144. package/dist/services/maintenanceScheduler.d.ts.map +1 -0
  145. package/dist/services/maintenanceScheduler.js +479 -0
  146. package/dist/services/maintenanceScheduler.js.map +1 -0
  147. package/dist/services/memoryMetadataStore.d.ts +62 -0
  148. package/dist/services/memoryMetadataStore.d.ts.map +1 -0
  149. package/dist/services/memoryMetadataStore.js +570 -0
  150. package/dist/services/memoryMetadataStore.js.map +1 -0
  151. package/dist/services/recursiveRetrieval.d.ts +122 -0
  152. package/dist/services/recursiveRetrieval.d.ts.map +1 -0
  153. package/dist/services/recursiveRetrieval.js +443 -0
  154. package/dist/services/recursiveRetrieval.js.map +1 -0
  155. package/dist/services/relationshipGraph.d.ts +77 -0
  156. package/dist/services/relationshipGraph.d.ts.map +1 -0
  157. package/dist/services/relationshipGraph.js +411 -0
  158. package/dist/services/relationshipGraph.js.map +1 -0
  159. package/dist/services/rlmSafeguards.d.ts +273 -0
  160. package/dist/services/rlmSafeguards.d.ts.map +1 -0
  161. package/dist/services/rlmSafeguards.js +705 -0
  162. package/dist/services/rlmSafeguards.js.map +1 -0
  163. package/dist/services/rulesAnalyzer.d.ts +119 -0
  164. package/dist/services/rulesAnalyzer.d.ts.map +1 -0
  165. package/dist/services/rulesAnalyzer.js +768 -0
  166. package/dist/services/rulesAnalyzer.js.map +1 -0
  167. package/dist/services/rulesMerger.d.ts +75 -0
  168. package/dist/services/rulesMerger.d.ts.map +1 -0
  169. package/dist/services/rulesMerger.js +404 -0
  170. package/dist/services/rulesMerger.js.map +1 -0
  171. package/dist/services/rulesParser.d.ts +127 -0
  172. package/dist/services/rulesParser.d.ts.map +1 -0
  173. package/dist/services/rulesParser.js +594 -0
  174. package/dist/services/rulesParser.js.map +1 -0
  175. package/dist/services/smartChunker.d.ts +110 -0
  176. package/dist/services/smartChunker.d.ts.map +1 -0
  177. package/dist/services/smartChunker.js +520 -0
  178. package/dist/services/smartChunker.js.map +1 -0
  179. package/dist/types/categories.d.ts +105 -0
  180. package/dist/types/categories.d.ts.map +1 -0
  181. package/dist/types/categories.js +108 -0
  182. package/dist/types/categories.js.map +1 -0
  183. package/dist/types/extractedKnowledge.d.ts +233 -0
  184. package/dist/types/extractedKnowledge.d.ts.map +1 -0
  185. package/dist/types/extractedKnowledge.js +56 -0
  186. package/dist/types/extractedKnowledge.js.map +1 -0
  187. package/dist/types/index.d.ts +9 -2
  188. package/dist/types/index.d.ts.map +1 -1
  189. package/dist/types/index.js +12 -1
  190. package/dist/types/index.js.map +1 -1
  191. package/dist/types/llmProvider.d.ts +282 -0
  192. package/dist/types/llmProvider.d.ts.map +1 -0
  193. package/dist/types/llmProvider.js +48 -0
  194. package/dist/types/llmProvider.js.map +1 -0
  195. package/dist/types/memory.d.ts +227 -0
  196. package/dist/types/memory.d.ts.map +1 -0
  197. package/dist/types/memory.js +76 -0
  198. package/dist/types/memory.js.map +1 -0
  199. package/dist/types/relationships.d.ts +167 -0
  200. package/dist/types/relationships.d.ts.map +1 -0
  201. package/dist/types/relationships.js +106 -0
  202. package/dist/types/relationships.js.map +1 -0
  203. package/dist/types/rulesOptimizer.d.ts +345 -0
  204. package/dist/types/rulesOptimizer.d.ts.map +1 -0
  205. package/dist/types/rulesOptimizer.js +22 -0
  206. package/dist/types/rulesOptimizer.js.map +1 -0
  207. package/docs/cursor-recursive-rag-memory-spec.md +4569 -0
  208. package/docs/cursor-recursive-rag-tasks.md +1355 -0
  209. package/package.json +6 -3
  210. package/restart-rag.sh +16 -0
@@ -0,0 +1,486 @@
1
+ /**
2
+ * Rules Analyzer Configuration
3
+ *
4
+ * User-configurable settings for the rules optimizer.
5
+ * Can be set via:
6
+ * - Config file: ~/.cursor-rag/rules-config.json
7
+ * - Dashboard UI
8
+ * - CLI flags
9
+ */
10
+ import { z } from 'zod';
11
+ /**
12
+ * Custom version check pattern
13
+ */
14
+ export declare const VersionCheckSchema: z.ZodObject<{
15
+ /** Technology name (e.g., "Laravel", "React") */
16
+ name: z.ZodString;
17
+ /** Regex pattern to match version mentions (should have one capture group for version) */
18
+ pattern: z.ZodString;
19
+ /** Current/expected version number */
20
+ currentVersion: z.ZodString;
21
+ /** Whether this check is enabled */
22
+ enabled: z.ZodDefault<z.ZodBoolean>;
23
+ }, "strip", z.ZodTypeAny, {
24
+ pattern: string;
25
+ name: string;
26
+ enabled: boolean;
27
+ currentVersion: string;
28
+ }, {
29
+ pattern: string;
30
+ name: string;
31
+ currentVersion: string;
32
+ enabled?: boolean | undefined;
33
+ }>;
34
+ export type VersionCheck = z.infer<typeof VersionCheckSchema>;
35
+ /**
36
+ * Custom deprecation pattern
37
+ */
38
+ export declare const DeprecationPatternSchema: z.ZodObject<{
39
+ /** Pattern name/identifier */
40
+ name: z.ZodString;
41
+ /** Regex pattern to detect the deprecated usage */
42
+ pattern: z.ZodString;
43
+ /** Human-readable reason why this is deprecated */
44
+ reason: z.ZodString;
45
+ /** Suggested alternative */
46
+ suggestion: z.ZodOptional<z.ZodString>;
47
+ /** Whether this check is enabled */
48
+ enabled: z.ZodDefault<z.ZodBoolean>;
49
+ }, "strip", z.ZodTypeAny, {
50
+ pattern: string;
51
+ name: string;
52
+ enabled: boolean;
53
+ reason: string;
54
+ suggestion?: string | undefined;
55
+ }, {
56
+ pattern: string;
57
+ name: string;
58
+ reason: string;
59
+ enabled?: boolean | undefined;
60
+ suggestion?: string | undefined;
61
+ }>;
62
+ export type DeprecationPattern = z.infer<typeof DeprecationPatternSchema>;
63
+ /**
64
+ * Custom tag extraction pattern
65
+ */
66
+ export declare const TagPatternSchema: z.ZodObject<{
67
+ /** Tag that will be applied */
68
+ tag: z.ZodString;
69
+ /** Regex pattern to match content */
70
+ pattern: z.ZodString;
71
+ /** Whether this pattern is enabled */
72
+ enabled: z.ZodDefault<z.ZodBoolean>;
73
+ }, "strip", z.ZodTypeAny, {
74
+ pattern: string;
75
+ enabled: boolean;
76
+ tag: string;
77
+ }, {
78
+ pattern: string;
79
+ tag: string;
80
+ enabled?: boolean | undefined;
81
+ }>;
82
+ export type TagPattern = z.infer<typeof TagPatternSchema>;
83
+ /**
84
+ * LLM Provider type
85
+ */
86
+ export declare const LLMProviderTypeSchema: z.ZodEnum<["openai", "anthropic", "deepseek", "groq", "ollama", "openrouter"]>;
87
+ export type LLMProviderType = z.infer<typeof LLMProviderTypeSchema>;
88
+ /**
89
+ * LLM configuration for rules analyzer
90
+ */
91
+ export declare const LLMConfigSchema: z.ZodDefault<z.ZodObject<{
92
+ /** Selected provider */
93
+ provider: z.ZodOptional<z.ZodEnum<["openai", "anthropic", "deepseek", "groq", "ollama", "openrouter"]>>;
94
+ /** API key (stored securely) */
95
+ apiKey: z.ZodOptional<z.ZodString>;
96
+ /** Selected model */
97
+ model: z.ZodOptional<z.ZodString>;
98
+ /** Base URL override (for Ollama or custom endpoints) */
99
+ baseUrl: z.ZodOptional<z.ZodString>;
100
+ }, "strip", z.ZodTypeAny, {
101
+ model?: string | undefined;
102
+ provider?: "openai" | "anthropic" | "deepseek" | "groq" | "ollama" | "openrouter" | undefined;
103
+ apiKey?: string | undefined;
104
+ baseUrl?: string | undefined;
105
+ }, {
106
+ model?: string | undefined;
107
+ provider?: "openai" | "anthropic" | "deepseek" | "groq" | "ollama" | "openrouter" | undefined;
108
+ apiKey?: string | undefined;
109
+ baseUrl?: string | undefined;
110
+ }>>;
111
+ export type LLMConfig = z.infer<typeof LLMConfigSchema>;
112
+ /**
113
+ * Natural language rule (interpreted by LLM)
114
+ */
115
+ export declare const NaturalRuleSchema: z.ZodObject<{
116
+ /** The rule description in plain English */
117
+ rule: z.ZodString;
118
+ /** Severity level */
119
+ severity: z.ZodDefault<z.ZodEnum<["error", "warning", "info"]>>;
120
+ /** Whether this rule is enabled */
121
+ enabled: z.ZodDefault<z.ZodBoolean>;
122
+ }, "strip", z.ZodTypeAny, {
123
+ enabled: boolean;
124
+ rule: string;
125
+ severity: "error" | "info" | "warning";
126
+ }, {
127
+ rule: string;
128
+ enabled?: boolean | undefined;
129
+ severity?: "error" | "info" | "warning" | undefined;
130
+ }>;
131
+ export type NaturalRule = z.infer<typeof NaturalRuleSchema>;
132
+ /**
133
+ * Full rules analyzer configuration
134
+ */
135
+ export declare const RulesAnalyzerConfigSchema: z.ZodObject<{
136
+ /** Analysis settings */
137
+ analysis: z.ZodDefault<z.ZodObject<{
138
+ /** Minimum similarity threshold for duplicate detection (0-1) */
139
+ duplicateThreshold: z.ZodDefault<z.ZodNumber>;
140
+ /** Maximum age in days before flagging as potentially outdated */
141
+ maxAgeDays: z.ZodDefault<z.ZodNumber>;
142
+ /** Years back to consider as "old" when referenced */
143
+ oldYearThreshold: z.ZodDefault<z.ZodNumber>;
144
+ /** Whether to detect conflicts */
145
+ detectConflicts: z.ZodDefault<z.ZodBoolean>;
146
+ /** Whether to detect outdated rules */
147
+ detectOutdated: z.ZodDefault<z.ZodBoolean>;
148
+ /** Whether to use LLM for enhanced analysis */
149
+ useLLM: z.ZodDefault<z.ZodBoolean>;
150
+ }, "strip", z.ZodTypeAny, {
151
+ duplicateThreshold: number;
152
+ detectOutdated: boolean;
153
+ detectConflicts: boolean;
154
+ useLLM: boolean;
155
+ maxAgeDays: number;
156
+ oldYearThreshold: number;
157
+ }, {
158
+ duplicateThreshold?: number | undefined;
159
+ detectOutdated?: boolean | undefined;
160
+ detectConflicts?: boolean | undefined;
161
+ useLLM?: boolean | undefined;
162
+ maxAgeDays?: number | undefined;
163
+ oldYearThreshold?: number | undefined;
164
+ }>>;
165
+ /** LLM provider configuration */
166
+ llm: z.ZodDefault<z.ZodDefault<z.ZodObject<{
167
+ /** Selected provider */
168
+ provider: z.ZodOptional<z.ZodEnum<["openai", "anthropic", "deepseek", "groq", "ollama", "openrouter"]>>;
169
+ /** API key (stored securely) */
170
+ apiKey: z.ZodOptional<z.ZodString>;
171
+ /** Selected model */
172
+ model: z.ZodOptional<z.ZodString>;
173
+ /** Base URL override (for Ollama or custom endpoints) */
174
+ baseUrl: z.ZodOptional<z.ZodString>;
175
+ }, "strip", z.ZodTypeAny, {
176
+ model?: string | undefined;
177
+ provider?: "openai" | "anthropic" | "deepseek" | "groq" | "ollama" | "openrouter" | undefined;
178
+ apiKey?: string | undefined;
179
+ baseUrl?: string | undefined;
180
+ }, {
181
+ model?: string | undefined;
182
+ provider?: "openai" | "anthropic" | "deepseek" | "groq" | "ollama" | "openrouter" | undefined;
183
+ apiKey?: string | undefined;
184
+ baseUrl?: string | undefined;
185
+ }>>>;
186
+ /** Natural language rules (LLM-interpreted) */
187
+ naturalRules: z.ZodDefault<z.ZodArray<z.ZodObject<{
188
+ /** The rule description in plain English */
189
+ rule: z.ZodString;
190
+ /** Severity level */
191
+ severity: z.ZodDefault<z.ZodEnum<["error", "warning", "info"]>>;
192
+ /** Whether this rule is enabled */
193
+ enabled: z.ZodDefault<z.ZodBoolean>;
194
+ }, "strip", z.ZodTypeAny, {
195
+ enabled: boolean;
196
+ rule: string;
197
+ severity: "error" | "info" | "warning";
198
+ }, {
199
+ rule: string;
200
+ enabled?: boolean | undefined;
201
+ severity?: "error" | "info" | "warning" | undefined;
202
+ }>, "many">>;
203
+ /** Custom version checks */
204
+ versionChecks: z.ZodDefault<z.ZodArray<z.ZodObject<{
205
+ /** Technology name (e.g., "Laravel", "React") */
206
+ name: z.ZodString;
207
+ /** Regex pattern to match version mentions (should have one capture group for version) */
208
+ pattern: z.ZodString;
209
+ /** Current/expected version number */
210
+ currentVersion: z.ZodString;
211
+ /** Whether this check is enabled */
212
+ enabled: z.ZodDefault<z.ZodBoolean>;
213
+ }, "strip", z.ZodTypeAny, {
214
+ pattern: string;
215
+ name: string;
216
+ enabled: boolean;
217
+ currentVersion: string;
218
+ }, {
219
+ pattern: string;
220
+ name: string;
221
+ currentVersion: string;
222
+ enabled?: boolean | undefined;
223
+ }>, "many">>;
224
+ /** Custom deprecation patterns */
225
+ deprecationPatterns: z.ZodDefault<z.ZodArray<z.ZodObject<{
226
+ /** Pattern name/identifier */
227
+ name: z.ZodString;
228
+ /** Regex pattern to detect the deprecated usage */
229
+ pattern: z.ZodString;
230
+ /** Human-readable reason why this is deprecated */
231
+ reason: z.ZodString;
232
+ /** Suggested alternative */
233
+ suggestion: z.ZodOptional<z.ZodString>;
234
+ /** Whether this check is enabled */
235
+ enabled: z.ZodDefault<z.ZodBoolean>;
236
+ }, "strip", z.ZodTypeAny, {
237
+ pattern: string;
238
+ name: string;
239
+ enabled: boolean;
240
+ reason: string;
241
+ suggestion?: string | undefined;
242
+ }, {
243
+ pattern: string;
244
+ name: string;
245
+ reason: string;
246
+ enabled?: boolean | undefined;
247
+ suggestion?: string | undefined;
248
+ }>, "many">>;
249
+ /** Custom tag extraction patterns */
250
+ tagPatterns: z.ZodDefault<z.ZodArray<z.ZodObject<{
251
+ /** Tag that will be applied */
252
+ tag: z.ZodString;
253
+ /** Regex pattern to match content */
254
+ pattern: z.ZodString;
255
+ /** Whether this pattern is enabled */
256
+ enabled: z.ZodDefault<z.ZodBoolean>;
257
+ }, "strip", z.ZodTypeAny, {
258
+ pattern: string;
259
+ enabled: boolean;
260
+ tag: string;
261
+ }, {
262
+ pattern: string;
263
+ tag: string;
264
+ enabled?: boolean | undefined;
265
+ }>, "many">>;
266
+ /** File patterns */
267
+ files: z.ZodDefault<z.ZodObject<{
268
+ /** Patterns to include */
269
+ include: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
270
+ /** Patterns to exclude */
271
+ exclude: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
272
+ }, "strip", z.ZodTypeAny, {
273
+ include: string[];
274
+ exclude: string[];
275
+ }, {
276
+ include?: string[] | undefined;
277
+ exclude?: string[] | undefined;
278
+ }>>;
279
+ /** Optimization settings */
280
+ optimization: z.ZodDefault<z.ZodObject<{
281
+ /** Aggressiveness level */
282
+ aggressiveness: z.ZodDefault<z.ZodEnum<["conservative", "balanced", "aggressive"]>>;
283
+ /** Maximum tokens per merged rule */
284
+ maxTokensPerRule: z.ZodDefault<z.ZodNumber>;
285
+ /** Create backups before modifications */
286
+ createBackups: z.ZodDefault<z.ZodBoolean>;
287
+ /** Backup directory */
288
+ backupDir: z.ZodDefault<z.ZodString>;
289
+ }, "strip", z.ZodTypeAny, {
290
+ aggressiveness: "conservative" | "balanced" | "aggressive";
291
+ createBackups: boolean;
292
+ backupDir: string;
293
+ maxTokensPerRule: number;
294
+ }, {
295
+ aggressiveness?: "conservative" | "balanced" | "aggressive" | undefined;
296
+ createBackups?: boolean | undefined;
297
+ backupDir?: string | undefined;
298
+ maxTokensPerRule?: number | undefined;
299
+ }>>;
300
+ }, "strip", z.ZodTypeAny, {
301
+ optimization: {
302
+ aggressiveness: "conservative" | "balanced" | "aggressive";
303
+ createBackups: boolean;
304
+ backupDir: string;
305
+ maxTokensPerRule: number;
306
+ };
307
+ analysis: {
308
+ duplicateThreshold: number;
309
+ detectOutdated: boolean;
310
+ detectConflicts: boolean;
311
+ useLLM: boolean;
312
+ maxAgeDays: number;
313
+ oldYearThreshold: number;
314
+ };
315
+ llm: {
316
+ model?: string | undefined;
317
+ provider?: "openai" | "anthropic" | "deepseek" | "groq" | "ollama" | "openrouter" | undefined;
318
+ apiKey?: string | undefined;
319
+ baseUrl?: string | undefined;
320
+ };
321
+ naturalRules: {
322
+ enabled: boolean;
323
+ rule: string;
324
+ severity: "error" | "info" | "warning";
325
+ }[];
326
+ versionChecks: {
327
+ pattern: string;
328
+ name: string;
329
+ enabled: boolean;
330
+ currentVersion: string;
331
+ }[];
332
+ deprecationPatterns: {
333
+ pattern: string;
334
+ name: string;
335
+ enabled: boolean;
336
+ reason: string;
337
+ suggestion?: string | undefined;
338
+ }[];
339
+ tagPatterns: {
340
+ pattern: string;
341
+ enabled: boolean;
342
+ tag: string;
343
+ }[];
344
+ files: {
345
+ include: string[];
346
+ exclude: string[];
347
+ };
348
+ }, {
349
+ optimization?: {
350
+ aggressiveness?: "conservative" | "balanced" | "aggressive" | undefined;
351
+ createBackups?: boolean | undefined;
352
+ backupDir?: string | undefined;
353
+ maxTokensPerRule?: number | undefined;
354
+ } | undefined;
355
+ analysis?: {
356
+ duplicateThreshold?: number | undefined;
357
+ detectOutdated?: boolean | undefined;
358
+ detectConflicts?: boolean | undefined;
359
+ useLLM?: boolean | undefined;
360
+ maxAgeDays?: number | undefined;
361
+ oldYearThreshold?: number | undefined;
362
+ } | undefined;
363
+ llm?: {
364
+ model?: string | undefined;
365
+ provider?: "openai" | "anthropic" | "deepseek" | "groq" | "ollama" | "openrouter" | undefined;
366
+ apiKey?: string | undefined;
367
+ baseUrl?: string | undefined;
368
+ } | undefined;
369
+ naturalRules?: {
370
+ rule: string;
371
+ enabled?: boolean | undefined;
372
+ severity?: "error" | "info" | "warning" | undefined;
373
+ }[] | undefined;
374
+ versionChecks?: {
375
+ pattern: string;
376
+ name: string;
377
+ currentVersion: string;
378
+ enabled?: boolean | undefined;
379
+ }[] | undefined;
380
+ deprecationPatterns?: {
381
+ pattern: string;
382
+ name: string;
383
+ reason: string;
384
+ enabled?: boolean | undefined;
385
+ suggestion?: string | undefined;
386
+ }[] | undefined;
387
+ tagPatterns?: {
388
+ pattern: string;
389
+ tag: string;
390
+ enabled?: boolean | undefined;
391
+ }[] | undefined;
392
+ files?: {
393
+ include?: string[] | undefined;
394
+ exclude?: string[] | undefined;
395
+ } | undefined;
396
+ }>;
397
+ export type RulesAnalyzerConfig = z.infer<typeof RulesAnalyzerConfigSchema>;
398
+ /**
399
+ * Default configuration
400
+ */
401
+ export declare const DEFAULT_RULES_CONFIG: RulesAnalyzerConfig;
402
+ /**
403
+ * Available LLM providers with their requirements
404
+ */
405
+ export declare const LLM_PROVIDERS: readonly [{
406
+ readonly id: "openai";
407
+ readonly name: "OpenAI";
408
+ readonly requiresKey: true;
409
+ readonly placeholder: "sk-...";
410
+ }, {
411
+ readonly id: "anthropic";
412
+ readonly name: "Anthropic";
413
+ readonly requiresKey: true;
414
+ readonly placeholder: "sk-ant-...";
415
+ }, {
416
+ readonly id: "deepseek";
417
+ readonly name: "DeepSeek";
418
+ readonly requiresKey: true;
419
+ readonly placeholder: "sk-...";
420
+ }, {
421
+ readonly id: "groq";
422
+ readonly name: "Groq";
423
+ readonly requiresKey: true;
424
+ readonly placeholder: "gsk_...";
425
+ }, {
426
+ readonly id: "ollama";
427
+ readonly name: "Ollama (Local)";
428
+ readonly requiresKey: false;
429
+ readonly placeholder: "";
430
+ }, {
431
+ readonly id: "openrouter";
432
+ readonly name: "OpenRouter";
433
+ readonly requiresKey: true;
434
+ readonly placeholder: "sk-or-...";
435
+ }];
436
+ /**
437
+ * Example configuration with common patterns (shown in dashboard as templates)
438
+ */
439
+ export declare const EXAMPLE_PATTERNS: {
440
+ versionChecks: {
441
+ name: string;
442
+ pattern: string;
443
+ currentVersion: string;
444
+ enabled: boolean;
445
+ }[];
446
+ deprecationPatterns: {
447
+ name: string;
448
+ pattern: string;
449
+ reason: string;
450
+ suggestion: string;
451
+ enabled: boolean;
452
+ }[];
453
+ tagPatterns: {
454
+ tag: string;
455
+ pattern: string;
456
+ enabled: boolean;
457
+ }[];
458
+ };
459
+ /**
460
+ * Load rules analyzer configuration
461
+ */
462
+ export declare function loadRulesConfig(): RulesAnalyzerConfig;
463
+ /**
464
+ * Save rules analyzer configuration
465
+ */
466
+ export declare function saveRulesConfig(config: RulesAnalyzerConfig): void;
467
+ /**
468
+ * Merge user config with defaults
469
+ */
470
+ export declare function mergeRulesConfig(userConfig: Partial<RulesAnalyzerConfig>): RulesAnalyzerConfig;
471
+ /**
472
+ * Validate a single pattern (for UI validation)
473
+ */
474
+ export declare function validatePattern(pattern: string): {
475
+ valid: boolean;
476
+ error?: string;
477
+ };
478
+ /**
479
+ * Test a pattern against sample content
480
+ */
481
+ export declare function testPattern(pattern: string, content: string): {
482
+ matches: boolean;
483
+ matchedText?: string;
484
+ captureGroups?: string[];
485
+ };
486
+ //# sourceMappingURL=rulesConfig.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"rulesConfig.d.ts","sourceRoot":"","sources":["../../src/config/rulesConfig.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAKxB;;GAEG;AACH,eAAO,MAAM,kBAAkB;IAC7B,iDAAiD;;IAEjD,0FAA0F;;IAE1F,sCAAsC;;IAEtC,oCAAoC;;;;;;;;;;;;EAEpC,CAAC;AAEH,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAC;AAE9D;;GAEG;AACH,eAAO,MAAM,wBAAwB;IACnC,8BAA8B;;IAE9B,mDAAmD;;IAEnD,mDAAmD;;IAEnD,4BAA4B;;IAE5B,oCAAoC;;;;;;;;;;;;;;EAEpC,CAAC;AAEH,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,CAAC;AAE1E;;GAEG;AACH,eAAO,MAAM,gBAAgB;IAC3B,+BAA+B;;IAE/B,qCAAqC;;IAErC,sCAAsC;;;;;;;;;;EAEtC,CAAC;AAEH,MAAM,MAAM,UAAU,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAE1D;;GAEG;AACH,eAAO,MAAM,qBAAqB,gFAOhC,CAAC;AAEH,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC;AAEpE;;GAEG;AACH,eAAO,MAAM,eAAe;IAC1B,wBAAwB;;IAExB,gCAAgC;;IAEhC,qBAAqB;;IAErB,yDAAyD;;;;;;;;;;;;GAE7C,CAAC;AAEf,MAAM,MAAM,SAAS,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,eAAe,CAAC,CAAC;AAExD;;GAEG;AACH,eAAO,MAAM,iBAAiB;IAC5B,4CAA4C;;IAE5C,qBAAqB;;IAErB,mCAAmC;;;;;;;;;;EAEnC,CAAC;AAEH,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAE5D;;GAEG;AACH,eAAO,MAAM,yBAAyB;IACpC,wBAAwB;;QAEtB,iEAAiE;;QAEjE,kEAAkE;;QAElE,sDAAsD;;QAEtD,kCAAkC;;QAElC,uCAAuC;;QAEvC,+CAA+C;;;;;;;;;;;;;;;;;IAIjD,iCAAiC;;QA9CjC,wBAAwB;;QAExB,gCAAgC;;QAEhC,qBAAqB;;QAErB,yDAAyD;;;;;;;;;;;;;IA2CzD,+CAA+C;;QAjC/C,4CAA4C;;QAE5C,qBAAqB;;QAErB,mCAAmC;;;;;;;;;;;IAgCnC,4BAA4B;;QAlH5B,iDAAiD;;QAEjD,0FAA0F;;QAE1F,sCAAsC;;QAEtC,oCAAoC;;;;;;;;;;;;;IA+GpC,kCAAkC;;QArGlC,8BAA8B;;QAE9B,mDAAmD;;QAEnD,mDAAmD;;QAEnD,4BAA4B;;QAE5B,oCAAoC;;;;;;;;;;;;;;;IAgGpC,qCAAqC;;QAtFrC,+BAA+B;;QAE/B,qCAAqC;;QAErC,sCAAsC;;;;;;;;;;;IAqFtC,oBAAoB;;QAElB,0BAA0B;;QAE1B,0BAA0B;;;;;;;;;IAI5B,4BAA4B;;QAE1B,2BAA2B;;QAE3B,qCAAqC;;QAErC,0CAA0C;;QAE1C,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAGzB,CAAC;AAEH,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,yBAAyB,CAAC,CAAC;AAE5E;;GAEG;AACH,eAAO,MAAM,oBAAoB,EAAE,mBAwBlC,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAOhB,CAAC;AAEX;;GAEG;AACH,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;CAwE5B,CAAC;AASF;;GAEG;AACH,wBAAgB,eAAe,IAAI,mBAAmB,CAgBrD;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,MAAM,EAAE,mBAAmB,GAAG,IAAI,CAWjE;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAC9B,UAAU,EAAE,OAAO,CAAC,mBAAmB,CAAC,GACvC,mBAAmB,CAiBrB;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,OAAO,EAAE,MAAM,GAAG;IAAE,KAAK,EAAE,OAAO,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CAUnF;AAED;;GAEG;AACH,wBAAgB,WAAW,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG;IAC7D,OAAO,EAAE,OAAO,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;CAC1B,CAiBA"}