@j0hanz/memory-mcp 1.3.0 → 1.4.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 (174) hide show
  1. package/README.md +8 -8
  2. package/dist/completions/index.d.ts +0 -1
  3. package/dist/completions/index.js +4 -3
  4. package/dist/db/index.d.ts +0 -1
  5. package/dist/db/index.js +14 -9
  6. package/dist/db/typed.d.ts +0 -1
  7. package/dist/db/typed.js +3 -7
  8. package/dist/index.d.ts +0 -1
  9. package/dist/index.js +29 -2
  10. package/dist/lib/errors.d.ts +2 -1
  11. package/dist/lib/errors.js +4 -2
  12. package/dist/lib/hash.d.ts +0 -1
  13. package/dist/lib/hash.js +2 -2
  14. package/dist/lib/instructions.d.ts +0 -1
  15. package/dist/lib/instructions.js +1 -5
  16. package/dist/lib/json-schema.d.ts +3 -0
  17. package/dist/lib/json-schema.js +9 -0
  18. package/dist/lib/mcp-utils.d.ts +0 -1
  19. package/dist/lib/mcp-utils.js +5 -3
  20. package/dist/lib/pagination.d.ts +0 -1
  21. package/dist/lib/pagination.js +4 -2
  22. package/dist/lib/search-cursor.d.ts +0 -1
  23. package/dist/lib/search-cursor.js +2 -2
  24. package/dist/lib/search.d.ts +0 -1
  25. package/dist/lib/search.js +12 -11
  26. package/dist/lib/sql.d.ts +1 -2
  27. package/dist/lib/sql.js +5 -2
  28. package/dist/lib/tool-contracts.d.ts +0 -1
  29. package/dist/lib/tool-contracts.js +15 -15
  30. package/dist/lib/tool-response.d.ts +0 -1
  31. package/dist/lib/tool-response.js +4 -3
  32. package/dist/lib/types.d.ts +0 -1
  33. package/dist/lib/types.js +2 -2
  34. package/dist/prompts/index.d.ts +0 -1
  35. package/dist/prompts/index.js +1 -2
  36. package/dist/resources/index.d.ts +0 -1
  37. package/dist/resources/index.js +59 -61
  38. package/dist/resources/instructions.d.ts +0 -1
  39. package/dist/resources/instructions.js +58 -60
  40. package/dist/resources/server-config.d.ts +0 -1
  41. package/dist/resources/server-config.js +11 -7
  42. package/dist/resources/tool-catalog.d.ts +0 -1
  43. package/dist/resources/tool-catalog.js +7 -18
  44. package/dist/resources/tool-info.d.ts +0 -1
  45. package/dist/resources/tool-info.js +12 -20
  46. package/dist/resources/workflows.d.ts +0 -1
  47. package/dist/resources/workflows.js +6 -4
  48. package/dist/schemas/index.d.ts +0 -1
  49. package/dist/schemas/index.js +1 -2
  50. package/dist/schemas/inputs.d.ts +17 -25
  51. package/dist/schemas/inputs.js +19 -7
  52. package/dist/schemas/outputs.d.ts +0 -1
  53. package/dist/schemas/outputs.js +3 -3
  54. package/dist/server.d.ts +0 -1
  55. package/dist/server.js +16 -13
  56. package/dist/tools/create-relationship.d.ts +0 -1
  57. package/dist/tools/create-relationship.js +26 -22
  58. package/dist/tools/delete-memories.d.ts +0 -1
  59. package/dist/tools/delete-memories.js +4 -12
  60. package/dist/tools/delete-memory.d.ts +0 -1
  61. package/dist/tools/delete-memory.js +4 -12
  62. package/dist/tools/delete-relationship.d.ts +0 -1
  63. package/dist/tools/delete-relationship.js +4 -12
  64. package/dist/tools/get-memory.d.ts +0 -1
  65. package/dist/tools/get-memory.js +4 -12
  66. package/dist/tools/get-relationships.d.ts +0 -1
  67. package/dist/tools/get-relationships.js +7 -13
  68. package/dist/tools/index.d.ts +0 -1
  69. package/dist/tools/index.js +2 -3
  70. package/dist/tools/memory-stats.d.ts +0 -1
  71. package/dist/tools/memory-stats.js +4 -12
  72. package/dist/tools/progress.d.ts +2 -2
  73. package/dist/tools/progress.js +2 -2
  74. package/dist/tools/recall.d.ts +0 -1
  75. package/dist/tools/recall.js +47 -49
  76. package/dist/tools/register-contract.d.ts +3 -0
  77. package/dist/tools/register-contract.js +11 -0
  78. package/dist/tools/result.d.ts +1 -1
  79. package/dist/tools/result.js +4 -1
  80. package/dist/tools/retrieve-context.d.ts +0 -1
  81. package/dist/tools/retrieve-context.js +6 -14
  82. package/dist/tools/search-memories.d.ts +0 -1
  83. package/dist/tools/search-memories.js +4 -12
  84. package/dist/tools/store-memories.d.ts +0 -1
  85. package/dist/tools/store-memories.js +4 -12
  86. package/dist/tools/store-memory.d.ts +0 -1
  87. package/dist/tools/store-memory.js +4 -12
  88. package/dist/tools/update-memory.d.ts +0 -1
  89. package/dist/tools/update-memory.js +4 -12
  90. package/package.json +9 -6
  91. package/dist/completions/index.d.ts.map +0 -1
  92. package/dist/completions/index.js.map +0 -1
  93. package/dist/db/index.d.ts.map +0 -1
  94. package/dist/db/index.js.map +0 -1
  95. package/dist/db/typed.d.ts.map +0 -1
  96. package/dist/db/typed.js.map +0 -1
  97. package/dist/index.d.ts.map +0 -1
  98. package/dist/index.js.map +0 -1
  99. package/dist/lib/errors.d.ts.map +0 -1
  100. package/dist/lib/errors.js.map +0 -1
  101. package/dist/lib/hash.d.ts.map +0 -1
  102. package/dist/lib/hash.js.map +0 -1
  103. package/dist/lib/instructions.d.ts.map +0 -1
  104. package/dist/lib/instructions.js.map +0 -1
  105. package/dist/lib/mcp-utils.d.ts.map +0 -1
  106. package/dist/lib/mcp-utils.js.map +0 -1
  107. package/dist/lib/pagination.d.ts.map +0 -1
  108. package/dist/lib/pagination.js.map +0 -1
  109. package/dist/lib/search-cursor.d.ts.map +0 -1
  110. package/dist/lib/search-cursor.js.map +0 -1
  111. package/dist/lib/search.d.ts.map +0 -1
  112. package/dist/lib/search.js.map +0 -1
  113. package/dist/lib/sql.d.ts.map +0 -1
  114. package/dist/lib/sql.js.map +0 -1
  115. package/dist/lib/tool-contracts.d.ts.map +0 -1
  116. package/dist/lib/tool-contracts.js.map +0 -1
  117. package/dist/lib/tool-response.d.ts.map +0 -1
  118. package/dist/lib/tool-response.js.map +0 -1
  119. package/dist/lib/types.d.ts.map +0 -1
  120. package/dist/lib/types.js.map +0 -1
  121. package/dist/prompts/index.d.ts.map +0 -1
  122. package/dist/prompts/index.js.map +0 -1
  123. package/dist/resources/index.d.ts.map +0 -1
  124. package/dist/resources/index.js.map +0 -1
  125. package/dist/resources/instructions.d.ts.map +0 -1
  126. package/dist/resources/instructions.js.map +0 -1
  127. package/dist/resources/server-config.d.ts.map +0 -1
  128. package/dist/resources/server-config.js.map +0 -1
  129. package/dist/resources/tool-catalog.d.ts.map +0 -1
  130. package/dist/resources/tool-catalog.js.map +0 -1
  131. package/dist/resources/tool-info.d.ts.map +0 -1
  132. package/dist/resources/tool-info.js.map +0 -1
  133. package/dist/resources/workflows.d.ts.map +0 -1
  134. package/dist/resources/workflows.js.map +0 -1
  135. package/dist/schemas/index.d.ts.map +0 -1
  136. package/dist/schemas/index.js.map +0 -1
  137. package/dist/schemas/inputs.d.ts.map +0 -1
  138. package/dist/schemas/inputs.js.map +0 -1
  139. package/dist/schemas/outputs.d.ts.map +0 -1
  140. package/dist/schemas/outputs.js.map +0 -1
  141. package/dist/server.d.ts.map +0 -1
  142. package/dist/server.js.map +0 -1
  143. package/dist/tools/create-relationship.d.ts.map +0 -1
  144. package/dist/tools/create-relationship.js.map +0 -1
  145. package/dist/tools/delete-memories.d.ts.map +0 -1
  146. package/dist/tools/delete-memories.js.map +0 -1
  147. package/dist/tools/delete-memory.d.ts.map +0 -1
  148. package/dist/tools/delete-memory.js.map +0 -1
  149. package/dist/tools/delete-relationship.d.ts.map +0 -1
  150. package/dist/tools/delete-relationship.js.map +0 -1
  151. package/dist/tools/get-memory.d.ts.map +0 -1
  152. package/dist/tools/get-memory.js.map +0 -1
  153. package/dist/tools/get-relationships.d.ts.map +0 -1
  154. package/dist/tools/get-relationships.js.map +0 -1
  155. package/dist/tools/index.d.ts.map +0 -1
  156. package/dist/tools/index.js.map +0 -1
  157. package/dist/tools/memory-stats.d.ts.map +0 -1
  158. package/dist/tools/memory-stats.js.map +0 -1
  159. package/dist/tools/progress.d.ts.map +0 -1
  160. package/dist/tools/progress.js.map +0 -1
  161. package/dist/tools/recall.d.ts.map +0 -1
  162. package/dist/tools/recall.js.map +0 -1
  163. package/dist/tools/result.d.ts.map +0 -1
  164. package/dist/tools/result.js.map +0 -1
  165. package/dist/tools/retrieve-context.d.ts.map +0 -1
  166. package/dist/tools/retrieve-context.js.map +0 -1
  167. package/dist/tools/search-memories.d.ts.map +0 -1
  168. package/dist/tools/search-memories.js.map +0 -1
  169. package/dist/tools/store-memories.d.ts.map +0 -1
  170. package/dist/tools/store-memories.js.map +0 -1
  171. package/dist/tools/store-memory.d.ts.map +0 -1
  172. package/dist/tools/store-memory.js.map +0 -1
  173. package/dist/tools/update-memory.d.ts.map +0 -1
  174. package/dist/tools/update-memory.js.map +0 -1
@@ -1,17 +1,26 @@
1
1
  import { McpError, } from '@modelcontextprotocol/sdk/types.js';
2
2
  import process from 'node:process';
3
- import { E_UNKNOWN, getErrorMessage, rethrowMcpError } from '../lib/errors.js';
3
+ import { E_CANCELLED, E_UNKNOWN, getErrorMessage, rethrowMcpError, } from '../lib/errors.js';
4
4
  import { logToolEvent } from '../lib/mcp-utils.js';
5
5
  import { splitPage } from '../lib/pagination.js';
6
6
  import { buildSearchCursorScope, decodeSearchCursor, encodeSearchCursor, } from '../lib/search-cursor.js';
7
7
  import { loadRankedSearchRows, toMemoryFilters } from '../lib/search.js';
8
- import { getToolContract } from '../lib/tool-contracts.js';
9
8
  import { createErrorResponse, createToolResponse, } from '../lib/tool-response.js';
10
9
  import { parseMemoryRow } from '../lib/types.js';
11
- import {} from '../schemas/inputs.js';
12
- import {} from '../schemas/outputs.js';
10
+ import { RecallInputSchema } from '../schemas/inputs.js';
11
+ import { RecallResultSchema } from '../schemas/outputs.js';
13
12
  import { createProgressReporter, notifyProgress, progressWithMessage, } from './progress.js';
14
- import { countPayloadArrayItems, getToolResultPayload, isOkStructuredToolResult, } from './result.js';
13
+ import { registerToolWithContract } from './register-contract.js';
14
+ import { countPayloadArrayItems, getToolResultPayload, getToolResultText, isOkStructuredToolResult, } from './result.js';
15
+ function throwIfAborted(signal) {
16
+ if (!signal?.aborted) {
17
+ return;
18
+ }
19
+ throw new Error(E_CANCELLED);
20
+ }
21
+ function yieldToEventLoop() {
22
+ return new Promise((resolve) => setImmediate(resolve));
23
+ }
15
24
  function parseEnvInt(name, fallback, min, max) {
16
25
  const raw = process.env[name];
17
26
  if (raw == null)
@@ -40,13 +49,11 @@ async function traverseGraph(db, seeds, depth, signal, onHop) {
40
49
  const seenEdges = new Set();
41
50
  let depthReached = 0;
42
51
  let aborted = false;
52
+ const edgeStmt = db.prepareOnce(EDGE_QUERY_SQL);
43
53
  for (let hop = 0; hop < depth && frontier.length > 0; hop += 1) {
44
54
  // Yield to event loop to allow progress notifications and cancellation
45
- await new Promise((resolve) => setImmediate(resolve));
46
- if (signal?.aborted) {
47
- aborted = true;
48
- break;
49
- }
55
+ await yieldToEventLoop();
56
+ throwIfAborted(signal);
50
57
  depthReached = hop + 1;
51
58
  onHop?.(hop, depth);
52
59
  if (frontier.length > MAX_FRONTIER_SIZE) {
@@ -60,9 +67,7 @@ async function traverseGraph(db, seeds, depth, signal, onHop) {
60
67
  break;
61
68
  }
62
69
  const frontierJson = JSON.stringify(frontier);
63
- const edgeRows = db
64
- .prepareOnce(EDGE_QUERY_SQL)
65
- .all(frontierJson, frontierJson, remainingEdgeBudget + 1);
70
+ const edgeRows = edgeStmt.all(frontierJson, frontierJson, remainingEdgeBudget + 1);
66
71
  const rowsToProcess = edgeRows.length > remainingEdgeBudget
67
72
  ? remainingEdgeBudget
68
73
  : edgeRows.length;
@@ -70,6 +75,21 @@ async function traverseGraph(db, seeds, depth, signal, onHop) {
70
75
  aborted = true;
71
76
  }
72
77
  const nextHashes = [];
78
+ const queueVisitedHash = (hash) => {
79
+ if (visited.has(hash)) {
80
+ return;
81
+ }
82
+ if (visited.size >= MAX_VISITED_NODES) {
83
+ aborted = true;
84
+ return;
85
+ }
86
+ visited.add(hash);
87
+ if (nextHashes.length < MAX_FRONTIER_SIZE) {
88
+ nextHashes.push(hash);
89
+ return;
90
+ }
91
+ aborted = true;
92
+ };
73
93
  for (let i = 0; i < rowsToProcess; i += 1) {
74
94
  const edge = edgeRows[i];
75
95
  if (edge === undefined) {
@@ -84,32 +104,8 @@ async function traverseGraph(db, seeds, depth, signal, onHop) {
84
104
  relation_type: edge.relation_type,
85
105
  });
86
106
  }
87
- if (!visited.has(edge.from_hash)) {
88
- if (visited.size >= MAX_VISITED_NODES) {
89
- aborted = true;
90
- break;
91
- }
92
- visited.add(edge.from_hash);
93
- if (nextHashes.length < MAX_FRONTIER_SIZE) {
94
- nextHashes.push(edge.from_hash);
95
- }
96
- else {
97
- aborted = true;
98
- }
99
- }
100
- if (!visited.has(edge.to_hash)) {
101
- if (visited.size >= MAX_VISITED_NODES) {
102
- aborted = true;
103
- break;
104
- }
105
- visited.add(edge.to_hash);
106
- if (nextHashes.length < MAX_FRONTIER_SIZE) {
107
- nextHashes.push(edge.to_hash);
108
- }
109
- else {
110
- aborted = true;
111
- }
112
- }
107
+ queueVisitedHash(edge.from_hash);
108
+ queueVisitedHash(edge.to_hash);
113
109
  if (aborted &&
114
110
  (edges.length >= MAX_EDGE_ROWS || visited.size >= MAX_VISITED_NODES)) {
115
111
  break;
@@ -131,6 +127,10 @@ function loadMemoriesByHashes(db, hashes) {
131
127
  function formatRecallCompletionMessage(query, result) {
132
128
  const failedMessage = `⊙ recall: ${query} • failed`;
133
129
  if (result.isError) {
130
+ const text = getToolResultText(result);
131
+ if (text.includes(E_CANCELLED)) {
132
+ return `⊙ recall: ${query} • cancelled`;
133
+ }
134
134
  return failedMessage;
135
135
  }
136
136
  if (!isOkStructuredToolResult(result)) {
@@ -146,14 +146,7 @@ function formatRecallCompletionMessage(query, result) {
146
146
  return `⊙ recall: ${query} • ${memoriesCount} memories, ${edgesCount} edges${aborted ? ' [aborted]' : ''}`;
147
147
  }
148
148
  export function registerRecall(server, db) {
149
- const contract = getToolContract('recall');
150
- server.registerTool(contract.name, {
151
- title: contract.title,
152
- description: contract.description,
153
- inputSchema: contract.inputSchema,
154
- outputSchema: contract.outputSchema,
155
- annotations: contract.annotations,
156
- }, async (params, extra) => {
149
+ registerToolWithContract(server, 'recall', RecallInputSchema, RecallResultSchema, async (params, extra) => {
157
150
  const { depth, limit, cursor } = params;
158
151
  const filters = toMemoryFilters(params);
159
152
  const scope = buildSearchCursorScope(params.query, filters);
@@ -171,14 +164,17 @@ export function registerRecall(server, db) {
171
164
  let result;
172
165
  let thrownError;
173
166
  try {
167
+ throwIfAborted(extra.signal);
174
168
  const decodedCursor = cursor
175
169
  ? decodeSearchCursor(cursor, scope)
176
170
  : undefined;
177
171
  // Step 1: FTS seed search
178
172
  const seedRows = loadRankedSearchRows(db, params.query, limit, decodedCursor, filters);
173
+ throwIfAborted(extra.signal);
179
174
  const { page: pageSeeds, hasMore } = splitPage(seedRows, limit);
180
175
  // Step 2: BFS traversal up to `depth` hops
181
176
  const traversal = await traverseGraph(db, pageSeeds, depth, extra.signal, onHop);
177
+ throwIfAborted(extra.signal);
182
178
  // Step 3: Load all discovered memory rows
183
179
  const allHashes = Array.from(traversal.visited);
184
180
  const seedRelevance = new Map();
@@ -220,7 +216,10 @@ export function registerRecall(server, db) {
220
216
  });
221
217
  }
222
218
  catch (err) {
223
- if (err instanceof McpError) {
219
+ if (err instanceof Error && err.message === E_CANCELLED) {
220
+ result = createErrorResponse(E_CANCELLED, 'Request cancelled');
221
+ }
222
+ else if (err instanceof McpError) {
224
223
  thrownError = err;
225
224
  }
226
225
  else {
@@ -241,4 +240,3 @@ export function registerRecall(server, db) {
241
240
  return completionResult;
242
241
  });
243
242
  }
244
- //# sourceMappingURL=recall.js.map
@@ -0,0 +1,3 @@
1
+ import type { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js';
2
+ import type { z } from 'zod/v4';
3
+ export declare function registerToolWithContract(server: McpServer, toolName: string, _inputSchema: z.ZodType, _outputSchema: z.ZodType, handler: unknown): void;
@@ -0,0 +1,11 @@
1
+ import { getToolContract } from '../lib/tool-contracts.js';
2
+ export function registerToolWithContract(server, toolName, _inputSchema, _outputSchema, handler) {
3
+ const contract = getToolContract(toolName);
4
+ server.registerTool(contract.name, {
5
+ title: contract.title,
6
+ description: contract.description,
7
+ inputSchema: contract.inputSchema,
8
+ outputSchema: contract.outputSchema,
9
+ annotations: contract.annotations,
10
+ }, handler);
11
+ }
@@ -2,6 +2,6 @@ import type { CallToolResult } from '@modelcontextprotocol/sdk/types.js';
2
2
  export type ToolResultPayload = Record<string, unknown>;
3
3
  export declare function isOkStructuredToolResult(result: CallToolResult): boolean;
4
4
  export declare function getToolResultPayload(result: CallToolResult): ToolResultPayload | undefined;
5
+ export declare function getToolResultText(result: CallToolResult): string;
5
6
  /** Count items in a named array field of a tool result payload. */
6
7
  export declare function countPayloadArrayItems(payload: Record<string, unknown>, key: string): number;
7
- //# sourceMappingURL=result.d.ts.map
@@ -11,9 +11,12 @@ export function getToolResultPayload(result) {
11
11
  }
12
12
  return structuredContent;
13
13
  }
14
+ export function getToolResultText(result) {
15
+ const first = result.content[0];
16
+ return first?.type === 'text' ? first.text : '';
17
+ }
14
18
  /** Count items in a named array field of a tool result payload. */
15
19
  export function countPayloadArrayItems(payload, key) {
16
20
  const value = payload[key];
17
21
  return Array.isArray(value) ? value.length : 0;
18
22
  }
19
- //# sourceMappingURL=result.js.map
@@ -1,4 +1,3 @@
1
1
  import type { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js';
2
2
  import type { TypedDb } from '../db/typed.js';
3
3
  export declare function registerRetrieveContext(server: McpServer, db: TypedDb): void;
4
- //# sourceMappingURL=retrieve-context.d.ts.map
@@ -1,13 +1,13 @@
1
1
  import { McpError } from '@modelcontextprotocol/sdk/types.js';
2
2
  import { E_CANCELLED, E_UNKNOWN, getErrorMessage, rethrowMcpError, } from '../lib/errors.js';
3
3
  import { sanitizeFtsQuery } from '../lib/search.js';
4
- import { getToolContract } from '../lib/tool-contracts.js';
5
4
  import { createErrorResponse, createToolResponse, } from '../lib/tool-response.js';
6
5
  import { parseMemoryRow } from '../lib/types.js';
7
- import {} from '../schemas/inputs.js';
8
- import {} from '../schemas/outputs.js';
6
+ import { RetrieveContextInputSchema } from '../schemas/inputs.js';
7
+ import { RetrieveContextResultSchema } from '../schemas/outputs.js';
9
8
  import { createProgressReporter, notifyProgress, progressWithMessage, } from './progress.js';
10
- import { countPayloadArrayItems, getToolResultPayload, isOkStructuredToolResult, } from './result.js';
9
+ import { registerToolWithContract } from './register-contract.js';
10
+ import { countPayloadArrayItems, getToolResultPayload, getToolResultText, isOkStructuredToolResult, } from './result.js';
11
11
  const MIN_CANDIDATE_ROWS = 200;
12
12
  const MAX_CANDIDATE_ROWS = 2000;
13
13
  const ESTIMATED_CHARS_PER_TOKEN = 4;
@@ -47,7 +47,7 @@ function reportSelectionProgress(onProgress, current, total, force = false) {
47
47
  function formatCompletionMessage(query, result) {
48
48
  const failedMessage = `⊙ retrieve_context: ${query} • failed`;
49
49
  if (result.isError) {
50
- const text = result.content[0]?.type === 'text' ? result.content[0].text : '';
50
+ const text = getToolResultText(result);
51
51
  if (text.includes(E_CANCELLED)) {
52
52
  return `⊙ retrieve_context: ${query} • cancelled`;
53
53
  }
@@ -75,14 +75,7 @@ function throwIfAborted(signal) {
75
75
  throw new Error(E_CANCELLED);
76
76
  }
77
77
  export function registerRetrieveContext(server, db) {
78
- const contract = getToolContract('retrieve_context');
79
- server.registerTool(contract.name, {
80
- title: contract.title,
81
- description: contract.description,
82
- inputSchema: contract.inputSchema,
83
- outputSchema: contract.outputSchema,
84
- annotations: contract.annotations,
85
- }, async (params, extra) => {
78
+ registerToolWithContract(server, 'retrieve_context', RetrieveContextInputSchema, RetrieveContextResultSchema, async (params, extra) => {
86
79
  const { query, strategy } = params;
87
80
  const tokenBudget = params.token_budget;
88
81
  const contextLabel = `⊙ retrieve_context: ${query} [${strategy}]`;
@@ -157,4 +150,3 @@ export function registerRetrieveContext(server, db) {
157
150
  return completionResult;
158
151
  });
159
152
  }
160
- //# sourceMappingURL=retrieve-context.js.map
@@ -1,4 +1,3 @@
1
1
  import type { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js';
2
2
  import type { TypedDb } from '../db/typed.js';
3
3
  export declare function registerSearchMemories(server: McpServer, db: TypedDb): void;
4
- //# sourceMappingURL=search-memories.d.ts.map
@@ -2,21 +2,14 @@ import { E_UNKNOWN, getErrorMessage, rethrowMcpError } from '../lib/errors.js';
2
2
  import { splitPage } from '../lib/pagination.js';
3
3
  import { buildSearchCursorScope, decodeSearchCursor, encodeSearchCursor, } from '../lib/search-cursor.js';
4
4
  import { loadRankedSearchRows, toMemoryFilters } from '../lib/search.js';
5
- import { getToolContract } from '../lib/tool-contracts.js';
6
5
  import { createErrorResponse, createToolResponse, } from '../lib/tool-response.js';
7
6
  import { parseMemoryRow } from '../lib/types.js';
8
- import {} from '../schemas/inputs.js';
9
- import {} from '../schemas/outputs.js';
7
+ import { SearchMemoriesInputSchema } from '../schemas/inputs.js';
8
+ import { SearchResultSchema } from '../schemas/outputs.js';
10
9
  import { wrapToolHandler } from './progress.js';
10
+ import { registerToolWithContract } from './register-contract.js';
11
11
  export function registerSearchMemories(server, db) {
12
- const contract = getToolContract('search_memories');
13
- server.registerTool(contract.name, {
14
- title: contract.title,
15
- description: contract.description,
16
- inputSchema: contract.inputSchema,
17
- outputSchema: contract.outputSchema,
18
- annotations: contract.annotations,
19
- }, wrapToolHandler((params) => {
12
+ registerToolWithContract(server, 'search_memories', SearchMemoriesInputSchema, SearchResultSchema, wrapToolHandler((params) => {
20
13
  try {
21
14
  const { limit, cursor } = params;
22
15
  const filters = toMemoryFilters(params);
@@ -49,4 +42,3 @@ export function registerSearchMemories(server, db) {
49
42
  progressMessage: (params) => `⊙ search_memories: ${params.query} [limit ${params.limit}]`,
50
43
  }));
51
44
  }
52
- //# sourceMappingURL=search-memories.js.map
@@ -1,4 +1,3 @@
1
1
  import type { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js';
2
2
  import type { TypedDb } from '../db/typed.js';
3
3
  export declare function registerStoreMemories(server: McpServer, db: TypedDb): void;
4
- //# sourceMappingURL=store-memories.d.ts.map
@@ -2,11 +2,11 @@ import { E_UNKNOWN, getErrorMessage, rethrowMcpError } from '../lib/errors.js';
2
2
  import { computeMemoryHash } from '../lib/hash.js';
3
3
  import { logToolEvent, notifyMemoryResourceUpdated } from '../lib/mcp-utils.js';
4
4
  import { INSERT_MEMORY_SQL } from '../lib/sql.js';
5
- import { getToolContract } from '../lib/tool-contracts.js';
6
5
  import { createErrorResponse, createToolResponse, } from '../lib/tool-response.js';
7
- import {} from '../schemas/inputs.js';
8
- import {} from '../schemas/outputs.js';
6
+ import { StoreMemoriesInputSchema } from '../schemas/inputs.js';
7
+ import { BatchResultSchema } from '../schemas/outputs.js';
9
8
  import { wrapToolHandler } from './progress.js';
9
+ import { registerToolWithContract } from './register-contract.js';
10
10
  async function notifyCreatedResources(server, items) {
11
11
  const notifications = items
12
12
  .filter((item) => item.created)
@@ -14,14 +14,7 @@ async function notifyCreatedResources(server, items) {
14
14
  await Promise.allSettled(notifications);
15
15
  }
16
16
  export function registerStoreMemories(server, db) {
17
- const contract = getToolContract('store_memories');
18
- server.registerTool(contract.name, {
19
- title: contract.title,
20
- description: contract.description,
21
- inputSchema: contract.inputSchema,
22
- outputSchema: contract.outputSchema,
23
- annotations: contract.annotations,
24
- }, wrapToolHandler(async (params) => {
17
+ registerToolWithContract(server, 'store_memories', StoreMemoriesInputSchema, BatchResultSchema, wrapToolHandler(async (params) => {
25
18
  try {
26
19
  const now = new Date().toISOString();
27
20
  const results = db.transaction(() => {
@@ -65,4 +58,3 @@ export function registerStoreMemories(server, db) {
65
58
  progressMessage: (params) => `⊕ store_memories: ${params.items.length} items [batch]`,
66
59
  }));
67
60
  }
68
- //# sourceMappingURL=store-memories.js.map
@@ -1,4 +1,3 @@
1
1
  import type { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js';
2
2
  import type { TypedDb } from '../db/typed.js';
3
3
  export declare function registerStoreMemory(server: McpServer, db: TypedDb): void;
4
- //# sourceMappingURL=store-memory.d.ts.map
@@ -2,11 +2,11 @@ import { E_UNKNOWN, getErrorMessage, rethrowMcpError } from '../lib/errors.js';
2
2
  import { computeMemoryHash } from '../lib/hash.js';
3
3
  import { logToolEvent, notifyMemoryResourceUpdated } from '../lib/mcp-utils.js';
4
4
  import { INSERT_MEMORY_SQL } from '../lib/sql.js';
5
- import { getToolContract } from '../lib/tool-contracts.js';
6
5
  import { createErrorResponse, createToolResponse, } from '../lib/tool-response.js';
7
- import {} from '../schemas/inputs.js';
8
- import {} from '../schemas/outputs.js';
6
+ import { StoreMemoryInputSchema } from '../schemas/inputs.js';
7
+ import { StoreResultSchema } from '../schemas/outputs.js';
9
8
  import { wrapToolHandler } from './progress.js';
9
+ import { registerToolWithContract } from './register-contract.js';
10
10
  function toInsertParams(params, hash, memoryType, now) {
11
11
  return [
12
12
  hash,
@@ -25,14 +25,7 @@ function insertMemory(db, params, hash, memoryType, now) {
25
25
  return insertResult.changes > 0;
26
26
  }
27
27
  export function registerStoreMemory(server, db) {
28
- const contract = getToolContract('store_memory');
29
- server.registerTool(contract.name, {
30
- title: contract.title,
31
- description: contract.description,
32
- inputSchema: contract.inputSchema,
33
- outputSchema: contract.outputSchema,
34
- annotations: contract.annotations,
35
- }, wrapToolHandler(async (params) => {
28
+ registerToolWithContract(server, 'store_memory', StoreMemoryInputSchema, StoreResultSchema, wrapToolHandler(async (params) => {
36
29
  try {
37
30
  const memoryType = params.memory_type ?? 'general';
38
31
  const hash = computeMemoryHash(params.content, params.tags);
@@ -52,4 +45,3 @@ export function registerStoreMemory(server, db) {
52
45
  progressMessage: (params) => `⊕ store_memory: ${params.tags.length} tags [single]`,
53
46
  }));
54
47
  }
55
- //# sourceMappingURL=store-memory.js.map
@@ -1,4 +1,3 @@
1
1
  import type { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js';
2
2
  import type { TypedDb } from '../db/typed.js';
3
3
  export declare function registerUpdateMemory(server: McpServer, db: TypedDb): void;
4
- //# sourceMappingURL=update-memory.d.ts.map
@@ -2,12 +2,12 @@ import { E_CONFLICT, E_NOT_FOUND, E_UNKNOWN, getErrorMessage, rethrowMcpError, }
2
2
  import { computeMemoryHash } from '../lib/hash.js';
3
3
  import { logToolEvent, notifyMemoryResourceUpdated } from '../lib/mcp-utils.js';
4
4
  import { SELECT_MEMORY_BY_HASH_SQL, SELECT_MEMORY_HASH_SQL, } from '../lib/sql.js';
5
- import { getToolContract } from '../lib/tool-contracts.js';
6
5
  import { createErrorResponse, createToolResponse, } from '../lib/tool-response.js';
7
6
  import { parseTags } from '../lib/types.js';
8
- import {} from '../schemas/inputs.js';
9
- import {} from '../schemas/outputs.js';
7
+ import { UpdateMemoryInputSchema } from '../schemas/inputs.js';
8
+ import { UpdateResultSchema } from '../schemas/outputs.js';
10
9
  import { wrapToolHandler } from './progress.js';
10
+ import { registerToolWithContract } from './register-contract.js';
11
11
  const UPDATE_MEMORY_SQL = `UPDATE memories
12
12
  SET hash = ?, content = ?, tags = ?, updated_at = ?
13
13
  WHERE hash = ?`;
@@ -19,14 +19,7 @@ async function notifyUpdatedMemoryResources(server, oldHash, newHash) {
19
19
  await Promise.allSettled(notifications);
20
20
  }
21
21
  export function registerUpdateMemory(server, db) {
22
- const contract = getToolContract('update_memory');
23
- server.registerTool(contract.name, {
24
- title: contract.title,
25
- description: contract.description,
26
- inputSchema: contract.inputSchema,
27
- outputSchema: contract.outputSchema,
28
- annotations: contract.annotations,
29
- }, wrapToolHandler(async (params) => {
22
+ registerToolWithContract(server, 'update_memory', UpdateMemoryInputSchema, UpdateResultSchema, wrapToolHandler(async (params) => {
30
23
  try {
31
24
  // All reads and the write are inside a single IMMEDIATE transaction
32
25
  // to prevent TOCTOU between existence/collision checks and UPDATE.
@@ -80,4 +73,3 @@ export function registerUpdateMemory(server, db) {
80
73
  progressMessage: (params) => `⊜ update_memory: ${params.hash.slice(0, 12)}... [replace content]`,
81
74
  }));
82
75
  }
83
- //# sourceMappingURL=update-memory.js.map
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@j0hanz/memory-mcp",
3
- "version": "1.3.0",
3
+ "version": "1.4.0",
4
4
  "mcpName": "io.github.j0hanz/memory-mcp",
5
5
  "author": "Johanz",
6
6
  "license": "MIT",
@@ -45,12 +45,15 @@
45
45
  "start": "node dist/index.js",
46
46
  "format": "prettier --write .",
47
47
  "type-check": "node scripts/tasks.mjs type-check",
48
+ "type-check:src": "node node_modules/typescript/bin/tsc -p tsconfig.json --noEmit",
49
+ "type-check:tests": "node node_modules/typescript/bin/tsc -p tsconfig.test.json --noEmit",
48
50
  "type-check:diagnostics": "tsc --noEmit --extendedDiagnostics",
49
51
  "type-check:trace": "node -e \"require('fs').rmSync('.ts-trace',{recursive:true,force:true})\" && tsc --noEmit --generateTrace .ts-trace",
50
52
  "lint": "eslint .",
53
+ "lint:tests": "eslint src/__tests__",
51
54
  "lint:fix": "eslint . --fix",
52
55
  "test": "node scripts/tasks.mjs test",
53
- "test:fast": "node --test --import tsx/esm src/__tests__/**/*.test.ts",
56
+ "test:fast": "node --test --import tsx/esm src/__tests__/**/*.test.ts node-tests/**/*.test.ts",
54
57
  "test:coverage": "node scripts/tasks.mjs test --coverage",
55
58
  "knip": "knip",
56
59
  "knip:fix": "knip --fix",
@@ -58,23 +61,23 @@
58
61
  "prepublishOnly": "npm run lint && npm run type-check && npm run build"
59
62
  },
60
63
  "dependencies": {
61
- "@modelcontextprotocol/sdk": "^1.26.0",
64
+ "@modelcontextprotocol/sdk": "^1.27.1",
62
65
  "zod": "^4.3.6"
63
66
  },
64
67
  "devDependencies": {
65
68
  "@eslint/js": "^10.0.1",
66
- "eslint": "^10.0.0",
69
+ "eslint": "^10.0.2",
67
70
  "@trivago/prettier-plugin-sort-imports": "^6.0.2",
68
71
  "@types/node": "^24",
69
72
  "eslint-config-prettier": "^10.1.8",
70
73
  "eslint-plugin-de-morgan": "^2.0.0",
71
74
  "eslint-plugin-depend": "^1.4.0",
72
75
  "eslint-plugin-unused-imports": "^4.4.1",
73
- "knip": "^5.83.1",
76
+ "knip": "^5.85.0",
74
77
  "prettier": "^3.8.1",
75
78
  "tsx": "^4.21.0",
76
79
  "typescript": "^5.9.3",
77
- "typescript-eslint": "^8.56.0"
80
+ "typescript-eslint": "^8.56.1"
78
81
  },
79
82
  "engines": {
80
83
  "node": ">=24"
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/completions/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AAgB9C,wBAAgB,4BAA4B,CAC1C,EAAE,EAAE,OAAO,GACV,CAAC,KAAK,EAAE,MAAM,KAAK,MAAM,EAAE,CAQ7B"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/completions/index.ts"],"names":[],"mappings":"AAGA,MAAM,eAAe,GAAG,EAAE,CAAC;AAC3B,MAAM,qBAAqB,GAAG,GAAG,CAAC;AAClC,MAAM,mBAAmB,GAAG,+EAA+E,qBAAqB,EAAE,CAAC;AAEnI,SAAS,iBAAiB,CAAC,KAAa;IACtC,OAAO,KAAK,CAAC,OAAO,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;AAC1C,CAAC;AAED,SAAS,mBAAmB,CAAC,KAAa;IACxC,OAAO,iBAAiB,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,eAAe,CAAC,CAAC,CAAC;AAC5D,CAAC;AAED,6DAA6D;AAC7D,MAAM,UAAU,4BAA4B,CAC1C,EAAW;IAEX,OAAO,CAAC,KAAa,EAAY,EAAE;QACjC,MAAM,aAAa,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;QACjD,OAAO,EAAE;aACN,WAAW,CAAU,mBAAmB,CAAC;aACzC,GAAG,CAAC,GAAG,aAAa,GAAG,CAAC;aACxB,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IAC5B,CAAC,CAAC;AACJ,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/db/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAE3C,OAAO,EAAiB,KAAK,OAAO,EAAE,MAAM,YAAY,CAAC;AAmLzD,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,YAAY,CAWvD;AAED,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAGvD"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/db/index.ts"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"typed.d.ts","sourceRoot":"","sources":["../../src/db/typed.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,YAAY,EACZ,aAAa,EACb,yBAAyB,EAC1B,MAAM,aAAa,CAAC;AAErB,KAAK,SAAS,GAAG,SAAS,aAAa,EAAE,CAAC;AAE1C,MAAM,WAAW,cAAc,CAAC,CAAC;IAC/B,GAAG,CAAC,GAAG,MAAM,EAAE,SAAS,GAAG,CAAC,EAAE,CAAC;IAC/B,GAAG,CAAC,GAAG,MAAM,EAAE,SAAS,GAAG,CAAC,GAAG,SAAS,CAAC;IACzC,GAAG,CAAC,GAAG,MAAM,EAAE,SAAS,GAAG,yBAAyB,CAAC;CACtD;AAED,qBAAa,OAAO;IAGN,OAAO,CAAC,QAAQ,CAAC,EAAE;IAF/B,OAAO,CAAC,QAAQ,CAAC,KAAK,CAA8C;gBAEvC,EAAE,EAAE,YAAY;IAE7C,OAAO,CAAC,aAAa;IAcrB,OAAO,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,GAAG,cAAc,CAAC,CAAC,CAAC;IAI1C,WAAW,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,GAAG,cAAc,CAAC,CAAC,CAAC;IAU9C,WAAW,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,GAAG,CAAC;IAYlC,IAAI,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;IAIvB,KAAK,IAAI,IAAI;CAId;AAED,wBAAgB,aAAa,CAAC,EAAE,EAAE,YAAY,GAAG,OAAO,CAEvD"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"typed.js","sourceRoot":"","sources":["../../src/db/typed.ts"],"names":[],"mappings":"AAcA,MAAM,OAAO,OAAO;IAGW;IAFZ,KAAK,GAAG,IAAI,GAAG,EAAmC,CAAC;IAEpE,YAA6B,EAAgB;QAAhB,OAAE,GAAF,EAAE,CAAc;IAAG,CAAC;IAEzC,aAAa,CAAI,GAAW;QAClC,MAAM,IAAI,GAAG,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;QAClC,MAAM,iBAAiB,GAAG,CAAC,GAAG,MAAiB,EAAmB,EAAE,CAAC;YACnE,GAAG,MAAM;SACV,CAAC;QACF,OAAO;YACL,GAAG,EAAE,CAAC,GAAG,MAAiB,EAAE,EAAE,CAC5B,IAAI,CAAC,GAAG,CAAC,GAAG,iBAAiB,CAAC,GAAG,MAAM,CAAC,CAAQ;YAClD,GAAG,EAAE,CAAC,GAAG,MAAiB,EAAE,EAAE,CAC5B,IAAI,CAAC,GAAG,CAAC,GAAG,iBAAiB,CAAC,GAAG,MAAM,CAAC,CAAkB;YAC5D,GAAG,EAAE,CAAC,GAAG,MAAiB,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,iBAAiB,CAAC,GAAG,MAAM,CAAC,CAAC;SACzE,CAAC;IACJ,CAAC;IAED,OAAO,CAAI,GAAW;QACpB,OAAO,IAAI,CAAC,aAAa,CAAI,GAAG,CAAC,CAAC;IACpC,CAAC;IAED,WAAW,CAAI,GAAW;QACxB,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QACnC,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;YACzB,OAAO,MAA2B,CAAC;QACrC,CAAC;QACD,MAAM,IAAI,GAAG,IAAI,CAAC,aAAa,CAAI,GAAG,CAAC,CAAC;QACxC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;QAC1B,OAAO,IAAI,CAAC;IACd,CAAC;IAED,WAAW,CAAI,MAAe;QAC5B,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;QAChC,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,EAAE,CAAC;YACxB,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YACvB,OAAO,MAAM,CAAC;QAChB,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;YACzB,MAAM,GAAG,CAAC;QACZ,CAAC;IACH,CAAC;IAED,IAAI,CAAC,GAAW;QACd,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACpB,CAAC;IAED,KAAK;QACH,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;QACnB,IAAI,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC;IAClB,CAAC;CACF;AAED,MAAM,UAAU,aAAa,CAAC,EAAgB;IAC5C,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,CAAC;AACzB,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":""}
package/dist/index.js.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,oBAAoB,EAAE,MAAM,2CAA2C,CAAC;AAEjF,OAAO,OAAO,MAAM,cAAc,CAAC;AAEnC,OAAO,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAClD,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAClD,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAE3C,MAAM,cAAc,GAAG,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC,IAAI,WAAW,CAAC;AACpE,MAAM,gBAAgB,GAAqB,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;AACjE,MAAM,mBAAmB,GAAG,IAAI,CAAC;AACjC,MAAM,gBAAgB,GAAG,CAAC,CAAC;AAC3B,MAAM,eAAe,GAAG,CAAC,CAAC;AAE1B,SAAS,wBAAwB,CAAC,QAAoB;IACpD,KAAK,MAAM,MAAM,IAAI,gBAAgB,EAAE,CAAC;QACtC,OAAO,CAAC,EAAE,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;IAC/B,CAAC;AACH,CAAC;AAED,SAAS,sBAAsB;IAC7B,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE;QAC5B,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,qCAAqC,CAAC,CAAC;QAC5D,OAAO,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;IACjC,CAAC,EAAE,mBAAmB,CAAC,CAAC;IACxB,KAAK,CAAC,KAAK,EAAE,CAAC;IACd,OAAO,KAAK,CAAC;AACf,CAAC;AAED,KAAK,UAAU,WAAW,CACxB,MAAuC;IAEvC,IAAI,CAAC;QACH,MAAM,MAAM,CAAC,KAAK,EAAE,CAAC;IACvB,CAAC;IAAC,MAAM,CAAC;QACP,sBAAsB;IACxB,CAAC;AACH,CAAC;AAED,KAAK,UAAU,WAAW,CACxB,MAAuC,EACvC,EAAwC;IAExC,MAAM,KAAK,GAAG,sBAAsB,EAAE,CAAC;IACvC,IAAI,CAAC;QACH,MAAM,WAAW,CAAC,MAAM,CAAC,CAAC;QAC1B,EAAE,CAAC,KAAK,EAAE,CAAC;IACb,CAAC;YAAS,CAAC;QACT,YAAY,CAAC,KAAK,CAAC,CAAC;IACtB,CAAC;IAED,OAAO,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;AAChC,CAAC;AAED,SAAS,qBAAqB,CAC5B,MAAuC,EACvC,EAAwC;IAExC,IAAI,cAAc,GAAG,KAAK,CAAC;IAC3B,OAAO,GAAG,EAAE;QACV,IAAI,cAAc;YAAE,OAAO;QAC3B,cAAc,GAAG,IAAI,CAAC;QACtB,KAAK,WAAW,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IAC/B,CAAC,CAAC;AACJ,CAAC;AAED,KAAK,UAAU,IAAI;IACjB,MAAM,EAAE,GAAG,iBAAiB,CAAC,cAAc,CAAC,CAAC;IAC7C,MAAM,MAAM,GAAG,YAAY,CAAC,EAAE,CAAC,CAAC;IAChC,MAAM,SAAS,GAAG,IAAI,oBAAoB,EAAE,CAAC;IAC7C,MAAM,QAAQ,GAAG,qBAAqB,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IACnD,wBAAwB,CAAC,QAAQ,CAAC,CAAC;IAEnC,MAAM,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;AAClC,CAAC;AAED,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,GAAY,EAAE,EAAE;IAC5B,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,gBAAgB,eAAe,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IAC/D,OAAO,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;AACjC,CAAC,CAAC,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../src/lib/errors.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,WAAW,gBAAgB,CAAC;AACzC,eAAO,MAAM,gBAAgB,qBAAqB,CAAC;AACnD,eAAO,MAAM,UAAU,eAAe,CAAC;AACvC,eAAO,MAAM,UAAU,eAAe,CAAC;AACvC,eAAO,MAAM,WAAW,gBAAgB,CAAC;AACzC,eAAO,MAAM,SAAS,cAAc,CAAC;AAGrC,wBAAgB,eAAe,CAAC,GAAG,EAAE,OAAO,GAAG,MAAM,CAIpD;AAED,wBAAgB,eAAe,CAAC,GAAG,EAAE,OAAO,GAAG,IAAI,CAElD"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"errors.js","sourceRoot":"","sources":["../../src/lib/errors.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,oCAAoC,CAAC;AAE9D,MAAM,CAAC,MAAM,WAAW,GAAG,aAAa,CAAC;AACzC,MAAM,CAAC,MAAM,gBAAgB,GAAG,kBAAkB,CAAC;AACnD,MAAM,CAAC,MAAM,UAAU,GAAG,YAAY,CAAC;AACvC,MAAM,CAAC,MAAM,UAAU,GAAG,YAAY,CAAC;AACvC,MAAM,CAAC,MAAM,WAAW,GAAG,aAAa,CAAC;AACzC,MAAM,CAAC,MAAM,SAAS,GAAG,WAAW,CAAC;AACrC,MAAM,qBAAqB,GAAG,wBAAwB,CAAC;AAEvD,MAAM,UAAU,eAAe,CAAC,GAAY;IAC1C,IAAI,GAAG,YAAY,KAAK;QAAE,OAAO,GAAG,CAAC,OAAO,CAAC;IAC7C,IAAI,OAAO,GAAG,KAAK,QAAQ;QAAE,OAAO,GAAG,CAAC;IACxC,OAAO,qBAAqB,CAAC;AAC/B,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,GAAY;IAC1C,IAAI,GAAG,YAAY,QAAQ;QAAE,MAAM,GAAG,CAAC;AACzC,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"hash.d.ts","sourceRoot":"","sources":["../../src/lib/hash.ts"],"names":[],"mappings":"AAgBA,wBAAgB,iBAAiB,CAC/B,OAAO,EAAE,MAAM,EACf,IAAI,EAAE,SAAS,MAAM,EAAE,GACtB,MAAM,CAKR"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"hash.js","sourceRoot":"","sources":["../../src/lib/hash.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAEzC,MAAM,qBAAqB,GAAG,QAAQ,CAAC;AAEvC,SAAS,aAAa,CAAC,IAAuB;IAC5C,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACpB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,OAAO,CAAC,GAAG,IAAI,CAAC,CAAC,IAAI,EAAE,CAAC;AAC1B,CAAC;AAED,SAAS,cAAc,CAAC,IAAuB;IAC7C,OAAO,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC;AAC7C,CAAC;AAED,MAAM,UAAU,iBAAiB,CAC/B,OAAe,EACf,IAAuB;IAEvB,OAAO,UAAU,CAAC,qBAAqB,CAAC;SACrC,MAAM,CAAC,OAAO,CAAC;SACf,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;SAC5B,MAAM,CAAC,KAAK,CAAC,CAAC;AACnB,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"instructions.d.ts","sourceRoot":"","sources":["../../src/lib/instructions.ts"],"names":[],"mappings":"AAIA,wBAAgB,gBAAgB,IAAI,MAAM,CAOzC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"instructions.js","sourceRoot":"","sources":["../../src/lib/instructions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,uBAAuB,EAAE,MAAM,8BAA8B,CAAC;AAEvE,IAAI,kBAAsC,CAAC;AAE3C,MAAM,UAAU,gBAAgB;IAC9B,IAAI,kBAAkB,KAAK,SAAS,EAAE,CAAC;QACrC,OAAO,kBAAkB,CAAC;IAC5B,CAAC;IAED,kBAAkB,GAAG,uBAAuB,EAAE,CAAC;IAC/C,OAAO,kBAAkB,CAAC;AAC5B,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"mcp-utils.d.ts","sourceRoot":"","sources":["../../src/lib/mcp-utils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAEzE,KAAK,QAAQ,GAAG,OAAO,GAAG,MAAM,GAAG,QAAQ,GAAG,SAAS,GAAG,OAAO,CAAC;AAElE,wBAAsB,YAAY,CAChC,MAAM,EAAE,SAAS,EACjB,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,OAAO,EACb,KAAK,GAAE,QAAiB,GACvB,OAAO,CAAC,IAAI,CAAC,CAUf;AAID,wBAAsB,2BAA2B,CAC/C,MAAM,EAAE,SAAS,EACjB,IAAI,EAAE,MAAM,GACX,OAAO,CAAC,IAAI,CAAC,CAYf"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"mcp-utils.js","sourceRoot":"","sources":["../../src/lib/mcp-utils.ts"],"names":[],"mappings":"AAIA,MAAM,CAAC,KAAK,UAAU,YAAY,CAChC,MAAiB,EACjB,MAAc,EACd,IAAa,EACb,QAAkB,MAAM;IAExB,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,EAAE,CAAC;QAC1B,OAAO;IACT,CAAC;IAED,IAAI,CAAC;QACH,MAAM,MAAM,CAAC,MAAM,CAAC,kBAAkB,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;IAClE,CAAC;IAAC,MAAM,CAAC;QACP,sBAAsB;IACxB,CAAC;AACH,CAAC;AAED,MAAM,0BAA0B,GAAG,oBAAoB,CAAC;AAExD,MAAM,CAAC,KAAK,UAAU,2BAA2B,CAC/C,MAAiB,EACjB,IAAY;IAEZ,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,EAAE,CAAC;QAC1B,OAAO;IACT,CAAC;IAED,IAAI,CAAC;QACH,MAAM,MAAM,CAAC,MAAM,CAAC,mBAAmB,CAAC;YACtC,GAAG,EAAE,GAAG,0BAA0B,GAAG,IAAI,EAAE;SAC5C,CAAC,CAAC;IACL,CAAC;IAAC,MAAM,CAAC;QACP,2BAA2B;IAC7B,CAAC;AACH,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"pagination.d.ts","sourceRoot":"","sources":["../../src/lib/pagination.ts"],"names":[],"mappings":"AAUA,MAAM,WAAW,SAAS,CAAC,CAAC;IAC1B,IAAI,EAAE,CAAC,EAAE,CAAC;IACV,OAAO,EAAE,OAAO,CAAC;CAClB;AAiCD,wBAAgB,YAAY,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAGnD;AAED,wBAAgB,YAAY,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CASnD;AAED,wBAAgB,SAAS,CAAC,CAAC,EAAE,IAAI,EAAE,SAAS,CAAC,EAAE,EAAE,KAAK,EAAE,MAAM,GAAG,SAAS,CAAC,CAAC,CAAC,CAM5E"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"pagination.js","sourceRoot":"","sources":["../../src/lib/pagination.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,oCAAoC,CAAC;AAEzE,OAAO,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAE/C,MAAM,eAAe,GAAG,WAAW,CAAC;AAUpC,MAAM,gCAAgC,GAAG,0BAA0B,CAAC;AAEpE,SAAS,QAAQ,CAAC,KAAc;IAC9B,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,CAAC;AACrD,CAAC;AAED,SAAS,oBAAoB,CAAC,KAAc;IAC1C,OAAO,CACL,OAAO,KAAK,KAAK,QAAQ;QACzB,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC;QACvB,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC;QACtB,KAAK,IAAI,CAAC,CACX,CAAC;AACJ,CAAC;AAED,SAAS,eAAe,CAAC,KAAc;IACrC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;QACrB,OAAO,KAAK,CAAC;IACf,CAAC;IACD,MAAM,EAAE,MAAM,EAAE,GAAG,KAAK,CAAC;IACzB,OAAO,oBAAoB,CAAC,MAAM,CAAC,CAAC;AACtC,CAAC;AAED,SAAS,kBAAkB,CAAC,MAAc;IACxC,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC,QAAQ,EAAE,CAAC;IAC7D,MAAM,MAAM,GAAY,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IACzC,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,EAAE,CAAC;QAC7B,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAC;IACpD,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,MAAM,UAAU,YAAY,CAAC,MAAc;IACzC,MAAM,OAAO,GAAkB,EAAE,MAAM,EAAE,CAAC;IAC1C,OAAO,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAC;AACxE,CAAC;AAED,MAAM,UAAU,YAAY,CAAC,MAAc;IACzC,IAAI,CAAC;QACH,OAAO,kBAAkB,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC;IAC3C,CAAC;IAAC,MAAM,CAAC;QACP,MAAM,IAAI,QAAQ,CAChB,SAAS,CAAC,aAAa,EACvB,GAAG,gBAAgB,oBAAoB,CACxC,CAAC;IACJ,CAAC;AACH,CAAC;AAED,MAAM,UAAU,SAAS,CAAI,IAAkB,EAAE,KAAa;IAC5D,IAAI,IAAI,CAAC,MAAM,GAAG,KAAK,EAAE,CAAC;QACxB,OAAO,EAAE,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;IACvD,CAAC;IAED,OAAO,EAAE,IAAI,EAAE,IAAI,CAAC,KAAK,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;AAChD,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"search-cursor.d.ts","sourceRoot":"","sources":["../../src/lib/search-cursor.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAmBjD,MAAM,MAAM,mBAAmB,GAC3B;IACE,IAAI,EAAE,QAAQ,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;CACd,GACD;IACE,IAAI,EAAE,QAAQ,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;CAChB,CAAC;AA+DN,wBAAgB,sBAAsB,CACpC,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,aAAa,GACrB,MAAM,CAKR;AAED,wBAAgB,kBAAkB,CAChC,KAAK,EAAE,MAAM,EACb,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,MAAM,GACX,MAAM,CASR;AAED,wBAAgB,kBAAkB,CAChC,MAAM,EAAE,MAAM,EACd,aAAa,EAAE,MAAM,GACpB,mBAAmB,CAuBrB"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"search-cursor.js","sourceRoot":"","sources":["../../src/lib/search-cursor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,oCAAoC,CAAC;AAEzE,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAEzC,OAAO,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAG/C,MAAM,eAAe,GAAG,WAAW,CAAC;AACpC,MAAM,cAAc,GAAG,CAAC,CAAC;AACzB,MAAM,WAAW,GAAG,YAAY,CAAC;AACjC,MAAM,wBAAwB,GAAG,EAAE,CAAC;AAyBpC,SAAS,aAAa,CAAC,MAAc;IACnC,OAAO,IAAI,QAAQ,CACjB,SAAS,CAAC,aAAa,EACvB,GAAG,gBAAgB,KAAK,MAAM,EAAE,CACjC,CAAC;AACJ,CAAC;AAED,SAAS,QAAQ,CAAC,KAAc;IAC9B,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,CAAC;AACrD,CAAC;AAED,SAAS,qBAAqB,CAAC,KAAc;IAC3C,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;QACrB,OAAO,KAAK,CAAC;IACf,CAAC;IAED,OAAO,CACL,KAAK,CAAC,GAAG,CAAC,KAAK,cAAc;QAC7B,KAAK,CAAC,MAAM,CAAC,KAAK,WAAW;QAC7B,OAAO,KAAK,CAAC,OAAO,CAAC,KAAK,QAAQ;QAClC,OAAO,KAAK,CAAC,MAAM,CAAC,KAAK,QAAQ;QACjC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QAC9B,OAAO,KAAK,CAAC,MAAM,CAAC,KAAK,QAAQ;QACjC,gBAAgB,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CACrC,CAAC;AACJ,CAAC;AAED,SAAS,2BAA2B,CAClC,KAAc;IAEd,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;QACrB,OAAO,KAAK,CAAC;IACf,CAAC;IAED,MAAM,EAAE,MAAM,EAAE,GAAG,KAAK,CAAC;IACzB,OAAO,CACL,OAAO,MAAM,KAAK,QAAQ;QAC1B,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC;QACxB,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC;QACvB,MAAM,IAAI,CAAC,CACZ,CAAC;AACJ,CAAC;AAED,SAAS,kBAAkB,CAAC,MAAc;IACxC,IAAI,CAAC;QACH,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC,QAAQ,EAAE,CAAC;QAC7D,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAC1B,CAAC;IAAC,MAAM,CAAC;QACP,MAAM,aAAa,CAAC,kBAAkB,CAAC,CAAC;IAC1C,CAAC;AACH,CAAC;AAED,SAAS,YAAY,CAAC,KAAa,EAAE,OAAsB;IACzD,OAAO,IAAI,CAAC,SAAS,CAAC;QACpB,KAAK;QACL,cAAc,EAAE,OAAO,CAAC,cAAc,IAAI,IAAI;QAC9C,cAAc,EAAE,OAAO,CAAC,cAAc,IAAI,IAAI;QAC9C,WAAW,EAAE,OAAO,CAAC,WAAW,IAAI,IAAI;KACzC,CAAC,CAAC;AACL,CAAC;AAED,MAAM,UAAU,sBAAsB,CACpC,KAAa,EACb,OAAsB;IAEtB,OAAO,UAAU,CAAC,QAAQ,CAAC;SACxB,MAAM,CAAC,YAAY,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;SACpC,MAAM,CAAC,KAAK,CAAC;SACb,KAAK,CAAC,CAAC,EAAE,wBAAwB,CAAC,CAAC;AACxC,CAAC;AAED,MAAM,UAAU,kBAAkB,CAChC,KAAa,EACb,IAAY,EACZ,IAAY;IAEZ,MAAM,OAAO,GAAwB;QACnC,CAAC,EAAE,cAAc;QACjB,IAAI,EAAE,WAAW;QACjB,KAAK;QACL,IAAI;QACJ,IAAI;KACL,CAAC;IACF,OAAO,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAC;AACxE,CAAC;AAED,MAAM,UAAU,kBAAkB,CAChC,MAAc,EACd,aAAqB;IAErB,MAAM,OAAO,GAAG,kBAAkB,CAAC,MAAM,CAAC,CAAC;IAE3C,IAAI,qBAAqB,CAAC,OAAO,CAAC,EAAE,CAAC;QACnC,IAAI,OAAO,CAAC,KAAK,KAAK,aAAa,EAAE,CAAC;YACpC,MAAM,aAAa,CAAC,gDAAgD,CAAC,CAAC;QACxE,CAAC;QAED,OAAO;YACL,IAAI,EAAE,QAAQ;YACd,IAAI,EAAE,OAAO,CAAC,IAAI;YAClB,IAAI,EAAE,OAAO,CAAC,IAAI;SACnB,CAAC;IACJ,CAAC;IAED,IAAI,2BAA2B,CAAC,OAAO,CAAC,EAAE,CAAC;QACzC,OAAO;YACL,IAAI,EAAE,QAAQ;YACd,MAAM,EAAE,OAAO,CAAC,MAAM;SACvB,CAAC;IACJ,CAAC;IAED,MAAM,aAAa,CAAC,kBAAkB,CAAC,CAAC;AAC1C,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"search.d.ts","sourceRoot":"","sources":["../../src/lib/search.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAEjD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAW5C,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAOtD;AAED,MAAM,WAAW,aAAa;IAC5B,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,aAAa;IAC5B,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,MAAM,EAAE,aAAa,EAAE,CAAC;CACzB;AAED,MAAM,MAAM,iBAAiB,GACzB;IACE,IAAI,EAAE,QAAQ,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;CAChB,GACD;IACE,IAAI,EAAE,QAAQ,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;CACd,CAAC;AAWN,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,aAAa,GAAG,aAAa,CAaxE;AAED,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,SAAS,MAAM,EAAE,GAAG,MAAM,CAMtE;AAuBD,wBAAgB,oBAAoB,CAClC,EAAE,EAAE,OAAO,EACX,KAAK,EAAE,MAAM,EACb,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,iBAAiB,GAAG,SAAS,EACrC,OAAO,EAAE,aAAa,GACrB,SAAS,EAAE,CAoBb;AAED,wBAAgB,eAAe,CAAC,MAAM,EAAE;IACtC,cAAc,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACpC,cAAc,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACpC,WAAW,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CAClC,GAAG,aAAa,CAUhB"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"search.js","sourceRoot":"","sources":["../../src/lib/search.ts"],"names":[],"mappings":"AAKA,MAAM,oBAAoB,GAAG,gBAAgB,CAAC;AAC9C,MAAM,wBAAwB,GAAG,sBAAsB,CAAC;AACxD,MAAM,sBAAsB,GAAG;2DAC4B,CAAC;AAE5D,SAAS,aAAa,CAAC,KAAa;IAClC,OAAO,KAAK,CAAC,KAAK,CAAC,oBAAoB,CAAC,IAAI,EAAE,CAAC;AACjD,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,KAAa;IAC5C,MAAM,MAAM,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;IACpC,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACxB,OAAO,wBAAwB,CAAC;IAClC,CAAC;IAED,OAAO,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,KAAK,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AACvD,CAAC;AAwBD,MAAM,YAAY,GAGZ;IACJ,EAAE,GAAG,EAAE,gBAAgB,EAAE,MAAM,EAAE,mBAAmB,EAAE;IACtD,EAAE,GAAG,EAAE,gBAAgB,EAAE,MAAM,EAAE,mBAAmB,EAAE;IACtD,EAAE,GAAG,EAAE,aAAa,EAAE,MAAM,EAAE,mBAAmB,EAAE;CACpD,CAAC;AAEF,MAAM,UAAU,kBAAkB,CAAC,OAAsB;IACvD,MAAM,OAAO,GAAa,EAAE,CAAC;IAC7B,MAAM,MAAM,GAAoB,EAAE,CAAC;IAEnC,KAAK,MAAM,IAAI,IAAI,YAAY,EAAE,CAAC;QAChC,MAAM,KAAK,GAAG,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAChC,IAAI,KAAK,IAAI,IAAI,EAAE,CAAC;YAClB,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YAC1B,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACrB,CAAC;IACH,CAAC;IAED,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC;AAC7B,CAAC;AAED,MAAM,UAAU,mBAAmB,CAAC,OAA0B;IAC5D,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACzB,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,OAAO,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,QAAQ,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AAC5D,CAAC;AAED,SAAS,oBAAoB,CAC3B,UAAkB,EAClB,MAAqC;IAErC,IAAI,CAAC,MAAM,IAAI,MAAM,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;QACxC,OAAO,GAAG,sBAAsB;qCACC,UAAU;;0BAErB,CAAC;IACzB,CAAC;IAED,OAAO,GAAG,sBAAsB;mCACC,UAAU;;;;;;eAM9B,CAAC;AAChB,CAAC;AAED,MAAM,UAAU,oBAAoB,CAClC,EAAW,EACX,KAAa,EACb,KAAa,EACb,MAAqC,EACrC,OAAsB;IAEtB,MAAM,QAAQ,GAAG,gBAAgB,CAAC,KAAK,CAAC,CAAC;IACzC,MAAM,MAAM,GAAG,kBAAkB,CAAC,OAAO,CAAC,CAAC;IAC3C,MAAM,UAAU,GAAG,mBAAmB,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IACvD,MAAM,GAAG,GAAG,oBAAoB,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;IACrD,MAAM,IAAI,GAAG,EAAE,CAAC,WAAW,CAAY,GAAG,CAAC,CAAC;IAE5C,IAAI,CAAC,MAAM,IAAI,MAAM,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;QACxC,MAAM,MAAM,GAAG,MAAM,EAAE,MAAM,IAAI,CAAC,CAAC;QACnC,OAAO,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,GAAG,MAAM,CAAC,MAAM,EAAE,KAAK,GAAG,CAAC,EAAE,MAAM,CAAC,CAAC;IACjE,CAAC;IAED,OAAO,IAAI,CAAC,GAAG,CACb,QAAQ,EACR,GAAG,MAAM,CAAC,MAAM,EAChB,MAAM,CAAC,IAAI,EACX,MAAM,CAAC,IAAI,EACX,MAAM,CAAC,IAAI,EACX,KAAK,GAAG,CAAC,CACV,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,MAI/B;IACC,OAAO;QACL,GAAG,CAAC,MAAM,CAAC,cAAc,IAAI,IAAI;YAC/B,CAAC,CAAC,EAAE,cAAc,EAAE,MAAM,CAAC,cAAc,EAAE;YAC3C,CAAC,CAAC,EAAE,CAAC;QACP,GAAG,CAAC,MAAM,CAAC,cAAc,IAAI,IAAI;YAC/B,CAAC,CAAC,EAAE,cAAc,EAAE,MAAM,CAAC,cAAc,EAAE;YAC3C,CAAC,CAAC,EAAE,CAAC;QACP,GAAG,CAAC,MAAM,CAAC,WAAW,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,MAAM,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAC3E,CAAC;AACJ,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"sql.d.ts","sourceRoot":"","sources":["../../src/lib/sql.ts"],"names":[],"mappings":"AAAA;mDACmD;AAEnD,8EAA8E;AAC9E,eAAO,MAAM,iBAAiB,0IACC,CAAC;AAEhC,mEAAmE;AACnE,eAAO,MAAM,iBAAiB,wCAAwC,CAAC;AAEvE,uCAAuC;AACvC,eAAO,MAAM,yBAAyB,0CACG,CAAC;AAE1C,+EAA+E;AAC/E,eAAO,MAAM,sBAAsB,6CACS,CAAC;AAE7C,qDAAqD;AACrD,eAAO,MAAM,oBAAoB,oIACkG,CAAC;AAEpI,gCAAgC;AAChC,eAAO,MAAM,sBAAsB,gDACY,CAAC;AAEhD,iCAAiC;AACjC,eAAO,MAAM,eAAe,iGACoE,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"sql.js","sourceRoot":"","sources":["../../src/lib/sql.ts"],"names":[],"mappings":"AAAA;mDACmD;AAEnD,8EAA8E;AAC9E,MAAM,CAAC,MAAM,iBAAiB,GAAG;+BACF,CAAC;AAEhC,mEAAmE;AACnE,MAAM,CAAC,MAAM,iBAAiB,GAAG,qCAAqC,CAAC;AAEvE,uCAAuC;AACvC,MAAM,CAAC,MAAM,yBAAyB,GACpC,uCAAuC,CAAC;AAE1C,+EAA+E;AAC/E,MAAM,CAAC,MAAM,sBAAsB,GACjC,0CAA0C,CAAC;AAE7C,qDAAqD;AACrD,MAAM,CAAC,MAAM,oBAAoB,GAC/B,iIAAiI,CAAC;AAEpI,gCAAgC;AAChC,MAAM,CAAC,MAAM,sBAAsB,GACjC,6CAA6C,CAAC;AAEhD,iCAAiC;AACjC,MAAM,CAAC,MAAM,eAAe,GAC1B,8FAA8F,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"tool-contracts.d.ts","sourceRoot":"","sources":["../../src/lib/tool-contracts.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,CAAC,EAAE,MAAM,QAAQ,CAAC;AAgChC,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,CAAC,CAAC,OAAO,CAAC;IACvB,YAAY,EAAE,CAAC,CAAC,OAAO,CAAC;IACxB,WAAW,EAAE;QACX,YAAY,CAAC,EAAE,OAAO,CAAC;QACvB,cAAc,CAAC,EAAE,OAAO,CAAC;QACzB,eAAe,CAAC,EAAE,OAAO,CAAC;QAC1B,aAAa,CAAC,EAAE,OAAO,CAAC;KACzB,CAAC;CACH;AAED,eAAO,MAAM,cAAc,EAAE,YAAY,EA8KxC,CAAC;AAEF,wBAAgB,gBAAgB,IAAI,YAAY,EAAE,CAEjD;AAED,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,YAAY,CAM1D"}