@aws/lsp-codewhisperer 0.0.52 → 0.0.54
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 +30 -0
- package/out/language-server/agenticChat/agenticChatController.js +29 -14
- package/out/language-server/agenticChat/agenticChatController.js.map +1 -1
- package/out/language-server/agenticChat/context/agenticChatTriggerContext.d.ts +31 -2
- package/out/language-server/agenticChat/context/agenticChatTriggerContext.js +88 -4
- package/out/language-server/agenticChat/context/agenticChatTriggerContext.js.map +1 -1
- package/out/language-server/agenticChat/tools/fsReplace.d.ts +60 -0
- package/out/language-server/agenticChat/tools/fsReplace.js +131 -0
- package/out/language-server/agenticChat/tools/fsReplace.js.map +1 -0
- package/out/language-server/agenticChat/tools/fsWrite.d.ts +5 -29
- package/out/language-server/agenticChat/tools/fsWrite.js +18 -105
- package/out/language-server/agenticChat/tools/fsWrite.js.map +1 -1
- package/out/language-server/agenticChat/tools/grepSearch.d.ts +2 -2
- package/out/language-server/agenticChat/tools/grepSearch.js +2 -2
- package/out/language-server/agenticChat/tools/grepSearch.js.map +1 -1
- package/out/language-server/agenticChat/tools/mcp/mcpManager.js +12 -2
- package/out/language-server/agenticChat/tools/mcp/mcpManager.js.map +1 -1
- package/out/language-server/agenticChat/tools/toolServer.js +6 -0
- package/out/language-server/agenticChat/tools/toolServer.js.map +1 -1
- package/out/shared/amazonQServiceManager/AmazonQTokenServiceManager.js +8 -3
- package/out/shared/amazonQServiceManager/AmazonQTokenServiceManager.js.map +1 -1
- package/out/shared/codeWhispererService.js +3 -0
- package/out/shared/codeWhispererService.js.map +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agenticChatTriggerContext.js","sourceRoot":"","sources":["../../../../src/language-server/agenticChat/context/agenticChatTriggerContext.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"agenticChatTriggerContext.js","sourceRoot":"","sources":["../../../../src/language-server/agenticChat/context/agenticChatTriggerContext.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
import { CommandValidation, ExplanatoryParams, InvokeOutput } from './toolShared';
|
|
2
|
+
import { Features } from '@aws/language-server-runtimes/server-interface/server';
|
|
3
|
+
interface BaseParams extends ExplanatoryParams {
|
|
4
|
+
path: string;
|
|
5
|
+
}
|
|
6
|
+
export interface Diff {
|
|
7
|
+
oldStr: string;
|
|
8
|
+
newStr: string;
|
|
9
|
+
}
|
|
10
|
+
export interface ReplaceParams extends BaseParams {
|
|
11
|
+
diffs: Diff[];
|
|
12
|
+
}
|
|
13
|
+
export type FsReplaceParams = ReplaceParams;
|
|
14
|
+
export declare class FsReplace {
|
|
15
|
+
private readonly logging;
|
|
16
|
+
private readonly workspace;
|
|
17
|
+
private readonly lsp;
|
|
18
|
+
constructor(features: Pick<Features, 'workspace' | 'logging' | 'lsp'> & Partial<Features>);
|
|
19
|
+
validate(params: FsReplaceParams): Promise<void>;
|
|
20
|
+
invoke(params: FsReplaceParams): Promise<InvokeOutput>;
|
|
21
|
+
requiresAcceptance(params: FsReplaceParams, approvedPaths?: Set<string>): Promise<CommandValidation>;
|
|
22
|
+
private handleReplace;
|
|
23
|
+
getSpec(): {
|
|
24
|
+
readonly name: "fsReplace";
|
|
25
|
+
readonly description: string;
|
|
26
|
+
readonly inputSchema: {
|
|
27
|
+
readonly type: "object";
|
|
28
|
+
readonly properties: {
|
|
29
|
+
readonly explanation: {
|
|
30
|
+
readonly description: "One sentence explanation as to why this tool is being used, and how it contributes to the goal.";
|
|
31
|
+
readonly type: "string";
|
|
32
|
+
};
|
|
33
|
+
readonly diffs: {
|
|
34
|
+
readonly description: "List of `oldStr`/`newStr` pairs to replace contents in an existing file. IMPORTANT: Must be provided as an array of objects, NOT as a string. For example, `[{\"oldStr\": \"existingContent\", \"newStr\": \"newContent\"}]`";
|
|
35
|
+
readonly type: "array";
|
|
36
|
+
readonly items: {
|
|
37
|
+
readonly type: "object";
|
|
38
|
+
readonly properties: {
|
|
39
|
+
readonly oldStr: {
|
|
40
|
+
readonly description: "The exact string content to be replaced in the file. Must match EXACTLY including whitespaces (indentations, tabs, spaces) and line breaks.";
|
|
41
|
+
readonly type: "string";
|
|
42
|
+
};
|
|
43
|
+
readonly newStr: {
|
|
44
|
+
readonly description: "The new string content that will replace the oldStr. Use empty string to delete content.";
|
|
45
|
+
readonly type: "string";
|
|
46
|
+
};
|
|
47
|
+
};
|
|
48
|
+
readonly required: readonly ["oldStr"];
|
|
49
|
+
};
|
|
50
|
+
};
|
|
51
|
+
readonly path: {
|
|
52
|
+
readonly description: "Absolute path to a file, e.g. `/repo/file.py` for Unix-like system including Unix/Linux/macOS or `d:\\repo\\file.py` for Windows.";
|
|
53
|
+
readonly type: "string";
|
|
54
|
+
};
|
|
55
|
+
};
|
|
56
|
+
readonly required: readonly ["diffs", "path"];
|
|
57
|
+
};
|
|
58
|
+
};
|
|
59
|
+
}
|
|
60
|
+
export {};
|
|
@@ -0,0 +1,131 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.FsReplace = void 0;
|
|
4
|
+
const toolShared_1 = require("./toolShared");
|
|
5
|
+
const path_1 = require("@aws/lsp-core/out/util/path");
|
|
6
|
+
const os = require("os");
|
|
7
|
+
class FsReplace {
|
|
8
|
+
logging;
|
|
9
|
+
workspace;
|
|
10
|
+
lsp;
|
|
11
|
+
constructor(features) {
|
|
12
|
+
this.logging = features.logging;
|
|
13
|
+
this.workspace = features.workspace;
|
|
14
|
+
this.lsp = features.lsp;
|
|
15
|
+
}
|
|
16
|
+
async validate(params) {
|
|
17
|
+
if (!params.path) {
|
|
18
|
+
throw new Error('Path must not be empty');
|
|
19
|
+
}
|
|
20
|
+
if (!params.diffs || params.diffs.length === 0) {
|
|
21
|
+
throw new Error('Diffs must not be empty');
|
|
22
|
+
}
|
|
23
|
+
const sanitizedPath = (0, path_1.sanitize)(params.path);
|
|
24
|
+
const fileExists = await this.workspace.fs.exists(sanitizedPath);
|
|
25
|
+
if (!fileExists) {
|
|
26
|
+
throw new Error('The provided path must exist in order to replace contents into it');
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
async invoke(params) {
|
|
30
|
+
const sanitizedPath = (0, path_1.sanitize)(params.path);
|
|
31
|
+
await this.handleReplace(params, sanitizedPath);
|
|
32
|
+
return {
|
|
33
|
+
output: {
|
|
34
|
+
kind: 'text',
|
|
35
|
+
content: 'File updated successfully',
|
|
36
|
+
},
|
|
37
|
+
};
|
|
38
|
+
}
|
|
39
|
+
async requiresAcceptance(params, approvedPaths) {
|
|
40
|
+
return (0, toolShared_1.requiresPathAcceptance)(params.path, this.workspace, this.logging, approvedPaths);
|
|
41
|
+
}
|
|
42
|
+
async handleReplace(params, sanitizedPath) {
|
|
43
|
+
const fileContent = await this.workspace.fs.readFile(sanitizedPath);
|
|
44
|
+
const newContent = getReplaceContent(params, fileContent);
|
|
45
|
+
await this.workspace.fs.writeFile(sanitizedPath, newContent);
|
|
46
|
+
}
|
|
47
|
+
getSpec() {
|
|
48
|
+
return {
|
|
49
|
+
name: 'fsReplace',
|
|
50
|
+
description: 'A tool for search and replace contents of an existing file.\n\n' +
|
|
51
|
+
'## Overview\n' +
|
|
52
|
+
'This tool replaces sections of content in an existing file using `oldStr`/`newStr` blocks that define exact changes to specific parts of the file. You MUST ALWAYS group as many changes as you can by populating the diffs array with multiple `oldStr`/`newStr` pairs, DO NOT be overly cautious and methodical by making one change at a time on the same file.\n\n' +
|
|
53
|
+
'## When to use\n' +
|
|
54
|
+
'- When you need to make targeted changes to specific parts of a file\n' +
|
|
55
|
+
'- When you need to update multiple sections of the same file\n' +
|
|
56
|
+
'## When not to use\n' +
|
|
57
|
+
'- When you need to create a new file\n' +
|
|
58
|
+
'- When you need to rename or move a file\n\n' +
|
|
59
|
+
'## IMPORTANT Notes\n' +
|
|
60
|
+
'- Use this tool to delete code by using empty `newStr` parameter\n' +
|
|
61
|
+
'- The `oldStr` parameter should match EXACTLY one or more consecutive lines from the target file. Be mindful of whitespaces including the tabs and spaces! Include just the changing lines, and a few surrounding lines if needed for uniqueness. Do not include long runs of unchanging lines in `oldStr`\n' +
|
|
62
|
+
'- When multiple edits to the same file are needed, ALWAYS populate the diffs array with MULTIPLE `oldStr` and `newStr` pairs. This improves efficiency by reducing the number of tool calls and ensures the file remains in a consistent state',
|
|
63
|
+
inputSchema: {
|
|
64
|
+
type: 'object',
|
|
65
|
+
properties: {
|
|
66
|
+
explanation: {
|
|
67
|
+
description: 'One sentence explanation as to why this tool is being used, and how it contributes to the goal.',
|
|
68
|
+
type: 'string',
|
|
69
|
+
},
|
|
70
|
+
diffs: {
|
|
71
|
+
description: 'List of `oldStr`/`newStr` pairs to replace contents in an existing file. IMPORTANT: Must be provided as an array of objects, NOT as a string. For example, `[{"oldStr": "existingContent", "newStr": "newContent"}]`',
|
|
72
|
+
type: 'array',
|
|
73
|
+
items: {
|
|
74
|
+
type: 'object',
|
|
75
|
+
properties: {
|
|
76
|
+
oldStr: {
|
|
77
|
+
description: 'The exact string content to be replaced in the file. Must match EXACTLY including whitespaces (indentations, tabs, spaces) and line breaks.',
|
|
78
|
+
type: 'string',
|
|
79
|
+
},
|
|
80
|
+
newStr: {
|
|
81
|
+
description: 'The new string content that will replace the oldStr. Use empty string to delete content.',
|
|
82
|
+
type: 'string',
|
|
83
|
+
},
|
|
84
|
+
},
|
|
85
|
+
required: ['oldStr'],
|
|
86
|
+
},
|
|
87
|
+
},
|
|
88
|
+
path: {
|
|
89
|
+
description: 'Absolute path to a file, e.g. `/repo/file.py` for Unix-like system including Unix/Linux/macOS or `d:\\repo\\file.py` for Windows.',
|
|
90
|
+
type: 'string',
|
|
91
|
+
},
|
|
92
|
+
},
|
|
93
|
+
required: ['diffs', 'path'],
|
|
94
|
+
},
|
|
95
|
+
};
|
|
96
|
+
}
|
|
97
|
+
}
|
|
98
|
+
exports.FsReplace = FsReplace;
|
|
99
|
+
const getReplaceContent = (params, fileContent) => {
|
|
100
|
+
// Detect line ending from oldContent (CRLF, LF, or CR)
|
|
101
|
+
const match = fileContent.match(/\r\n|\r|\n/);
|
|
102
|
+
const lineEnding = match ? match[0] : os.EOL;
|
|
103
|
+
for (const diff of params.diffs) {
|
|
104
|
+
if (diff.newStr == undefined) {
|
|
105
|
+
diff.newStr = '';
|
|
106
|
+
}
|
|
107
|
+
if (diff.oldStr === diff.newStr) {
|
|
108
|
+
continue;
|
|
109
|
+
}
|
|
110
|
+
// Normalize oldStr and newStr to match fileContent's line ending style
|
|
111
|
+
const normalizedOldStr = diff.oldStr.split(/\r\n|\r|\n/).join(lineEnding);
|
|
112
|
+
const normalizedNewStr = diff.newStr.split(/\r\n|\r|\n/).join(lineEnding);
|
|
113
|
+
// Use string indexOf and substring for safer replacement with special characters
|
|
114
|
+
const startIndex = fileContent.indexOf(normalizedOldStr);
|
|
115
|
+
if (startIndex === -1) {
|
|
116
|
+
throw new Error(`No occurrences of "${diff.oldStr}" were found`);
|
|
117
|
+
}
|
|
118
|
+
// Check for multiple occurrences
|
|
119
|
+
const secondIndex = fileContent.indexOf(normalizedOldStr, startIndex + 1);
|
|
120
|
+
if (secondIndex !== -1) {
|
|
121
|
+
throw new Error(`Multiple occurrences of "${diff.oldStr}" were found when only 1 is expected`);
|
|
122
|
+
}
|
|
123
|
+
// Perform the replacement using string operations instead of regex
|
|
124
|
+
fileContent =
|
|
125
|
+
fileContent.substring(0, startIndex) +
|
|
126
|
+
normalizedNewStr +
|
|
127
|
+
fileContent.substring(startIndex + normalizedOldStr.length);
|
|
128
|
+
}
|
|
129
|
+
return fileContent;
|
|
130
|
+
};
|
|
131
|
+
//# sourceMappingURL=fsReplace.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fsReplace.js","sourceRoot":"","sources":["../../../../src/language-server/agenticChat/tools/fsReplace.ts"],"names":[],"mappings":"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"}
|
|
@@ -7,21 +7,11 @@ export interface CreateParams extends BaseParams {
|
|
|
7
7
|
command: 'create';
|
|
8
8
|
fileText: string;
|
|
9
9
|
}
|
|
10
|
-
export interface StrReplaceParams extends BaseParams {
|
|
11
|
-
command: 'strReplace';
|
|
12
|
-
oldStr: string;
|
|
13
|
-
newStr: string;
|
|
14
|
-
}
|
|
15
|
-
export interface InsertParams extends BaseParams {
|
|
16
|
-
command: 'insert';
|
|
17
|
-
insertLine: number;
|
|
18
|
-
newStr: string;
|
|
19
|
-
}
|
|
20
10
|
export interface AppendParams extends BaseParams {
|
|
21
11
|
command: 'append';
|
|
22
|
-
|
|
12
|
+
fileText: string;
|
|
23
13
|
}
|
|
24
|
-
export type FsWriteParams = CreateParams |
|
|
14
|
+
export type FsWriteParams = CreateParams | AppendParams;
|
|
25
15
|
export interface FsWriteBackup {
|
|
26
16
|
content: string;
|
|
27
17
|
isNew: boolean;
|
|
@@ -36,8 +26,6 @@ export declare class FsWrite {
|
|
|
36
26
|
queueDescription(updates: WritableStream): Promise<void>;
|
|
37
27
|
requiresAcceptance(params: FsWriteParams, approvedPaths?: Set<string>): Promise<CommandValidation>;
|
|
38
28
|
private handleCreate;
|
|
39
|
-
private handleStrReplace;
|
|
40
|
-
private handleInsert;
|
|
41
29
|
private handleAppend;
|
|
42
30
|
getSpec(): {
|
|
43
31
|
readonly name: "fsWrite";
|
|
@@ -48,26 +36,14 @@ export declare class FsWrite {
|
|
|
48
36
|
readonly command: {
|
|
49
37
|
readonly type: "string";
|
|
50
38
|
readonly enum: string[];
|
|
51
|
-
readonly description: "The
|
|
39
|
+
readonly description: "The command to run. Allowed options are: `create`, `append`.";
|
|
52
40
|
};
|
|
53
41
|
readonly explanation: {
|
|
54
42
|
readonly description: "One sentence explanation as to why this tool is being used, and how it contributes to the goal.";
|
|
55
43
|
readonly type: "string";
|
|
56
44
|
};
|
|
57
45
|
readonly fileText: {
|
|
58
|
-
readonly description: "
|
|
59
|
-
readonly type: "string";
|
|
60
|
-
};
|
|
61
|
-
readonly insertLine: {
|
|
62
|
-
readonly description: "Required parameter of `insert` command. The `newStr` will be inserted AFTER the line `insertLine` of `path`.";
|
|
63
|
-
readonly type: "number";
|
|
64
|
-
};
|
|
65
|
-
readonly newStr: {
|
|
66
|
-
readonly description: "Required parameter of `strReplace` command containing the new string. Required parameter of `insert` command containing the string to insert. Required parameter of `append` command containing the content to append to the file.";
|
|
67
|
-
readonly type: "string";
|
|
68
|
-
};
|
|
69
|
-
readonly oldStr: {
|
|
70
|
-
readonly description: "Required parameter of `strReplace` command containing the string in `path` to replace.";
|
|
46
|
+
readonly description: "The content to write to the file. For `create`, this is the entire file content. For `append`, this is the content to add to the end of the file.";
|
|
71
47
|
readonly type: "string";
|
|
72
48
|
};
|
|
73
49
|
readonly path: {
|
|
@@ -75,7 +51,7 @@ export declare class FsWrite {
|
|
|
75
51
|
readonly type: "string";
|
|
76
52
|
};
|
|
77
53
|
};
|
|
78
|
-
readonly required: readonly ["command", "path"];
|
|
54
|
+
readonly required: readonly ["command", "path", "fileText"];
|
|
79
55
|
};
|
|
80
56
|
};
|
|
81
57
|
}
|
|
@@ -3,7 +3,6 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.FsWrite = void 0;
|
|
4
4
|
const toolShared_1 = require("./toolShared");
|
|
5
5
|
const path_1 = require("@aws/lsp-core/out/util/path");
|
|
6
|
-
const os = require("os");
|
|
7
6
|
class FsWrite {
|
|
8
7
|
logging;
|
|
9
8
|
workspace;
|
|
@@ -32,25 +31,8 @@ class FsWrite {
|
|
|
32
31
|
}
|
|
33
32
|
break;
|
|
34
33
|
}
|
|
35
|
-
case 'strReplace': {
|
|
36
|
-
if (params.oldStr === params.newStr) {
|
|
37
|
-
throw new Error('The provided oldStr and newStr are the exact same, this is a no-op');
|
|
38
|
-
}
|
|
39
|
-
const fileExists = await this.workspace.fs.exists(sanitizedPath);
|
|
40
|
-
if (!fileExists) {
|
|
41
|
-
throw new Error('The provided path must exist in order to replace contents into it');
|
|
42
|
-
}
|
|
43
|
-
break;
|
|
44
|
-
}
|
|
45
|
-
case 'insert': {
|
|
46
|
-
const fileExists = await this.workspace.fs.exists(sanitizedPath);
|
|
47
|
-
if (!fileExists) {
|
|
48
|
-
throw new Error('The provided path must exist in order to insert contents into it');
|
|
49
|
-
}
|
|
50
|
-
break;
|
|
51
|
-
}
|
|
52
34
|
case 'append':
|
|
53
|
-
if (!params.
|
|
35
|
+
if (!params.fileText) {
|
|
54
36
|
throw new Error('Content to append must not be empty');
|
|
55
37
|
}
|
|
56
38
|
break;
|
|
@@ -58,24 +40,21 @@ class FsWrite {
|
|
|
58
40
|
}
|
|
59
41
|
async invoke(params) {
|
|
60
42
|
const sanitizedPath = (0, path_1.sanitize)(params.path);
|
|
43
|
+
let content = '';
|
|
61
44
|
switch (params.command) {
|
|
62
45
|
case 'create':
|
|
63
46
|
await this.handleCreate(params, sanitizedPath);
|
|
64
|
-
|
|
65
|
-
case 'strReplace':
|
|
66
|
-
await this.handleStrReplace(params, sanitizedPath);
|
|
67
|
-
break;
|
|
68
|
-
case 'insert':
|
|
69
|
-
await this.handleInsert(params, sanitizedPath);
|
|
47
|
+
content = 'File created successfully';
|
|
70
48
|
break;
|
|
71
49
|
case 'append':
|
|
72
50
|
await this.handleAppend(params, sanitizedPath);
|
|
51
|
+
content = 'File appended successfully';
|
|
73
52
|
break;
|
|
74
53
|
}
|
|
75
54
|
return {
|
|
76
55
|
output: {
|
|
77
56
|
kind: 'text',
|
|
78
|
-
content
|
|
57
|
+
content,
|
|
79
58
|
},
|
|
80
59
|
};
|
|
81
60
|
}
|
|
@@ -93,75 +72,41 @@ class FsWrite {
|
|
|
93
72
|
const content = params.fileText;
|
|
94
73
|
await this.workspace.fs.writeFile(sanitizedPath, content);
|
|
95
74
|
}
|
|
96
|
-
async handleStrReplace(params, sanitizedPath) {
|
|
97
|
-
const fileContent = await this.workspace.fs.readFile(sanitizedPath);
|
|
98
|
-
const newContent = getStrReplaceContent(params, fileContent);
|
|
99
|
-
await this.workspace.fs.writeFile(sanitizedPath, newContent);
|
|
100
|
-
}
|
|
101
|
-
async handleInsert(params, sanitizedPath) {
|
|
102
|
-
const fileContent = await this.workspace.fs.readFile(sanitizedPath);
|
|
103
|
-
const newContent = getInsertContent(params, fileContent);
|
|
104
|
-
await this.workspace.fs.writeFile(sanitizedPath, newContent);
|
|
105
|
-
}
|
|
106
75
|
async handleAppend(params, sanitizedPath) {
|
|
107
76
|
const fileContent = await this.workspace.fs.readFile(sanitizedPath);
|
|
108
77
|
const newContent = getAppendContent(params, fileContent);
|
|
109
78
|
await this.workspace.fs.writeFile(sanitizedPath, newContent);
|
|
110
79
|
}
|
|
111
80
|
getSpec() {
|
|
112
|
-
const commands = ['create', '
|
|
81
|
+
const commands = ['create', 'append'];
|
|
113
82
|
return {
|
|
114
83
|
name: 'fsWrite',
|
|
115
|
-
description: 'A tool for creating and
|
|
84
|
+
description: 'A tool for creating and appending files. This tool does NOT automatically create parent directories if they do not exist, so you must ensure the directory exists before file creation.\n\n' +
|
|
116
85
|
'## Overview\n' +
|
|
117
|
-
'This tool provides
|
|
86
|
+
'This tool provides commands for file operations including creating new files and appending content to existing files.\n\n' +
|
|
118
87
|
'## When to use\n' +
|
|
119
|
-
'- When creating new files (create)\n' +
|
|
120
|
-
'- When
|
|
121
|
-
'- When inserting text at a specific line (insert)\n' +
|
|
122
|
-
'- When adding text to the end of a file (append)\n\n' +
|
|
88
|
+
'- When creating new files or overwriting existing files with new content (create)\n' +
|
|
89
|
+
'- When adding text to the end of an existing file (append)\n\n' +
|
|
123
90
|
'## When not to use\n' +
|
|
124
|
-
'- When you
|
|
125
|
-
'- When you need to
|
|
126
|
-
'- When you need to rename or move a file\n\n' +
|
|
91
|
+
'- When you need to modify or delete specific portions of a file (use fsReplace instead)\n' +
|
|
92
|
+
'- When you need to rename, move, or delete a file\n\n' +
|
|
127
93
|
'## Command details\n' +
|
|
128
|
-
'-
|
|
129
|
-
'-
|
|
130
|
-
'- The `append` command will add content to the end of an existing file, automatically adding a newline if the file does not end with one.\n' +
|
|
131
|
-
'- The `strReplace` command will replace `oldStr` in an existing file with `newStr`.\n\n' +
|
|
132
|
-
'## IMPORTANT Notes for using the `strReplace` command\n' +
|
|
133
|
-
'- Use this command to delete code by using empty `newStr` parameter.\n' +
|
|
134
|
-
'- If you need to make small changes to an existing file, consider using `strReplace` command to avoid unnecessary rewriting the entire file.\n' +
|
|
135
|
-
'- Prefer the `create` command if the complexity or number of changes would make `strReplace` unwieldy or error-prone.\n' +
|
|
136
|
-
'- The `oldStr` parameter should match EXACTLY one or more consecutive lines from the original file. Be mindful of whitespaces! Include just the changing lines, and a few surrounding lines if needed for uniqueness. Do not include long runs of unchanging lines in `oldStr`.\n' +
|
|
137
|
-
'- The `newStr` parameter should contain the edited lines that should replace the `oldStr`.\n' +
|
|
138
|
-
'- When multiple edits to the same file are needed, combine them into a single call whenever possible. This improves efficiency by reducing the number of tool calls and ensures the file remains in a consistent state.',
|
|
94
|
+
'- `create`: Creates a new file at `path` with the specified `fileText` content. If the file already exists, it will be overwritten. Use this command for initial file creation, scaffolding new projects, or replacing entire file contents.\n' +
|
|
95
|
+
'- `append`: Adds the specified `fileText` content to the end of an existing file at `path`. Automatically adds a newline if the file does not end with one. The file must exist before using this command.',
|
|
139
96
|
inputSchema: {
|
|
140
97
|
type: 'object',
|
|
141
98
|
properties: {
|
|
142
99
|
command: {
|
|
143
100
|
type: 'string',
|
|
144
101
|
enum: commands,
|
|
145
|
-
description: 'The
|
|
102
|
+
description: 'The command to run. Allowed options are: `create`, `append`.',
|
|
146
103
|
},
|
|
147
104
|
explanation: {
|
|
148
105
|
description: 'One sentence explanation as to why this tool is being used, and how it contributes to the goal.',
|
|
149
106
|
type: 'string',
|
|
150
107
|
},
|
|
151
108
|
fileText: {
|
|
152
|
-
description: '
|
|
153
|
-
type: 'string',
|
|
154
|
-
},
|
|
155
|
-
insertLine: {
|
|
156
|
-
description: 'Required parameter of `insert` command. The `newStr` will be inserted AFTER the line `insertLine` of `path`.',
|
|
157
|
-
type: 'number',
|
|
158
|
-
},
|
|
159
|
-
newStr: {
|
|
160
|
-
description: 'Required parameter of `strReplace` command containing the new string. Required parameter of `insert` command containing the string to insert. Required parameter of `append` command containing the content to append to the file.',
|
|
161
|
-
type: 'string',
|
|
162
|
-
},
|
|
163
|
-
oldStr: {
|
|
164
|
-
description: 'Required parameter of `strReplace` command containing the string in `path` to replace.',
|
|
109
|
+
description: 'The content to write to the file. For `create`, this is the entire file content. For `append`, this is the content to add to the end of the file.',
|
|
165
110
|
type: 'string',
|
|
166
111
|
},
|
|
167
112
|
path: {
|
|
@@ -169,7 +114,7 @@ class FsWrite {
|
|
|
169
114
|
type: 'string',
|
|
170
115
|
},
|
|
171
116
|
},
|
|
172
|
-
required: ['command', 'path'],
|
|
117
|
+
required: ['command', 'path', 'fileText'],
|
|
173
118
|
},
|
|
174
119
|
};
|
|
175
120
|
}
|
|
@@ -177,42 +122,10 @@ class FsWrite {
|
|
|
177
122
|
exports.FsWrite = FsWrite;
|
|
178
123
|
const getAppendContent = (params, oldContent) => {
|
|
179
124
|
const needsNewline = oldContent.length !== 0 && !oldContent.endsWith('\n');
|
|
180
|
-
let contentToAppend = params.
|
|
125
|
+
let contentToAppend = params.fileText;
|
|
181
126
|
if (needsNewline) {
|
|
182
127
|
contentToAppend = '\n' + contentToAppend;
|
|
183
128
|
}
|
|
184
129
|
return oldContent + contentToAppend;
|
|
185
130
|
};
|
|
186
|
-
const getInsertContent = (params, oldContent) => {
|
|
187
|
-
const lines = oldContent.split('\n');
|
|
188
|
-
const numLines = lines.length;
|
|
189
|
-
const insertLine = Math.max(0, Math.min(params.insertLine, numLines));
|
|
190
|
-
let newContent;
|
|
191
|
-
if (insertLine === 0) {
|
|
192
|
-
newContent = params.newStr + '\n' + oldContent;
|
|
193
|
-
}
|
|
194
|
-
else {
|
|
195
|
-
newContent = [...lines.slice(0, insertLine), params.newStr, ...lines.slice(insertLine)].join('\n');
|
|
196
|
-
}
|
|
197
|
-
return newContent;
|
|
198
|
-
};
|
|
199
|
-
const getStrReplaceContent = (params, oldContent) => {
|
|
200
|
-
// Detect line ending from oldContent (CRLF, LF, or CR)
|
|
201
|
-
const match = oldContent.match(/\r\n|\r|\n/);
|
|
202
|
-
const lineEnding = match ? match[0] : os.EOL;
|
|
203
|
-
// Normalize oldStr and newStr to match oldContent's line ending style
|
|
204
|
-
const normalizedOldStr = params.oldStr.split(/\r\n|\r|\n/).join(lineEnding);
|
|
205
|
-
const normalizedNewStr = params.newStr.split(/\r\n|\r|\n/).join(lineEnding);
|
|
206
|
-
const matches = [...oldContent.matchAll(new RegExp(escapeRegExp(normalizedOldStr), 'g'))];
|
|
207
|
-
if (matches.length === 0) {
|
|
208
|
-
throw new Error(`No occurrences of "${params.oldStr}" were found`);
|
|
209
|
-
}
|
|
210
|
-
if (matches.length > 1) {
|
|
211
|
-
throw new Error(`${matches.length} occurrences of oldStr were found when only 1 is expected`);
|
|
212
|
-
}
|
|
213
|
-
return oldContent.replace(normalizedOldStr, normalizedNewStr);
|
|
214
|
-
};
|
|
215
|
-
const escapeRegExp = (string) => {
|
|
216
|
-
return string.replace(/[.*+?^${}()|[\]\\]/g, '\\$&');
|
|
217
|
-
};
|
|
218
131
|
//# sourceMappingURL=fsWrite.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fsWrite.js","sourceRoot":"","sources":["../../../../src/language-server/agenticChat/tools/fsWrite.ts"],"names":[],"mappings":";;;AAAA,6CAAyG;AAEzG,sDAAsD;
|
|
1
|
+
{"version":3,"file":"fsWrite.js","sourceRoot":"","sources":["../../../../src/language-server/agenticChat/tools/fsWrite.ts"],"names":[],"mappings":"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"}
|
|
@@ -49,11 +49,11 @@ export declare class GrepSearch {
|
|
|
49
49
|
readonly properties: {
|
|
50
50
|
readonly path: {
|
|
51
51
|
readonly type: "string";
|
|
52
|
-
readonly description: "Absolute path to a directory to search in, e.g. `/repo` for Unix-like system including Unix/Linux/macOS or `d:\\repo` for Windows. If not provided, the current workspace folder will be used.";
|
|
52
|
+
readonly description: "Absolute path to a directory to search in, e.g. `/repo` for Unix-like system including Unix/Linux/macOS or `d:\\repo` for Windows. If not provided, the current workspace folder will be used. Prefer searching over the whole repo to get a more comprehensive result.";
|
|
53
53
|
};
|
|
54
54
|
readonly query: {
|
|
55
55
|
readonly type: "string";
|
|
56
|
-
readonly description: "The text pattern to search for in files. Can be a simple string or a regular expression pattern.";
|
|
56
|
+
readonly description: "The text pattern to search for in files. Can be a simple string or a regular expression pattern. Use the exact keyword from user prompts directly. If the keyword is in plural form, try to search for singular form for more matches.";
|
|
57
57
|
};
|
|
58
58
|
readonly caseSensitive: {
|
|
59
59
|
readonly type: "boolean";
|
|
@@ -222,11 +222,11 @@ class GrepSearch {
|
|
|
222
222
|
properties: {
|
|
223
223
|
path: {
|
|
224
224
|
type: 'string',
|
|
225
|
-
description: 'Absolute path to a directory to search in, e.g. `/repo` for Unix-like system including Unix/Linux/macOS or `d:\\repo` for Windows. If not provided, the current workspace folder will be used.',
|
|
225
|
+
description: 'Absolute path to a directory to search in, e.g. `/repo` for Unix-like system including Unix/Linux/macOS or `d:\\repo` for Windows. If not provided, the current workspace folder will be used. Prefer searching over the whole repo to get a more comprehensive result.',
|
|
226
226
|
},
|
|
227
227
|
query: {
|
|
228
228
|
type: 'string',
|
|
229
|
-
description: 'The text pattern to search for in files. Can be a simple string or a regular expression pattern.',
|
|
229
|
+
description: 'The text pattern to search for in files. Can be a simple string or a regular expression pattern. Use the exact keyword from user prompts directly. If the keyword is in plural form, try to search for singular form for more matches.',
|
|
230
230
|
},
|
|
231
231
|
caseSensitive: {
|
|
232
232
|
type: 'boolean',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"grepSearch.js","sourceRoot":"","sources":["../../../../src/language-server/agenticChat/tools/grepSearch.ts"],"names":[],"mappings":";;;AAAA,6CAA4E;AAC5E,4CAAiE;AAEjE,0EAA+E;AAE/E,sEAAuF;AACvF,6BAA6B;AAC7B,+BAA8B;AAW9B,MAAM,WAAW,GAAG,CAAC,GAAG,EAAE;IACtB,IAAI,OAAO,CAAC,IAAI,EAAE,QAAQ,EAAE,CAAC;QACzB,OAAO,IAAI,CAAC,IAAI,CAAC,IAAA,cAAO,EAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,SAAS,CAAC,CAAA;IAC/D,CAAC;IACD,OAAO,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,SAAS,CAAC,CAAA;AAC1C,CAAC,CAAC,EAAE,CAAA;AAmBJ,MAAa,UAAU;IACF,OAAO,CAAqB;IAC5B,SAAS,CAAuB;IAChC,GAAG,CAAiB;IAErC,YAAY,QAAyD;QACjE,IAAI,CAAC,OAAO,GAAG,QAAQ,CAAC,OAAO,CAAA;QAC/B,IAAI,CAAC,SAAS,GAAG,QAAQ,CAAC,SAAS,CAAA;QACnC,IAAI,CAAC,GAAG,GAAG,QAAQ,CAAC,GAAG,CAAA;IAC3B,CAAC;IAEM,KAAK,CAAC,QAAQ,CAAC,MAAwB;QAC1C,IAAI,CAAC,MAAM,CAAC,KAAK,IAAI,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACpD,MAAM,IAAI,KAAK,CAAC,oCAAoC,CAAC,CAAA;QACzD,CAAC;QAED,MAAM,IAAI,GAAG,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;QACjD,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC3B,MAAM,IAAI,KAAK,CAAC,2DAA2D,CAAC,CAAA;QAChF,CAAC;QAED,MAAM,IAAA,yBAAY,EAAC,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,MAAM,CAAC,CAAA;IACtD,CAAC;IAEM,KAAK,CAAC,gBAAgB,CAAC,MAAwB,EAAE,OAAuB,EAAE,kBAA2B;QACxG,MAAM,MAAM,GAAG,OAAO,CAAC,SAAS,EAAE,CAAA;QAClC,MAAM,WAAW,GAAG,KAAK,EAAE,CAA8B,EAAE,EAAE;YACzD,MAAM,CAAC,CAAC,KAAK,EAAE,CAAA;YACf,CAAC,CAAC,WAAW,EAAE,CAAA;QACnB,CAAC,CAAA;QACD,IAAI,CAAC,kBAAkB,EAAE,CAAC;YACtB,MAAM,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAA;YACtB,MAAM,WAAW,CAAC,MAAM,CAAC,CAAA;YACzB,OAAM;QACV,CAAC;QACD,MAAM,MAAM,CAAC,KAAK,CAAC,mBAAmB,MAAM,CAAC,KAAK,SAAS,MAAM,CAAC,IAAI,IAAI,WAAW,EAAE,CAAC,CAAA;QACxF,MAAM,WAAW,CAAC,MAAM,CAAC,CAAA;IAC7B,CAAC;IAEM,KAAK,CAAC,kBAAkB,CAAC,MAAwB;QACpD,MAAM,IAAI,GAAG,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;QACjD,OAAO,EAAE,kBAAkB,EAAE,CAAC,yBAAc,CAAC,aAAa,CAAC,IAAA,wCAAuB,EAAC,IAAI,CAAC,SAAS,CAAC,EAAE,IAAI,CAAC,EAAE,CAAA;IAC/G,CAAC;IAEM,KAAK,CAAC,MAAM,CAAC,MAAwB,EAAE,KAAyB;QACnE,MAAM,IAAI,GAAG,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;QACjD,IAAI,CAAC;YACD,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE,IAAI,EAAE,KAAK,CAAC,CAAA;YAC9D,OAAO,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,CAAA;QACrC,CAAC;QAAC,OAAO,KAAU,EAAE,CAAC;YAClB,IAAI,4BAAiB,CAAC,eAAe,CAAC,KAAK,CAAC,EAAE,CAAC;gBAC3C,+CAA+C;gBAC/C,MAAM,KAAK,CAAA;YACf,CAAC;YACD,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,yBAAyB,IAAI,OAAO,KAAK,CAAC,OAAO,IAAI,KAAK,EAAE,CAAC,CAAA;YAChF,MAAM,IAAI,KAAK,CAAC,yBAAyB,IAAI,OAAO,KAAK,CAAC,OAAO,IAAI,KAAK,EAAE,CAAC,CAAA;QACjF,CAAC;IACL,CAAC;IAEO,qBAAqB;QACzB,IAAI,OAAO,CAAC,QAAQ,KAAK,OAAO,EAAE,CAAC;YAC/B,OAAO,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAA;QAC3C,CAAC;QAED,OAAO,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,CAAA;IACvC,CAAC;IAEO,kBAAkB,CAAC,IAAa;QACpC,IAAI,IAAI,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACnC,OAAO,IAAI,CAAA;QACf,CAAC;QAED,kEAAkE;QAClE,MAAM,gBAAgB,GAAG,IAAA,wCAAuB,EAAC,IAAI,CAAC,SAAS,CAAC,CAAA;QAChE,IAAI,gBAAgB,IAAI,gBAAgB,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACpD,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,mCAAmC,gBAAgB,CAAC,CAAC,CAAC,EAAE,CAAC,CAAA;YAC5E,OAAO,gBAAgB,CAAC,CAAC,CAAC,CAAA;QAC9B,CAAC;QAED,OAAO,EAAE,CAAA;IACb,CAAC;IAEO,KAAK,CAAC,cAAc,CACxB,MAAwB,EACxB,IAAY,EACZ,KAAyB;QAEzB,OAAO,IAAI,OAAO,CAAC,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE;YACzC,MAAM,IAAI,GAAa,EAAE,CAAA;YAEzB,qBAAqB;YACrB,IAAI,CAAC,CAAC,MAAM,CAAC,aAAa,IAAI,KAAK,CAAC,EAAE,CAAC;gBACnC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA,CAAC,0BAA0B;YAC9C,CAAC;YACD,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA,CAAC,oBAAoB;YAEpC,2CAA2C;YAC3C,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,CAAA;YAEzB,4BAA4B;YAC5B,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,CAAA;YAE1B,+CAA+C;YAC/C,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,CAAA;YAErB,+BAA+B;YAC/B,IAAI,MAAM,CAAC,cAAc,EAAE,CAAC;gBACxB,oCAAoC;gBACpC,MAAM,QAAQ,GAAG,MAAM,CAAC,cAAc,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;gBACjD,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;oBAC7B,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,GAAG,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CAAA;gBACxC,CAAC;YACL,CAAC;YAED,IAAI,MAAM,CAAC,cAAc,EAAE,CAAC;gBACxB,oCAAoC;gBACpC,MAAM,QAAQ,GAAG,MAAM,CAAC,cAAc,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;gBACjD,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;oBAC7B,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CAAA;gBACzC,CAAC;YACL,CAAC;YAED,8BAA8B;YAC9B,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,CAAA;YAE7B,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,gCAAgC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;YAEpE,MAAM,OAAO,GAAwB;gBACjC,OAAO,EAAE,IAAI;gBACb,OAAO,EAAE,KAAK;aACjB,CAAA;YAED,IAAI,CAAC;gBACD,MAAM,EAAE,GAAG,IAAI,2BAAY,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,qBAAqB,EAAE,EAAE,IAAI,EAAE,OAAO,CAAC,CAAA;gBACtF,MAAM,MAAM,GAAG,MAAM,EAAE,CAAC,GAAG,EAAE,CAAA;gBAE7B,IAAI,CAAC,MAAM,CAAC,QAAQ,IAAI,CAAC,IAAI,MAAM,CAAC,QAAQ,IAAI,CAAC,CAAC,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;oBAClE,MAAM,KAAK,CAAC,0CAA0C,MAAM,CAAC,QAAQ,YAAY,MAAM,CAAC,KAAK,EAAE,CAAC,CAAA;gBACpG,CAAC;gBAED,mEAAmE;gBACnE,OAAO,CAAC,IAAI,CAAC,oBAAoB,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAA;YACrD,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACX,MAAM,CAAC,GAAG,CAAC,CAAA;YACf,CAAC;QACL,CAAC,CAAC,CAAA;IACN,CAAC;IAED;;;;OAIG;IACK,oBAAoB,CAAC,MAAc;QACvC,IAAI,CAAC,MAAM,IAAI,MAAM,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;YAClC,OAAO;gBACH,UAAU,EAAE,CAAC;gBACb,WAAW,EAAE,EAAE;aAClB,CAAA;QACL,CAAC;QACD,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;QAChC,qBAAqB;QACrB,MAAM,UAAU,GAAiE,EAAE,CAAA;QACnF,IAAI,UAAU,GAAG,CAAC,CAAA;QAClB,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACvB,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;gBAC9B,SAAQ;YACZ,CAAC;YACD,8CAA8C;YAC9C,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;YAC7B,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACnB,SAAQ;YACZ,CAAC;YACD,MAAM,QAAQ,GAAG,KAAK,CAAC,CAAC,CAAC,CAAA;YACzB,MAAM,UAAU,GAAG,KAAK,CAAC,CAAC,CAAC,CAAA;YAC3B,MAAM,OAAO,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAA;YAC/C,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;gBACxB,UAAU,CAAC,QAAQ,CAAC,GAAG,EAAE,WAAW,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,CAAA;YAC3D,CAAC;YACD,UAAU,CAAC,QAAQ,CAAC,CAAC,WAAW,CAAC,IAAI,CAAC,UAAU,CAAC,CAAA;YACjD,UAAU,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;YAC1C,UAAU,EAAE,CAAA;QAChB,CAAC;QACD,iDAAiD;QACjD,MAAM,WAAW,GAAG,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,MAAM,CAAC,CAAA;QAChH,iCAAiC;QACjC,MAAM,WAAW,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,QAAQ,EAAE,IAAI,CAAC,EAAE,EAAE;YACrD,MAAM,OAAO,GAA6B,EAAE,CAAA;YAC5C,KAAK,MAAM,CAAC,GAAG,EAAE,OAAO,CAAC,IAAI,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE,EAAE,CAAC;gBACtD,OAAO,CAAC,IAAI,CAAC;oBACT,OAAO;oBACP,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC;iBAC7B,CAAC,CAAA;YACN,CAAC;YAED,OAAO;gBACH,QAAQ;gBACR,OAAO;aACV,CAAA;QACL,CAAC,CAAC,CAAA;QAEF,OAAO;YACH,UAAU;YACV,WAAW;SACd,CAAA;IACL,CAAC;IAEO,YAAY,CAAC,OAA+B;QAChD,OAAO;YACH,MAAM,EAAE;gBACJ,IAAI,EAAE,MAAM;gBACZ,OAAO,EAAE,OAAO;aACnB;SACJ,CAAA;IACL,CAAC;IAEM,OAAO;QACV,OAAO;YACH,IAAI,EAAE,YAAY;YAClB,WAAW,EACP,sDAAsD;gBACtD,eAAe;gBACf,6FAA6F;gBAC7F,kBAAkB;gBAClB,wEAAwE;gBACxE,6FAA6F;gBAC7F,+EAA+E;gBAC/E,sBAAsB;gBACtB,qFAAqF;gBACrF,iDAAiD;gBACjD,qFAAqF;gBACrF,YAAY;gBACZ,oEAAoE;gBACpE,yEAAyE;gBACzE,mFAAmF;gBACnF,+EAA+E;gBAC/E,oGAAoG;YACxG,WAAW,EAAE;gBACT,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACR,IAAI,EAAE;wBACF,IAAI,EAAE,QAAQ;wBACd,WAAW,EACP,
|
|
1
|
+
{"version":3,"file":"grepSearch.js","sourceRoot":"","sources":["../../../../src/language-server/agenticChat/tools/grepSearch.ts"],"names":[],"mappings":"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"}
|