@defai.digital/ax-cli 3.8.8 → 3.8.9
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 +23 -1
- package/config-defaults/prompts.yaml +96 -12
- package/dist/agent/llm-agent.js +2 -0
- package/dist/agent/llm-agent.js.map +1 -1
- package/dist/agent/specialized/analysis-agent.js +7 -16
- package/dist/agent/specialized/analysis-agent.js.map +1 -1
- package/dist/agent/specialized/debug-agent.js +7 -16
- package/dist/agent/specialized/debug-agent.js.map +1 -1
- package/dist/agent/specialized/documentation-agent.js +7 -16
- package/dist/agent/specialized/documentation-agent.js.map +1 -1
- package/dist/agent/specialized/performance-agent.js +7 -16
- package/dist/agent/specialized/performance-agent.js.map +1 -1
- package/dist/agent/specialized/refactoring-agent.js +7 -16
- package/dist/agent/specialized/refactoring-agent.js.map +1 -1
- package/dist/agent/specialized/testing-agent.js +7 -16
- package/dist/agent/specialized/testing-agent.js.map +1 -1
- package/dist/agent/subagent-types.d.ts +6 -0
- package/dist/agent/subagent-types.js +43 -56
- package/dist/agent/subagent-types.js.map +1 -1
- package/dist/commands/init.js +6 -5
- package/dist/commands/init.js.map +1 -1
- package/dist/commands/memory.js +8 -8
- package/dist/commands/memory.js.map +1 -1
- package/dist/commands/setup.js +3 -3
- package/dist/commands/setup.js.map +1 -1
- package/dist/constants.d.ts +38 -0
- package/dist/constants.js +41 -2
- package/dist/constants.js.map +1 -1
- package/dist/llm/tools.js +39 -4
- package/dist/llm/tools.js.map +1 -1
- package/dist/schemas/yaml-schemas.d.ts +47 -0
- package/dist/schemas/yaml-schemas.js +1 -0
- package/dist/schemas/yaml-schemas.js.map +1 -1
- package/dist/tools/text-editor.d.ts +9 -0
- package/dist/tools/text-editor.js +169 -0
- package/dist/tools/text-editor.js.map +1 -1
- package/dist/utils/config-loader.d.ts +1 -0
- package/dist/utils/config-loader.js.map +1 -1
- package/dist/utils/history-manager.js +6 -6
- package/dist/utils/history-manager.js.map +1 -1
- package/dist/utils/prompt-builder.js +4 -0
- package/dist/utils/prompt-builder.js.map +1 -1
- package/dist/utils/settings-manager.js +4 -4
- package/dist/utils/settings-manager.js.map +1 -1
- package/dist/utils/template-manager.js +9 -8
- package/dist/utils/template-manager.js.map +1 -1
- package/package.json +1 -1
package/dist/constants.d.ts
CHANGED
|
@@ -4,6 +4,30 @@
|
|
|
4
4
|
*/
|
|
5
5
|
/** Configuration directory name */
|
|
6
6
|
export declare const CONFIG_DIR_NAME = ".ax-cli";
|
|
7
|
+
export declare const FILE_NAMES: {
|
|
8
|
+
/** User configuration file name */
|
|
9
|
+
readonly USER_CONFIG: "config.json";
|
|
10
|
+
/** Project settings file name */
|
|
11
|
+
readonly PROJECT_SETTINGS: "settings.json";
|
|
12
|
+
/** Custom instructions file name */
|
|
13
|
+
readonly CUSTOM_MD: "CUSTOM.md";
|
|
14
|
+
/** Project index file name */
|
|
15
|
+
readonly INDEX_JSON: "index.json";
|
|
16
|
+
/** Project memory file name */
|
|
17
|
+
readonly MEMORY_JSON: "memory.json";
|
|
18
|
+
/** History file name */
|
|
19
|
+
readonly HISTORY_JSON: "history.json";
|
|
20
|
+
/** Sessions directory name */
|
|
21
|
+
readonly SESSIONS_DIR: "sessions";
|
|
22
|
+
/** Templates directory name */
|
|
23
|
+
readonly TEMPLATES_DIR: "templates";
|
|
24
|
+
/** Plans directory name */
|
|
25
|
+
readonly PLANS_DIR: "plans";
|
|
26
|
+
/** Backups directory name */
|
|
27
|
+
readonly BACKUPS_DIR: "backups";
|
|
28
|
+
/** Cache directory name */
|
|
29
|
+
readonly CACHE_DIR: "cache";
|
|
30
|
+
};
|
|
7
31
|
export declare const CONFIG_PATHS: {
|
|
8
32
|
/** Configuration directory name */
|
|
9
33
|
readonly DIR_NAME: ".ax-cli";
|
|
@@ -15,6 +39,20 @@ export declare const CONFIG_PATHS: {
|
|
|
15
39
|
readonly PROJECT_DIR: string;
|
|
16
40
|
/** Project-level settings file */
|
|
17
41
|
readonly PROJECT_SETTINGS: string;
|
|
42
|
+
/** Custom instructions file path (project-level) */
|
|
43
|
+
readonly CUSTOM_MD: string;
|
|
44
|
+
/** Project index file path (project-level) */
|
|
45
|
+
readonly INDEX_JSON: string;
|
|
46
|
+
/** Project memory file path (project-level) */
|
|
47
|
+
readonly MEMORY_JSON: string;
|
|
48
|
+
/** User templates directory */
|
|
49
|
+
readonly USER_TEMPLATES_DIR: string;
|
|
50
|
+
/** User plans directory */
|
|
51
|
+
readonly USER_PLANS_DIR: string;
|
|
52
|
+
/** User history file */
|
|
53
|
+
readonly USER_HISTORY: string;
|
|
54
|
+
/** User sessions directory */
|
|
55
|
+
readonly USER_SESSIONS_DIR: string;
|
|
18
56
|
/** AutomatosX temporary files directory */
|
|
19
57
|
readonly AUTOMATOSX_TMP: string;
|
|
20
58
|
};
|
package/dist/constants.js
CHANGED
|
@@ -11,6 +11,31 @@ const settingsYaml = loadSettingsConfig();
|
|
|
11
11
|
const messagesYaml = loadMessagesConfig();
|
|
12
12
|
/** Configuration directory name */
|
|
13
13
|
export const CONFIG_DIR_NAME = '.ax-cli';
|
|
14
|
+
// File Names (without paths)
|
|
15
|
+
export const FILE_NAMES = {
|
|
16
|
+
/** User configuration file name */
|
|
17
|
+
USER_CONFIG: 'config.json',
|
|
18
|
+
/** Project settings file name */
|
|
19
|
+
PROJECT_SETTINGS: 'settings.json',
|
|
20
|
+
/** Custom instructions file name */
|
|
21
|
+
CUSTOM_MD: 'CUSTOM.md',
|
|
22
|
+
/** Project index file name */
|
|
23
|
+
INDEX_JSON: 'index.json',
|
|
24
|
+
/** Project memory file name */
|
|
25
|
+
MEMORY_JSON: 'memory.json',
|
|
26
|
+
/** History file name */
|
|
27
|
+
HISTORY_JSON: 'history.json',
|
|
28
|
+
/** Sessions directory name */
|
|
29
|
+
SESSIONS_DIR: 'sessions',
|
|
30
|
+
/** Templates directory name */
|
|
31
|
+
TEMPLATES_DIR: 'templates',
|
|
32
|
+
/** Plans directory name */
|
|
33
|
+
PLANS_DIR: 'plans',
|
|
34
|
+
/** Backups directory name */
|
|
35
|
+
BACKUPS_DIR: 'backups',
|
|
36
|
+
/** Cache directory name */
|
|
37
|
+
CACHE_DIR: 'cache',
|
|
38
|
+
};
|
|
14
39
|
// Configuration Paths
|
|
15
40
|
export const CONFIG_PATHS = {
|
|
16
41
|
/** Configuration directory name */
|
|
@@ -18,11 +43,25 @@ export const CONFIG_PATHS = {
|
|
|
18
43
|
/** User-level settings directory */
|
|
19
44
|
USER_DIR: join(homedir(), CONFIG_DIR_NAME),
|
|
20
45
|
/** User-level configuration file */
|
|
21
|
-
USER_CONFIG: join(homedir(), CONFIG_DIR_NAME,
|
|
46
|
+
USER_CONFIG: join(homedir(), CONFIG_DIR_NAME, FILE_NAMES.USER_CONFIG),
|
|
22
47
|
/** Project-level settings directory */
|
|
23
48
|
PROJECT_DIR: join(process.cwd(), CONFIG_DIR_NAME),
|
|
24
49
|
/** Project-level settings file */
|
|
25
|
-
PROJECT_SETTINGS: join(process.cwd(), CONFIG_DIR_NAME,
|
|
50
|
+
PROJECT_SETTINGS: join(process.cwd(), CONFIG_DIR_NAME, FILE_NAMES.PROJECT_SETTINGS),
|
|
51
|
+
/** Custom instructions file path (project-level) */
|
|
52
|
+
CUSTOM_MD: join(process.cwd(), CONFIG_DIR_NAME, FILE_NAMES.CUSTOM_MD),
|
|
53
|
+
/** Project index file path (project-level) */
|
|
54
|
+
INDEX_JSON: join(process.cwd(), CONFIG_DIR_NAME, FILE_NAMES.INDEX_JSON),
|
|
55
|
+
/** Project memory file path (project-level) */
|
|
56
|
+
MEMORY_JSON: join(process.cwd(), CONFIG_DIR_NAME, FILE_NAMES.MEMORY_JSON),
|
|
57
|
+
/** User templates directory */
|
|
58
|
+
USER_TEMPLATES_DIR: join(homedir(), CONFIG_DIR_NAME, FILE_NAMES.TEMPLATES_DIR),
|
|
59
|
+
/** User plans directory */
|
|
60
|
+
USER_PLANS_DIR: join(homedir(), CONFIG_DIR_NAME, FILE_NAMES.PLANS_DIR),
|
|
61
|
+
/** User history file */
|
|
62
|
+
USER_HISTORY: join(homedir(), CONFIG_DIR_NAME, FILE_NAMES.HISTORY_JSON),
|
|
63
|
+
/** User sessions directory */
|
|
64
|
+
USER_SESSIONS_DIR: join(homedir(), CONFIG_DIR_NAME, FILE_NAMES.SESSIONS_DIR),
|
|
26
65
|
/** AutomatosX temporary files directory */
|
|
27
66
|
AUTOMATOSX_TMP: join(homedir(), 'automatosx', 'tmp'),
|
|
28
67
|
};
|
package/dist/constants.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,IAAI,CAAC;AAC7B,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAC5B,OAAO,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAEnH,sCAAsC;AACtC,MAAM,UAAU,GAAG,gBAAgB,EAAE,CAAC;AACtC,MAAM,YAAY,GAAG,kBAAkB,EAAE,CAAC;AAC1C,MAAM,YAAY,GAAG,kBAAkB,EAAE,CAAC;AAE1C,mCAAmC;AACnC,MAAM,CAAC,MAAM,eAAe,GAAG,SAAS,CAAC;AAEzC,sBAAsB;AACtB,MAAM,CAAC,MAAM,YAAY,GAAG;IAC1B,mCAAmC;IACnC,QAAQ,EAAE,eAAe;IACzB,oCAAoC;IACpC,QAAQ,EAAE,IAAI,CAAC,OAAO,EAAE,EAAE,eAAe,CAAC;IAC1C,oCAAoC;IACpC,WAAW,EAAE,IAAI,CAAC,OAAO,EAAE,EAAE,eAAe,EAAE,
|
|
1
|
+
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"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"}
|
package/dist/llm/tools.js
CHANGED
|
@@ -52,7 +52,7 @@ const BASE_GROK_TOOLS = [
|
|
|
52
52
|
type: "function",
|
|
53
53
|
function: {
|
|
54
54
|
name: "str_replace_editor",
|
|
55
|
-
description: "
|
|
55
|
+
description: "Edit existing files with precise string replacement. Can replace single or multi-line text blocks. For multiple changes to the same file, include more context in old_str to make a single comprehensive edit rather than multiple separate calls.",
|
|
56
56
|
parameters: {
|
|
57
57
|
type: "object",
|
|
58
58
|
properties: {
|
|
@@ -62,21 +62,56 @@ const BASE_GROK_TOOLS = [
|
|
|
62
62
|
},
|
|
63
63
|
old_str: {
|
|
64
64
|
type: "string",
|
|
65
|
-
description: "Text to replace
|
|
65
|
+
description: "Text to replace - can be single line or multi-line block. Include sufficient context (surrounding lines) to uniquely identify the location and enable consolidated edits.",
|
|
66
66
|
},
|
|
67
67
|
new_str: {
|
|
68
68
|
type: "string",
|
|
69
|
-
description: "
|
|
69
|
+
description: "Replacement text - can be single line or entire function/block",
|
|
70
70
|
},
|
|
71
71
|
replace_all: {
|
|
72
72
|
type: "boolean",
|
|
73
|
-
description: "Replace all occurrences (default: false, only replaces first occurrence)",
|
|
73
|
+
description: "Replace all occurrences (default: false, only replaces first occurrence). Useful for variable renaming across file.",
|
|
74
74
|
},
|
|
75
75
|
},
|
|
76
76
|
required: ["path", "old_str", "new_str"],
|
|
77
77
|
},
|
|
78
78
|
},
|
|
79
79
|
},
|
|
80
|
+
{
|
|
81
|
+
type: "function",
|
|
82
|
+
function: {
|
|
83
|
+
name: "multi_edit",
|
|
84
|
+
description: "Make multiple edits to a single file in one atomic operation. Use this instead of multiple str_replace_editor calls when you need to make several changes to the same file. Edits are applied sequentially and the operation fails entirely if any edit is invalid (all-or-nothing).",
|
|
85
|
+
parameters: {
|
|
86
|
+
type: "object",
|
|
87
|
+
properties: {
|
|
88
|
+
path: {
|
|
89
|
+
type: "string",
|
|
90
|
+
description: "Path to the file to edit",
|
|
91
|
+
},
|
|
92
|
+
edits: {
|
|
93
|
+
type: "array",
|
|
94
|
+
description: "Array of edits to apply sequentially. Each edit operates on the result of the previous edit.",
|
|
95
|
+
items: {
|
|
96
|
+
type: "object",
|
|
97
|
+
properties: {
|
|
98
|
+
old_str: {
|
|
99
|
+
type: "string",
|
|
100
|
+
description: "Text to replace",
|
|
101
|
+
},
|
|
102
|
+
new_str: {
|
|
103
|
+
type: "string",
|
|
104
|
+
description: "Replacement text",
|
|
105
|
+
},
|
|
106
|
+
},
|
|
107
|
+
required: ["old_str", "new_str"],
|
|
108
|
+
},
|
|
109
|
+
},
|
|
110
|
+
},
|
|
111
|
+
required: ["path", "edits"],
|
|
112
|
+
},
|
|
113
|
+
},
|
|
114
|
+
},
|
|
80
115
|
{
|
|
81
116
|
type: "function",
|
|
82
117
|
function: {
|
package/dist/llm/tools.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tools.js","sourceRoot":"","sources":["../../src/llm/tools.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAW,MAAM,kBAAkB,CAAC;AACvD,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAEhE,MAAM,eAAe,GAAc;IACjC;QACE,IAAI,EAAE,UAAU;QAChB,QAAQ,EAAE;YACR,IAAI,EAAE,WAAW;YACjB,WAAW,EAAE,oDAAoD;YACjE,UAAU,EAAE;gBACV,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACV,IAAI,EAAE;wBACJ,IAAI,EAAE,QAAQ;wBACd,WAAW,EAAE,mCAAmC;qBACjD;oBACD,UAAU,EAAE;wBACV,IAAI,EAAE,QAAQ;wBACd,WAAW,EACT,uDAAuD;qBAC1D;oBACD,QAAQ,EAAE;wBACR,IAAI,EAAE,QAAQ;wBACd,WAAW,EAAE,qDAAqD;qBACnE;iBACF;gBACD,QAAQ,EAAE,CAAC,MAAM,CAAC;aACnB;SACF;KACF;IACD;QACE,IAAI,EAAE,UAAU;QAChB,QAAQ,EAAE;YACR,IAAI,EAAE,aAAa;YACnB,WAAW,EAAE,0CAA0C;YACvD,UAAU,EAAE;gBACV,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACV,IAAI,EAAE;wBACJ,IAAI,EAAE,QAAQ;wBACd,WAAW,EAAE,uCAAuC;qBACrD;oBACD,OAAO,EAAE;wBACP,IAAI,EAAE,QAAQ;wBACd,WAAW,EAAE,8BAA8B;qBAC5C;iBACF;gBACD,QAAQ,EAAE,CAAC,MAAM,EAAE,SAAS,CAAC;aAC9B;SACF;KACF;IACD;QACE,IAAI,EAAE,UAAU;QAChB,QAAQ,EAAE;YACR,IAAI,EAAE,oBAAoB;YAC1B,WAAW,EAAE,
|
|
1
|
+
{"version":3,"file":"tools.js","sourceRoot":"","sources":["../../src/llm/tools.ts"],"names":[],"mappings":"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"}
|
|
@@ -471,6 +471,25 @@ export declare const ToolDefinitionSchema: z.ZodObject<{
|
|
|
471
471
|
export declare const PromptsYamlSchema: z.ZodObject<{
|
|
472
472
|
system_prompt: z.ZodObject<{
|
|
473
473
|
identity: z.ZodString;
|
|
474
|
+
professional_objectivity: z.ZodOptional<z.ZodObject<{
|
|
475
|
+
title: z.ZodOptional<z.ZodString>;
|
|
476
|
+
content: z.ZodOptional<z.ZodString>;
|
|
477
|
+
rules: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
|
|
478
|
+
steps: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
|
|
479
|
+
guidelines: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
|
|
480
|
+
}, "strip", z.ZodTypeAny, {
|
|
481
|
+
title?: string | undefined;
|
|
482
|
+
content?: string | undefined;
|
|
483
|
+
rules?: string[] | undefined;
|
|
484
|
+
steps?: string[] | undefined;
|
|
485
|
+
guidelines?: string[] | undefined;
|
|
486
|
+
}, {
|
|
487
|
+
title?: string | undefined;
|
|
488
|
+
content?: string | undefined;
|
|
489
|
+
rules?: string[] | undefined;
|
|
490
|
+
steps?: string[] | undefined;
|
|
491
|
+
guidelines?: string[] | undefined;
|
|
492
|
+
}>>;
|
|
474
493
|
core_principles: z.ZodOptional<z.ZodObject<{
|
|
475
494
|
title: z.ZodOptional<z.ZodString>;
|
|
476
495
|
content: z.ZodOptional<z.ZodString>;
|
|
@@ -540,6 +559,13 @@ export declare const PromptsYamlSchema: z.ZodObject<{
|
|
|
540
559
|
guidelines?: string[] | undefined;
|
|
541
560
|
}>;
|
|
542
561
|
closing: string;
|
|
562
|
+
professional_objectivity?: {
|
|
563
|
+
title?: string | undefined;
|
|
564
|
+
content?: string | undefined;
|
|
565
|
+
rules?: string[] | undefined;
|
|
566
|
+
steps?: string[] | undefined;
|
|
567
|
+
guidelines?: string[] | undefined;
|
|
568
|
+
} | undefined;
|
|
543
569
|
core_principles?: {
|
|
544
570
|
title?: string | undefined;
|
|
545
571
|
content?: string | undefined;
|
|
@@ -563,6 +589,13 @@ export declare const PromptsYamlSchema: z.ZodObject<{
|
|
|
563
589
|
guidelines?: string[] | undefined;
|
|
564
590
|
}>;
|
|
565
591
|
closing: string;
|
|
592
|
+
professional_objectivity?: {
|
|
593
|
+
title?: string | undefined;
|
|
594
|
+
content?: string | undefined;
|
|
595
|
+
rules?: string[] | undefined;
|
|
596
|
+
steps?: string[] | undefined;
|
|
597
|
+
guidelines?: string[] | undefined;
|
|
598
|
+
} | undefined;
|
|
566
599
|
core_principles?: {
|
|
567
600
|
title?: string | undefined;
|
|
568
601
|
content?: string | undefined;
|
|
@@ -590,6 +623,13 @@ export declare const PromptsYamlSchema: z.ZodObject<{
|
|
|
590
623
|
guidelines?: string[] | undefined;
|
|
591
624
|
}>;
|
|
592
625
|
closing: string;
|
|
626
|
+
professional_objectivity?: {
|
|
627
|
+
title?: string | undefined;
|
|
628
|
+
content?: string | undefined;
|
|
629
|
+
rules?: string[] | undefined;
|
|
630
|
+
steps?: string[] | undefined;
|
|
631
|
+
guidelines?: string[] | undefined;
|
|
632
|
+
} | undefined;
|
|
593
633
|
core_principles?: {
|
|
594
634
|
title?: string | undefined;
|
|
595
635
|
content?: string | undefined;
|
|
@@ -617,6 +657,13 @@ export declare const PromptsYamlSchema: z.ZodObject<{
|
|
|
617
657
|
guidelines?: string[] | undefined;
|
|
618
658
|
}>;
|
|
619
659
|
closing: string;
|
|
660
|
+
professional_objectivity?: {
|
|
661
|
+
title?: string | undefined;
|
|
662
|
+
content?: string | undefined;
|
|
663
|
+
rules?: string[] | undefined;
|
|
664
|
+
steps?: string[] | undefined;
|
|
665
|
+
guidelines?: string[] | undefined;
|
|
666
|
+
} | undefined;
|
|
620
667
|
core_principles?: {
|
|
621
668
|
title?: string | undefined;
|
|
622
669
|
content?: string | undefined;
|
|
@@ -111,6 +111,7 @@ export const ToolDefinitionSchema = z.object({
|
|
|
111
111
|
export const PromptsYamlSchema = z.object({
|
|
112
112
|
system_prompt: z.object({
|
|
113
113
|
identity: z.string().min(1),
|
|
114
|
+
professional_objectivity: PromptSectionSchema.optional(),
|
|
114
115
|
core_principles: PromptSectionSchema.optional(),
|
|
115
116
|
tools_header: z.string().min(1),
|
|
116
117
|
tools: z.array(ToolDefinitionSchema),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"yaml-schemas.js","sourceRoot":"","sources":["../../src/schemas/yaml-schemas.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"yaml-schemas.js","sourceRoot":"","sources":["../../src/schemas/yaml-schemas.ts"],"names":[],"mappings":"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"}
|
|
@@ -15,6 +15,15 @@ export declare class TextEditorTool {
|
|
|
15
15
|
create(filePath: string, content: string): Promise<ToolResult>;
|
|
16
16
|
replaceLines(filePath: string, startLine: number, endLine: number, newContent: string): Promise<ToolResult>;
|
|
17
17
|
insert(filePath: string, insertLine: number, content: string): Promise<ToolResult>;
|
|
18
|
+
/**
|
|
19
|
+
* Make multiple edits to a file in a single atomic operation.
|
|
20
|
+
* All edits are validated and previewed before applying.
|
|
21
|
+
* If any edit fails validation, the entire operation is aborted.
|
|
22
|
+
*/
|
|
23
|
+
multiEdit(filePath: string, edits: Array<{
|
|
24
|
+
old_str: string;
|
|
25
|
+
new_str: string;
|
|
26
|
+
}>): Promise<ToolResult>;
|
|
18
27
|
undoEdit(): Promise<ToolResult>;
|
|
19
28
|
private findFuzzyMatch;
|
|
20
29
|
private normalizeForComparison;
|
|
@@ -526,6 +526,175 @@ export class TextEditorTool {
|
|
|
526
526
|
return createToolError(ErrorCategory.FILE_OPERATION, `Insert content`, error, { filePath });
|
|
527
527
|
}
|
|
528
528
|
}
|
|
529
|
+
/**
|
|
530
|
+
* Make multiple edits to a file in a single atomic operation.
|
|
531
|
+
* All edits are validated and previewed before applying.
|
|
532
|
+
* If any edit fails validation, the entire operation is aborted.
|
|
533
|
+
*/
|
|
534
|
+
async multiEdit(filePath, edits) {
|
|
535
|
+
try {
|
|
536
|
+
// SECURITY: Validate path to prevent traversal attacks
|
|
537
|
+
const pathValidation = await validatePathSecure(filePath);
|
|
538
|
+
if (!pathValidation.success) {
|
|
539
|
+
return {
|
|
540
|
+
success: false,
|
|
541
|
+
error: `Security: ${pathValidation.error}`,
|
|
542
|
+
};
|
|
543
|
+
}
|
|
544
|
+
const resolvedPath = pathValidation.path;
|
|
545
|
+
// Validate inputs
|
|
546
|
+
if (!edits || edits.length === 0) {
|
|
547
|
+
return {
|
|
548
|
+
success: false,
|
|
549
|
+
error: "No edits provided",
|
|
550
|
+
};
|
|
551
|
+
}
|
|
552
|
+
for (let i = 0; i < edits.length; i++) {
|
|
553
|
+
if (!edits[i].old_str) {
|
|
554
|
+
return {
|
|
555
|
+
success: false,
|
|
556
|
+
error: `Edit ${i + 1}: old_str cannot be empty`,
|
|
557
|
+
};
|
|
558
|
+
}
|
|
559
|
+
}
|
|
560
|
+
// Check file exists
|
|
561
|
+
const fileExistsError = await checkFileExists(resolvedPath);
|
|
562
|
+
if (fileExistsError) {
|
|
563
|
+
return fileExistsError;
|
|
564
|
+
}
|
|
565
|
+
// Read file with stat to get mtime for race condition protection
|
|
566
|
+
const statsBefore = await fs.stat(resolvedPath);
|
|
567
|
+
const originalContent = await fs.readFile(resolvedPath, "utf-8");
|
|
568
|
+
const mtimeBefore = statsBefore.mtimeMs;
|
|
569
|
+
// Apply all edits sequentially to validate and generate preview
|
|
570
|
+
let workingContent = originalContent;
|
|
571
|
+
const appliedEdits = [];
|
|
572
|
+
for (let i = 0; i < edits.length; i++) {
|
|
573
|
+
const edit = edits[i];
|
|
574
|
+
let actualOldStr = edit.old_str;
|
|
575
|
+
if (!workingContent.includes(edit.old_str)) {
|
|
576
|
+
// Try whitespace-tolerant matching
|
|
577
|
+
const normalizedMatch = this.findNormalizedMatch(workingContent, edit.old_str);
|
|
578
|
+
if (normalizedMatch) {
|
|
579
|
+
actualOldStr = normalizedMatch;
|
|
580
|
+
}
|
|
581
|
+
else if (edit.old_str.includes('\n')) {
|
|
582
|
+
// Try fuzzy matching for multi-line strings
|
|
583
|
+
const fuzzyResult = this.findFuzzyMatch(workingContent, edit.old_str);
|
|
584
|
+
if (fuzzyResult) {
|
|
585
|
+
actualOldStr = fuzzyResult;
|
|
586
|
+
}
|
|
587
|
+
else {
|
|
588
|
+
const similarMatch = this.findSimilarBlock(workingContent, edit.old_str);
|
|
589
|
+
if (similarMatch.match) {
|
|
590
|
+
actualOldStr = similarMatch.match;
|
|
591
|
+
}
|
|
592
|
+
else {
|
|
593
|
+
const errorMsg = similarMatch.suggestion
|
|
594
|
+
? `Edit ${i + 1}: String not found. ${similarMatch.suggestion}`
|
|
595
|
+
: `Edit ${i + 1}: String not found in file (after applying previous edits).`;
|
|
596
|
+
return {
|
|
597
|
+
success: false,
|
|
598
|
+
error: errorMsg,
|
|
599
|
+
};
|
|
600
|
+
}
|
|
601
|
+
}
|
|
602
|
+
}
|
|
603
|
+
else {
|
|
604
|
+
const similarLine = this.findSimilarLine(workingContent, edit.old_str);
|
|
605
|
+
if (similarLine.match) {
|
|
606
|
+
actualOldStr = similarLine.match;
|
|
607
|
+
}
|
|
608
|
+
else {
|
|
609
|
+
const errorMsg = similarLine.suggestion
|
|
610
|
+
? `Edit ${i + 1}: String not found: "${edit.old_str}". ${similarLine.suggestion}`
|
|
611
|
+
: `Edit ${i + 1}: String not found: "${edit.old_str}"`;
|
|
612
|
+
return {
|
|
613
|
+
success: false,
|
|
614
|
+
error: errorMsg,
|
|
615
|
+
};
|
|
616
|
+
}
|
|
617
|
+
}
|
|
618
|
+
}
|
|
619
|
+
// Apply this edit to working content
|
|
620
|
+
workingContent = workingContent.replace(actualOldStr, edit.new_str);
|
|
621
|
+
appliedEdits.push({ ...edit, actualOldStr });
|
|
622
|
+
}
|
|
623
|
+
// Generate unified diff showing all changes
|
|
624
|
+
const oldLines = originalContent.split("\n");
|
|
625
|
+
const newLines = workingContent.split("\n");
|
|
626
|
+
let diffContent = this.generateDiff(oldLines, newLines, filePath);
|
|
627
|
+
// Add edit count to diff header
|
|
628
|
+
diffContent = `Multi-edit: ${edits.length} changes\n${diffContent}`;
|
|
629
|
+
// Check if file operation is destructive
|
|
630
|
+
const { isDestructive, matchedOperations } = isDestructiveFileOperation(filePath, 'edit');
|
|
631
|
+
// Get auto-accept configuration
|
|
632
|
+
const autoAcceptConfig = getSettingsManager().getAutoAcceptConfig();
|
|
633
|
+
const isAutoAcceptEnabled = this.confirmationService.getSessionFlags().allOperations === true;
|
|
634
|
+
const shouldAlwaysConfirm = isDestructive && matchedOperations.some(op => autoAcceptConfig?.alwaysConfirm?.includes(op.id));
|
|
635
|
+
if (isDestructive) {
|
|
636
|
+
const warnings = matchedOperations.map(op => ` - ${op.name}: ${op.description}`).join('\n');
|
|
637
|
+
diffContent = `⚠️ WARNING: This operation is flagged as destructive:\n${warnings}\n\n${diffContent}`;
|
|
638
|
+
}
|
|
639
|
+
const shouldProceed = await this.confirmationService.shouldProceed('file', {
|
|
640
|
+
operation: `Multi-edit (${edits.length} changes)`,
|
|
641
|
+
filename: filePath,
|
|
642
|
+
showVSCodeOpen: false,
|
|
643
|
+
content: diffContent,
|
|
644
|
+
alwaysConfirm: shouldAlwaysConfirm,
|
|
645
|
+
});
|
|
646
|
+
// Audit logging
|
|
647
|
+
if (autoAcceptConfig && autoAcceptConfig.auditLog?.enabled) {
|
|
648
|
+
const logger = getAutoAcceptLogger();
|
|
649
|
+
logger.logFileOperation('edit', filePath, isDestructive, !shouldProceed, isAutoAcceptEnabled && !shouldAlwaysConfirm, autoAcceptConfig.scope || 'session');
|
|
650
|
+
}
|
|
651
|
+
if (!shouldProceed) {
|
|
652
|
+
return {
|
|
653
|
+
success: false,
|
|
654
|
+
error: "Multi-edit cancelled by user",
|
|
655
|
+
};
|
|
656
|
+
}
|
|
657
|
+
// Race condition check
|
|
658
|
+
const statsAfterConfirm = await fs.stat(resolvedPath);
|
|
659
|
+
if (statsAfterConfirm.mtimeMs !== mtimeBefore) {
|
|
660
|
+
return {
|
|
661
|
+
success: false,
|
|
662
|
+
error: `File was modified by another process during confirmation. Please retry the operation.`,
|
|
663
|
+
};
|
|
664
|
+
}
|
|
665
|
+
// Create checkpoint before modification
|
|
666
|
+
await this.createCheckpointIfNeeded(filePath, 'multi_edit');
|
|
667
|
+
// Atomic write
|
|
668
|
+
const tempPath = `${resolvedPath}.tmp.${Date.now()}`;
|
|
669
|
+
try {
|
|
670
|
+
await writeFilePromise(tempPath, workingContent, "utf-8");
|
|
671
|
+
await fs.rename(tempPath, resolvedPath);
|
|
672
|
+
}
|
|
673
|
+
catch (writeError) {
|
|
674
|
+
try {
|
|
675
|
+
await fs.unlink(tempPath);
|
|
676
|
+
}
|
|
677
|
+
catch {
|
|
678
|
+
// Ignore cleanup errors
|
|
679
|
+
}
|
|
680
|
+
throw writeError;
|
|
681
|
+
}
|
|
682
|
+
// Record in edit history (record as single multi-edit operation)
|
|
683
|
+
this.editHistory.push({
|
|
684
|
+
command: "str_replace",
|
|
685
|
+
path: filePath,
|
|
686
|
+
old_str: `[multi-edit: ${edits.length} changes]`,
|
|
687
|
+
new_str: workingContent,
|
|
688
|
+
});
|
|
689
|
+
return {
|
|
690
|
+
success: true,
|
|
691
|
+
output: diffContent,
|
|
692
|
+
};
|
|
693
|
+
}
|
|
694
|
+
catch (error) {
|
|
695
|
+
return createToolError(ErrorCategory.FILE_OPERATION, `Multi-edit file`, error, { filePath });
|
|
696
|
+
}
|
|
697
|
+
}
|
|
529
698
|
async undoEdit() {
|
|
530
699
|
if (this.editHistory.length === 0) {
|
|
531
700
|
return {
|