@cloudbase/agent-tools 0.0.6 → 0.0.7
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/CHANGELOG.md +9 -0
- package/dist/bash/bash-tool.d.ts +10 -4
- package/dist/bash/bash-tool.d.ts.map +1 -1
- package/dist/bash/bash-tool.js +160 -28
- package/dist/bash/bash-tool.js.map +1 -1
- package/dist/bash/operator/base-operator.d.ts +8 -4
- package/dist/bash/operator/base-operator.d.ts.map +1 -1
- package/dist/bash/operator/base-operator.js.map +1 -1
- package/dist/bash/operator/local-operator.d.ts +10 -1
- package/dist/bash/operator/local-operator.d.ts.map +1 -1
- package/dist/bash/operator/local-operator.js +231 -34
- package/dist/bash/operator/local-operator.js.map +1 -1
- package/dist/bash/operator/sandbox-operator.d.ts +0 -1
- package/dist/bash/operator/sandbox-operator.d.ts.map +1 -1
- package/dist/bash/operator/sandbox-operator.js +6 -15
- package/dist/bash/operator/sandbox-operator.js.map +1 -1
- package/dist/code_executers/unsafe_local_code_executor.d.ts.map +1 -1
- package/dist/code_executers/unsafe_local_code_executor.js +2 -21
- package/dist/code_executers/unsafe_local_code_executor.js.map +1 -1
- package/dist/fs/edit-tool.d.ts +6 -0
- package/dist/fs/edit-tool.d.ts.map +1 -1
- package/dist/fs/edit-tool.js +3 -2
- package/dist/fs/edit-tool.js.map +1 -1
- package/dist/fs/glob-tool.d.ts +13 -11
- package/dist/fs/glob-tool.d.ts.map +1 -1
- package/dist/fs/glob-tool.js +60 -25
- package/dist/fs/glob-tool.js.map +1 -1
- package/dist/fs/grep-tool.d.ts.map +1 -1
- package/dist/fs/grep-tool.js +79 -21
- package/dist/fs/grep-tool.js.map +1 -1
- package/dist/fs/index.d.ts +3 -0
- package/dist/fs/index.d.ts.map +1 -1
- package/dist/fs/index.js +8 -1
- package/dist/fs/index.js.map +1 -1
- package/dist/fs/multi-edit-tool.d.ts +54 -0
- package/dist/fs/multi-edit-tool.d.ts.map +1 -0
- package/dist/fs/multi-edit-tool.js +133 -0
- package/dist/fs/multi-edit-tool.js.map +1 -0
- package/dist/fs/multi-read-tool.d.ts +41 -0
- package/dist/fs/multi-read-tool.d.ts.map +1 -0
- package/dist/fs/multi-read-tool.js +74 -0
- package/dist/fs/multi-read-tool.js.map +1 -0
- package/dist/fs/multi-write-tool.d.ts +40 -0
- package/dist/fs/multi-write-tool.d.ts.map +1 -0
- package/dist/fs/multi-write-tool.js +77 -0
- package/dist/fs/multi-write-tool.js.map +1 -0
- package/dist/fs/read-tool.d.ts +5 -0
- package/dist/fs/read-tool.d.ts.map +1 -1
- package/dist/fs/read-tool.js +14 -12
- package/dist/fs/read-tool.js.map +1 -1
- package/dist/fs/toolkit.d.ts +2 -1
- package/dist/fs/toolkit.d.ts.map +1 -1
- package/dist/fs/toolkit.js +13 -1
- package/dist/fs/toolkit.js.map +1 -1
- package/dist/fs/write-tool.d.ts +4 -0
- package/dist/fs/write-tool.d.ts.map +1 -1
- package/dist/fs/write-tool.js +8 -6
- package/dist/fs/write-tool.js.map +1 -1
- package/dist/utils.d.ts +1 -0
- package/dist/utils.d.ts.map +1 -1
- package/dist/utils.js +21 -0
- package/dist/utils.js.map +1 -1
- package/package.json +9 -1
package/dist/fs/edit-tool.js
CHANGED
|
@@ -33,13 +33,14 @@ var __importStar = (this && this.__importStar) || (function () {
|
|
|
33
33
|
};
|
|
34
34
|
})();
|
|
35
35
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
|
+
exports.editParametersSchema = void 0;
|
|
36
37
|
exports.editFile = editFile;
|
|
37
38
|
exports.createEditTool = createEditTool;
|
|
38
39
|
const v4_1 = require("zod/v4");
|
|
39
40
|
const path = __importStar(require("path"));
|
|
40
41
|
const utils_1 = require("./utils");
|
|
41
42
|
const utils_2 = require("../utils");
|
|
42
|
-
|
|
43
|
+
exports.editParametersSchema = v4_1.z.object({
|
|
43
44
|
file_path: v4_1.z.string().describe("The absolute path to the file to modify"),
|
|
44
45
|
old_string: v4_1.z
|
|
45
46
|
.string()
|
|
@@ -193,7 +194,7 @@ function createEditTool(context) {
|
|
|
193
194
|
return (0, utils_2.tool)((params) => editFile(context, params), {
|
|
194
195
|
name: "Edit",
|
|
195
196
|
description: "Performs exact string replacements in files with strict occurrence count validation.\n\nUsage:\n- When editing text from Read tool output, ensure you preserve the exact indentation (tabs/spaces) as it appears AFTER the line number prefix. The line number prefix format is: spaces + line number + tab. Everything after that tab is the actual file content to match. Never include any part of the line number prefix in the old_string or new_string.\n- ALWAYS prefer editing existing files in the codebase. NEVER write new files unless explicitly required.",
|
|
196
|
-
schema: editParametersSchema,
|
|
197
|
+
schema: exports.editParametersSchema,
|
|
197
198
|
getDisplay: ({ name, input }) => {
|
|
198
199
|
return `Using ${name} for tool call: ${input.file_path || ""}`;
|
|
199
200
|
},
|
package/dist/fs/edit-tool.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"edit-tool.js","sourceRoot":"","sources":["../../src/fs/edit-tool.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"edit-tool.js","sourceRoot":"","sources":["../../src/fs/edit-tool.ts"],"names":[],"mappings":"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"}
|
package/dist/fs/glob-tool.d.ts
CHANGED
|
@@ -8,16 +8,8 @@ interface GlobFileEntry {
|
|
|
8
8
|
modifiedTime: Date;
|
|
9
9
|
extension?: string;
|
|
10
10
|
}
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
path: z.ZodOptional<z.ZodString>;
|
|
14
|
-
case_sensitive: z.ZodOptional<z.ZodBoolean>;
|
|
15
|
-
include_dirs: z.ZodOptional<z.ZodBoolean>;
|
|
16
|
-
show_hidden: z.ZodOptional<z.ZodBoolean>;
|
|
17
|
-
max_results: z.ZodOptional<z.ZodNumber>;
|
|
18
|
-
sort_by_time: z.ZodOptional<z.ZodBoolean>;
|
|
19
|
-
}, z.core.$strip>, Record<string, unknown>, {
|
|
20
|
-
pattern: string;
|
|
11
|
+
interface GlobResult {
|
|
12
|
+
patterns: string[];
|
|
21
13
|
search_path: string;
|
|
22
14
|
matches: GlobFileEntry[];
|
|
23
15
|
total_matches: number;
|
|
@@ -26,6 +18,16 @@ export declare function createGlobTool(context: ExecutionContext): import("../ut
|
|
|
26
18
|
summary: string;
|
|
27
19
|
truncated: boolean;
|
|
28
20
|
sorted_by_time: boolean;
|
|
29
|
-
}
|
|
21
|
+
}
|
|
22
|
+
export declare function createGlobTool(context: ExecutionContext): import("../utils").DynamicTool<z.ZodObject<{
|
|
23
|
+
patterns: z.ZodArray<z.ZodString>;
|
|
24
|
+
pattern: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodArray<z.ZodString>]>>;
|
|
25
|
+
path: z.ZodOptional<z.ZodString>;
|
|
26
|
+
case_sensitive: z.ZodOptional<z.ZodBoolean>;
|
|
27
|
+
include_dirs: z.ZodOptional<z.ZodBoolean>;
|
|
28
|
+
show_hidden: z.ZodOptional<z.ZodBoolean>;
|
|
29
|
+
max_results: z.ZodOptional<z.ZodNumber>;
|
|
30
|
+
sort_by_time: z.ZodOptional<z.ZodBoolean>;
|
|
31
|
+
}, z.core.$strip>, Record<string, unknown>, GlobResult>;
|
|
30
32
|
export {};
|
|
31
33
|
//# sourceMappingURL=glob-tool.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"glob-tool.d.ts","sourceRoot":"","sources":["../../src/fs/glob-tool.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,QAAQ,CAAC;AAG3B,OAAO,EACL,gBAAgB,EAKjB,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"glob-tool.d.ts","sourceRoot":"","sources":["../../src/fs/glob-tool.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,QAAQ,CAAC;AAG3B,OAAO,EACL,gBAAgB,EAKjB,MAAM,SAAS,CAAC;AAgDjB,UAAU,aAAa;IACrB,IAAI,EAAE,MAAM,CAAC;IACb,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,OAAO,CAAC;IACrB,IAAI,EAAE,MAAM,CAAC;IACb,YAAY,EAAE,IAAI,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,UAAU,UAAU;IAClB,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,aAAa,EAAE,CAAC;IACzB,aAAa,EAAE,MAAM,CAAC;IACtB,UAAU,EAAE,MAAM,CAAC;IACnB,eAAe,EAAE,MAAM,CAAC;IACxB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,OAAO,CAAC;IACnB,cAAc,EAAE,OAAO,CAAC;CACzB;AAiMD,wBAAgB,cAAc,CAAC,OAAO,EAAE,gBAAgB;;;;;;;;;wDA6HvD"}
|
package/dist/fs/glob-tool.js
CHANGED
|
@@ -39,9 +39,13 @@ const path = __importStar(require("path"));
|
|
|
39
39
|
const utils_1 = require("./utils");
|
|
40
40
|
const utils_2 = require("../utils");
|
|
41
41
|
const globParametersSchema = v4_1.z.object({
|
|
42
|
+
patterns: v4_1.z
|
|
43
|
+
.array(v4_1.z.string())
|
|
44
|
+
.describe('Glob patterns to match (e.g., ["*.js", "*.ts", "src/**/*.tsx"])'),
|
|
42
45
|
pattern: v4_1.z
|
|
43
|
-
.string()
|
|
44
|
-
.
|
|
46
|
+
.union([v4_1.z.string(), v4_1.z.array(v4_1.z.string())])
|
|
47
|
+
.optional()
|
|
48
|
+
.describe('Legacy parameter: Single pattern string or array of patterns (use patterns instead)'),
|
|
45
49
|
path: v4_1.z
|
|
46
50
|
.string()
|
|
47
51
|
.optional()
|
|
@@ -221,7 +225,18 @@ function sortResults(results, sortByTime) {
|
|
|
221
225
|
function createGlobTool(context) {
|
|
222
226
|
return (0, utils_2.tool)(async (params) => {
|
|
223
227
|
try {
|
|
224
|
-
const { pattern, path: searchPath = ".", case_sensitive = false, include_dirs = false, show_hidden = false, max_results = 500, sort_by_time = false, } = params;
|
|
228
|
+
const { patterns, pattern, path: searchPath = ".", case_sensitive = false, include_dirs = false, show_hidden = false, max_results = 500, sort_by_time = false, } = params;
|
|
229
|
+
// Parameter normalization: prioritize patterns, fallback to pattern
|
|
230
|
+
let normalizedPatterns;
|
|
231
|
+
if (patterns) {
|
|
232
|
+
normalizedPatterns = patterns;
|
|
233
|
+
}
|
|
234
|
+
else if (pattern) {
|
|
235
|
+
normalizedPatterns = Array.isArray(pattern) ? pattern : [pattern];
|
|
236
|
+
}
|
|
237
|
+
else {
|
|
238
|
+
return (0, utils_2.handleToolError)(new Error("Either patterns or pattern must be provided"), "Glob tool execution", "validation");
|
|
239
|
+
}
|
|
225
240
|
// Validate workspace path (handles both absolute and relative paths)
|
|
226
241
|
const pathError = (0, utils_1.validateWorkspacePath)(searchPath, context);
|
|
227
242
|
if (pathError) {
|
|
@@ -234,39 +249,54 @@ function createGlobTool(context) {
|
|
|
234
249
|
if (dirError) {
|
|
235
250
|
return dirError;
|
|
236
251
|
}
|
|
237
|
-
//
|
|
238
|
-
const
|
|
239
|
-
|
|
240
|
-
const
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
252
|
+
// Process all patterns and collect unique matches
|
|
253
|
+
const allMatches = [];
|
|
254
|
+
const seenPaths = new Set();
|
|
255
|
+
for (const patternStr of normalizedPatterns) {
|
|
256
|
+
const regex = globToRegex(patternStr, case_sensitive);
|
|
257
|
+
const matches = await findMatches(context, absolutePath, regex, {
|
|
258
|
+
includeDirs: include_dirs,
|
|
259
|
+
showHidden: show_hidden,
|
|
260
|
+
maxResults: max_results,
|
|
261
|
+
});
|
|
262
|
+
// Add unique matches to combined results
|
|
263
|
+
for (const match of matches) {
|
|
264
|
+
if (!seenPaths.has(match.absolutePath)) {
|
|
265
|
+
seenPaths.add(match.absolutePath);
|
|
266
|
+
allMatches.push(match);
|
|
267
|
+
}
|
|
268
|
+
}
|
|
269
|
+
// Stop if we've reached max results
|
|
270
|
+
if (allMatches.length >= max_results) {
|
|
271
|
+
break;
|
|
272
|
+
}
|
|
273
|
+
}
|
|
274
|
+
// Sort combined results
|
|
275
|
+
const sortedMatches = sortResults(allMatches, sort_by_time);
|
|
276
|
+
// Calculate totals
|
|
248
277
|
const fileCount = sortedMatches.filter((m) => !m.isDirectory).length;
|
|
249
|
-
const
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
278
|
+
const directoryCount = sortedMatches.filter((m) => m.isDirectory).length;
|
|
279
|
+
// Create summary
|
|
280
|
+
let summary = `Found ${sortedMatches.length} unique match(es) across ${normalizedPatterns.length} pattern(s)`;
|
|
281
|
+
if (fileCount > 0 && directoryCount > 0) {
|
|
282
|
+
summary += ` (${fileCount} files, ${directoryCount} directories)`;
|
|
253
283
|
}
|
|
254
284
|
else if (fileCount > 0) {
|
|
255
285
|
summary += ` (${fileCount} files)`;
|
|
256
286
|
}
|
|
257
|
-
else if (
|
|
258
|
-
summary += ` (${
|
|
287
|
+
else if (directoryCount > 0) {
|
|
288
|
+
summary += ` (${directoryCount} directories)`;
|
|
259
289
|
}
|
|
260
290
|
if (sortedMatches.length >= max_results) {
|
|
261
291
|
summary += ` - results truncated at ${max_results}`;
|
|
262
292
|
}
|
|
263
293
|
return (0, utils_1.createSuccessResponse)({
|
|
264
|
-
|
|
265
|
-
search_path:
|
|
294
|
+
patterns: normalizedPatterns,
|
|
295
|
+
search_path: path.relative(context.workingDirectory, absolutePath) || ".",
|
|
266
296
|
matches: sortedMatches,
|
|
267
297
|
total_matches: sortedMatches.length,
|
|
268
298
|
file_count: fileCount,
|
|
269
|
-
directory_count:
|
|
299
|
+
directory_count: directoryCount,
|
|
270
300
|
summary,
|
|
271
301
|
truncated: sortedMatches.length >= max_results,
|
|
272
302
|
sorted_by_time: sort_by_time,
|
|
@@ -277,10 +307,15 @@ function createGlobTool(context) {
|
|
|
277
307
|
}
|
|
278
308
|
}, {
|
|
279
309
|
name: "Glob",
|
|
280
|
-
description: 'Find files and directories matching glob patterns (e.g., "*.js", "
|
|
310
|
+
description: 'Find files and directories matching glob patterns. Use patterns parameter for multiple patterns (e.g., patterns: ["*.js", "*.ts"]). Legacy pattern parameter also supported. Efficient for locating files by name or path structure. Can be combined with read tool for batch file operations.',
|
|
281
311
|
schema: globParametersSchema,
|
|
282
312
|
getDisplay: ({ name, input }) => {
|
|
283
|
-
|
|
313
|
+
const patternDisplay = input.patterns
|
|
314
|
+
? `[${input.patterns.join(", ")}]`
|
|
315
|
+
: (Array.isArray(input.pattern)
|
|
316
|
+
? `[${input.pattern.join(", ")}]`
|
|
317
|
+
: input.pattern || "");
|
|
318
|
+
return `Using ${name} for tool call: ${patternDisplay}`;
|
|
284
319
|
},
|
|
285
320
|
});
|
|
286
321
|
}
|
package/dist/fs/glob-tool.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"glob-tool.js","sourceRoot":"","sources":["../../src/fs/glob-tool.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"glob-tool.js","sourceRoot":"","sources":["../../src/fs/glob-tool.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"grep-tool.d.ts","sourceRoot":"","sources":["../../src/fs/grep-tool.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,QAAQ,CAAC;AAE3B,OAAO,EACL,gBAAgB,
|
|
1
|
+
{"version":3,"file":"grep-tool.d.ts","sourceRoot":"","sources":["../../src/fs/grep-tool.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,QAAQ,CAAC;AAE3B,OAAO,EACL,gBAAgB,EAIjB,MAAM,SAAS,CAAC;AAyCjB,UAAU,SAAS;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,UAAU,UAAU;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;IACpB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,cAAc,EAAE,MAAM,CAAC;IACvB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,OAAO,EAAE,SAAS,EAAE,CAAC;IACrB,eAAe,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,EAAE,CAAC,CAAC;IAC9C,aAAa,EAAE,MAAM,CAAC;IACtB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAiOD,wBAAgB,cAAc,CAAC,OAAO,EAAE,gBAAgB;;;;;;;oCA8MvD"}
|
package/dist/fs/grep-tool.js
CHANGED
|
@@ -45,7 +45,7 @@ const grepParametersSchema = v4_1.z.object({
|
|
|
45
45
|
path: v4_1.z
|
|
46
46
|
.string()
|
|
47
47
|
.optional()
|
|
48
|
-
.describe("
|
|
48
|
+
.describe("File or directory to search in (relative to workspace root, or absolute path within workspace). Defaults to workspace root."),
|
|
49
49
|
include: v4_1.z
|
|
50
50
|
.string()
|
|
51
51
|
.optional()
|
|
@@ -268,29 +268,79 @@ function createGrepTool(context) {
|
|
|
268
268
|
if (pathError) {
|
|
269
269
|
return pathError;
|
|
270
270
|
}
|
|
271
|
-
// Resolve search
|
|
271
|
+
// Resolve search path
|
|
272
272
|
const absolutePath = (0, utils_1.resolveWorkspacePath)(searchPath, context);
|
|
273
|
-
// Check if path exists
|
|
274
|
-
|
|
275
|
-
|
|
276
|
-
|
|
273
|
+
// Check if path exists
|
|
274
|
+
try {
|
|
275
|
+
await context.fsOperator.stat(absolutePath);
|
|
276
|
+
}
|
|
277
|
+
catch (error) {
|
|
278
|
+
return (0, utils_2.handleToolError)(`Path does not exist: ${searchPath}`, "Path validation", "validation");
|
|
277
279
|
}
|
|
278
280
|
// Create regex pattern
|
|
279
281
|
const regexFlags = case_sensitive ? "g" : "gi";
|
|
280
282
|
const regex = new RegExp(pattern, regexFlags);
|
|
281
|
-
//
|
|
282
|
-
const
|
|
283
|
-
|
|
284
|
-
|
|
285
|
-
|
|
286
|
-
|
|
287
|
-
|
|
288
|
-
|
|
289
|
-
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
|
|
283
|
+
// Check if path is a file or directory
|
|
284
|
+
const stats = await context.fsOperator.stat(absolutePath);
|
|
285
|
+
const isFile = stats.isFile();
|
|
286
|
+
const isDirectory = stats.isDirectory();
|
|
287
|
+
let filesToSearch = [];
|
|
288
|
+
if (isFile) {
|
|
289
|
+
// Single file search
|
|
290
|
+
if (shouldSkipFile(absolutePath)) {
|
|
291
|
+
return (0, utils_1.createSuccessResponse)({
|
|
292
|
+
pattern,
|
|
293
|
+
search_path: searchPath,
|
|
294
|
+
include_pattern: include,
|
|
295
|
+
files_searched: 0,
|
|
296
|
+
matches: [],
|
|
297
|
+
total_matches: 0,
|
|
298
|
+
message: `File ${searchPath} is in skip list (e.g., node_modules, .git, etc.)`,
|
|
299
|
+
});
|
|
300
|
+
}
|
|
301
|
+
if (!isTextFile(absolutePath)) {
|
|
302
|
+
return (0, utils_1.createSuccessResponse)({
|
|
303
|
+
pattern,
|
|
304
|
+
search_path: searchPath,
|
|
305
|
+
include_pattern: include,
|
|
306
|
+
files_searched: 0,
|
|
307
|
+
matches: [],
|
|
308
|
+
total_matches: 0,
|
|
309
|
+
message: `File ${searchPath} is not a text file`,
|
|
310
|
+
});
|
|
311
|
+
}
|
|
312
|
+
// Check if file matches include pattern (if specified)
|
|
313
|
+
if (include && !matchesIncludePattern(searchPath, include)) {
|
|
314
|
+
return (0, utils_1.createSuccessResponse)({
|
|
315
|
+
pattern,
|
|
316
|
+
search_path: searchPath,
|
|
317
|
+
include_pattern: include,
|
|
318
|
+
files_searched: 0,
|
|
319
|
+
matches: [],
|
|
320
|
+
total_matches: 0,
|
|
321
|
+
message: `File ${searchPath} does not match include pattern ${include}`,
|
|
322
|
+
});
|
|
323
|
+
}
|
|
324
|
+
filesToSearch = [absolutePath];
|
|
325
|
+
}
|
|
326
|
+
else if (isDirectory) {
|
|
327
|
+
// Directory search (existing logic)
|
|
328
|
+
filesToSearch = await findFilesToSearch(context, absolutePath, include, max_files);
|
|
329
|
+
if (filesToSearch.length === 0) {
|
|
330
|
+
const message = `No files found to search in ${searchPath}${include ? ` matching ${include}` : ""}`;
|
|
331
|
+
return (0, utils_1.createSuccessResponse)({
|
|
332
|
+
pattern,
|
|
333
|
+
search_path: searchPath,
|
|
334
|
+
include_pattern: include,
|
|
335
|
+
files_searched: 0,
|
|
336
|
+
matches: [],
|
|
337
|
+
total_matches: 0,
|
|
338
|
+
message,
|
|
339
|
+
});
|
|
340
|
+
}
|
|
341
|
+
}
|
|
342
|
+
else {
|
|
343
|
+
return (0, utils_2.handleToolError)(`Path is neither a file nor a directory: ${searchPath}`, "Path validation", "validation");
|
|
294
344
|
}
|
|
295
345
|
// Search in files
|
|
296
346
|
const allMatches = [];
|
|
@@ -303,7 +353,15 @@ function createGrepTool(context) {
|
|
|
303
353
|
const fileMatches = await searchInFile(context, file, regex, max_matches - allMatches.length);
|
|
304
354
|
if (fileMatches.length > 0) {
|
|
305
355
|
// Convert absolute paths to relative paths for output
|
|
306
|
-
|
|
356
|
+
let relativePath;
|
|
357
|
+
if (isFile) {
|
|
358
|
+
// For single file search, use the original search path
|
|
359
|
+
relativePath = searchPath;
|
|
360
|
+
}
|
|
361
|
+
else {
|
|
362
|
+
// For directory search, use relative path from the search directory
|
|
363
|
+
relativePath = path.relative(absolutePath, file);
|
|
364
|
+
}
|
|
307
365
|
fileMatches.forEach((match) => {
|
|
308
366
|
match.filePath = relativePath;
|
|
309
367
|
});
|
|
@@ -343,7 +401,7 @@ function createGrepTool(context) {
|
|
|
343
401
|
}
|
|
344
402
|
}, {
|
|
345
403
|
name: "Grep",
|
|
346
|
-
description: '\n- Fast content search tool that works with any codebase size\n- Searches file contents using regular expressions\n- Supports full regex syntax (eg. "log.*Error", "function\\s+\\w+", etc.)\n- Filter files by pattern with the include parameter (eg. "*.js", "*.{ts,tsx}")\n- Returns file paths with at least one match sorted by modification time\n- Use this tool when you need to find files containing specific patterns\n',
|
|
404
|
+
description: '\n- Fast content search tool that works with any codebase size\n- Searches file or directory contents using regular expressions\n- Supports both single file and directory (recursive) search\n- Supports full regex syntax (eg. "log.*Error", "function\\s+\\w+", etc.)\n- Filter files by pattern with the include parameter (eg. "*.js", "*.{ts,tsx}")\n- Returns file paths with at least one match sorted by modification time\n- Use this tool when you need to find files containing specific patterns\n',
|
|
347
405
|
schema: grepParametersSchema,
|
|
348
406
|
getDisplay: ({ name, input }) => {
|
|
349
407
|
return `Using ${name} for tool call: ${input.pattern || ""}`;
|
package/dist/fs/grep-tool.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"grep-tool.js","sourceRoot":"","sources":["../../src/fs/grep-tool.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"grep-tool.js","sourceRoot":"","sources":["../../src/fs/grep-tool.ts"],"names":[],"mappings":"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"}
|
package/dist/fs/index.d.ts
CHANGED
|
@@ -5,6 +5,9 @@ export { createGlobTool } from "./glob-tool";
|
|
|
5
5
|
export { createGrepTool } from "./grep-tool";
|
|
6
6
|
export { createLsTool } from "./ls-tool";
|
|
7
7
|
export { createStrReplaceEditorTool } from "./str-replace-editor";
|
|
8
|
+
export { createMultiReadTool } from "./multi-read-tool";
|
|
9
|
+
export { createMultiWriteTool } from "./multi-write-tool";
|
|
10
|
+
export { createMultiEditTool } from "./multi-edit-tool";
|
|
8
11
|
export { FilesystemToolkit, type FilesystemToolkitConfig, type FilesystemToolkitOptions, } from "./toolkit";
|
|
9
12
|
export * from "./utils";
|
|
10
13
|
export * from "./operator";
|
package/dist/fs/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/fs/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAC/C,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AACzC,OAAO,EAAE,0BAA0B,EAAE,MAAM,sBAAsB,CAAC;AAGlE,OAAO,EACL,iBAAiB,EACjB,KAAK,uBAAuB,EAC5B,KAAK,wBAAwB,GAC9B,MAAM,WAAW,CAAC;AAEnB,cAAc,SAAS,CAAC;AACxB,cAAc,YAAY,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/fs/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAC/C,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AACzC,OAAO,EAAE,0BAA0B,EAAE,MAAM,sBAAsB,CAAC;AAGlE,OAAO,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AACxD,OAAO,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAC1D,OAAO,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAGxD,OAAO,EACL,iBAAiB,EACjB,KAAK,uBAAuB,EAC5B,KAAK,wBAAwB,GAC9B,MAAM,WAAW,CAAC;AAEnB,cAAc,SAAS,CAAC;AACxB,cAAc,YAAY,CAAC"}
|
package/dist/fs/index.js
CHANGED
|
@@ -14,7 +14,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
14
14
|
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
15
|
};
|
|
16
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
-
exports.FilesystemToolkit = exports.createStrReplaceEditorTool = exports.createLsTool = exports.createGrepTool = exports.createGlobTool = exports.createEditTool = exports.createWriteTool = exports.createReadTool = void 0;
|
|
17
|
+
exports.FilesystemToolkit = exports.createMultiEditTool = exports.createMultiWriteTool = exports.createMultiReadTool = exports.createStrReplaceEditorTool = exports.createLsTool = exports.createGrepTool = exports.createGlobTool = exports.createEditTool = exports.createWriteTool = exports.createReadTool = void 0;
|
|
18
18
|
// File system tools export
|
|
19
19
|
var read_tool_1 = require("./read-tool");
|
|
20
20
|
Object.defineProperty(exports, "createReadTool", { enumerable: true, get: function () { return read_tool_1.createReadTool; } });
|
|
@@ -30,6 +30,13 @@ var ls_tool_1 = require("./ls-tool");
|
|
|
30
30
|
Object.defineProperty(exports, "createLsTool", { enumerable: true, get: function () { return ls_tool_1.createLsTool; } });
|
|
31
31
|
var str_replace_editor_1 = require("./str-replace-editor");
|
|
32
32
|
Object.defineProperty(exports, "createStrReplaceEditorTool", { enumerable: true, get: function () { return str_replace_editor_1.createStrReplaceEditorTool; } });
|
|
33
|
+
// Multi-file tools export
|
|
34
|
+
var multi_read_tool_1 = require("./multi-read-tool");
|
|
35
|
+
Object.defineProperty(exports, "createMultiReadTool", { enumerable: true, get: function () { return multi_read_tool_1.createMultiReadTool; } });
|
|
36
|
+
var multi_write_tool_1 = require("./multi-write-tool");
|
|
37
|
+
Object.defineProperty(exports, "createMultiWriteTool", { enumerable: true, get: function () { return multi_write_tool_1.createMultiWriteTool; } });
|
|
38
|
+
var multi_edit_tool_1 = require("./multi-edit-tool");
|
|
39
|
+
Object.defineProperty(exports, "createMultiEditTool", { enumerable: true, get: function () { return multi_edit_tool_1.createMultiEditTool; } });
|
|
33
40
|
// Filesystem toolkit exports
|
|
34
41
|
var toolkit_1 = require("./toolkit");
|
|
35
42
|
Object.defineProperty(exports, "FilesystemToolkit", { enumerable: true, get: function () { return toolkit_1.FilesystemToolkit; } });
|
package/dist/fs/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/fs/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,2BAA2B;AAC3B,yCAA6C;AAApC,2GAAA,cAAc,OAAA;AACvB,2CAA+C;AAAtC,6GAAA,eAAe,OAAA;AACxB,yCAA6C;AAApC,2GAAA,cAAc,OAAA;AACvB,yCAA6C;AAApC,2GAAA,cAAc,OAAA;AACvB,yCAA6C;AAApC,2GAAA,cAAc,OAAA;AACvB,qCAAyC;AAAhC,uGAAA,YAAY,OAAA;AACrB,2DAAkE;AAAzD,gIAAA,0BAA0B,OAAA;AAEnC,6BAA6B;AAC7B,qCAImB;AAHjB,4GAAA,iBAAiB,OAAA;AAKnB,0CAAwB;AACxB,6CAA2B"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/fs/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,2BAA2B;AAC3B,yCAA6C;AAApC,2GAAA,cAAc,OAAA;AACvB,2CAA+C;AAAtC,6GAAA,eAAe,OAAA;AACxB,yCAA6C;AAApC,2GAAA,cAAc,OAAA;AACvB,yCAA6C;AAApC,2GAAA,cAAc,OAAA;AACvB,yCAA6C;AAApC,2GAAA,cAAc,OAAA;AACvB,qCAAyC;AAAhC,uGAAA,YAAY,OAAA;AACrB,2DAAkE;AAAzD,gIAAA,0BAA0B,OAAA;AAEnC,0BAA0B;AAC1B,qDAAwD;AAA/C,sHAAA,mBAAmB,OAAA;AAC5B,uDAA0D;AAAjD,wHAAA,oBAAoB,OAAA;AAC7B,qDAAwD;AAA/C,sHAAA,mBAAmB,OAAA;AAE5B,6BAA6B;AAC7B,qCAImB;AAHjB,4GAAA,iBAAiB,OAAA;AAKnB,0CAAwB;AACxB,6CAA2B"}
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
import { z } from "zod";
|
|
2
|
+
import { ExecutionContext } from "./utils";
|
|
3
|
+
import { ToolResult } from "../utils";
|
|
4
|
+
import { IFileEditResult } from "./edit-tool";
|
|
5
|
+
/**
|
|
6
|
+
* Single file edit request
|
|
7
|
+
*/
|
|
8
|
+
export interface IFileEditRequest {
|
|
9
|
+
file_path: string;
|
|
10
|
+
old_string: string;
|
|
11
|
+
new_string: string;
|
|
12
|
+
expected_replacements?: number;
|
|
13
|
+
}
|
|
14
|
+
/**
|
|
15
|
+
* Multiple files edit result
|
|
16
|
+
*/
|
|
17
|
+
export interface IMultipleFilesEditResult {
|
|
18
|
+
files: Array<{
|
|
19
|
+
file_path: string;
|
|
20
|
+
edits: Array<{
|
|
21
|
+
success: boolean;
|
|
22
|
+
data?: IFileEditResult;
|
|
23
|
+
error?: string;
|
|
24
|
+
old_string: string;
|
|
25
|
+
new_string: string;
|
|
26
|
+
}>;
|
|
27
|
+
totalEdits: number;
|
|
28
|
+
successfulEdits: number;
|
|
29
|
+
failedEdits: number;
|
|
30
|
+
}>;
|
|
31
|
+
totalFiles: number;
|
|
32
|
+
totalEdits: number;
|
|
33
|
+
successfulEdits: number;
|
|
34
|
+
failedEdits: number;
|
|
35
|
+
summary: string;
|
|
36
|
+
}
|
|
37
|
+
/**
|
|
38
|
+
* Edit multiple files with multiple edits each
|
|
39
|
+
*/
|
|
40
|
+
export declare function multiEdit(context: ExecutionContext, params: {
|
|
41
|
+
edits: IFileEditRequest[];
|
|
42
|
+
}): Promise<ToolResult<IMultipleFilesEditResult>>;
|
|
43
|
+
/**
|
|
44
|
+
* Create multi-edit tool with execution context
|
|
45
|
+
*/
|
|
46
|
+
export declare function createMultiEditTool(context: ExecutionContext): import("../utils").DynamicTool<z.ZodObject<{
|
|
47
|
+
edits: z.ZodArray<z.ZodObject<{
|
|
48
|
+
file_path: z.ZodString;
|
|
49
|
+
old_string: z.ZodString;
|
|
50
|
+
new_string: z.ZodString;
|
|
51
|
+
expected_replacements: z.ZodOptional<z.ZodNumber>;
|
|
52
|
+
}, z.core.$strip>>;
|
|
53
|
+
}, z.core.$strip>, Record<string, unknown>, IMultipleFilesEditResult>;
|
|
54
|
+
//# sourceMappingURL=multi-edit-tool.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"multi-edit-tool.d.ts","sourceRoot":"","sources":["../../src/fs/multi-edit-tool.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAC;AAC3C,OAAO,EAAQ,UAAU,EAAmB,MAAM,UAAU,CAAC;AAC7D,OAAO,EAAkC,eAAe,EAAE,MAAM,aAAa,CAAC;AAE9E;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,qBAAqB,CAAC,EAAE,MAAM,CAAC;CAChC;AAED;;GAEG;AACH,MAAM,WAAW,wBAAwB;IACvC,KAAK,EAAE,KAAK,CAAC;QACX,SAAS,EAAE,MAAM,CAAC;QAClB,KAAK,EAAE,KAAK,CAAC;YACX,OAAO,EAAE,OAAO,CAAC;YACjB,IAAI,CAAC,EAAE,eAAe,CAAC;YACvB,KAAK,CAAC,EAAE,MAAM,CAAC;YACf,UAAU,EAAE,MAAM,CAAC;YACnB,UAAU,EAAE,MAAM,CAAC;SACpB,CAAC,CAAC;QACH,UAAU,EAAE,MAAM,CAAC;QACnB,eAAe,EAAE,MAAM,CAAC;QACxB,WAAW,EAAE,MAAM,CAAC;KACrB,CAAC,CAAC;IACH,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,eAAe,EAAE,MAAM,CAAC;IACxB,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;CACjB;AA0FD;;GAEG;AACH,wBAAsB,SAAS,CAC7B,OAAO,EAAE,gBAAgB,EACzB,MAAM,EAAE;IACN,KAAK,EAAE,gBAAgB,EAAE,CAAC;CAC3B,GACA,OAAO,CAAC,UAAU,CAAC,wBAAwB,CAAC,CAAC,CA2D/C;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,gBAAgB;;;;;;;sEAkB5D"}
|