concevent-ai-agent-sdk 3.0.5 → 3.0.6
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.
- package/dist/core/index.d.ts +2 -0
- package/dist/core/index.d.ts.map +1 -1
- package/dist/core/index.js +1 -0
- package/dist/core/index.js.map +1 -1
- package/dist/core/string-similarity.d.ts +58 -0
- package/dist/core/string-similarity.d.ts.map +1 -0
- package/dist/core/string-similarity.js +103 -0
- package/dist/core/string-similarity.js.map +1 -0
- package/dist/core/tool-executor.d.ts.map +1 -1
- package/dist/core/tool-executor.js +14 -2
- package/dist/core/tool-executor.js.map +1 -1
- package/package.json +1 -1
package/dist/core/index.d.ts
CHANGED
|
@@ -14,4 +14,6 @@ export { convertChatMessagesToOpenAI, convertFunctionDeclarationsToTools, conver
|
|
|
14
14
|
export type { NormalizedReasoning } from './openrouter-utils.js';
|
|
15
15
|
export { DiagramBuilder } from './diagram-builder.js';
|
|
16
16
|
export type { DiagramBuilderConfig } from './diagram-builder.js';
|
|
17
|
+
export { levenshteinDistance, findClosestMatch } from './string-similarity.js';
|
|
18
|
+
export type { FindClosestMatchOptions, ClosestMatchResult } from './string-similarity.js';
|
|
17
19
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/core/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/core/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AACzC,YAAY,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AACxC,OAAO,EAAE,sBAAsB,EAAE,MAAM,wBAAwB,CAAC;AAChE,YAAY,EAAE,sBAAsB,EAAE,MAAM,wBAAwB,CAAC;AACrE,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAC5C,OAAO,EACL,qBAAqB,EACrB,oBAAoB,EACpB,eAAe,EACf,4BAA4B,GAC7B,MAAM,oBAAoB,CAAC;AAC5B,YAAY,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAC9D,OAAO,EACL,UAAU,EACV,gBAAgB,EAChB,YAAY,EACZ,0BAA0B,GAC3B,MAAM,aAAa,CAAC;AACrB,YAAY,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAClD,OAAO,EACL,mBAAmB,EACnB,gBAAgB,EAChB,qBAAqB,EACrB,mBAAmB,EACnB,SAAS,GACV,MAAM,sBAAsB,CAAC;AAC9B,YAAY,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAC7D,OAAO,EACL,2BAA2B,EAC3B,kCAAkC,EAClC,qCAAqC,EACrC,wBAAwB,EACxB,kBAAkB,EAClB,mBAAmB,EACnB,iBAAiB,EACjB,sBAAsB,GACvB,MAAM,uBAAuB,CAAC;AAC/B,YAAY,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AACjE,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,YAAY,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/core/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AACzC,YAAY,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AACxC,OAAO,EAAE,sBAAsB,EAAE,MAAM,wBAAwB,CAAC;AAChE,YAAY,EAAE,sBAAsB,EAAE,MAAM,wBAAwB,CAAC;AACrE,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAC5C,OAAO,EACL,qBAAqB,EACrB,oBAAoB,EACpB,eAAe,EACf,4BAA4B,GAC7B,MAAM,oBAAoB,CAAC;AAC5B,YAAY,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAC9D,OAAO,EACL,UAAU,EACV,gBAAgB,EAChB,YAAY,EACZ,0BAA0B,GAC3B,MAAM,aAAa,CAAC;AACrB,YAAY,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAClD,OAAO,EACL,mBAAmB,EACnB,gBAAgB,EAChB,qBAAqB,EACrB,mBAAmB,EACnB,SAAS,GACV,MAAM,sBAAsB,CAAC;AAC9B,YAAY,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAC7D,OAAO,EACL,2BAA2B,EAC3B,kCAAkC,EAClC,qCAAqC,EACrC,wBAAwB,EACxB,kBAAkB,EAClB,mBAAmB,EACnB,iBAAiB,EACjB,sBAAsB,GACvB,MAAM,uBAAuB,CAAC;AAC/B,YAAY,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AACjE,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,YAAY,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AACjE,OAAO,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC/E,YAAY,EAAE,uBAAuB,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC"}
|
package/dist/core/index.js
CHANGED
|
@@ -7,4 +7,5 @@ export { AgentError, formatErrorTrace, isAbortError, createErrorMessageResolver,
|
|
|
7
7
|
export { buildResponseFormat, validateResponse, formatValidationError, requiresJsonParsing, hasSchema, } from './response-format.js';
|
|
8
8
|
export { convertChatMessagesToOpenAI, convertFunctionDeclarationsToTools, convertOpenAIToolCallsToFunctionCalls, mapOpenAIUsageToMetadata, normalizeReasoning, createSystemMessage, createUserMessage, createAssistantMessage, } from './openrouter-utils.js';
|
|
9
9
|
export { DiagramBuilder } from './diagram-builder.js';
|
|
10
|
+
export { levenshteinDistance, findClosestMatch } from './string-similarity.js';
|
|
10
11
|
//# sourceMappingURL=index.js.map
|
package/dist/core/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/core/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAEzC,OAAO,EAAE,sBAAsB,EAAE,MAAM,wBAAwB,CAAC;AAEhE,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAC5C,OAAO,EACL,qBAAqB,EACrB,oBAAoB,EACpB,eAAe,EACf,4BAA4B,GAC7B,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EACL,UAAU,EACV,gBAAgB,EAChB,YAAY,EACZ,0BAA0B,GAC3B,MAAM,aAAa,CAAC;AAErB,OAAO,EACL,mBAAmB,EACnB,gBAAgB,EAChB,qBAAqB,EACrB,mBAAmB,EACnB,SAAS,GACV,MAAM,sBAAsB,CAAC;AAE9B,OAAO,EACL,2BAA2B,EAC3B,kCAAkC,EAClC,qCAAqC,EACrC,wBAAwB,EACxB,kBAAkB,EAClB,mBAAmB,EACnB,iBAAiB,EACjB,sBAAsB,GACvB,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/core/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAEzC,OAAO,EAAE,sBAAsB,EAAE,MAAM,wBAAwB,CAAC;AAEhE,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAC5C,OAAO,EACL,qBAAqB,EACrB,oBAAoB,EACpB,eAAe,EACf,4BAA4B,GAC7B,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EACL,UAAU,EACV,gBAAgB,EAChB,YAAY,EACZ,0BAA0B,GAC3B,MAAM,aAAa,CAAC;AAErB,OAAO,EACL,mBAAmB,EACnB,gBAAgB,EAChB,qBAAqB,EACrB,mBAAmB,EACnB,SAAS,GACV,MAAM,sBAAsB,CAAC;AAE9B,OAAO,EACL,2BAA2B,EAC3B,kCAAkC,EAClC,qCAAqC,EACrC,wBAAwB,EACxB,kBAAkB,EAClB,mBAAmB,EACnB,iBAAiB,EACjB,sBAAsB,GACvB,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAEtD,OAAO,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC"}
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* String similarity utilities for fuzzy matching tool names.
|
|
3
|
+
* Used to detect AI hallucinations and suggest correct tool names.
|
|
4
|
+
*/
|
|
5
|
+
/**
|
|
6
|
+
* Options for finding the closest match.
|
|
7
|
+
*/
|
|
8
|
+
export interface FindClosestMatchOptions {
|
|
9
|
+
/** Maximum edit distance to consider a match (default: 3) */
|
|
10
|
+
maxDistance?: number;
|
|
11
|
+
/** Whether to perform case-sensitive comparison (default: false) */
|
|
12
|
+
caseSensitive?: boolean;
|
|
13
|
+
}
|
|
14
|
+
/**
|
|
15
|
+
* Result of finding the closest match.
|
|
16
|
+
*/
|
|
17
|
+
export interface ClosestMatchResult {
|
|
18
|
+
/** The matched string from candidates */
|
|
19
|
+
match: string;
|
|
20
|
+
/** The Levenshtein distance between input and match */
|
|
21
|
+
distance: number;
|
|
22
|
+
}
|
|
23
|
+
/**
|
|
24
|
+
* Calculates the Levenshtein edit distance between two strings.
|
|
25
|
+
* Uses dynamic programming for O(n*m) time complexity and O(min(n,m)) space.
|
|
26
|
+
*
|
|
27
|
+
* @param a - First string
|
|
28
|
+
* @param b - Second string
|
|
29
|
+
* @returns The minimum number of single-character edits (insertions, deletions, substitutions)
|
|
30
|
+
* required to change one string into the other
|
|
31
|
+
*
|
|
32
|
+
* @example
|
|
33
|
+
* levenshteinDistance('kitten', 'sitting') // returns 3
|
|
34
|
+
* levenshteinDistance('Read', 'read') // returns 1
|
|
35
|
+
* levenshteinDistance('Read', 'readFile') // returns 4
|
|
36
|
+
*/
|
|
37
|
+
export declare function levenshteinDistance(a: string, b: string): number;
|
|
38
|
+
/**
|
|
39
|
+
* Finds the closest matching string from a list of candidates.
|
|
40
|
+
* Returns null if no match is within the threshold distance.
|
|
41
|
+
*
|
|
42
|
+
* @param input - The string to find a match for
|
|
43
|
+
* @param candidates - List of possible matches
|
|
44
|
+
* @param options - Configuration options
|
|
45
|
+
* @returns The closest match and its distance, or null if no match within threshold
|
|
46
|
+
*
|
|
47
|
+
* @example
|
|
48
|
+
* findClosestMatch('readFile', ['Read', 'Write', 'Edit'])
|
|
49
|
+
* // returns { match: 'Read', distance: 4 } with default maxDistance
|
|
50
|
+
*
|
|
51
|
+
* findClosestMatch('READ', ['Read', 'Write'], { caseSensitive: false })
|
|
52
|
+
* // returns { match: 'Read', distance: 0 }
|
|
53
|
+
*
|
|
54
|
+
* findClosestMatch('xyz', ['Read', 'Write'], { maxDistance: 2 })
|
|
55
|
+
* // returns null (no match within distance 2)
|
|
56
|
+
*/
|
|
57
|
+
export declare function findClosestMatch(input: string, candidates: string[], options?: FindClosestMatchOptions): ClosestMatchResult | null;
|
|
58
|
+
//# sourceMappingURL=string-similarity.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"string-similarity.d.ts","sourceRoot":"","sources":["../../src/core/string-similarity.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH;;GAEG;AACH,MAAM,WAAW,uBAAuB;IACtC,6DAA6D;IAC7D,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,oEAAoE;IACpE,aAAa,CAAC,EAAE,OAAO,CAAC;CACzB;AAED;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,yCAAyC;IACzC,KAAK,EAAE,MAAM,CAAC;IACd,uDAAuD;IACvD,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,mBAAmB,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CA6ChE;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,gBAAgB,CAC9B,KAAK,EAAE,MAAM,EACb,UAAU,EAAE,MAAM,EAAE,EACpB,OAAO,GAAE,uBAA4B,GACpC,kBAAkB,GAAG,IAAI,CAkC3B"}
|
|
@@ -0,0 +1,103 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* String similarity utilities for fuzzy matching tool names.
|
|
3
|
+
* Used to detect AI hallucinations and suggest correct tool names.
|
|
4
|
+
*/
|
|
5
|
+
/**
|
|
6
|
+
* Calculates the Levenshtein edit distance between two strings.
|
|
7
|
+
* Uses dynamic programming for O(n*m) time complexity and O(min(n,m)) space.
|
|
8
|
+
*
|
|
9
|
+
* @param a - First string
|
|
10
|
+
* @param b - Second string
|
|
11
|
+
* @returns The minimum number of single-character edits (insertions, deletions, substitutions)
|
|
12
|
+
* required to change one string into the other
|
|
13
|
+
*
|
|
14
|
+
* @example
|
|
15
|
+
* levenshteinDistance('kitten', 'sitting') // returns 3
|
|
16
|
+
* levenshteinDistance('Read', 'read') // returns 1
|
|
17
|
+
* levenshteinDistance('Read', 'readFile') // returns 4
|
|
18
|
+
*/
|
|
19
|
+
export function levenshteinDistance(a, b) {
|
|
20
|
+
// Optimization: if strings are equal, distance is 0
|
|
21
|
+
if (a === b)
|
|
22
|
+
return 0;
|
|
23
|
+
// Optimization: if one string is empty, distance is length of other
|
|
24
|
+
if (a.length === 0)
|
|
25
|
+
return b.length;
|
|
26
|
+
if (b.length === 0)
|
|
27
|
+
return a.length;
|
|
28
|
+
// Ensure 'a' is the shorter string for space optimization
|
|
29
|
+
if (a.length > b.length) {
|
|
30
|
+
[a, b] = [b, a];
|
|
31
|
+
}
|
|
32
|
+
const aLen = a.length;
|
|
33
|
+
const bLen = b.length;
|
|
34
|
+
// Use single array for space optimization (O(min(n,m)) instead of O(n*m))
|
|
35
|
+
let prevRow = new Array(aLen + 1);
|
|
36
|
+
let currRow = new Array(aLen + 1);
|
|
37
|
+
// Initialize first row
|
|
38
|
+
for (let i = 0; i <= aLen; i++) {
|
|
39
|
+
prevRow[i] = i;
|
|
40
|
+
}
|
|
41
|
+
// Fill in the rest of the matrix
|
|
42
|
+
for (let j = 1; j <= bLen; j++) {
|
|
43
|
+
currRow[0] = j;
|
|
44
|
+
for (let i = 1; i <= aLen; i++) {
|
|
45
|
+
const cost = a[i - 1] === b[j - 1] ? 0 : 1;
|
|
46
|
+
currRow[i] = Math.min(prevRow[i] + 1, // deletion
|
|
47
|
+
currRow[i - 1] + 1, // insertion
|
|
48
|
+
prevRow[i - 1] + cost // substitution
|
|
49
|
+
);
|
|
50
|
+
}
|
|
51
|
+
// Swap rows
|
|
52
|
+
[prevRow, currRow] = [currRow, prevRow];
|
|
53
|
+
}
|
|
54
|
+
// Result is in prevRow due to the final swap
|
|
55
|
+
return prevRow[aLen];
|
|
56
|
+
}
|
|
57
|
+
/**
|
|
58
|
+
* Finds the closest matching string from a list of candidates.
|
|
59
|
+
* Returns null if no match is within the threshold distance.
|
|
60
|
+
*
|
|
61
|
+
* @param input - The string to find a match for
|
|
62
|
+
* @param candidates - List of possible matches
|
|
63
|
+
* @param options - Configuration options
|
|
64
|
+
* @returns The closest match and its distance, or null if no match within threshold
|
|
65
|
+
*
|
|
66
|
+
* @example
|
|
67
|
+
* findClosestMatch('readFile', ['Read', 'Write', 'Edit'])
|
|
68
|
+
* // returns { match: 'Read', distance: 4 } with default maxDistance
|
|
69
|
+
*
|
|
70
|
+
* findClosestMatch('READ', ['Read', 'Write'], { caseSensitive: false })
|
|
71
|
+
* // returns { match: 'Read', distance: 0 }
|
|
72
|
+
*
|
|
73
|
+
* findClosestMatch('xyz', ['Read', 'Write'], { maxDistance: 2 })
|
|
74
|
+
* // returns null (no match within distance 2)
|
|
75
|
+
*/
|
|
76
|
+
export function findClosestMatch(input, candidates, options = {}) {
|
|
77
|
+
const { maxDistance = 3, caseSensitive = false } = options;
|
|
78
|
+
// Handle edge cases
|
|
79
|
+
if (!input || candidates.length === 0) {
|
|
80
|
+
return null;
|
|
81
|
+
}
|
|
82
|
+
const normalizedInput = caseSensitive ? input : input.toLowerCase();
|
|
83
|
+
let bestMatch = null;
|
|
84
|
+
let bestDistance = Infinity;
|
|
85
|
+
for (const candidate of candidates) {
|
|
86
|
+
const normalizedCandidate = caseSensitive ? candidate : candidate.toLowerCase();
|
|
87
|
+
const distance = levenshteinDistance(normalizedInput, normalizedCandidate);
|
|
88
|
+
// Early exit on exact match
|
|
89
|
+
if (distance === 0) {
|
|
90
|
+
return { match: candidate, distance: 0 };
|
|
91
|
+
}
|
|
92
|
+
if (distance < bestDistance) {
|
|
93
|
+
bestDistance = distance;
|
|
94
|
+
bestMatch = candidate;
|
|
95
|
+
}
|
|
96
|
+
}
|
|
97
|
+
// Return null if best match exceeds threshold
|
|
98
|
+
if (bestMatch === null || bestDistance > maxDistance) {
|
|
99
|
+
return null;
|
|
100
|
+
}
|
|
101
|
+
return { match: bestMatch, distance: bestDistance };
|
|
102
|
+
}
|
|
103
|
+
//# sourceMappingURL=string-similarity.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"string-similarity.js","sourceRoot":"","sources":["../../src/core/string-similarity.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tool-executor.d.ts","sourceRoot":"","sources":["../../src/core/tool-executor.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,cAAc,EACd,mBAAmB,EACnB,kBAAkB,EAClB,cAAc,EACd,gBAAgB,EAChB,QAAQ,EACR,WAAW,EACZ,MAAM,mBAAmB,CAAC;AAC3B,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"tool-executor.d.ts","sourceRoot":"","sources":["../../src/core/tool-executor.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,cAAc,EACd,mBAAmB,EACnB,kBAAkB,EAClB,cAAc,EACd,gBAAgB,EAChB,QAAQ,EACR,WAAW,EACZ,MAAM,mBAAmB,CAAC;AAC3B,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AAM1D,UAAU,gBAAgB;IACxB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAC/B;AAED;;GAEG;AACH,qBAAa,yBAA0B,SAAQ,KAAK;aAEhC,QAAQ,EAAE,MAAM;aAChB,SAAS,EAAE,MAAM;gBADjB,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,MAAM;CAKpC;AAuHD,qBAAa,YAAY,CAAC,WAAW,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IAC7D,OAAO,CAAC,OAAO,CAA2C;gBAE9C,KAAK,EAAE,cAAc,CAAC,WAAW,CAAC,EAAE;IAOhD,mBAAmB;IAInB,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAI9B;;OAEG;IACH,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAK/B,eAAe,CACnB,IAAI,EAAE,QAAQ,GAAG,gBAAgB,EACjC,OAAO,EAAE,mBAAmB,CAAC,WAAW,CAAC,EACzC,SAAS,CAAC,EAAE,MAAM,GACjB,OAAO,CAAC,kBAAkB,CAAC;IAmE9B;;OAEG;YACW,gBAAgB;IA2DxB,gBAAgB,CACpB,KAAK,EAAE,QAAQ,EAAE,EACjB,OAAO,EAAE,mBAAmB,CAAC,WAAW,CAAC,EACzC,QAAQ,CAAC,EAAE,CAAC,MAAM,EAAE,cAAc,KAAK,IAAI,EAC3C,cAAc,GAAE,MAAU,EAC1B,kBAAkB,CAAC,EAAE,kBAAkB,CAAC,WAAW,CAAC,EACpD,OAAO,CAAC,EAAE,WAAW,EAAE,EACvB,SAAS,CAAC,EAAE,MAAM,GACjB,OAAO,CAAC,gBAAgB,EAAE,CAAC;IAiF9B,0BAA0B,CACxB,OAAO,EAAE,MAAM,EACf,YAAY,EAAE,MAAM,EACpB,MAAM,EAAE,kBAAkB,GACzB;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,OAAO,CAAA;KAAE;CAezC"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { logger } from './logger.js';
|
|
2
2
|
import { validateToolArguments } from './tool-validation.js';
|
|
3
3
|
import { AI_ERROR_CATEGORIES } from './errors.js';
|
|
4
|
+
import { findClosestMatch } from './string-similarity.js';
|
|
4
5
|
/**
|
|
5
6
|
* Error thrown when a tool execution times out.
|
|
6
7
|
*/
|
|
@@ -134,11 +135,22 @@ export class ToolExecutor {
|
|
|
134
135
|
async executeToolCall(call, context, timeoutMs) {
|
|
135
136
|
const tool = this.toolMap.get(call.name);
|
|
136
137
|
if (!tool) {
|
|
138
|
+
const availableTools = Array.from(this.toolMap.keys());
|
|
139
|
+
// maxDistance of 5 catches common AI hallucinations like 'readFile' -> 'Read'
|
|
140
|
+
const suggestion = findClosestMatch(call.name, availableTools, {
|
|
141
|
+
maxDistance: 5,
|
|
142
|
+
caseSensitive: false,
|
|
143
|
+
});
|
|
144
|
+
let errorMessage = `[${AI_ERROR_CATEGORIES.TOOL_NOT_FOUND}] Tool "${call.name}" does not exist.`;
|
|
145
|
+
if (suggestion) {
|
|
146
|
+
errorMessage += `\n\nDid you mean "${suggestion.match}"?`;
|
|
147
|
+
}
|
|
148
|
+
errorMessage += `\n\nAvailable tools: ${availableTools.join(', ')}`;
|
|
149
|
+
errorMessage += `\n\nSuggestion: Check the tool name for typos and use one of the available tools.`;
|
|
137
150
|
return {
|
|
138
151
|
functionName: call.name,
|
|
139
152
|
result: null,
|
|
140
|
-
error:
|
|
141
|
-
`Suggestion: Check the available tools and use a valid tool name. Available tools can be found in the tool declarations.`,
|
|
153
|
+
error: errorMessage,
|
|
142
154
|
};
|
|
143
155
|
}
|
|
144
156
|
try {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tool-executor.js","sourceRoot":"","sources":["../../src/core/tool-executor.ts"],"names":[],"mappings":"AAUA,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AAC7D,OAAO,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"tool-executor.js","sourceRoot":"","sources":["../../src/core/tool-executor.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED