@cortexkit/aft-opencode 0.3.0 → 0.4.1

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 (70) hide show
  1. package/dist/bridge.d.ts +8 -0
  2. package/dist/bridge.d.ts.map +1 -1
  3. package/dist/bridge.js +45 -2
  4. package/dist/bridge.js.map +1 -1
  5. package/dist/config.d.ts +1 -0
  6. package/dist/config.d.ts.map +1 -1
  7. package/dist/config.js +11 -0
  8. package/dist/config.js.map +1 -1
  9. package/dist/downloader.d.ts.map +1 -1
  10. package/dist/downloader.js +51 -15
  11. package/dist/downloader.js.map +1 -1
  12. package/dist/index.d.ts.map +1 -1
  13. package/dist/index.js +56 -16
  14. package/dist/index.js.map +1 -1
  15. package/dist/normalize-schemas.d.ts +16 -0
  16. package/dist/normalize-schemas.d.ts.map +1 -0
  17. package/dist/normalize-schemas.js +45 -0
  18. package/dist/normalize-schemas.js.map +1 -0
  19. package/dist/patch-parser.d.ts.map +1 -1
  20. package/dist/patch-parser.js +10 -0
  21. package/dist/patch-parser.js.map +1 -1
  22. package/dist/platform.d.ts +21 -0
  23. package/dist/platform.d.ts.map +1 -0
  24. package/dist/platform.js +31 -0
  25. package/dist/platform.js.map +1 -0
  26. package/dist/pool.d.ts.map +1 -1
  27. package/dist/pool.js +14 -5
  28. package/dist/pool.js.map +1 -1
  29. package/dist/resolver.d.ts.map +1 -1
  30. package/dist/resolver.js +6 -9
  31. package/dist/resolver.js.map +1 -1
  32. package/dist/tools/ast.d.ts.map +1 -1
  33. package/dist/tools/ast.js +52 -59
  34. package/dist/tools/ast.js.map +1 -1
  35. package/dist/tools/hoisted.d.ts +1 -1
  36. package/dist/tools/hoisted.d.ts.map +1 -1
  37. package/dist/tools/hoisted.js +333 -230
  38. package/dist/tools/hoisted.js.map +1 -1
  39. package/dist/tools/imports.d.ts.map +1 -1
  40. package/dist/tools/imports.js +40 -30
  41. package/dist/tools/imports.js.map +1 -1
  42. package/dist/tools/lsp.d.ts +1 -2
  43. package/dist/tools/lsp.d.ts.map +1 -1
  44. package/dist/tools/lsp.js +31 -13
  45. package/dist/tools/lsp.js.map +1 -1
  46. package/dist/tools/navigation.d.ts.map +1 -1
  47. package/dist/tools/navigation.js +23 -14
  48. package/dist/tools/navigation.js.map +1 -1
  49. package/dist/tools/permissions.d.ts +8 -0
  50. package/dist/tools/permissions.d.ts.map +1 -0
  51. package/dist/tools/permissions.js +50 -0
  52. package/dist/tools/permissions.js.map +1 -0
  53. package/dist/tools/reading.d.ts +1 -2
  54. package/dist/tools/reading.d.ts.map +1 -1
  55. package/dist/tools/reading.js +191 -12
  56. package/dist/tools/reading.js.map +1 -1
  57. package/dist/tools/refactoring.d.ts.map +1 -1
  58. package/dist/tools/refactoring.js +72 -34
  59. package/dist/tools/refactoring.js.map +1 -1
  60. package/dist/tools/safety.d.ts.map +1 -1
  61. package/dist/tools/safety.js +34 -12
  62. package/dist/tools/safety.js.map +1 -1
  63. package/dist/tools/structure.d.ts.map +1 -1
  64. package/dist/tools/structure.js +66 -31
  65. package/dist/tools/structure.js.map +1 -1
  66. package/package.json +7 -7
  67. package/dist/tools/editing.d.ts +0 -8
  68. package/dist/tools/editing.d.ts.map +0 -1
  69. package/dist/tools/editing.js +0 -8
  70. package/dist/tools/editing.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"hoisted.js","sourceRoot":"","sources":["../../src/tools/hoisted.ts"],"names":[],"mappings":"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"}
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,CAkE9E"}
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;AAUjD;;GAEG;AACH,wBAAgB,WAAW,CAAC,GAAG,EAAE,aAAa,GAAG,MAAM,CAAC,MAAM,EAAE,cAAc,CAAC,CAiF9E"}
@@ -1,4 +1,5 @@
1
1
  import { tool } from "@opencode-ai/plugin";
2
+ import { askEditPermission, permissionDeniedResponse, resolveAbsolutePath, resolveRelativePattern, } from "./permissions.js";
2
3
  const z = tool.schema;
3
4
  /**
4
5
  * Tool definitions for import management commands: add_import, remove_import, organize_imports.
@@ -8,23 +9,19 @@ export function importTools(ctx) {
8
9
  aft_import: {
9
10
  description: "Language-aware import management. Supports TS, JS, TSX, Python, Rust, and Go.\n\n" +
10
11
  "Ops:\n" +
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[]) }",
12
+ "- 'add': Add an import. Auto-detects group (stdlib/external/internal), deduplicates. Requires 'module'. Optional 'names', 'defaultImport', 'typeOnly'.\n" +
13
+ "- 'remove': Remove an import or a specific named import. Requires 'module'. Provide 'removeName' to remove a single named import; omit to remove the entire import.\n" +
14
+ "- 'organize': Re-sort and re-group all imports by language convention, deduplicate. Requires only 'filePath'.\n\n" +
15
+ "Returns:\n" +
16
+ "- Dry run (any op): { ok, dry_run, diff, syntax_valid? }\n" +
17
+ "- add: { file, added, module, group?, already_present?, formatted?, syntax_valid?, format_skipped_reason?, validation_errors?, validate_skipped_reason?, backup_id?, lsp_diagnostics? }\n" +
18
+ "- remove: { file, removed, module, name?, formatted, syntax_valid?, format_skipped_reason?, validation_errors?, validate_skipped_reason?, backup_id?, lsp_diagnostics? }\n" +
19
+ "- organize: { file, groups: [{ name, count }], removed_duplicates, formatted?, syntax_valid?, format_skipped_reason?, validation_errors?, validate_skipped_reason?, backup_id?, lsp_diagnostics? }",
20
+ // Parameters are Zod-optional because different ops need different subsets.
21
+ // Runtime guards below validate per-op requirements and give clear errors.
25
22
  args: {
26
23
  op: z.enum(["add", "remove", "organize"]).describe("Import operation"),
27
- file: z.string().describe("Path to the file"),
24
+ filePath: z.string().describe("Path to the file (absolute or relative to project root)"),
28
25
  module: z
29
26
  .string()
30
27
  .optional()
@@ -33,41 +30,54 @@ export function importTools(ctx) {
33
30
  .array(z.string())
34
31
  .optional()
35
32
  .describe("Named imports to add (e.g. ['useState', 'useEffect'])"),
36
- default_import: z.string().optional().describe("Default import name (e.g. 'React')"),
37
- type_only: z.boolean().optional().describe("Type-only import (TS only, default: false)"),
38
- name: z
33
+ defaultImport: z.string().optional().describe("Default import name (e.g. 'React')"),
34
+ typeOnly: z.boolean().optional().describe("Type-only import (TS only, default: false)"),
35
+ removeName: z
39
36
  .string()
40
37
  .optional()
41
- .describe("Specific named import to remove (for remove op; omit to remove entire import)"),
38
+ .describe("Named import to remove for 'remove' op; omit to remove entire import"),
42
39
  validate: z
43
40
  .enum(["syntax", "full"])
44
41
  .optional()
45
- .describe("Validation level: 'syntax' (default) or 'full'"),
46
- dry_run: z.boolean().optional().describe("Preview without modifying the file"),
42
+ .describe("Validation level: 'syntax' (default) or 'full'. Syntax = tree-sitter parse check only. Full = also runs LSP type-checking (slower, catches more errors)"),
43
+ dryRun: z
44
+ .boolean()
45
+ .optional()
46
+ .describe("Preview without modifying the file (default: false)"),
47
47
  },
48
48
  execute: async (args, context) => {
49
49
  const bridge = ctx.pool.getBridge(context.directory);
50
50
  const op = args.op;
51
+ const isDryRun = args.dryRun === true;
52
+ if ((op === "add" || op === "remove") && typeof args.module !== "string") {
53
+ throw new Error(`'module' is required for '${op}' op`);
54
+ }
55
+ if (!isDryRun) {
56
+ const filePath = resolveAbsolutePath(context, args.filePath);
57
+ const permissionError = await askEditPermission(context, [resolveRelativePattern(context, args.filePath)], { filepath: filePath });
58
+ if (permissionError)
59
+ return permissionDeniedResponse(permissionError);
60
+ }
51
61
  const commandMap = {
52
62
  add: "add_import",
53
63
  remove: "remove_import",
54
64
  organize: "organize_imports",
55
65
  };
56
- const params = { file: args.file };
66
+ const params = { file: args.filePath };
57
67
  if (args.module !== undefined)
58
68
  params.module = args.module;
59
69
  if (args.names !== undefined)
60
70
  params.names = args.names;
61
- if (args.default_import !== undefined)
62
- params.default_import = args.default_import;
63
- if (args.type_only !== undefined)
64
- params.type_only = args.type_only;
65
- if (args.name !== undefined)
66
- params.name = args.name;
71
+ if (args.defaultImport !== undefined)
72
+ params.default_import = args.defaultImport;
73
+ if (args.typeOnly !== undefined)
74
+ params.type_only = args.typeOnly;
75
+ if (args.removeName !== undefined)
76
+ params.name = args.removeName;
67
77
  if (args.validate !== undefined)
68
78
  params.validate = args.validate;
69
- if (args.dry_run !== undefined)
70
- params.dry_run = args.dry_run;
79
+ if (args.dryRun !== undefined)
80
+ params.dry_run = args.dryRun;
71
81
  const response = await bridge.send(commandMap[op], params);
72
82
  return JSON.stringify(response);
73
83
  },
@@ -1 +1 @@
1
- {"version":3,"file":"imports.js","sourceRoot":"","sources":["../../src/tools/imports.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"imports.js","sourceRoot":"","sources":["../../src/tools/imports.ts"],"names":[],"mappings":"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"}
@@ -1,8 +1,7 @@
1
1
  import type { ToolDefinition } from "@opencode-ai/plugin";
2
2
  import type { PluginContext } from "../types.js";
3
3
  /**
4
- * Tool definitions for LSP commands: diagnostics, hover, goto_definition,
5
- * find_references, prepare_rename, rename.
4
+ * Tool definitions for LSP commands: diagnostics.
6
5
  */
7
6
  export declare function lspTools(ctx: PluginContext): Record<string, ToolDefinition>;
8
7
  //# sourceMappingURL=lsp.d.ts.map
@@ -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,CA+B3E"}
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;;GAEG;AACH,wBAAgB,QAAQ,CAAC,GAAG,EAAE,aAAa,GAAG,MAAM,CAAC,MAAM,EAAE,cAAc,CAAC,CAwD3E"}
package/dist/tools/lsp.js CHANGED
@@ -1,29 +1,47 @@
1
1
  import { tool } from "@opencode-ai/plugin";
2
2
  const z = tool.schema;
3
3
  /**
4
- * Tool definitions for LSP commands: diagnostics, hover, goto_definition,
5
- * find_references, prepare_rename, rename.
4
+ * Tool definitions for LSP commands: diagnostics.
6
5
  */
7
6
  export function lspTools(ctx) {
8
7
  const diagnosticsTool = {
9
8
  description: "Get errors, warnings, hints from language server. " +
10
9
  "Returns diagnostics from LSP servers (typescript-language-server, pyright, rust-analyzer, gopls). " +
11
10
  "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 }.",
11
+ "Returns: { diagnostics: Array<{ file, line, column, end_line, end_column, severity, message, code }>, total: number, files_with_errors: number }.",
18
12
  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(),
13
+ filePath: z
14
+ .string()
15
+ .optional()
16
+ .describe("Path to file to get diagnostics for. Provide 'filePath' for a single file, 'directory' for all files under a path, or omit both for all tracked files"),
17
+ directory: z
18
+ .string()
19
+ .optional()
20
+ .describe("Path to directory to get diagnostics for all files under it. Mutually exclusive with 'filePath'"),
21
+ severity: z
22
+ .enum(["error", "warning", "information", "hint", "all"])
23
+ .optional()
24
+ .describe("Filter by severity — 'error', 'warning', 'information', 'hint', 'all' (default: 'all')"),
25
+ waitMs: z
26
+ .number()
27
+ .optional()
28
+ .describe("Wait N ms for fresh diagnostics before returning (max 10000, default: 0). Use after edits to let the server re-analyze."),
23
29
  },
24
30
  execute: async (args, context) => {
25
31
  const bridge = ctx.pool.getBridge(context.directory);
26
- const result = await bridge.send("lsp_diagnostics", args);
32
+ if (args.filePath !== undefined && args.directory !== undefined) {
33
+ throw new Error("'filePath' and 'directory' are mutually exclusive — provide one or neither");
34
+ }
35
+ const params = {};
36
+ if (args.filePath !== undefined)
37
+ params.file = args.filePath;
38
+ if (args.directory !== undefined)
39
+ params.directory = args.directory;
40
+ if (args.severity !== undefined)
41
+ params.severity = args.severity;
42
+ if (args.waitMs !== undefined)
43
+ params.wait_ms = args.waitMs;
44
+ const result = await bridge.send("lsp_diagnostics", params);
27
45
  return JSON.stringify(result);
28
46
  },
29
47
  };
@@ -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,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
+ {"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;;GAEG;AACH,MAAM,UAAU,QAAQ,CAAC,GAAkB;IACzC,MAAM,eAAe,GAAmB;QACtC,WAAW,EACT,oDAAoD;YACpD,oGAAoG;YACpG,wDAAwD;YACxD,mJAAmJ;QACrJ,IAAI,EAAE;YACJ,QAAQ,EAAE,CAAC;iBACR,MAAM,EAAE;iBACR,QAAQ,EAAE;iBACV,QAAQ,CACP,uJAAuJ,CACxJ;YACH,SAAS,EAAE,CAAC;iBACT,MAAM,EAAE;iBACR,QAAQ,EAAE;iBACV,QAAQ,CACP,iGAAiG,CAClG;YACH,QAAQ,EAAE,CAAC;iBACR,IAAI,CAAC,CAAC,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC;iBACxD,QAAQ,EAAE;iBACV,QAAQ,CACP,wFAAwF,CACzF;YACH,MAAM,EAAE,CAAC;iBACN,MAAM,EAAE;iBACR,QAAQ,EAAE;iBACV,QAAQ,CACP,yHAAyH,CAC1H;SACJ;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,IAAI,IAAI,CAAC,QAAQ,KAAK,SAAS,IAAI,IAAI,CAAC,SAAS,KAAK,SAAS,EAAE,CAAC;gBAChE,MAAM,IAAI,KAAK,CACb,4EAA4E,CAC7E,CAAC;YACJ,CAAC;YACD,MAAM,MAAM,GAA4B,EAAE,CAAC;YAC3C,IAAI,IAAI,CAAC,QAAQ,KAAK,SAAS;gBAAE,MAAM,CAAC,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC;YAC7D,IAAI,IAAI,CAAC,SAAS,KAAK,SAAS;gBAAE,MAAM,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC;YACpE,IAAI,IAAI,CAAC,QAAQ,KAAK,SAAS;gBAAE,MAAM,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;YACjE,IAAI,IAAI,CAAC,MAAM,KAAK,SAAS;gBAAE,MAAM,CAAC,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC;YAC5D,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,iBAAiB,EAAE,MAAM,CAAC,CAAC;YAC5D,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,CA8ClF"}
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,CAyDlF"}
@@ -7,43 +7,52 @@ export function navigationTools(ctx) {
7
7
  return {
8
8
  aft_navigate: {
9
9
  description: "Navigate code structure across files using call graph analysis.\n\n" +
10
- "Modes:\n" +
10
+ "Ops:\n" +
11
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. 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",
15
+ "- 'trace_data': Follow a value through variable assignments and function parameters across files. Requires 'symbol' (scope to trace from) and 'expression'.\n\n" +
16
+ "All ops require both 'filePath' and 'symbol'. The 'expression' parameter is additionally required for trace_data.\n\n" +
17
+ "Returns:\n" +
18
+ "- call_tree: { name, file, line, signature, resolved, children }\n" +
19
+ "- callers: { symbol, file, callers, total_callers, scanned_files }\n" +
20
+ "- trace_to: { target_symbol, target_file, paths, total_paths, entry_points_found, max_depth_reached, truncated_paths }\n" +
21
+ "- impact: { symbol, file, signature, parameters, total_affected, affected_files, callers }\n" +
22
+ "- trace_data: { expression, origin_file, origin_symbol, hops, depth_limited }",
23
+ // Parameters are Zod-optional because different ops need different subsets.
24
+ // Runtime guards below validate per-op requirements and give clear errors.
22
25
  args: {
23
- mode: z
26
+ op: z
24
27
  .enum(["call_tree", "callers", "trace_to", "impact", "trace_data"])
25
- .describe("Navigation mode"),
26
- file: z.string().describe("Path to the source file containing the symbol"),
28
+ .describe("Navigation operation"),
29
+ filePath: z
30
+ .string()
31
+ .describe("Path to the source file containing the symbol (absolute or relative to project root)"),
27
32
  symbol: z.string().describe("Name of the symbol to analyze"),
28
33
  depth: z
29
34
  .number()
35
+ .optional()
30
36
  .describe("Max traversal depth (default: call_tree=5, callers=1, trace_to=10, impact=5, trace_data=5)"),
31
37
  expression: z
32
38
  .string()
33
39
  .optional()
34
- .describe("Expression to track through data flow (required for trace_data mode)"),
40
+ .describe("Expression to track through data flow (required for trace_data op)"),
35
41
  },
36
42
  execute: async (args, context) => {
37
43
  const bridge = ctx.pool.getBridge(context.directory);
38
44
  const params = {
39
- file: args.file,
45
+ file: args.filePath,
40
46
  symbol: args.symbol,
41
47
  };
42
48
  if (args.depth !== undefined)
43
49
  params.depth = Number(args.depth);
44
50
  if (args.expression !== undefined)
45
51
  params.expression = args.expression;
46
- const response = await bridge.send(args.mode, params);
52
+ if (args.op === "trace_data" && typeof args.expression !== "string") {
53
+ throw new Error("'expression' is required for 'trace_data' op");
54
+ }
55
+ const response = await bridge.send(args.op, params);
47
56
  return JSON.stringify(response);
48
57
  },
49
58
  },
@@ -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,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"}
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,QAAQ;gBACR,6HAA6H;gBAC7H,yGAAyG;gBACzG,wJAAwJ;gBACxJ,yHAAyH;gBACzH,iKAAiK;gBACjK,uHAAuH;gBACvH,YAAY;gBACZ,oEAAoE;gBACpE,sEAAsE;gBACtE,0HAA0H;gBAC1H,8FAA8F;gBAC9F,+EAA+E;YACjF,4EAA4E;YAC5E,2EAA2E;YAC3E,IAAI,EAAE;gBACJ,EAAE,EAAE,CAAC;qBACF,IAAI,CAAC,CAAC,WAAW,EAAE,SAAS,EAAE,UAAU,EAAE,QAAQ,EAAE,YAAY,CAAC,CAAC;qBAClE,QAAQ,CAAC,sBAAsB,CAAC;gBACnC,QAAQ,EAAE,CAAC;qBACR,MAAM,EAAE;qBACR,QAAQ,CACP,sFAAsF,CACvF;gBACH,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,+BAA+B,CAAC;gBAC5D,KAAK,EAAE,CAAC;qBACL,MAAM,EAAE;qBACR,QAAQ,EAAE;qBACV,QAAQ,CACP,4FAA4F,CAC7F;gBACH,UAAU,EAAE,CAAC;qBACV,MAAM,EAAE;qBACR,QAAQ,EAAE;qBACV,QAAQ,CAAC,oEAAoE,CAAC;aAClF;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,QAAQ;oBACnB,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,IAAI,IAAI,CAAC,EAAE,KAAK,YAAY,IAAI,OAAO,IAAI,CAAC,UAAU,KAAK,QAAQ,EAAE,CAAC;oBACpE,MAAM,IAAI,KAAK,CAAC,8CAA8C,CAAC,CAAC;gBAClE,CAAC;gBACD,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,EAAY,EAAE,MAAM,CAAC,CAAC;gBAC9D,OAAO,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;YAClC,CAAC;SACF;KACF,CAAC;AACJ,CAAC"}
@@ -0,0 +1,8 @@
1
+ import type { ToolContext } from "@opencode-ai/plugin";
2
+ export declare function resolveAbsolutePath(context: ToolContext, target: string): string;
3
+ export declare function resolveRelativePattern(context: ToolContext, target: string): string;
4
+ export declare function resolveRelativePatterns(context: ToolContext, targets: string[]): string[];
5
+ export declare function workspacePattern(_context: ToolContext): string;
6
+ export declare function askEditPermission(context: ToolContext, patterns: string[], metadata?: Record<string, unknown>): Promise<string | undefined>;
7
+ export declare function permissionDeniedResponse(message: string): string;
8
+ //# sourceMappingURL=permissions.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"permissions.d.ts","sourceRoot":"","sources":["../../src/tools/permissions.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAEvD,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,CAEhF;AAED,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,CAEnF;AAED,wBAAgB,uBAAuB,CAAC,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,MAAM,EAAE,CAazF;AAED,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,WAAW,GAAG,MAAM,CAE9D;AAED,wBAAsB,iBAAiB,CACrC,OAAO,EAAE,WAAW,EACpB,QAAQ,EAAE,MAAM,EAAE,EAClB,QAAQ,GAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAM,GACrC,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAe7B;AAED,wBAAgB,wBAAwB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAOhE"}
@@ -0,0 +1,50 @@
1
+ import * as path from "node:path";
2
+ export function resolveAbsolutePath(context, target) {
3
+ return path.isAbsolute(target) ? target : path.resolve(context.directory, target);
4
+ }
5
+ export function resolveRelativePattern(context, target) {
6
+ return path.relative(context.worktree, resolveAbsolutePath(context, target)) || ".";
7
+ }
8
+ export function resolveRelativePatterns(context, targets) {
9
+ const seen = new Set();
10
+ const patterns = [];
11
+ for (const target of targets) {
12
+ if (!target)
13
+ continue;
14
+ const pattern = resolveRelativePattern(context, target);
15
+ if (seen.has(pattern))
16
+ continue;
17
+ seen.add(pattern);
18
+ patterns.push(pattern);
19
+ }
20
+ return patterns;
21
+ }
22
+ export function workspacePattern(_context) {
23
+ return ".";
24
+ }
25
+ export async function askEditPermission(context, patterns, metadata = {}) {
26
+ try {
27
+ await context.ask({
28
+ permission: "edit",
29
+ patterns: patterns.length > 0 ? patterns : [workspacePattern(context)],
30
+ always: ["*"],
31
+ metadata,
32
+ });
33
+ return undefined;
34
+ }
35
+ catch (error) {
36
+ if (error instanceof Error && error.message) {
37
+ return error.message;
38
+ }
39
+ return "Permission denied.";
40
+ }
41
+ }
42
+ export function permissionDeniedResponse(message) {
43
+ return JSON.stringify({
44
+ success: false,
45
+ code: "permission_denied",
46
+ message,
47
+ error: message,
48
+ });
49
+ }
50
+ //# sourceMappingURL=permissions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"permissions.js","sourceRoot":"","sources":["../../src/tools/permissions.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAGlC,MAAM,UAAU,mBAAmB,CAAC,OAAoB,EAAE,MAAc;IACtE,OAAO,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;AACpF,CAAC;AAED,MAAM,UAAU,sBAAsB,CAAC,OAAoB,EAAE,MAAc;IACzE,OAAO,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,QAAQ,EAAE,mBAAmB,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,IAAI,GAAG,CAAC;AACtF,CAAC;AAED,MAAM,UAAU,uBAAuB,CAAC,OAAoB,EAAE,OAAiB;IAC7E,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;IAC/B,MAAM,QAAQ,GAAa,EAAE,CAAC;IAE9B,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;QAC7B,IAAI,CAAC,MAAM;YAAE,SAAS;QACtB,MAAM,OAAO,GAAG,sBAAsB,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QACxD,IAAI,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC;YAAE,SAAS;QAChC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QAClB,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACzB,CAAC;IAED,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,QAAqB;IACpD,OAAO,GAAG,CAAC;AACb,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,iBAAiB,CACrC,OAAoB,EACpB,QAAkB,EAClB,WAAoC,EAAE;IAEtC,IAAI,CAAC;QACH,MAAM,OAAO,CAAC,GAAG,CAAC;YAChB,UAAU,EAAE,MAAM;YAClB,QAAQ,EAAE,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC;YACtE,MAAM,EAAE,CAAC,GAAG,CAAC;YACb,QAAQ;SACT,CAAC,CAAC;QACH,OAAO,SAAS,CAAC;IACnB,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAI,KAAK,YAAY,KAAK,IAAI,KAAK,CAAC,OAAO,EAAE,CAAC;YAC5C,OAAO,KAAK,CAAC,OAAO,CAAC;QACvB,CAAC;QACD,OAAO,oBAAoB,CAAC;IAC9B,CAAC;AACH,CAAC;AAED,MAAM,UAAU,wBAAwB,CAAC,OAAe;IACtD,OAAO,IAAI,CAAC,SAAS,CAAC;QACpB,OAAO,EAAE,KAAK;QACd,IAAI,EAAE,mBAAmB;QACzB,OAAO;QACP,KAAK,EAAE,OAAO;KACf,CAAC,CAAC;AACL,CAAC"}
@@ -1,8 +1,7 @@
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 only.
5
- * The zoom/read functionality has been merged into the hoisted `read` tool.
4
+ * Tool definitions for code reading commands: outline + zoom.
6
5
  */
7
6
  export declare function readingTools(ctx: PluginContext): Record<string, ToolDefinition>;
8
7
  //# 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;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"}
1
+ {"version":3,"file":"reading.d.ts","sourceRoot":"","sources":["../../src/tools/reading.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAE1D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AA0CjD;;GAEG;AACH,wBAAgB,YAAY,CAAC,GAAG,EAAE,aAAa,GAAG,MAAM,CAAC,MAAM,EAAE,cAAc,CAAC,CAqI/E"}