@agenticc/core 1.0.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 (196) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +370 -0
  3. package/README.zh-CN.md +372 -0
  4. package/dist/audit/index.d.ts +9 -0
  5. package/dist/audit/index.d.ts.map +1 -0
  6. package/dist/audit/index.js +9 -0
  7. package/dist/audit/index.js.map +1 -0
  8. package/dist/audit/logger.d.ts +211 -0
  9. package/dist/audit/logger.d.ts.map +1 -0
  10. package/dist/audit/logger.js +268 -0
  11. package/dist/audit/logger.js.map +1 -0
  12. package/dist/audit/query.d.ts +164 -0
  13. package/dist/audit/query.d.ts.map +1 -0
  14. package/dist/audit/query.js +250 -0
  15. package/dist/audit/query.js.map +1 -0
  16. package/dist/conversation/context-builder.d.ts +119 -0
  17. package/dist/conversation/context-builder.d.ts.map +1 -0
  18. package/dist/conversation/context-builder.js +252 -0
  19. package/dist/conversation/context-builder.js.map +1 -0
  20. package/dist/conversation/index.d.ts +10 -0
  21. package/dist/conversation/index.d.ts.map +1 -0
  22. package/dist/conversation/index.js +10 -0
  23. package/dist/conversation/index.js.map +1 -0
  24. package/dist/conversation/message-store.d.ts +231 -0
  25. package/dist/conversation/message-store.d.ts.map +1 -0
  26. package/dist/conversation/message-store.js +404 -0
  27. package/dist/conversation/message-store.js.map +1 -0
  28. package/dist/conversation/session.d.ts +201 -0
  29. package/dist/conversation/session.d.ts.map +1 -0
  30. package/dist/conversation/session.js +285 -0
  31. package/dist/conversation/session.js.map +1 -0
  32. package/dist/core/agent.d.ts +277 -0
  33. package/dist/core/agent.d.ts.map +1 -0
  34. package/dist/core/agent.js +674 -0
  35. package/dist/core/agent.js.map +1 -0
  36. package/dist/core/agentic-loop.d.ts +98 -0
  37. package/dist/core/agentic-loop.d.ts.map +1 -0
  38. package/dist/core/agentic-loop.js +496 -0
  39. package/dist/core/agentic-loop.js.map +1 -0
  40. package/dist/core/index.d.ts +14 -0
  41. package/dist/core/index.d.ts.map +1 -0
  42. package/dist/core/index.js +14 -0
  43. package/dist/core/index.js.map +1 -0
  44. package/dist/core/intent-parser.d.ts +101 -0
  45. package/dist/core/intent-parser.d.ts.map +1 -0
  46. package/dist/core/intent-parser.js +221 -0
  47. package/dist/core/intent-parser.js.map +1 -0
  48. package/dist/core/plan-generator.d.ts +133 -0
  49. package/dist/core/plan-generator.d.ts.map +1 -0
  50. package/dist/core/plan-generator.js +294 -0
  51. package/dist/core/plan-generator.js.map +1 -0
  52. package/dist/core/plugin-manager.d.ts +120 -0
  53. package/dist/core/plugin-manager.d.ts.map +1 -0
  54. package/dist/core/plugin-manager.js +369 -0
  55. package/dist/core/plugin-manager.js.map +1 -0
  56. package/dist/core/response-handler.d.ts +141 -0
  57. package/dist/core/response-handler.d.ts.map +1 -0
  58. package/dist/core/response-handler.js +384 -0
  59. package/dist/core/response-handler.js.map +1 -0
  60. package/dist/core/tool-executor.d.ts +143 -0
  61. package/dist/core/tool-executor.d.ts.map +1 -0
  62. package/dist/core/tool-executor.js +354 -0
  63. package/dist/core/tool-executor.js.map +1 -0
  64. package/dist/core/tool-registry.d.ts +133 -0
  65. package/dist/core/tool-registry.d.ts.map +1 -0
  66. package/dist/core/tool-registry.js +252 -0
  67. package/dist/core/tool-registry.js.map +1 -0
  68. package/dist/index.d.ts +44 -0
  69. package/dist/index.d.ts.map +1 -0
  70. package/dist/index.js +47 -0
  71. package/dist/index.js.map +1 -0
  72. package/dist/knowledge/chunker.d.ts +78 -0
  73. package/dist/knowledge/chunker.d.ts.map +1 -0
  74. package/dist/knowledge/chunker.js +233 -0
  75. package/dist/knowledge/chunker.js.map +1 -0
  76. package/dist/knowledge/embedder.d.ts +93 -0
  77. package/dist/knowledge/embedder.d.ts.map +1 -0
  78. package/dist/knowledge/embedder.js +205 -0
  79. package/dist/knowledge/embedder.js.map +1 -0
  80. package/dist/knowledge/index.d.ts +10 -0
  81. package/dist/knowledge/index.d.ts.map +1 -0
  82. package/dist/knowledge/index.js +11 -0
  83. package/dist/knowledge/index.js.map +1 -0
  84. package/dist/knowledge/loaders/index.d.ts +10 -0
  85. package/dist/knowledge/loaders/index.d.ts.map +1 -0
  86. package/dist/knowledge/loaders/index.js +10 -0
  87. package/dist/knowledge/loaders/index.js.map +1 -0
  88. package/dist/knowledge/loaders/markdown.d.ts +88 -0
  89. package/dist/knowledge/loaders/markdown.d.ts.map +1 -0
  90. package/dist/knowledge/loaders/markdown.js +205 -0
  91. package/dist/knowledge/loaders/markdown.js.map +1 -0
  92. package/dist/knowledge/loaders/yaml.d.ts +112 -0
  93. package/dist/knowledge/loaders/yaml.d.ts.map +1 -0
  94. package/dist/knowledge/loaders/yaml.js +368 -0
  95. package/dist/knowledge/loaders/yaml.js.map +1 -0
  96. package/dist/knowledge/retriever.d.ts +144 -0
  97. package/dist/knowledge/retriever.d.ts.map +1 -0
  98. package/dist/knowledge/retriever.js +399 -0
  99. package/dist/knowledge/retriever.js.map +1 -0
  100. package/dist/knowledge/store.d.ts +146 -0
  101. package/dist/knowledge/store.d.ts.map +1 -0
  102. package/dist/knowledge/store.js +420 -0
  103. package/dist/knowledge/store.js.map +1 -0
  104. package/dist/llm/adapter.d.ts +194 -0
  105. package/dist/llm/adapter.d.ts.map +1 -0
  106. package/dist/llm/adapter.js +42 -0
  107. package/dist/llm/adapter.js.map +1 -0
  108. package/dist/llm/adapters/anyrouter.d.ts +84 -0
  109. package/dist/llm/adapters/anyrouter.d.ts.map +1 -0
  110. package/dist/llm/adapters/anyrouter.js +372 -0
  111. package/dist/llm/adapters/anyrouter.js.map +1 -0
  112. package/dist/llm/adapters/claude.d.ts +66 -0
  113. package/dist/llm/adapters/claude.d.ts.map +1 -0
  114. package/dist/llm/adapters/claude.js +323 -0
  115. package/dist/llm/adapters/claude.js.map +1 -0
  116. package/dist/llm/adapters/index.d.ts +12 -0
  117. package/dist/llm/adapters/index.d.ts.map +1 -0
  118. package/dist/llm/adapters/index.js +12 -0
  119. package/dist/llm/adapters/index.js.map +1 -0
  120. package/dist/llm/adapters/mimo.d.ts +85 -0
  121. package/dist/llm/adapters/mimo.d.ts.map +1 -0
  122. package/dist/llm/adapters/mimo.js +316 -0
  123. package/dist/llm/adapters/mimo.js.map +1 -0
  124. package/dist/llm/adapters/openai.d.ts +53 -0
  125. package/dist/llm/adapters/openai.d.ts.map +1 -0
  126. package/dist/llm/adapters/openai.js +293 -0
  127. package/dist/llm/adapters/openai.js.map +1 -0
  128. package/dist/llm/adapters/qwen.d.ts +53 -0
  129. package/dist/llm/adapters/qwen.d.ts.map +1 -0
  130. package/dist/llm/adapters/qwen.js +299 -0
  131. package/dist/llm/adapters/qwen.js.map +1 -0
  132. package/dist/llm/adapters/siliconflow.d.ts +69 -0
  133. package/dist/llm/adapters/siliconflow.d.ts.map +1 -0
  134. package/dist/llm/adapters/siliconflow.js +331 -0
  135. package/dist/llm/adapters/siliconflow.js.map +1 -0
  136. package/dist/llm/index.d.ts +9 -0
  137. package/dist/llm/index.d.ts.map +1 -0
  138. package/dist/llm/index.js +12 -0
  139. package/dist/llm/index.js.map +1 -0
  140. package/dist/llm/manager.d.ts +97 -0
  141. package/dist/llm/manager.d.ts.map +1 -0
  142. package/dist/llm/manager.js +337 -0
  143. package/dist/llm/manager.js.map +1 -0
  144. package/dist/test-utils/arbitraries.d.ts +230 -0
  145. package/dist/test-utils/arbitraries.d.ts.map +1 -0
  146. package/dist/test-utils/arbitraries.js +280 -0
  147. package/dist/test-utils/arbitraries.js.map +1 -0
  148. package/dist/test-utils/cleanup.d.ts +184 -0
  149. package/dist/test-utils/cleanup.d.ts.map +1 -0
  150. package/dist/test-utils/cleanup.js +282 -0
  151. package/dist/test-utils/cleanup.js.map +1 -0
  152. package/dist/test-utils/config.d.ts +80 -0
  153. package/dist/test-utils/config.d.ts.map +1 -0
  154. package/dist/test-utils/config.js +94 -0
  155. package/dist/test-utils/config.js.map +1 -0
  156. package/dist/test-utils/index.d.ts +10 -0
  157. package/dist/test-utils/index.d.ts.map +1 -0
  158. package/dist/test-utils/index.js +36 -0
  159. package/dist/test-utils/index.js.map +1 -0
  160. package/dist/test-utils/mocks.d.ts +170 -0
  161. package/dist/test-utils/mocks.d.ts.map +1 -0
  162. package/dist/test-utils/mocks.js +281 -0
  163. package/dist/test-utils/mocks.js.map +1 -0
  164. package/dist/types/config.d.ts +170 -0
  165. package/dist/types/config.d.ts.map +1 -0
  166. package/dist/types/config.js +120 -0
  167. package/dist/types/config.js.map +1 -0
  168. package/dist/types/knowledge.d.ts +95 -0
  169. package/dist/types/knowledge.d.ts.map +1 -0
  170. package/dist/types/knowledge.js +7 -0
  171. package/dist/types/knowledge.js.map +1 -0
  172. package/dist/types/loop.d.ts +148 -0
  173. package/dist/types/loop.d.ts.map +1 -0
  174. package/dist/types/loop.js +16 -0
  175. package/dist/types/loop.js.map +1 -0
  176. package/dist/types/plugin.d.ts +137 -0
  177. package/dist/types/plugin.d.ts.map +1 -0
  178. package/dist/types/plugin.js +15 -0
  179. package/dist/types/plugin.js.map +1 -0
  180. package/dist/types/response.d.ts +186 -0
  181. package/dist/types/response.d.ts.map +1 -0
  182. package/dist/types/response.js +99 -0
  183. package/dist/types/response.js.map +1 -0
  184. package/dist/types/streaming.d.ts +478 -0
  185. package/dist/types/streaming.d.ts.map +1 -0
  186. package/dist/types/streaming.js +483 -0
  187. package/dist/types/streaming.js.map +1 -0
  188. package/dist/types/tool.d.ts +118 -0
  189. package/dist/types/tool.d.ts.map +1 -0
  190. package/dist/types/tool.js +42 -0
  191. package/dist/types/tool.js.map +1 -0
  192. package/dist/utils/error.d.ts +22 -0
  193. package/dist/utils/error.d.ts.map +1 -0
  194. package/dist/utils/error.js +36 -0
  195. package/dist/utils/error.js.map +1 -0
  196. package/package.json +102 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"chunker.js","sourceRoot":"","sources":["../../src/knowledge/chunker.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,93 @@
1
+ /**
2
+ * Embedder Class
3
+ *
4
+ * Handles text embedding generation using LLM adapters.
5
+ * Includes caching for frequently used text embeddings.
6
+ *
7
+ * _Requirements: 3.5_
8
+ */
9
+ import type { LLMManager } from '../llm/manager.js';
10
+ import type { EmbeddingResult } from '../llm/adapter.js';
11
+ /**
12
+ * Embedder configuration
13
+ */
14
+ export interface EmbedderConfig {
15
+ /** Maximum number of entries in the cache */
16
+ maxCacheSize?: number;
17
+ /** Cache TTL in milliseconds (default: 1 hour) */
18
+ cacheTTLMs?: number;
19
+ /** Expected embedding dimension (for validation) */
20
+ expectedDimension?: number;
21
+ }
22
+ /**
23
+ * Embedder class for generating and caching text embeddings
24
+ */
25
+ export declare class Embedder {
26
+ private llmManager;
27
+ private config;
28
+ private cache;
29
+ constructor(llmManager: LLMManager, config?: EmbedderConfig);
30
+ /**
31
+ * Generate embedding for text
32
+ * Uses cache if available and not expired
33
+ */
34
+ embed(text: string): Promise<EmbeddingResult>;
35
+ /**
36
+ * Generate embeddings for multiple texts
37
+ * Batches requests for efficiency
38
+ */
39
+ embedBatch(texts: string[]): Promise<EmbeddingResult[]>;
40
+ /**
41
+ * Check if embeddings are supported
42
+ */
43
+ supportsEmbeddings(): boolean;
44
+ /**
45
+ * Get the expected embedding dimension
46
+ */
47
+ getExpectedDimension(): number;
48
+ /**
49
+ * Set the expected embedding dimension
50
+ */
51
+ setExpectedDimension(dimension: number): void;
52
+ /**
53
+ * Get cache statistics
54
+ */
55
+ getCacheStats(): {
56
+ size: number;
57
+ maxSize: number;
58
+ hitRate: number;
59
+ };
60
+ /**
61
+ * Clear the embedding cache
62
+ */
63
+ clearCache(): void;
64
+ /**
65
+ * Preload embeddings for a list of texts
66
+ */
67
+ preload(texts: string[]): Promise<void>;
68
+ /**
69
+ * Normalize text for cache key generation
70
+ */
71
+ private normalizeText;
72
+ /**
73
+ * Get entry from cache if valid
74
+ */
75
+ private getFromCache;
76
+ /**
77
+ * Add entry to cache with LRU eviction
78
+ */
79
+ private addToCache;
80
+ /**
81
+ * Evict least recently used entries
82
+ */
83
+ private evictLRU;
84
+ }
85
+ /**
86
+ * Calculate cosine similarity between two embedding vectors
87
+ */
88
+ export declare function cosineSimilarity(a: number[], b: number[]): number;
89
+ /**
90
+ * Calculate euclidean distance between two embedding vectors
91
+ */
92
+ export declare function euclideanDistance(a: number[], b: number[]): number;
93
+ //# sourceMappingURL=embedder.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"embedder.d.ts","sourceRoot":"","sources":["../../src/knowledge/embedder.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAYzD;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,6CAA6C;IAC7C,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,kDAAkD;IAClD,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,oDAAoD;IACpD,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B;AAQD;;GAEG;AACH,qBAAa,QAAQ;IACnB,OAAO,CAAC,UAAU,CAAa;IAC/B,OAAO,CAAC,MAAM,CAA2B;IACzC,OAAO,CAAC,KAAK,CAAsC;gBAEvC,UAAU,EAAE,UAAU,EAAE,MAAM,CAAC,EAAE,cAAc;IAK3D;;;OAGG;IACG,KAAK,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,CAAC;IAiCnD;;;OAGG;IACG,UAAU,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,eAAe,EAAE,CAAC;IAW7D;;OAEG;IACH,kBAAkB,IAAI,OAAO;IAI7B;;OAEG;IACH,oBAAoB,IAAI,MAAM;IAI9B;;OAEG;IACH,oBAAoB,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI;IAI7C;;OAEG;IACH,aAAa,IAAI;QACf,IAAI,EAAE,MAAM,CAAC;QACb,OAAO,EAAE,MAAM,CAAC;QAChB,OAAO,EAAE,MAAM,CAAC;KACjB;IAgBD;;OAEG;IACH,UAAU,IAAI,IAAI;IAIlB;;OAEG;IACG,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAI7C;;OAEG;IACH,OAAO,CAAC,aAAa;IAIrB;;OAEG;IACH,OAAO,CAAC,YAAY;IAoBpB;;OAEG;IACH,OAAO,CAAC,UAAU;IAclB;;OAEG;IACH,OAAO,CAAC,QAAQ;CAoBjB;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,CAAC,EAAE,MAAM,EAAE,EAAE,CAAC,EAAE,MAAM,EAAE,GAAG,MAAM,CAsBjE;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,CAAC,EAAE,MAAM,EAAE,EAAE,CAAC,EAAE,MAAM,EAAE,GAAG,MAAM,CAYlE"}
@@ -0,0 +1,205 @@
1
+ /**
2
+ * Embedder Class
3
+ *
4
+ * Handles text embedding generation using LLM adapters.
5
+ * Includes caching for frequently used text embeddings.
6
+ *
7
+ * _Requirements: 3.5_
8
+ */
9
+ const DEFAULT_CONFIG = {
10
+ maxCacheSize: 1000,
11
+ cacheTTLMs: 60 * 60 * 1000, // 1 hour
12
+ expectedDimension: 1536, // OpenAI text-embedding-ada-002 dimension
13
+ };
14
+ /**
15
+ * Embedder class for generating and caching text embeddings
16
+ */
17
+ export class Embedder {
18
+ llmManager;
19
+ config;
20
+ cache = new Map();
21
+ constructor(llmManager, config) {
22
+ this.llmManager = llmManager;
23
+ this.config = { ...DEFAULT_CONFIG, ...config };
24
+ }
25
+ /**
26
+ * Generate embedding for text
27
+ * Uses cache if available and not expired
28
+ */
29
+ async embed(text) {
30
+ // Normalize text for cache key
31
+ const cacheKey = this.normalizeText(text);
32
+ // Check cache
33
+ const cached = this.getFromCache(cacheKey);
34
+ if (cached) {
35
+ return {
36
+ embedding: cached.embedding,
37
+ tokenCount: cached.tokenCount,
38
+ };
39
+ }
40
+ // Generate new embedding
41
+ const result = await this.llmManager.embed(text);
42
+ // Validate dimension if configured
43
+ if (this.config.expectedDimension > 0 &&
44
+ result.embedding.length !== this.config.expectedDimension) {
45
+ console.warn(`Embedding dimension mismatch: expected ${this.config.expectedDimension}, ` +
46
+ `got ${result.embedding.length}`);
47
+ }
48
+ // Store in cache
49
+ this.addToCache(cacheKey, result);
50
+ return result;
51
+ }
52
+ /**
53
+ * Generate embeddings for multiple texts
54
+ * Batches requests for efficiency
55
+ */
56
+ async embedBatch(texts) {
57
+ const results = [];
58
+ for (const text of texts) {
59
+ const result = await this.embed(text);
60
+ results.push(result);
61
+ }
62
+ return results;
63
+ }
64
+ /**
65
+ * Check if embeddings are supported
66
+ */
67
+ supportsEmbeddings() {
68
+ return this.llmManager.supportsEmbeddings();
69
+ }
70
+ /**
71
+ * Get the expected embedding dimension
72
+ */
73
+ getExpectedDimension() {
74
+ return this.config.expectedDimension;
75
+ }
76
+ /**
77
+ * Set the expected embedding dimension
78
+ */
79
+ setExpectedDimension(dimension) {
80
+ this.config.expectedDimension = dimension;
81
+ }
82
+ /**
83
+ * Get cache statistics
84
+ */
85
+ getCacheStats() {
86
+ let totalAccess = 0;
87
+ let cacheHits = 0;
88
+ for (const entry of this.cache.values()) {
89
+ totalAccess += entry.accessCount;
90
+ cacheHits += entry.accessCount - 1; // First access is a miss
91
+ }
92
+ return {
93
+ size: this.cache.size,
94
+ maxSize: this.config.maxCacheSize,
95
+ hitRate: totalAccess > 0 ? cacheHits / totalAccess : 0,
96
+ };
97
+ }
98
+ /**
99
+ * Clear the embedding cache
100
+ */
101
+ clearCache() {
102
+ this.cache.clear();
103
+ }
104
+ /**
105
+ * Preload embeddings for a list of texts
106
+ */
107
+ async preload(texts) {
108
+ await this.embedBatch(texts);
109
+ }
110
+ /**
111
+ * Normalize text for cache key generation
112
+ */
113
+ normalizeText(text) {
114
+ return text.trim().toLowerCase();
115
+ }
116
+ /**
117
+ * Get entry from cache if valid
118
+ */
119
+ getFromCache(key) {
120
+ const entry = this.cache.get(key);
121
+ if (!entry) {
122
+ return null;
123
+ }
124
+ // Check if expired
125
+ const now = Date.now();
126
+ if (now - entry.timestamp > this.config.cacheTTLMs) {
127
+ this.cache.delete(key);
128
+ return null;
129
+ }
130
+ // Update access count
131
+ entry.accessCount++;
132
+ return entry;
133
+ }
134
+ /**
135
+ * Add entry to cache with LRU eviction
136
+ */
137
+ addToCache(key, result) {
138
+ // Evict if at capacity
139
+ if (this.cache.size >= this.config.maxCacheSize) {
140
+ this.evictLRU();
141
+ }
142
+ this.cache.set(key, {
143
+ embedding: result.embedding,
144
+ tokenCount: result.tokenCount,
145
+ timestamp: Date.now(),
146
+ accessCount: 1,
147
+ });
148
+ }
149
+ /**
150
+ * Evict least recently used entries
151
+ */
152
+ evictLRU() {
153
+ // Find entry with oldest timestamp and lowest access count
154
+ let oldestKey = null;
155
+ let oldestScore = Infinity;
156
+ for (const [key, entry] of this.cache.entries()) {
157
+ // Score based on recency and access frequency
158
+ const age = Date.now() - entry.timestamp;
159
+ const score = entry.accessCount / (age + 1);
160
+ if (score < oldestScore) {
161
+ oldestScore = score;
162
+ oldestKey = key;
163
+ }
164
+ }
165
+ if (oldestKey) {
166
+ this.cache.delete(oldestKey);
167
+ }
168
+ }
169
+ }
170
+ /**
171
+ * Calculate cosine similarity between two embedding vectors
172
+ */
173
+ export function cosineSimilarity(a, b) {
174
+ if (a.length !== b.length) {
175
+ throw new Error(`Vector dimension mismatch: ${a.length} vs ${b.length}`);
176
+ }
177
+ let dotProduct = 0;
178
+ let normA = 0;
179
+ let normB = 0;
180
+ for (let i = 0; i < a.length; i++) {
181
+ dotProduct += a[i] * b[i];
182
+ normA += a[i] * a[i];
183
+ normB += b[i] * b[i];
184
+ }
185
+ const magnitude = Math.sqrt(normA) * Math.sqrt(normB);
186
+ if (magnitude === 0) {
187
+ return 0;
188
+ }
189
+ return dotProduct / magnitude;
190
+ }
191
+ /**
192
+ * Calculate euclidean distance between two embedding vectors
193
+ */
194
+ export function euclideanDistance(a, b) {
195
+ if (a.length !== b.length) {
196
+ throw new Error(`Vector dimension mismatch: ${a.length} vs ${b.length}`);
197
+ }
198
+ let sum = 0;
199
+ for (let i = 0; i < a.length; i++) {
200
+ const diff = a[i] - b[i];
201
+ sum += diff * diff;
202
+ }
203
+ return Math.sqrt(sum);
204
+ }
205
+ //# sourceMappingURL=embedder.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"embedder.js","sourceRoot":"","sources":["../../src/knowledge/embedder.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,10 @@
1
+ /**
2
+ * Knowledge System Module
3
+ *
4
+ * Exports knowledge storage, embedding, and retrieval components.
5
+ */
6
+ export { KnowledgeStore, type KnowledgeStoreConfig } from './store.js';
7
+ export { Embedder, type EmbedderConfig, cosineSimilarity, euclideanDistance } from './embedder.js';
8
+ export { Retriever, type RetrieverConfig, type Intent } from './retriever.js';
9
+ export { MarkdownLoader, parseMarkdown, loadMarkdownDocument, loadMarkdownSections, type MarkdownSection, type MarkdownParseResult, type MarkdownLoaderOptions, YamlLoader, parseYaml, parseYamlDocument, loadYamlDocument, loadYamlByRootKeys, flattenYaml, yamlToText, type YamlNode, type YamlParseResult, type YamlLoaderOptions, } from './loaders/index.js';
10
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/knowledge/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,cAAc,EAAE,KAAK,oBAAoB,EAAE,MAAM,YAAY,CAAC;AACvE,OAAO,EAAE,QAAQ,EAAE,KAAK,cAAc,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AACnG,OAAO,EAAE,SAAS,EAAE,KAAK,eAAe,EAAE,KAAK,MAAM,EAAE,MAAM,gBAAgB,CAAC;AAG9E,OAAO,EACL,cAAc,EACd,aAAa,EACb,oBAAoB,EACpB,oBAAoB,EACpB,KAAK,eAAe,EACpB,KAAK,mBAAmB,EACxB,KAAK,qBAAqB,EAC1B,UAAU,EACV,SAAS,EACT,iBAAiB,EACjB,gBAAgB,EAChB,kBAAkB,EAClB,WAAW,EACX,UAAU,EACV,KAAK,QAAQ,EACb,KAAK,eAAe,EACpB,KAAK,iBAAiB,GACvB,MAAM,oBAAoB,CAAC"}
@@ -0,0 +1,11 @@
1
+ /**
2
+ * Knowledge System Module
3
+ *
4
+ * Exports knowledge storage, embedding, and retrieval components.
5
+ */
6
+ export { KnowledgeStore } from './store.js';
7
+ export { Embedder, cosineSimilarity, euclideanDistance } from './embedder.js';
8
+ export { Retriever } from './retriever.js';
9
+ // Document Loaders
10
+ export { MarkdownLoader, parseMarkdown, loadMarkdownDocument, loadMarkdownSections, YamlLoader, parseYaml, parseYamlDocument, loadYamlDocument, loadYamlByRootKeys, flattenYaml, yamlToText, } from './loaders/index.js';
11
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/knowledge/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,cAAc,EAA6B,MAAM,YAAY,CAAC;AACvE,OAAO,EAAE,QAAQ,EAAuB,gBAAgB,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AACnG,OAAO,EAAE,SAAS,EAAqC,MAAM,gBAAgB,CAAC;AAE9E,mBAAmB;AACnB,OAAO,EACL,cAAc,EACd,aAAa,EACb,oBAAoB,EACpB,oBAAoB,EAIpB,UAAU,EACV,SAAS,EACT,iBAAiB,EACjB,gBAAgB,EAChB,kBAAkB,EAClB,WAAW,EACX,UAAU,GAIX,MAAM,oBAAoB,CAAC"}
@@ -0,0 +1,10 @@
1
+ /**
2
+ * Document Loaders
3
+ *
4
+ * Provides loaders for different document formats to import into the knowledge base.
5
+ *
6
+ * _Requirements: 3.1_
7
+ */
8
+ export { MarkdownLoader, parseMarkdown, loadMarkdownDocument, loadMarkdownSections, type MarkdownSection, type MarkdownParseResult, type MarkdownLoaderOptions, } from './markdown.js';
9
+ export { YamlLoader, parseYaml, parseYamlDocument, loadYamlDocument, loadYamlByRootKeys, flattenYaml, yamlToText, type YamlNode, type YamlParseResult, type YamlLoaderOptions, } from './yaml.js';
10
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/knowledge/loaders/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EACL,cAAc,EACd,aAAa,EACb,oBAAoB,EACpB,oBAAoB,EACpB,KAAK,eAAe,EACpB,KAAK,mBAAmB,EACxB,KAAK,qBAAqB,GAC3B,MAAM,eAAe,CAAC;AAEvB,OAAO,EACL,UAAU,EACV,SAAS,EACT,iBAAiB,EACjB,gBAAgB,EAChB,kBAAkB,EAClB,WAAW,EACX,UAAU,EACV,KAAK,QAAQ,EACb,KAAK,eAAe,EACpB,KAAK,iBAAiB,GACvB,MAAM,WAAW,CAAC"}
@@ -0,0 +1,10 @@
1
+ /**
2
+ * Document Loaders
3
+ *
4
+ * Provides loaders for different document formats to import into the knowledge base.
5
+ *
6
+ * _Requirements: 3.1_
7
+ */
8
+ export { MarkdownLoader, parseMarkdown, loadMarkdownDocument, loadMarkdownSections, } from './markdown.js';
9
+ export { YamlLoader, parseYaml, parseYamlDocument, loadYamlDocument, loadYamlByRootKeys, flattenYaml, yamlToText, } from './yaml.js';
10
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/knowledge/loaders/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EACL,cAAc,EACd,aAAa,EACb,oBAAoB,EACpB,oBAAoB,GAIrB,MAAM,eAAe,CAAC;AAEvB,OAAO,EACL,UAAU,EACV,SAAS,EACT,iBAAiB,EACjB,gBAAgB,EAChB,kBAAkB,EAClB,WAAW,EACX,UAAU,GAIX,MAAM,WAAW,CAAC"}
@@ -0,0 +1,88 @@
1
+ /**
2
+ * Markdown Document Loader
3
+ *
4
+ * Parses Markdown files and extracts structured content for the knowledge base.
5
+ * Supports extracting titles, sections, and metadata from Markdown documents.
6
+ *
7
+ * _Requirements: 3.1_
8
+ */
9
+ import type { DocumentInput } from '../../types/knowledge.js';
10
+ /**
11
+ * Parsed section from a Markdown document
12
+ */
13
+ export interface MarkdownSection {
14
+ /** Section heading level (1-6) */
15
+ level: number;
16
+ /** Section title */
17
+ title: string;
18
+ /** Section content (without subsections) */
19
+ content: string;
20
+ /** Line number where section starts */
21
+ startLine: number;
22
+ }
23
+ /**
24
+ * Result of parsing a Markdown document
25
+ */
26
+ export interface MarkdownParseResult {
27
+ /** Document title (from first H1 or filename) */
28
+ title: string;
29
+ /** Full document content */
30
+ content: string;
31
+ /** Extracted sections */
32
+ sections: MarkdownSection[];
33
+ /** Frontmatter metadata (if present) */
34
+ frontmatter?: Record<string, unknown>;
35
+ }
36
+ /**
37
+ * Options for loading Markdown documents
38
+ */
39
+ export interface MarkdownLoaderOptions {
40
+ /** Category for the document */
41
+ category: string;
42
+ /** Whether to split into sections (default: false) */
43
+ splitSections?: boolean;
44
+ /** Minimum section level to split on (default: 2) */
45
+ minSplitLevel?: number;
46
+ /** Maximum section level to split on (default: 3) */
47
+ maxSplitLevel?: number;
48
+ /** Custom title (overrides extracted title) */
49
+ title?: string;
50
+ /** Additional metadata to include */
51
+ metadata?: Record<string, unknown>;
52
+ }
53
+ /**
54
+ * Parse a Markdown document
55
+ */
56
+ export declare function parseMarkdown(content: string): MarkdownParseResult;
57
+ /**
58
+ * Load a Markdown document as a single DocumentInput
59
+ */
60
+ export declare function loadMarkdownDocument(content: string, options: MarkdownLoaderOptions): DocumentInput;
61
+ /**
62
+ * Load a Markdown document and split into multiple DocumentInputs by section
63
+ */
64
+ export declare function loadMarkdownSections(content: string, options: MarkdownLoaderOptions): DocumentInput[];
65
+ /**
66
+ * Markdown Loader class for loading documents into the knowledge base
67
+ */
68
+ export declare class MarkdownLoader {
69
+ private defaultCategory;
70
+ private defaultMetadata;
71
+ constructor(options?: {
72
+ defaultCategory?: string;
73
+ defaultMetadata?: Record<string, unknown>;
74
+ });
75
+ /**
76
+ * Load a Markdown string as a document
77
+ */
78
+ load(content: string, options?: Partial<MarkdownLoaderOptions>): DocumentInput;
79
+ /**
80
+ * Load a Markdown string and split into sections
81
+ */
82
+ loadSections(content: string, options?: Partial<MarkdownLoaderOptions>): DocumentInput[];
83
+ /**
84
+ * Parse Markdown content without creating DocumentInput
85
+ */
86
+ parse(content: string): MarkdownParseResult;
87
+ }
88
+ //# sourceMappingURL=markdown.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"markdown.d.ts","sourceRoot":"","sources":["../../../src/knowledge/loaders/markdown.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAE9D;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,kCAAkC;IAClC,KAAK,EAAE,MAAM,CAAC;IACd,oBAAoB;IACpB,KAAK,EAAE,MAAM,CAAC;IACd,4CAA4C;IAC5C,OAAO,EAAE,MAAM,CAAC;IAChB,uCAAuC;IACvC,SAAS,EAAE,MAAM,CAAC;CACnB;AAED;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC,iDAAiD;IACjD,KAAK,EAAE,MAAM,CAAC;IACd,4BAA4B;IAC5B,OAAO,EAAE,MAAM,CAAC;IAChB,yBAAyB;IACzB,QAAQ,EAAE,eAAe,EAAE,CAAC;IAC5B,wCAAwC;IACxC,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACvC;AAED;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACpC,gCAAgC;IAChC,QAAQ,EAAE,MAAM,CAAC;IACjB,sDAAsD;IACtD,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,qDAAqD;IACrD,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,qDAAqD;IACrD,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,+CAA+C;IAC/C,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,qCAAqC;IACrC,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACpC;AAiHD;;GAEG;AACH,wBAAgB,aAAa,CAAC,OAAO,EAAE,MAAM,GAAG,mBAAmB,CAgBlE;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAClC,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,qBAAqB,GAC7B,aAAa,CAcf;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAClC,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,qBAAqB,GAC7B,aAAa,EAAE,CA8BjB;AAED;;GAEG;AACH,qBAAa,cAAc;IACzB,OAAO,CAAC,eAAe,CAAS;IAChC,OAAO,CAAC,eAAe,CAA0B;gBAErC,OAAO,CAAC,EAAE;QAAE,eAAe,CAAC,EAAE,MAAM,CAAC;QAAC,eAAe,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;KAAE;IAK7F;;OAEG;IACH,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,OAAO,CAAC,qBAAqB,CAAC,GAAG,aAAa;IAQ9E;;OAEG;IACH,YAAY,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,OAAO,CAAC,qBAAqB,CAAC,GAAG,aAAa,EAAE;IAWxF;;OAEG;IACH,KAAK,CAAC,OAAO,EAAE,MAAM,GAAG,mBAAmB;CAG5C"}