@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.
Files changed (80) hide show
  1. package/README.md +1 -1
  2. package/README_CN.md +1 -1
  3. package/dist/agents.js +164 -164
  4. package/dist/agents.js.map +1 -1
  5. package/dist/ai-client.d.ts +4 -6
  6. package/dist/ai-client.d.ts.map +1 -1
  7. package/dist/ai-client.js +137 -115
  8. package/dist/ai-client.js.map +1 -1
  9. package/dist/auth.js +4 -4
  10. package/dist/auth.js.map +1 -1
  11. package/dist/cli.js +184 -1
  12. package/dist/cli.js.map +1 -1
  13. package/dist/config.js +3 -3
  14. package/dist/config.js.map +1 -1
  15. package/dist/context-compressor.d.ts.map +1 -1
  16. package/dist/context-compressor.js +65 -81
  17. package/dist/context-compressor.js.map +1 -1
  18. package/dist/conversation.d.ts +1 -1
  19. package/dist/conversation.d.ts.map +1 -1
  20. package/dist/conversation.js +5 -31
  21. package/dist/conversation.js.map +1 -1
  22. package/dist/memory.d.ts +5 -1
  23. package/dist/memory.d.ts.map +1 -1
  24. package/dist/memory.js +77 -37
  25. package/dist/memory.js.map +1 -1
  26. package/dist/remote-ai-client.d.ts +1 -8
  27. package/dist/remote-ai-client.d.ts.map +1 -1
  28. package/dist/remote-ai-client.js +55 -65
  29. package/dist/remote-ai-client.js.map +1 -1
  30. package/dist/retry.d.ts +35 -0
  31. package/dist/retry.d.ts.map +1 -0
  32. package/dist/retry.js +166 -0
  33. package/dist/retry.js.map +1 -0
  34. package/dist/session.d.ts +0 -5
  35. package/dist/session.d.ts.map +1 -1
  36. package/dist/session.js +243 -312
  37. package/dist/session.js.map +1 -1
  38. package/dist/slash-commands.d.ts +1 -0
  39. package/dist/slash-commands.d.ts.map +1 -1
  40. package/dist/slash-commands.js +91 -9
  41. package/dist/slash-commands.js.map +1 -1
  42. package/dist/smart-approval.d.ts.map +1 -1
  43. package/dist/smart-approval.js +18 -17
  44. package/dist/smart-approval.js.map +1 -1
  45. package/dist/system-prompt-generator.d.ts.map +1 -1
  46. package/dist/system-prompt-generator.js +149 -139
  47. package/dist/system-prompt-generator.js.map +1 -1
  48. package/dist/theme.d.ts +48 -0
  49. package/dist/theme.d.ts.map +1 -1
  50. package/dist/theme.js +254 -0
  51. package/dist/theme.js.map +1 -1
  52. package/dist/tools/edit-diff.d.ts +32 -0
  53. package/dist/tools/edit-diff.d.ts.map +1 -0
  54. package/dist/tools/edit-diff.js +185 -0
  55. package/dist/tools/edit-diff.js.map +1 -0
  56. package/dist/tools/edit.d.ts +11 -0
  57. package/dist/tools/edit.d.ts.map +1 -0
  58. package/dist/tools/edit.js +129 -0
  59. package/dist/tools/edit.js.map +1 -0
  60. package/dist/tools.d.ts +19 -5
  61. package/dist/tools.d.ts.map +1 -1
  62. package/dist/tools.js +979 -631
  63. package/dist/tools.js.map +1 -1
  64. package/dist/types.d.ts +6 -31
  65. package/dist/types.d.ts.map +1 -1
  66. package/package.json +3 -2
  67. package/src/agents.ts +504 -504
  68. package/src/ai-client.ts +1559 -1458
  69. package/src/auth.ts +4 -4
  70. package/src/cli.ts +195 -1
  71. package/src/config.ts +3 -3
  72. package/src/memory.ts +55 -14
  73. package/src/remote-ai-client.ts +663 -683
  74. package/src/retry.ts +217 -0
  75. package/src/session.ts +1736 -1840
  76. package/src/slash-commands.ts +98 -9
  77. package/src/smart-approval.ts +626 -625
  78. package/src/system-prompt-generator.ts +853 -843
  79. package/src/theme.ts +284 -0
  80. 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 declare class SearchCodebaseTool implements Tool {
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
- }): Promise<string[]>;
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 ReplaceTool implements Tool {
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
- changes: number;
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;
@@ -1 +1 @@
1
- {"version":3,"file":"tools.d.ts","sourceRoot":"","sources":["../src/tools.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tools.d.ts","sourceRoot":"","sources":["../src/tools.ts"],"names":[],"mappings":"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"}