@cortexkit/aft-opencode 0.2.0 → 0.3.0
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/dist/config.d.ts +1 -0
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js +6 -0
- package/dist/config.js.map +1 -1
- package/dist/index.d.ts +4 -3
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +21 -3
- package/dist/index.js.map +1 -1
- package/dist/metadata-store.d.ts +29 -0
- package/dist/metadata-store.d.ts.map +1 -0
- package/dist/metadata-store.js +53 -0
- package/dist/metadata-store.js.map +1 -0
- package/dist/patch-parser.d.ts +33 -0
- package/dist/patch-parser.d.ts.map +1 -0
- package/dist/patch-parser.js +237 -0
- package/dist/patch-parser.js.map +1 -0
- package/dist/tools/ast.d.ts.map +1 -1
- package/dist/tools/ast.js +159 -62
- package/dist/tools/ast.js.map +1 -1
- package/dist/tools/editing.d.ts +3 -2
- package/dist/tools/editing.d.ts.map +1 -1
- package/dist/tools/editing.js +4 -146
- package/dist/tools/editing.js.map +1 -1
- package/dist/tools/hoisted.d.ts +26 -0
- package/dist/tools/hoisted.d.ts.map +1 -0
- package/dist/tools/hoisted.js +749 -0
- package/dist/tools/hoisted.js.map +1 -0
- package/dist/tools/imports.d.ts.map +1 -1
- package/dist/tools/imports.js +15 -5
- package/dist/tools/imports.js.map +1 -1
- package/dist/tools/lsp.d.ts.map +1 -1
- package/dist/tools/lsp.js +25 -108
- package/dist/tools/lsp.js.map +1 -1
- package/dist/tools/navigation.d.ts.map +1 -1
- package/dist/tools/navigation.js +9 -3
- package/dist/tools/navigation.js.map +1 -1
- package/dist/tools/reading.d.ts +2 -1
- package/dist/tools/reading.d.ts.map +1 -1
- package/dist/tools/reading.js +7 -70
- package/dist/tools/reading.js.map +1 -1
- package/dist/tools/refactoring.d.ts.map +1 -1
- package/dist/tools/refactoring.js +16 -5
- package/dist/tools/refactoring.js.map +1 -1
- package/dist/tools/safety.d.ts.map +1 -1
- package/dist/tools/safety.js +11 -6
- package/dist/tools/safety.js.map +1 -1
- package/dist/tools/structure.d.ts.map +1 -1
- package/dist/tools/structure.js +22 -7
- package/dist/tools/structure.js.map +1 -1
- package/package.json +6 -6
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"hoisted.js","sourceRoot":"","sources":["../../src/tools/hoisted.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"imports.d.ts","sourceRoot":"","sources":["../../src/tools/imports.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAE1D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAIjD;;GAEG;AACH,wBAAgB,WAAW,CAAC,GAAG,EAAE,aAAa,GAAG,MAAM,CAAC,MAAM,EAAE,cAAc,CAAC,
|
|
1
|
+
{"version":3,"file":"imports.d.ts","sourceRoot":"","sources":["../../src/tools/imports.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAE1D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAIjD;;GAEG;AACH,wBAAgB,WAAW,CAAC,GAAG,EAAE,aAAa,GAAG,MAAM,CAAC,MAAM,EAAE,cAAc,CAAC,CAkE9E"}
|
package/dist/tools/imports.js
CHANGED
|
@@ -6,12 +6,22 @@ const z = tool.schema;
|
|
|
6
6
|
export function importTools(ctx) {
|
|
7
7
|
return {
|
|
8
8
|
aft_import: {
|
|
9
|
-
description: "Language-aware import management. Supports TS, JS, TSX, Python, Rust, and Go.\n" +
|
|
9
|
+
description: "Language-aware import management. Supports TS, JS, TSX, Python, Rust, and Go.\n\n" +
|
|
10
10
|
"Ops:\n" +
|
|
11
|
-
"- 'add': Add an import. Auto-detects group (stdlib/external/internal), deduplicates.
|
|
12
|
-
"- 'remove': Remove an import or a specific
|
|
13
|
-
"- 'organize': Re-sort and re-group all imports by language convention, deduplicate.\n" +
|
|
14
|
-
"
|
|
11
|
+
"- 'add': Add an import. Auto-detects group (stdlib/external/internal), deduplicates. Requires 'module'. Optional 'names', 'default_import', 'type_only'.\n" +
|
|
12
|
+
"- 'remove': Remove an import or a specific named import. Requires 'module'. Provide 'name' to remove a single named import; omit to remove the entire import.\n" +
|
|
13
|
+
"- 'organize': Re-sort and re-group all imports by language convention, deduplicate. Requires only 'file'.\n\n" +
|
|
14
|
+
"Parameters:\n" +
|
|
15
|
+
"- op (enum, required): 'add' | 'remove' | 'organize'\n" +
|
|
16
|
+
"- file (string, required): Path to the source file\n" +
|
|
17
|
+
"- module (string, optional): Module path — required for 'add' and 'remove' (e.g. 'react', './utils', 'std::fmt')\n" +
|
|
18
|
+
"- names (string[], optional): Named imports to add for 'add' op (e.g. ['useState', 'useEffect'])\n" +
|
|
19
|
+
"- default_import (string, optional): Default import name for 'add' op (e.g. 'React')\n" +
|
|
20
|
+
"- name (string, optional): Specific named import to remove for 'remove' op; omit to remove entire import\n" +
|
|
21
|
+
"- type_only (boolean, optional): Import as type-only — TypeScript 'import type' syntax\n" +
|
|
22
|
+
"- dry_run (boolean, optional): Preview changes without modifying the file\n" +
|
|
23
|
+
"- validate (enum, optional): Validation level — 'syntax' (default) or 'full'\n\n" +
|
|
24
|
+
"Returns: { formatted (string), validation_errors (string[]) }",
|
|
15
25
|
args: {
|
|
16
26
|
op: z.enum(["add", "remove", "organize"]).describe("Import operation"),
|
|
17
27
|
file: z.string().describe("Path to the file"),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"imports.js","sourceRoot":"","sources":["../../src/tools/imports.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,IAAI,EAAE,MAAM,qBAAqB,CAAC;AAG3C,MAAM,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC;AAEtB;;GAEG;AACH,MAAM,UAAU,WAAW,CAAC,GAAkB;IAC5C,OAAO;QACL,UAAU,EAAE;YACV,WAAW,EACT,
|
|
1
|
+
{"version":3,"file":"imports.js","sourceRoot":"","sources":["../../src/tools/imports.ts"],"names":[],"mappings":"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"}
|
package/dist/tools/lsp.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lsp.d.ts","sourceRoot":"","sources":["../../src/tools/lsp.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAE1D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAGjD;;;GAGG;AACH,wBAAgB,QAAQ,CAAC,GAAG,EAAE,aAAa,GAAG,MAAM,CAAC,MAAM,EAAE,cAAc,CAAC,
|
|
1
|
+
{"version":3,"file":"lsp.d.ts","sourceRoot":"","sources":["../../src/tools/lsp.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAE1D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAGjD;;;GAGG;AACH,wBAAgB,QAAQ,CAAC,GAAG,EAAE,aAAa,GAAG,MAAM,CAAC,MAAM,EAAE,cAAc,CAAC,CA+B3E"}
|
package/dist/tools/lsp.js
CHANGED
|
@@ -5,116 +5,33 @@ const z = tool.schema;
|
|
|
5
5
|
* find_references, prepare_rename, rename.
|
|
6
6
|
*/
|
|
7
7
|
export function lspTools(ctx) {
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
.enum(["error", "warning", "information", "hint", "all"])
|
|
24
|
-
.optional()
|
|
25
|
-
.describe("Filter by severity level (default: all)"),
|
|
26
|
-
wait_ms: z
|
|
27
|
-
.number()
|
|
28
|
-
.optional()
|
|
29
|
-
.describe("Wait N milliseconds for fresh diagnostics before returning (max 10000, default 0)"),
|
|
30
|
-
},
|
|
31
|
-
execute: async (args, context) => {
|
|
32
|
-
const bridge = ctx.pool.getBridge(context.directory);
|
|
33
|
-
const result = await bridge.send("lsp_diagnostics", args);
|
|
34
|
-
return JSON.stringify(result);
|
|
35
|
-
},
|
|
36
|
-
},
|
|
37
|
-
aft_lsp_hover: {
|
|
38
|
-
description: "Get type information and documentation for a symbol at a position. " +
|
|
39
|
-
"Returns hover content (type signatures, JSDoc, docstrings) from the language server. " +
|
|
40
|
-
"Line and character are 1-based.",
|
|
41
|
-
args: {
|
|
42
|
-
file: z.string().describe("Absolute path to the file"),
|
|
43
|
-
line: z.number().describe("1-based line number"),
|
|
44
|
-
character: z.number().describe("1-based column number"),
|
|
45
|
-
},
|
|
46
|
-
execute: async (args, context) => {
|
|
47
|
-
const bridge = ctx.pool.getBridge(context.directory);
|
|
48
|
-
const result = await bridge.send("lsp_hover", args);
|
|
49
|
-
return JSON.stringify(result);
|
|
50
|
-
},
|
|
51
|
-
},
|
|
52
|
-
aft_lsp_goto_definition: {
|
|
53
|
-
description: "Jump to symbol definition. Find WHERE something is defined. " +
|
|
54
|
-
"Returns definition location(s) with file path and 1-based line/column. " +
|
|
55
|
-
"Works across files — follows imports, type references, function calls.",
|
|
56
|
-
args: {
|
|
57
|
-
file: z.string().describe("Absolute path to the file"),
|
|
58
|
-
line: z.number().describe("1-based line number"),
|
|
59
|
-
character: z.number().describe("1-based column number"),
|
|
60
|
-
},
|
|
61
|
-
execute: async (args, context) => {
|
|
62
|
-
const bridge = ctx.pool.getBridge(context.directory);
|
|
63
|
-
const result = await bridge.send("lsp_goto_definition", args);
|
|
64
|
-
return JSON.stringify(result);
|
|
65
|
-
},
|
|
66
|
-
},
|
|
67
|
-
aft_lsp_find_references: {
|
|
68
|
-
description: "Find ALL usages/references of a symbol across the entire workspace. " +
|
|
69
|
-
"Returns all locations where the symbol is used, with 1-based line/column. " +
|
|
70
|
-
"Use before renaming or changing a function's signature to understand impact.",
|
|
71
|
-
args: {
|
|
72
|
-
file: z.string().describe("Absolute path to the file"),
|
|
73
|
-
line: z.number().describe("1-based line number"),
|
|
74
|
-
character: z.number().describe("1-based column number"),
|
|
75
|
-
include_declaration: z
|
|
76
|
-
.boolean()
|
|
77
|
-
.optional()
|
|
78
|
-
.describe("Include the declaration itself (default: true)"),
|
|
79
|
-
},
|
|
80
|
-
execute: async (args, context) => {
|
|
81
|
-
const bridge = ctx.pool.getBridge(context.directory);
|
|
82
|
-
const result = await bridge.send("lsp_find_references", args);
|
|
83
|
-
return JSON.stringify(result);
|
|
84
|
-
},
|
|
8
|
+
const diagnosticsTool = {
|
|
9
|
+
description: "Get errors, warnings, hints from language server. " +
|
|
10
|
+
"Returns diagnostics from LSP servers (typescript-language-server, pyright, rust-analyzer, gopls). " +
|
|
11
|
+
"Lazily spawns the appropriate server on first use.\n\n" +
|
|
12
|
+
"Parameters:\n" +
|
|
13
|
+
"- file (string, optional): Path to file to get diagnostics for.\n" +
|
|
14
|
+
"- directory (string, optional): Path to directory to get diagnostics for all files under it.\n" +
|
|
15
|
+
"- severity (enum, optional): Filter by severity — 'error', 'warning', 'information', 'hint', 'all' (default: 'all').\n" +
|
|
16
|
+
"- wait_ms (number, optional): Wait N ms for fresh diagnostics before returning (max 10000, default: 0). Use after edits to let the server re-analyze.\n\n" +
|
|
17
|
+
"Returns: Array of { file, line, column, end_line, end_column, severity, message, code }.",
|
|
18
|
+
args: {
|
|
19
|
+
file: z.string().optional(),
|
|
20
|
+
directory: z.string().optional(),
|
|
21
|
+
severity: z.enum(["error", "warning", "information", "hint", "all"]).optional(),
|
|
22
|
+
wait_ms: z.number().optional(),
|
|
85
23
|
},
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
args: {
|
|
91
|
-
file: z.string().describe("Absolute path to the file"),
|
|
92
|
-
line: z.number().describe("1-based line number"),
|
|
93
|
-
character: z.number().describe("1-based column number"),
|
|
94
|
-
},
|
|
95
|
-
execute: async (args, context) => {
|
|
96
|
-
const bridge = ctx.pool.getBridge(context.directory);
|
|
97
|
-
const result = await bridge.send("lsp_prepare_rename", args);
|
|
98
|
-
return JSON.stringify(result);
|
|
99
|
-
},
|
|
100
|
-
},
|
|
101
|
-
aft_lsp_rename: {
|
|
102
|
-
description: "Rename symbol across entire workspace via LSP. " +
|
|
103
|
-
"APPLIES changes to all files atomically with backup and rollback on failure. " +
|
|
104
|
-
"Always call aft_lsp_prepare_rename first to verify the rename is valid. " +
|
|
105
|
-
"Line and character are 1-based.",
|
|
106
|
-
args: {
|
|
107
|
-
file: z.string().describe("Absolute path to the file"),
|
|
108
|
-
line: z.number().describe("1-based line number"),
|
|
109
|
-
character: z.number().describe("1-based column number"),
|
|
110
|
-
new_name: z.string().describe("New name for the symbol"),
|
|
111
|
-
},
|
|
112
|
-
execute: async (args, context) => {
|
|
113
|
-
const bridge = ctx.pool.getBridge(context.directory);
|
|
114
|
-
const result = await bridge.send("lsp_rename", args);
|
|
115
|
-
return JSON.stringify(result);
|
|
116
|
-
},
|
|
24
|
+
execute: async (args, context) => {
|
|
25
|
+
const bridge = ctx.pool.getBridge(context.directory);
|
|
26
|
+
const result = await bridge.send("lsp_diagnostics", args);
|
|
27
|
+
return JSON.stringify(result);
|
|
117
28
|
},
|
|
118
29
|
};
|
|
30
|
+
// When hoisting: register as lsp_diagnostics (override oh-my-opencode's)
|
|
31
|
+
// When not hoisting: register as aft_lsp_diagnostics
|
|
32
|
+
const hoisting = ctx.config.hoist_builtin_tools !== false;
|
|
33
|
+
return {
|
|
34
|
+
[hoisting ? "lsp_diagnostics" : "aft_lsp_diagnostics"]: diagnosticsTool,
|
|
35
|
+
};
|
|
119
36
|
}
|
|
120
37
|
//# sourceMappingURL=lsp.js.map
|
package/dist/tools/lsp.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lsp.js","sourceRoot":"","sources":["../../src/tools/lsp.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,IAAI,EAAE,MAAM,qBAAqB,CAAC;AAG3C,MAAM,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC;AACtB;;;GAGG;AACH,MAAM,UAAU,QAAQ,CAAC,GAAkB;IACzC,
|
|
1
|
+
{"version":3,"file":"lsp.js","sourceRoot":"","sources":["../../src/tools/lsp.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,IAAI,EAAE,MAAM,qBAAqB,CAAC;AAG3C,MAAM,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC;AACtB;;;GAGG;AACH,MAAM,UAAU,QAAQ,CAAC,GAAkB;IACzC,MAAM,eAAe,GAAmB;QACtC,WAAW,EACT,oDAAoD;YACpD,oGAAoG;YACpG,wDAAwD;YACxD,eAAe;YACf,mEAAmE;YACnE,gGAAgG;YAChG,wHAAwH;YACxH,2JAA2J;YAC3J,0FAA0F;QAC5F,IAAI,EAAE;YACJ,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;YAC3B,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;YAChC,QAAQ,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC,QAAQ,EAAE;YAC/E,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;SAC/B;QACD,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAmB,EAAE;YAChD,MAAM,MAAM,GAAG,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;YACrD,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,iBAAiB,EAAE,IAAI,CAAC,CAAC;YAC1D,OAAO,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;QAChC,CAAC;KACF,CAAC;IAEF,yEAAyE;IACzE,qDAAqD;IACrD,MAAM,QAAQ,GAAG,GAAG,CAAC,MAAM,CAAC,mBAAmB,KAAK,KAAK,CAAC;IAC1D,OAAO;QACL,CAAC,QAAQ,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC,qBAAqB,CAAC,EAAE,eAAe;KACxE,CAAC;AACJ,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"navigation.d.ts","sourceRoot":"","sources":["../../src/tools/navigation.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAE1D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAIjD;;GAEG;AACH,wBAAgB,eAAe,CAAC,GAAG,EAAE,aAAa,GAAG,MAAM,CAAC,MAAM,EAAE,cAAc,CAAC,
|
|
1
|
+
{"version":3,"file":"navigation.d.ts","sourceRoot":"","sources":["../../src/tools/navigation.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAE1D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAIjD;;GAEG;AACH,wBAAgB,eAAe,CAAC,GAAG,EAAE,aAAa,GAAG,MAAM,CAAC,MAAM,EAAE,cAAc,CAAC,CA8ClF"}
|
package/dist/tools/navigation.js
CHANGED
|
@@ -6,13 +6,19 @@ const z = tool.schema;
|
|
|
6
6
|
export function navigationTools(ctx) {
|
|
7
7
|
return {
|
|
8
8
|
aft_navigate: {
|
|
9
|
-
description: "Navigate code structure across files using call graph analysis.\n" +
|
|
9
|
+
description: "Navigate code structure across files using call graph analysis.\n\n" +
|
|
10
10
|
"Modes:\n" +
|
|
11
|
-
"- 'call_tree': See what a function calls (forward). Use to understand dependencies before modifying a function.\n" +
|
|
11
|
+
"- 'call_tree': See what a function calls (forward traversal). Use to understand dependencies before modifying a function.\n" +
|
|
12
12
|
"- 'callers': Find all call sites of a symbol. Use before renaming or changing a function's signature.\n" +
|
|
13
13
|
"- 'trace_to': Trace how execution reaches a function from entry points (routes, exports, main). Use to understand context around deeply-nested code.\n" +
|
|
14
14
|
"- 'impact': Analyze what breaks if a symbol changes. Returns affected callers with signatures and entry point status.\n" +
|
|
15
|
-
"- 'trace_data': Follow a value through variable assignments and function parameters across files.
|
|
15
|
+
"- 'trace_data': Follow a value through variable assignments and function parameters across files. Requires 'expression' arg.\n\n" +
|
|
16
|
+
"Parameters:\n" +
|
|
17
|
+
"- mode (enum, required): 'call_tree' | 'callers' | 'trace_to' | 'impact' | 'trace_data'\n" +
|
|
18
|
+
"- file (string, required): Path to the source file containing the symbol\n" +
|
|
19
|
+
"- symbol (string, required): Name of the symbol to analyze\n" +
|
|
20
|
+
"- depth (number, required): Max traversal depth. Recommended: call_tree=3, callers=2, trace_to=10, impact=3, trace_data=5\n" +
|
|
21
|
+
"- expression (string, optional): The expression to follow through assignments — required for 'trace_data' mode",
|
|
16
22
|
args: {
|
|
17
23
|
mode: z
|
|
18
24
|
.enum(["call_tree", "callers", "trace_to", "impact", "trace_data"])
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"navigation.js","sourceRoot":"","sources":["../../src/tools/navigation.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,IAAI,EAAE,MAAM,qBAAqB,CAAC;AAG3C,MAAM,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC;AAEtB;;GAEG;AACH,MAAM,UAAU,eAAe,CAAC,GAAkB;IAChD,OAAO;QACL,YAAY,EAAE;YACZ,WAAW,EACT,
|
|
1
|
+
{"version":3,"file":"navigation.js","sourceRoot":"","sources":["../../src/tools/navigation.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,IAAI,EAAE,MAAM,qBAAqB,CAAC;AAG3C,MAAM,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC;AAEtB;;GAEG;AACH,MAAM,UAAU,eAAe,CAAC,GAAkB;IAChD,OAAO;QACL,YAAY,EAAE;YACZ,WAAW,EACT,qEAAqE;gBACrE,UAAU;gBACV,6HAA6H;gBAC7H,yGAAyG;gBACzG,wJAAwJ;gBACxJ,yHAAyH;gBACzH,kIAAkI;gBAClI,eAAe;gBACf,2FAA2F;gBAC3F,4EAA4E;gBAC5E,8DAA8D;gBAC9D,6HAA6H;gBAC7H,gHAAgH;YAClH,IAAI,EAAE;gBACJ,IAAI,EAAE,CAAC;qBACJ,IAAI,CAAC,CAAC,WAAW,EAAE,SAAS,EAAE,UAAU,EAAE,QAAQ,EAAE,YAAY,CAAC,CAAC;qBAClE,QAAQ,CAAC,iBAAiB,CAAC;gBAC9B,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,+CAA+C,CAAC;gBAC1E,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,+BAA+B,CAAC;gBAC5D,KAAK,EAAE,CAAC;qBACL,MAAM,EAAE;qBACR,QAAQ,CACP,4FAA4F,CAC7F;gBACH,UAAU,EAAE,CAAC;qBACV,MAAM,EAAE;qBACR,QAAQ,EAAE;qBACV,QAAQ,CAAC,sEAAsE,CAAC;aACpF;YACD,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAmB,EAAE;gBAChD,MAAM,MAAM,GAAG,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;gBACrD,MAAM,MAAM,GAA4B;oBACtC,IAAI,EAAE,IAAI,CAAC,IAAI;oBACf,MAAM,EAAE,IAAI,CAAC,MAAM;iBACpB,CAAC;gBACF,IAAI,IAAI,CAAC,KAAK,KAAK,SAAS;oBAAE,MAAM,CAAC,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;gBAChE,IAAI,IAAI,CAAC,UAAU,KAAK,SAAS;oBAAE,MAAM,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC;gBACvE,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,IAAc,EAAE,MAAM,CAAC,CAAC;gBAChE,OAAO,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;YAClC,CAAC;SACF;KACF,CAAC;AACJ,CAAC"}
|
package/dist/tools/reading.d.ts
CHANGED
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
import type { ToolDefinition } from "@opencode-ai/plugin";
|
|
2
2
|
import type { PluginContext } from "../types.js";
|
|
3
3
|
/**
|
|
4
|
-
* Tool definitions for code reading commands: outline
|
|
4
|
+
* Tool definitions for code reading commands: outline only.
|
|
5
|
+
* The zoom/read functionality has been merged into the hoisted `read` tool.
|
|
5
6
|
*/
|
|
6
7
|
export declare function readingTools(ctx: PluginContext): Record<string, ToolDefinition>;
|
|
7
8
|
//# sourceMappingURL=reading.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"reading.d.ts","sourceRoot":"","sources":["../../src/tools/reading.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"reading.d.ts","sourceRoot":"","sources":["../../src/tools/reading.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAE1D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAIjD;;;GAGG;AACH,wBAAgB,YAAY,CAAC,GAAG,EAAE,aAAa,GAAG,MAAM,CAAC,MAAM,EAAE,cAAc,CAAC,CAmC/E"}
|
package/dist/tools/reading.js
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { tool } from "@opencode-ai/plugin";
|
|
2
|
-
import { queryLspHints } from "../lsp.js";
|
|
3
2
|
const z = tool.schema;
|
|
4
3
|
/**
|
|
5
|
-
* Tool definitions for code reading commands: outline
|
|
4
|
+
* Tool definitions for code reading commands: outline only.
|
|
5
|
+
* The zoom/read functionality has been merged into the hoisted `read` tool.
|
|
6
6
|
*/
|
|
7
7
|
export function readingTools(ctx) {
|
|
8
8
|
return {
|
|
@@ -10,7 +10,11 @@ export function readingTools(ctx) {
|
|
|
10
10
|
description: "Get a structural outline of a source file — lists all top-level symbols with their kind, name, line range, and visibility. Use this to understand file structure before editing. " +
|
|
11
11
|
"Supports single file (via 'file') or multiple files in one call (via 'files' array).\n" +
|
|
12
12
|
"Each entry includes 'name', 'kind' (function/class/struct/heading/etc), 'range', 'signature', and 'members' (nested children like methods in classes or sub-headings in markdown).\n" +
|
|
13
|
-
"For Markdown files (.md, .mdx): returns heading hierarchy — h1/h2/h3 as nested symbols with section ranges covering all content until the next same-level heading
|
|
13
|
+
"For Markdown files (.md, .mdx): returns heading hierarchy — h1/h2/h3 as nested symbols with section ranges covering all content until the next same-level heading.\n\n" +
|
|
14
|
+
"Parameters:\n" +
|
|
15
|
+
"- file (string, optional): Path to a single file to outline (relative to project root or absolute)\n" +
|
|
16
|
+
"- files (string[], optional): Array of file paths to outline in one call — returns per-file results\n\n" +
|
|
17
|
+
"Provide either 'file' or 'files', not both. Use 'files' to batch multiple outlines in one tool call.",
|
|
14
18
|
args: {
|
|
15
19
|
file: z
|
|
16
20
|
.string()
|
|
@@ -31,73 +35,6 @@ export function readingTools(ctx) {
|
|
|
31
35
|
return JSON.stringify(response);
|
|
32
36
|
},
|
|
33
37
|
},
|
|
34
|
-
aft_zoom: {
|
|
35
|
-
description: "Deep-inspect symbols or read arbitrary line ranges from a source file.\n" +
|
|
36
|
-
"Returns full source, surrounding context lines, and call-graph annotations (calls_out, called_by) for code symbols.\n" +
|
|
37
|
-
"Supports three access patterns:\n" +
|
|
38
|
-
"- 'symbol': Inspect a named symbol (function, class, type, or markdown heading)\n" +
|
|
39
|
-
"- 'symbols': Inspect multiple symbols in one call — returns an array of results\n" +
|
|
40
|
-
"- 'start_line' + 'end_line': Read arbitrary line range (1-based) without needing a symbol name\n" +
|
|
41
|
-
"For Markdown: use heading text as symbol name (e.g. symbol='Architecture') to read entire section.",
|
|
42
|
-
args: {
|
|
43
|
-
file: z.string().describe("Path to the source file containing the symbol"),
|
|
44
|
-
symbol: z.string().optional().describe("Name of a single symbol to inspect"),
|
|
45
|
-
symbols: z
|
|
46
|
-
.array(z.string())
|
|
47
|
-
.optional()
|
|
48
|
-
.describe("Array of symbol names to inspect in one call — returns results for each"),
|
|
49
|
-
context_lines: z
|
|
50
|
-
.number()
|
|
51
|
-
.optional()
|
|
52
|
-
.describe("Number of lines of context to include above and below the symbol (default: 3)"),
|
|
53
|
-
scope: z
|
|
54
|
-
.string()
|
|
55
|
-
.optional()
|
|
56
|
-
.describe("Qualified scope to disambiguate symbols with the same name (e.g. 'ClassName.method')"),
|
|
57
|
-
start_line: z.number().optional().describe("Start line (1-based) for line-range read mode"),
|
|
58
|
-
end_line: z
|
|
59
|
-
.number()
|
|
60
|
-
.optional()
|
|
61
|
-
.describe("End line (1-based, inclusive) for line-range read mode"),
|
|
62
|
-
},
|
|
63
|
-
execute: async (args, context) => {
|
|
64
|
-
const bridge = ctx.pool.getBridge(context.directory);
|
|
65
|
-
// Batch symbols mode: zoom into multiple symbols in one call
|
|
66
|
-
if (Array.isArray(args.symbols) && args.symbols.length > 0) {
|
|
67
|
-
const results = await Promise.all(args.symbols.map(async (sym) => {
|
|
68
|
-
const params = { file: args.file, symbol: sym };
|
|
69
|
-
if (args.context_lines !== undefined)
|
|
70
|
-
params.context_lines = Number(args.context_lines);
|
|
71
|
-
if (args.scope !== undefined)
|
|
72
|
-
params.scope = args.scope;
|
|
73
|
-
const hints = await queryLspHints(ctx.client, sym);
|
|
74
|
-
if (hints)
|
|
75
|
-
params.lsp_hints = hints;
|
|
76
|
-
return bridge.send("zoom", params);
|
|
77
|
-
}));
|
|
78
|
-
return JSON.stringify(results);
|
|
79
|
-
}
|
|
80
|
-
// Single symbol or line-range mode
|
|
81
|
-
const params = { file: args.file };
|
|
82
|
-
if (args.symbol !== undefined)
|
|
83
|
-
params.symbol = args.symbol;
|
|
84
|
-
if (args.context_lines !== undefined)
|
|
85
|
-
params.context_lines = Number(args.context_lines);
|
|
86
|
-
if (args.scope !== undefined)
|
|
87
|
-
params.scope = args.scope;
|
|
88
|
-
if (args.start_line !== undefined)
|
|
89
|
-
params.start_line = Number(args.start_line);
|
|
90
|
-
if (args.end_line !== undefined)
|
|
91
|
-
params.end_line = Number(args.end_line);
|
|
92
|
-
if (args.symbol) {
|
|
93
|
-
const hints = await queryLspHints(ctx.client, args.symbol);
|
|
94
|
-
if (hints)
|
|
95
|
-
params.lsp_hints = hints;
|
|
96
|
-
}
|
|
97
|
-
const response = await bridge.send("zoom", params);
|
|
98
|
-
return JSON.stringify(response);
|
|
99
|
-
},
|
|
100
|
-
},
|
|
101
38
|
};
|
|
102
39
|
}
|
|
103
40
|
//# sourceMappingURL=reading.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"reading.js","sourceRoot":"","sources":["../../src/tools/reading.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,IAAI,EAAE,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"reading.js","sourceRoot":"","sources":["../../src/tools/reading.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,IAAI,EAAE,MAAM,qBAAqB,CAAC;AAG3C,MAAM,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC;AAEtB;;;GAGG;AACH,MAAM,UAAU,YAAY,CAAC,GAAkB;IAC7C,OAAO;QACL,WAAW,EAAE;YACX,WAAW,EACT,mLAAmL;gBACnL,wFAAwF;gBACxF,sLAAsL;gBACtL,wKAAwK;gBACxK,eAAe;gBACf,sGAAsG;gBACtG,yGAAyG;gBACzG,sGAAsG;YACxG,IAAI,EAAE;gBACJ,IAAI,EAAE,CAAC;qBACJ,MAAM,EAAE;qBACR,QAAQ,EAAE;qBACV,QAAQ,CACP,gFAAgF,CACjF;gBACH,KAAK,EAAE,CAAC;qBACL,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;qBACjB,QAAQ,EAAE;qBACV,QAAQ,CAAC,uEAAuE,CAAC;aACrF;YACD,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAmB,EAAE;gBAChD,MAAM,MAAM,GAAG,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;gBACrD,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBACvD,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,SAAS,EAAE,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC;oBACrE,OAAO,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;gBAClC,CAAC;gBACD,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,SAAS,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;gBACnE,OAAO,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;YAClC,CAAC;SACF;KACF,CAAC;AACJ,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"refactoring.d.ts","sourceRoot":"","sources":["../../src/tools/refactoring.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAG1D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAIjD;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,aAAa,GAAG,MAAM,CAAC,MAAM,EAAE,cAAc,CAAC,
|
|
1
|
+
{"version":3,"file":"refactoring.d.ts","sourceRoot":"","sources":["../../src/tools/refactoring.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAG1D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAIjD;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,aAAa,GAAG,MAAM,CAAC,MAAM,EAAE,cAAc,CAAC,CAoFnF"}
|
|
@@ -7,12 +7,23 @@ const z = tool.schema;
|
|
|
7
7
|
export function refactoringTools(ctx) {
|
|
8
8
|
return {
|
|
9
9
|
aft_refactor: {
|
|
10
|
-
description: "Workspace-wide refactoring operations that update imports and references across files.\n" +
|
|
10
|
+
description: "Workspace-wide refactoring operations that update imports and references across files.\n\n" +
|
|
11
11
|
"Ops:\n" +
|
|
12
|
-
"- 'move': Move a symbol to another file, updating all imports workspace-wide.
|
|
13
|
-
"- 'extract': Extract a line range into a new function with auto-detected parameters.
|
|
14
|
-
"- 'inline': Replace a function call with the function's body, substituting args for params.
|
|
15
|
-
"
|
|
12
|
+
"- 'move': Move a symbol to another file, updating all imports workspace-wide. Requires 'symbol', 'destination'. Creates a checkpoint before mutating.\n" +
|
|
13
|
+
"- 'extract': Extract a line range into a new function with auto-detected parameters. Requires 'name', 'start_line', 'end_line' (all 1-based). Supports TS/JS/TSX and Python.\n" +
|
|
14
|
+
"- 'inline': Replace a function call with the function's body, substituting args for params. Requires 'symbol', 'call_site_line' (1-based). Validates single-return constraint.\n\n" +
|
|
15
|
+
"Parameters:\n" +
|
|
16
|
+
"- op (enum, required): 'move' | 'extract' | 'inline'\n" +
|
|
17
|
+
"- file (string, required): Path to the source file\n" +
|
|
18
|
+
"- symbol (string, optional): Symbol name — required for 'move' (symbol to move) and 'inline' (function to inline)\n" +
|
|
19
|
+
"- destination (string, optional): Target file path for 'move' op — created if it doesn't exist\n" +
|
|
20
|
+
"- scope (string, optional): Disambiguation scope for 'move' when multiple symbols share the same name\n" +
|
|
21
|
+
"- name (string, optional): New function name for 'extract' op\n" +
|
|
22
|
+
"- start_line (number, optional): 1-based start line of the range to extract ('extract' op)\n" +
|
|
23
|
+
"- end_line (number, optional): 1-based end line of the range to extract, exclusive ('extract' op)\n" +
|
|
24
|
+
"- call_site_line (number, optional): 1-based line where the call expression is located ('inline' op)\n" +
|
|
25
|
+
"- dry_run (boolean, optional): Preview changes as diff without modifying files\n\n" +
|
|
26
|
+
"All ops need 'file'. Use dry_run to preview before applying.",
|
|
16
27
|
args: {
|
|
17
28
|
op: z.enum(["move", "extract", "inline"]).describe("Refactoring operation"),
|
|
18
29
|
file: z.string().describe("Path to the source file"),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"refactoring.js","sourceRoot":"","sources":["../../src/tools/refactoring.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,IAAI,EAAE,MAAM,qBAAqB,CAAC;AAC3C,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAG1C,MAAM,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC;AAEtB;;GAEG;AACH,MAAM,UAAU,gBAAgB,CAAC,GAAkB;IACjD,OAAO;QACL,YAAY,EAAE;YACZ,WAAW,EACT,
|
|
1
|
+
{"version":3,"file":"refactoring.js","sourceRoot":"","sources":["../../src/tools/refactoring.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"safety.d.ts","sourceRoot":"","sources":["../../src/tools/safety.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAE1D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAIjD;;;GAGG;AACH,wBAAgB,WAAW,CAAC,GAAG,EAAE,aAAa,GAAG,MAAM,CAAC,MAAM,EAAE,cAAc,CAAC,
|
|
1
|
+
{"version":3,"file":"safety.d.ts","sourceRoot":"","sources":["../../src/tools/safety.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAE1D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAIjD;;;GAGG;AACH,wBAAgB,WAAW,CAAC,GAAG,EAAE,aAAa,GAAG,MAAM,CAAC,MAAM,EAAE,cAAc,CAAC,CAkD9E"}
|
package/dist/tools/safety.js
CHANGED
|
@@ -7,13 +7,18 @@ const z = tool.schema;
|
|
|
7
7
|
export function safetyTools(ctx) {
|
|
8
8
|
return {
|
|
9
9
|
aft_safety: {
|
|
10
|
-
description: "File safety and recovery operations.\n" +
|
|
10
|
+
description: "File safety and recovery operations.\n\n" +
|
|
11
11
|
"Ops:\n" +
|
|
12
|
-
"- 'undo': Undo the last edit to a file.
|
|
13
|
-
"- 'history': List all edit snapshots for a file.
|
|
14
|
-
"- 'checkpoint': Save a named snapshot of tracked files.
|
|
15
|
-
"- 'restore': Restore files to a checkpoint
|
|
16
|
-
"- 'list': List all available checkpoints.\n" +
|
|
12
|
+
"- 'undo': Undo the last edit to a file. Requires 'file'.\n" +
|
|
13
|
+
"- 'history': List all edit snapshots for a file. Requires 'file'.\n" +
|
|
14
|
+
"- 'checkpoint': Save a named snapshot of tracked files. Requires 'name'. Optional 'files' to snapshot specific files only.\n" +
|
|
15
|
+
"- 'restore': Restore files to a previously saved checkpoint. Requires 'name'.\n" +
|
|
16
|
+
"- 'list': List all available named checkpoints. No extra params needed.\n\n" +
|
|
17
|
+
"Parameters:\n" +
|
|
18
|
+
"- op (enum, required): 'undo' | 'history' | 'checkpoint' | 'restore' | 'list'\n" +
|
|
19
|
+
"- file (string, optional): File path — required for 'undo' and 'history' ops\n" +
|
|
20
|
+
"- name (string, optional): Checkpoint name — required for 'checkpoint' and 'restore' ops\n" +
|
|
21
|
+
"- files (string[], optional): Specific files to include in checkpoint (defaults to all tracked files)\n\n" +
|
|
17
22
|
"Use checkpoint before risky multi-file changes. Use undo for quick single-file rollback.\n" +
|
|
18
23
|
"Note: backups are in-memory (lost on restart). Per-file undo stack is capped at 20 entries (oldest evicted).",
|
|
19
24
|
args: {
|
package/dist/tools/safety.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"safety.js","sourceRoot":"","sources":["../../src/tools/safety.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,IAAI,EAAE,MAAM,qBAAqB,CAAC;AAG3C,MAAM,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC;AAEtB;;;GAGG;AACH,MAAM,UAAU,WAAW,CAAC,GAAkB;IAC5C,OAAO;QACL,UAAU,EAAE;YACV,WAAW,EACT,
|
|
1
|
+
{"version":3,"file":"safety.js","sourceRoot":"","sources":["../../src/tools/safety.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,IAAI,EAAE,MAAM,qBAAqB,CAAC;AAG3C,MAAM,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC;AAEtB;;;GAGG;AACH,MAAM,UAAU,WAAW,CAAC,GAAkB;IAC5C,OAAO;QACL,UAAU,EAAE;YACV,WAAW,EACT,0CAA0C;gBAC1C,QAAQ;gBACR,4DAA4D;gBAC5D,qEAAqE;gBACrE,8HAA8H;gBAC9H,iFAAiF;gBACjF,6EAA6E;gBAC7E,eAAe;gBACf,iFAAiF;gBACjF,gFAAgF;gBAChF,4FAA4F;gBAC5F,2GAA2G;gBAC3G,4FAA4F;gBAC5F,8GAA8G;YAChH,IAAI,EAAE;gBACJ,EAAE,EAAE,CAAC;qBACF,IAAI,CAAC,CAAC,MAAM,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,CAAC,CAAC;qBAC1D,QAAQ,CAAC,kBAAkB,CAAC;gBAC/B,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,wCAAwC,CAAC;gBAC9E,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,oDAAoD,CAAC;gBAC1F,KAAK,EAAE,CAAC;qBACL,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;qBACjB,QAAQ,EAAE;qBACV,QAAQ,CACP,mFAAmF,CACpF;aACJ;YACD,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAmB,EAAE;gBAChD,MAAM,MAAM,GAAG,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;gBACrD,MAAM,EAAE,GAAG,IAAI,CAAC,EAAY,CAAC;gBAC7B,MAAM,UAAU,GAA2B;oBACzC,IAAI,EAAE,MAAM;oBACZ,OAAO,EAAE,cAAc;oBACvB,UAAU,EAAE,YAAY;oBACxB,OAAO,EAAE,oBAAoB;oBAC7B,IAAI,EAAE,kBAAkB;iBACzB,CAAC;gBACF,MAAM,MAAM,GAA4B,EAAE,CAAC;gBAC3C,IAAI,IAAI,CAAC,IAAI,KAAK,SAAS;oBAAE,MAAM,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;gBACrD,IAAI,IAAI,CAAC,IAAI,KAAK,SAAS;oBAAE,MAAM,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;gBACrD,IAAI,IAAI,CAAC,KAAK,KAAK,SAAS;oBAAE,MAAM,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;gBACxD,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC,EAAE,MAAM,CAAC,CAAC;gBAC3D,OAAO,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;YAClC,CAAC;SACF;KACF,CAAC;AACJ,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"structure.d.ts","sourceRoot":"","sources":["../../src/tools/structure.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAE1D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAIjD;;;GAGG;AACH,wBAAgB,cAAc,CAAC,GAAG,EAAE,aAAa,GAAG,MAAM,CAAC,MAAM,EAAE,cAAc,CAAC,
|
|
1
|
+
{"version":3,"file":"structure.d.ts","sourceRoot":"","sources":["../../src/tools/structure.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAE1D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAIjD;;;GAGG;AACH,wBAAgB,cAAc,CAAC,GAAG,EAAE,aAAa,GAAG,MAAM,CAAC,MAAM,EAAE,cAAc,CAAC,CAoHjF"}
|
package/dist/tools/structure.js
CHANGED
|
@@ -7,14 +7,29 @@ const z = tool.schema;
|
|
|
7
7
|
export function structureTools(ctx) {
|
|
8
8
|
return {
|
|
9
9
|
aft_transform: {
|
|
10
|
-
description: "Scope-aware structural code transformations with correct indentation.\n" +
|
|
10
|
+
description: "Scope-aware structural code transformations with correct indentation.\n\n" +
|
|
11
11
|
"Ops:\n" +
|
|
12
|
-
"- 'add_member': Insert method/field into class, struct, or impl block.
|
|
13
|
-
"- 'add_derive': Add Rust derive macros to struct/enum.
|
|
14
|
-
"- 'wrap_try_catch': Wrap a TS/JS function body in try/catch.
|
|
15
|
-
"- 'add_decorator': Add Python decorator to function/class.
|
|
16
|
-
"- 'add_struct_tags': Add/update Go struct field tags.
|
|
17
|
-
"
|
|
12
|
+
"- 'add_member': Insert method/field into class, struct, or impl block. Requires 'scope' (container name) and 'code'. Optional 'position'.\n" +
|
|
13
|
+
"- 'add_derive': Add Rust derive macros to a struct/enum. Requires 'target' and 'derives' array. Deduplicates existing derives.\n" +
|
|
14
|
+
"- 'wrap_try_catch': Wrap a TS/JS function body in try/catch. Requires 'target' (function name). Optional 'catch_body'.\n" +
|
|
15
|
+
"- 'add_decorator': Add Python decorator to function/class. Requires 'target' and 'decorator' (without @). Optional 'position'.\n" +
|
|
16
|
+
"- 'add_struct_tags': Add/update Go struct field tags. Requires 'target' (struct name), 'field', 'tag', 'value'.\n\n" +
|
|
17
|
+
"Parameters:\n" +
|
|
18
|
+
"- op (enum, required): 'add_member' | 'add_derive' | 'wrap_try_catch' | 'add_decorator' | 'add_struct_tags'\n" +
|
|
19
|
+
"- file (string, required): Path to the source file\n" +
|
|
20
|
+
"- scope (string, optional): Container name for add_member — the class, struct, or impl block to insert into\n" +
|
|
21
|
+
"- code (string, optional): Member code to insert for add_member\n" +
|
|
22
|
+
"- position (string, optional): Insertion point for add_member/add_decorator — 'first', 'last' (default), 'before:name', 'after:name'\n" +
|
|
23
|
+
"- target (string, optional): Target symbol name — for add_derive (struct/enum), wrap_try_catch (function), add_decorator (function/class), add_struct_tags (struct)\n" +
|
|
24
|
+
"- derives (string[], optional): Derive macro names for add_derive (e.g. ['Debug', 'Clone'])\n" +
|
|
25
|
+
"- catch_body (string, optional): Custom catch block body for wrap_try_catch (default: 'throw error;')\n" +
|
|
26
|
+
"- decorator (string, optional): Decorator name without @ for add_decorator (e.g. 'staticmethod', 'property')\n" +
|
|
27
|
+
"- field (string, optional): Struct field name for add_struct_tags\n" +
|
|
28
|
+
"- tag (string, optional): Tag key for add_struct_tags (e.g. 'json', 'yaml', 'db')\n" +
|
|
29
|
+
"- value (string, optional): Tag value for add_struct_tags (e.g. 'user_name,omitempty')\n" +
|
|
30
|
+
"- dry_run (boolean, optional): Preview changes without modifying the file\n" +
|
|
31
|
+
"- validate (enum, optional): Validation level — 'syntax' (default) or 'full'\n\n" +
|
|
32
|
+
"Returns: { formatted (string), validation_errors (string[]) }",
|
|
18
33
|
args: {
|
|
19
34
|
op: z
|
|
20
35
|
.enum(["add_member", "add_derive", "wrap_try_catch", "add_decorator", "add_struct_tags"])
|