@xagent-ai/cli 1.2.0 → 1.2.2
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/README.md +1 -1
- package/README_CN.md +1 -1
- package/dist/agents.js +164 -164
- package/dist/agents.js.map +1 -1
- package/dist/ai-client.d.ts +4 -6
- package/dist/ai-client.d.ts.map +1 -1
- package/dist/ai-client.js +137 -115
- package/dist/ai-client.js.map +1 -1
- package/dist/auth.js +4 -4
- package/dist/auth.js.map +1 -1
- package/dist/cli.js +184 -1
- package/dist/cli.js.map +1 -1
- package/dist/config.js +3 -3
- package/dist/config.js.map +1 -1
- package/dist/context-compressor.d.ts.map +1 -1
- package/dist/context-compressor.js +65 -81
- package/dist/context-compressor.js.map +1 -1
- package/dist/conversation.d.ts +1 -1
- package/dist/conversation.d.ts.map +1 -1
- package/dist/conversation.js +5 -31
- package/dist/conversation.js.map +1 -1
- package/dist/memory.d.ts +5 -1
- package/dist/memory.d.ts.map +1 -1
- package/dist/memory.js +77 -37
- package/dist/memory.js.map +1 -1
- package/dist/remote-ai-client.d.ts +1 -8
- package/dist/remote-ai-client.d.ts.map +1 -1
- package/dist/remote-ai-client.js +55 -65
- package/dist/remote-ai-client.js.map +1 -1
- package/dist/retry.d.ts +35 -0
- package/dist/retry.d.ts.map +1 -0
- package/dist/retry.js +166 -0
- package/dist/retry.js.map +1 -0
- package/dist/session.d.ts +0 -5
- package/dist/session.d.ts.map +1 -1
- package/dist/session.js +243 -312
- package/dist/session.js.map +1 -1
- package/dist/slash-commands.d.ts +1 -0
- package/dist/slash-commands.d.ts.map +1 -1
- package/dist/slash-commands.js +91 -9
- package/dist/slash-commands.js.map +1 -1
- package/dist/smart-approval.d.ts.map +1 -1
- package/dist/smart-approval.js +18 -17
- package/dist/smart-approval.js.map +1 -1
- package/dist/system-prompt-generator.d.ts.map +1 -1
- package/dist/system-prompt-generator.js +149 -139
- package/dist/system-prompt-generator.js.map +1 -1
- package/dist/theme.d.ts +48 -0
- package/dist/theme.d.ts.map +1 -1
- package/dist/theme.js +254 -0
- package/dist/theme.js.map +1 -1
- package/dist/tools/edit-diff.d.ts +32 -0
- package/dist/tools/edit-diff.d.ts.map +1 -0
- package/dist/tools/edit-diff.js +185 -0
- package/dist/tools/edit-diff.js.map +1 -0
- package/dist/tools/edit.d.ts +11 -0
- package/dist/tools/edit.d.ts.map +1 -0
- package/dist/tools/edit.js +129 -0
- package/dist/tools/edit.js.map +1 -0
- package/dist/tools.d.ts +19 -5
- package/dist/tools.d.ts.map +1 -1
- package/dist/tools.js +979 -631
- package/dist/tools.js.map +1 -1
- package/dist/types.d.ts +6 -31
- package/dist/types.d.ts.map +1 -1
- package/package.json +3 -2
- package/src/agents.ts +504 -504
- package/src/ai-client.ts +1559 -1458
- package/src/auth.ts +4 -4
- package/src/cli.ts +195 -1
- package/src/config.ts +3 -3
- package/src/memory.ts +55 -14
- package/src/remote-ai-client.ts +663 -683
- package/src/retry.ts +217 -0
- package/src/session.ts +1736 -1840
- package/src/slash-commands.ts +98 -9
- package/src/smart-approval.ts +626 -625
- package/src/system-prompt-generator.ts +853 -843
- package/src/theme.ts +284 -0
- package/src/tools.ts +390 -70
|
@@ -0,0 +1,129 @@
|
|
|
1
|
+
import fs from "fs/promises";
|
|
2
|
+
import path from "path";
|
|
3
|
+
import { ExecutionMode } from "../types.js";
|
|
4
|
+
import { detectLineEnding, fuzzyFindText, generateDiffString, normalizeForFuzzyMatch, normalizeToLF, restoreLineEndings, stripBom, } from "./edit-diff.js";
|
|
5
|
+
const editDescription = `Edit a file by replacing exact text. This is your PRIMARY tool for making targeted edits to code.
|
|
6
|
+
|
|
7
|
+
# When to Use
|
|
8
|
+
- Modifying specific code sections without rewriting entire files
|
|
9
|
+
- Changing function implementations, variable values, or configurations
|
|
10
|
+
- Fixing bugs by editing specific lines
|
|
11
|
+
- Updating imports, exports, or references
|
|
12
|
+
|
|
13
|
+
# When NOT to Use
|
|
14
|
+
- When you need to create a completely new file (use Write instead)
|
|
15
|
+
- When you want to append content to a file (read first, then Write)
|
|
16
|
+
- When making changes across multiple files (use Grep to find, then edit individually)
|
|
17
|
+
|
|
18
|
+
# Parameters
|
|
19
|
+
- \`file_path\`: Path to the file to edit (relative or absolute)
|
|
20
|
+
- \`instruction\`: Description of what to change (for your own tracking)
|
|
21
|
+
- \`old_string\`: The exact text to find and replace (must match exactly)
|
|
22
|
+
- \`new_string\`: The new text to replace with
|
|
23
|
+
|
|
24
|
+
# Critical Requirements
|
|
25
|
+
- \`old_string\` MUST be an EXACT match, including whitespace and indentation
|
|
26
|
+
- Include sufficient context (at least 3 lines) before and after the target text to ensure unique matching
|
|
27
|
+
- The file must exist before editing
|
|
28
|
+
|
|
29
|
+
# Fuzzy Matching
|
|
30
|
+
This tool supports fuzzy matching to handle minor formatting differences:
|
|
31
|
+
- Trailing whitespace is ignored
|
|
32
|
+
- Smart quotes (', ', ", ") are normalized to ASCII
|
|
33
|
+
- Unicode dashes/hyphens are normalized to ASCII hyphen
|
|
34
|
+
- Special Unicode spaces are normalized to regular space
|
|
35
|
+
|
|
36
|
+
# Examples
|
|
37
|
+
edit(
|
|
38
|
+
file_path="src/app.ts",
|
|
39
|
+
instruction="Update API endpoint",
|
|
40
|
+
old_string="const API_URL = 'https://api.old.com'\\nconst PORT = 8080;",
|
|
41
|
+
new_string="const API_URL = 'https://api.new.com'\\nconst PORT = 3000;"
|
|
42
|
+
)
|
|
43
|
+
|
|
44
|
+
# Best Practices
|
|
45
|
+
- read_file the file first to understand the exact content
|
|
46
|
+
- Include sufficient context in old_string to ensure unique match
|
|
47
|
+
- If fuzzy matching is needed, the tool will automatically apply it
|
|
48
|
+
- Check the diff output to verify the change is correct`;
|
|
49
|
+
export function createEditTool(options) {
|
|
50
|
+
const cwd = options?.cwd || process.cwd();
|
|
51
|
+
return {
|
|
52
|
+
name: "edit",
|
|
53
|
+
description: editDescription,
|
|
54
|
+
allowedModes: [ExecutionMode.YOLO, ExecutionMode.ACCEPT_EDITS, ExecutionMode.SMART],
|
|
55
|
+
async execute(params, executionMode) {
|
|
56
|
+
const { file_path, instruction, old_string, new_string } = params;
|
|
57
|
+
const absolutePath = path.resolve(cwd, file_path);
|
|
58
|
+
try {
|
|
59
|
+
// Check if file exists
|
|
60
|
+
try {
|
|
61
|
+
await fs.access(absolutePath);
|
|
62
|
+
}
|
|
63
|
+
catch {
|
|
64
|
+
return {
|
|
65
|
+
success: false,
|
|
66
|
+
message: `File not found: ${file_path}`,
|
|
67
|
+
};
|
|
68
|
+
}
|
|
69
|
+
// Read the file
|
|
70
|
+
const buffer = await fs.readFile(absolutePath);
|
|
71
|
+
const rawContent = buffer.toString("utf-8");
|
|
72
|
+
// Strip BOM before matching
|
|
73
|
+
const { bom, text: content } = stripBom(rawContent);
|
|
74
|
+
const originalEnding = detectLineEnding(content);
|
|
75
|
+
const normalizedContent = normalizeToLF(content);
|
|
76
|
+
const normalizedOldText = normalizeToLF(old_string);
|
|
77
|
+
const normalizedNewText = normalizeToLF(new_string);
|
|
78
|
+
// Find the old text using fuzzy matching
|
|
79
|
+
const matchResult = fuzzyFindText(normalizedContent, normalizedOldText);
|
|
80
|
+
if (!matchResult.found) {
|
|
81
|
+
return {
|
|
82
|
+
success: false,
|
|
83
|
+
message: `Could not find the exact text in ${file_path}. The old text must match exactly including all whitespace and newlines.`,
|
|
84
|
+
};
|
|
85
|
+
}
|
|
86
|
+
// Count occurrences using fuzzy-normalized content
|
|
87
|
+
const fuzzyContent = normalizeForFuzzyMatch(normalizedContent);
|
|
88
|
+
const fuzzyOldText = normalizeForFuzzyMatch(normalizedOldText);
|
|
89
|
+
const occurrences = fuzzyContent.split(fuzzyOldText).length - 1;
|
|
90
|
+
if (occurrences > 1) {
|
|
91
|
+
return {
|
|
92
|
+
success: false,
|
|
93
|
+
message: `Found ${occurrences} occurrences of the text in ${file_path}. The text must be unique. Please provide more context to make it unique.`,
|
|
94
|
+
};
|
|
95
|
+
}
|
|
96
|
+
// Perform replacement
|
|
97
|
+
const baseContent = matchResult.contentForReplacement;
|
|
98
|
+
const newContent = baseContent.substring(0, matchResult.index) +
|
|
99
|
+
normalizedNewText +
|
|
100
|
+
baseContent.substring(matchResult.index + matchResult.matchLength);
|
|
101
|
+
// Verify the replacement actually changed something
|
|
102
|
+
if (baseContent === newContent) {
|
|
103
|
+
return {
|
|
104
|
+
success: false,
|
|
105
|
+
message: `No changes made to ${file_path}. The replacement produced identical content.`,
|
|
106
|
+
};
|
|
107
|
+
}
|
|
108
|
+
const finalContent = bom + restoreLineEndings(newContent, originalEnding);
|
|
109
|
+
await fs.writeFile(absolutePath, finalContent, "utf-8");
|
|
110
|
+
const diffResult = generateDiffString(baseContent, newContent);
|
|
111
|
+
return {
|
|
112
|
+
success: true,
|
|
113
|
+
message: `Successfully replaced text in ${file_path}.`,
|
|
114
|
+
diff: diffResult.diff,
|
|
115
|
+
firstChangedLine: diffResult.firstChangedLine,
|
|
116
|
+
};
|
|
117
|
+
}
|
|
118
|
+
catch (error) {
|
|
119
|
+
return {
|
|
120
|
+
success: false,
|
|
121
|
+
message: `Failed to edit file ${file_path}: ${error.message}`,
|
|
122
|
+
};
|
|
123
|
+
}
|
|
124
|
+
},
|
|
125
|
+
};
|
|
126
|
+
}
|
|
127
|
+
// Default edit tool using process.cwd()
|
|
128
|
+
export const editTool = createEditTool();
|
|
129
|
+
//# sourceMappingURL=edit.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"edit.js","sourceRoot":"","sources":["../../src/tools/edit.ts"],"names":[],"mappings":"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"}
|
package/dist/tools.d.ts
CHANGED
|
@@ -19,6 +19,9 @@ export declare class WriteTool implements Tool {
|
|
|
19
19
|
}): Promise<{
|
|
20
20
|
success: boolean;
|
|
21
21
|
message: string;
|
|
22
|
+
filePath: string;
|
|
23
|
+
lineCount: number;
|
|
24
|
+
preview?: string;
|
|
22
25
|
}>;
|
|
23
26
|
}
|
|
24
27
|
export declare class GrepTool implements Tool {
|
|
@@ -64,14 +67,23 @@ export declare class ListDirectoryTool implements Tool {
|
|
|
64
67
|
recursive?: boolean;
|
|
65
68
|
}): Promise<string[]>;
|
|
66
69
|
}
|
|
67
|
-
export
|
|
70
|
+
export interface SearchFilesResult {
|
|
71
|
+
/** Matching file paths relative to search directory */
|
|
72
|
+
files: string[];
|
|
73
|
+
/** Total number of matches found (before limiting) */
|
|
74
|
+
total: number;
|
|
75
|
+
/** Whether results were truncated due to limit */
|
|
76
|
+
truncated: boolean;
|
|
77
|
+
}
|
|
78
|
+
export declare class SearchFilesTool implements Tool {
|
|
68
79
|
name: string;
|
|
69
80
|
description: string;
|
|
70
81
|
allowedModes: ExecutionMode[];
|
|
71
82
|
execute(params: {
|
|
72
83
|
pattern: string;
|
|
73
84
|
path?: string;
|
|
74
|
-
|
|
85
|
+
limit?: number;
|
|
86
|
+
}): Promise<SearchFilesResult>;
|
|
75
87
|
}
|
|
76
88
|
export declare class DeleteFileTool implements Tool {
|
|
77
89
|
name: string;
|
|
@@ -82,6 +94,7 @@ export declare class DeleteFileTool implements Tool {
|
|
|
82
94
|
}): Promise<{
|
|
83
95
|
success: boolean;
|
|
84
96
|
message: string;
|
|
97
|
+
filePath: string;
|
|
85
98
|
}>;
|
|
86
99
|
}
|
|
87
100
|
export declare class CreateDirectoryTool implements Tool {
|
|
@@ -96,7 +109,7 @@ export declare class CreateDirectoryTool implements Tool {
|
|
|
96
109
|
message: string;
|
|
97
110
|
}>;
|
|
98
111
|
}
|
|
99
|
-
export declare class
|
|
112
|
+
export declare class EditTool implements Tool {
|
|
100
113
|
name: string;
|
|
101
114
|
description: string;
|
|
102
115
|
allowedModes: ExecutionMode[];
|
|
@@ -108,9 +121,9 @@ export declare class ReplaceTool implements Tool {
|
|
|
108
121
|
}): Promise<{
|
|
109
122
|
success: boolean;
|
|
110
123
|
message: string;
|
|
111
|
-
|
|
124
|
+
diff?: string;
|
|
125
|
+
firstChangedLine?: number;
|
|
112
126
|
}>;
|
|
113
|
-
private escapeRegExp;
|
|
114
127
|
}
|
|
115
128
|
export declare class WebSearchTool implements Tool {
|
|
116
129
|
name: string;
|
|
@@ -172,6 +185,7 @@ export declare class TaskTool implements Tool {
|
|
|
172
185
|
execute(params: {
|
|
173
186
|
description: string;
|
|
174
187
|
prompt?: string;
|
|
188
|
+
query?: string;
|
|
175
189
|
subagent_type?: 'general-purpose' | 'plan-agent' | 'explore-agent' | 'frontend-tester' | 'code-reviewer' | 'frontend-developer' | 'backend-developer' | 'gui-subagent';
|
|
176
190
|
agents?: SubAgentTask[];
|
|
177
191
|
useContext?: boolean;
|
package/dist/tools.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tools.d.ts","sourceRoot":"","sources":["../src/tools.ts"],"names":[],"mappings":"AASA,OAAO,EAAE,IAAI,EAAE,aAAa,EAAY,MAAM,YAAY,CAAC;AA+B3D,qBAAa,QAAS,YAAW,IAAI;IACnC,IAAI,SAAU;IACd,WAAW,SA4BwB;IAEnC,YAAY,kBAA6F;IAEnG,OAAO,CAAC,MAAM,EAAE;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,MAAM,CAAC;CAsC9F;AAED,qBAAa,SAAU,YAAW,IAAI;IACpC,IAAI,SAAW;IACf,WAAW,
|
|
1
|
+
{"version":3,"file":"tools.d.ts","sourceRoot":"","sources":["../src/tools.ts"],"names":[],"mappings":"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"}
|