claude-ide-bridge 2.25.23 → 2.25.25

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.
@@ -178,7 +178,10 @@ export declare class ExtensionClient {
178
178
  isDirty(file: string): Promise<boolean | null>;
179
179
  getFileContent(file: string): Promise<unknown>;
180
180
  openFile(file: string, line?: number): Promise<boolean>;
181
- saveFile(file: string): Promise<boolean>;
181
+ saveFile(file: string): Promise<{
182
+ saved: boolean;
183
+ error?: string;
184
+ } | null>;
182
185
  closeTab(file: string): Promise<{
183
186
  success: boolean;
184
187
  promptedToSave?: boolean;
@@ -697,8 +697,23 @@ export class ExtensionClient {
697
697
  return result === true;
698
698
  }
699
699
  async saveFile(file) {
700
+ // Extension handler returns `true` on successful save,
701
+ // `{ success: false, error: "..." }` on error paths.
702
+ // Normalize both shapes so the caller can distinguish "saved ok" from
703
+ // "not saved + here is why" from "no response".
700
704
  const result = await this.requestOrNull("extension/saveFile", { file });
701
- return result === true;
705
+ if (result === true)
706
+ return { saved: true };
707
+ if (result === null)
708
+ return null;
709
+ if (typeof result === "object") {
710
+ const r = result;
711
+ return {
712
+ saved: r.success === true,
713
+ ...(typeof r.error === "string" && { error: r.error }),
714
+ };
715
+ }
716
+ return null;
702
717
  }
703
718
  async closeTab(file) {
704
719
  // Extension returns { success: true, promptedToSave } on close,
@@ -1 +1 @@
1
- {"version":3,"file":"extensionClient.js","sourceRoot":"","sources":["../src/extensionClient.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"extensionClient.js","sourceRoot":"","sources":["../src/extensionClient.ts"],"names":[],"mappings":"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"}
@@ -1,12 +1,13 @@
1
1
  import type { AutomationHooks } from "../automation.js";
2
2
  import { ClaudeOrchestrator } from "../claudeOrchestrator.js";
3
3
  import type { ExtensionClient } from "../extensionClient.js";
4
+ import type { ProbeResults } from "../probe.js";
4
5
  export interface DisconnectInfo {
5
6
  at: string | null;
6
7
  code: number | null;
7
8
  reason: string | null;
8
9
  }
9
- export declare function createBridgeStatusTool(extensionClient: ExtensionClient, sessions?: Map<string, unknown>, orchestrator?: ClaudeOrchestrator | null, automationHooks?: AutomationHooks | null, getDisconnectInfo?: () => DisconnectInfo): {
10
+ export declare function createBridgeStatusTool(extensionClient: ExtensionClient, probes: ProbeResults, sessions?: Map<string, unknown>, orchestrator?: ClaudeOrchestrator | null, automationHooks?: AutomationHooks | null, getDisconnectInfo?: () => DisconnectInfo): {
10
11
  schema: {
11
12
  name: string;
12
13
  description: string;
@@ -83,6 +84,21 @@ export declare function createBridgeStatusTool(extensionClient: ExtensionClient,
83
84
  };
84
85
  required: string[];
85
86
  };
87
+ toolAvailability: {
88
+ type: string;
89
+ additionalProperties: {
90
+ type: string;
91
+ properties: {
92
+ available: {
93
+ type: string;
94
+ };
95
+ reason: {
96
+ type: string;
97
+ };
98
+ };
99
+ required: string[];
100
+ };
101
+ };
86
102
  };
87
103
  required: string[];
88
104
  };
@@ -1,7 +1,37 @@
1
1
  import { ClaudeOrchestrator } from "../claudeOrchestrator.js";
2
2
  import { successStructured } from "./utils.js";
3
3
  const startTime = Date.now();
4
- export function createBridgeStatusTool(extensionClient, sessions, orchestrator, automationHooks, getDisconnectInfo) {
4
+ /**
5
+ * Table of known tools with their availability requirements. Populated manually
6
+ * from src/tools/index.ts registration — a drift-guard test that walks the
7
+ * registry is a follow-up. Tools NOT in this table are assumed always available
8
+ * (pure-bridge tools like gitCommit that don't depend on probes or the extension).
9
+ *
10
+ * Used by the toolAvailability field in getBridgeStatus to answer
11
+ * "why can't Claude call X?" in a single call.
12
+ */
13
+ const TOOL_AVAILABILITY_TABLE = {
14
+ // Extension-required tools (schema.extensionRequired: true)
15
+ findImplementations: { extensionRequired: true },
16
+ getHoverAtCursor: { extensionRequired: true },
17
+ getTypeHierarchy: { extensionRequired: true },
18
+ getWorkspaceSettings: { extensionRequired: true },
19
+ setWorkspaceSetting: { extensionRequired: true },
20
+ setEditorDecorations: { extensionRequired: true },
21
+ clearEditorDecorations: { extensionRequired: true },
22
+ getSemanticTokens: { extensionRequired: true },
23
+ getCodeLens: { extensionRequired: true },
24
+ // Probe-gated CLI/formatter tools (extension path also works when connected)
25
+ formatDocument: { probe: "prettier" },
26
+ runTests: { probe: "vitest" },
27
+ getGitStatus: { probe: "git" },
28
+ getGitDiff: { probe: "git" },
29
+ getGitLog: { probe: "git" },
30
+ githubListPRs: { probe: "gh" },
31
+ githubCreatePR: { probe: "gh" },
32
+ githubViewPR: { probe: "gh" },
33
+ };
34
+ export function createBridgeStatusTool(extensionClient, probes, sessions, orchestrator, automationHooks, getDisconnectInfo) {
5
35
  return {
6
36
  schema: {
7
37
  name: "getBridgeStatus",
@@ -45,6 +75,17 @@ export function createBridgeStatusTool(extensionClient, sessions, orchestrator,
45
75
  },
46
76
  required: ["at", "code", "reason"],
47
77
  },
78
+ toolAvailability: {
79
+ type: "object",
80
+ additionalProperties: {
81
+ type: "object",
82
+ properties: {
83
+ available: { type: "boolean" },
84
+ reason: { type: "string" },
85
+ },
86
+ required: ["available"],
87
+ },
88
+ },
48
89
  },
49
90
  required: [
50
91
  "extensionConnected",
@@ -83,6 +124,32 @@ export function createBridgeStatusTool(extensionClient, sessions, orchestrator,
83
124
  baseSuggestedActions.push(`Automation hooks enabled but not wired in settings.json: ${unwired.join(", ")}. ` +
84
125
  `Add CC hook entries calling the bridge notify tools (see CLAUDE.md Automation Policy section).`);
85
126
  }
127
+ // Compute tool availability: answers "why can't Claude call X?" without
128
+ // requiring the caller to try the tool first and parse the error.
129
+ const toolAvailability = {};
130
+ for (const [name, spec] of Object.entries(TOOL_AVAILABILITY_TABLE)) {
131
+ if (spec.extensionRequired && !extensionConnected) {
132
+ toolAvailability[name] = {
133
+ available: false,
134
+ reason: "extension_disconnected",
135
+ };
136
+ }
137
+ else if (spec.extensionRequired && circuitBreaker.suspended) {
138
+ toolAvailability[name] = {
139
+ available: false,
140
+ reason: "circuit_breaker_open",
141
+ };
142
+ }
143
+ else if (spec.probe && !probes[spec.probe]) {
144
+ toolAvailability[name] = {
145
+ available: false,
146
+ reason: `missing_probe:${spec.probe}`,
147
+ };
148
+ }
149
+ else {
150
+ toolAvailability[name] = { available: true };
151
+ }
152
+ }
86
153
  return successStructured({
87
154
  extensionConnected,
88
155
  activeSessions: sessions?.size ?? 1,
@@ -117,6 +184,7 @@ export function createBridgeStatusTool(extensionClient, sessions, orchestrator,
117
184
  ...(getDisconnectInfo && {
118
185
  lastDisconnect: getDisconnectInfo(),
119
186
  }),
187
+ toolAvailability,
120
188
  });
121
189
  },
122
190
  };
@@ -1 +1 @@
1
- {"version":3,"file":"bridgeStatus.js","sourceRoot":"","sources":["../../src/tools/bridgeStatus.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"bridgeStatus.js","sourceRoot":"","sources":["../../src/tools/bridgeStatus.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,80 @@
1
+ /**
2
+ * formatAndSave — composite tool that runs formatDocument and saveDocument
3
+ * in one call. Eliminates the race window between formatting a buffer and
4
+ * persisting it, and cuts the common "format then save" workflow from two
5
+ * tool calls to one.
6
+ *
7
+ * Implementation notes (from v2.25.25 session plan):
8
+ * - formatDocument returns `error({...})` on many failure paths
9
+ * (file-not-found, unsupported extension, non-zero exit). Guard against
10
+ * result.isError BEFORE reading structuredContent, otherwise we crash.
11
+ * - saveDocument may also error. Propagate in the same way.
12
+ * - Both tools take { filePath } as their first arg in identical shape.
13
+ * - This is a composite factory: it takes the already-constructed
14
+ * formatDocument + saveDocument tool instances so their handlers (and
15
+ * therefore their fallback logic) are reused as-is, not duplicated.
16
+ */
17
+ import type { ProgressFn } from "../transport.js";
18
+ import type { createFormatDocumentTool } from "./formatDocument.js";
19
+ import type { createSaveDocumentTool } from "./saveDocument.js";
20
+ type FormatDocumentTool = ReturnType<typeof createFormatDocumentTool>;
21
+ type SaveDocumentTool = ReturnType<typeof createSaveDocumentTool>;
22
+ export declare function createFormatAndSaveTool(deps: {
23
+ formatDocument: FormatDocumentTool;
24
+ saveDocument: SaveDocumentTool;
25
+ }): {
26
+ schema: {
27
+ name: string;
28
+ description: string;
29
+ annotations: {
30
+ destructiveHint: boolean;
31
+ idempotentHint: boolean;
32
+ };
33
+ inputSchema: {
34
+ $schema: string;
35
+ type: "object";
36
+ additionalProperties: false;
37
+ required: string[];
38
+ properties: {
39
+ filePath: {
40
+ type: "string";
41
+ description: string;
42
+ };
43
+ };
44
+ };
45
+ outputSchema: {
46
+ type: "object";
47
+ properties: {
48
+ formatted: {
49
+ type: string;
50
+ };
51
+ changes: {
52
+ type: string;
53
+ };
54
+ saved: {
55
+ type: string;
56
+ };
57
+ source: {
58
+ type: string;
59
+ };
60
+ message: {
61
+ type: string;
62
+ };
63
+ };
64
+ };
65
+ };
66
+ handler(args: Record<string, unknown>, signal?: AbortSignal, progress?: ProgressFn): Promise<{
67
+ content: Array<{
68
+ type: string;
69
+ text: string;
70
+ }>;
71
+ structuredContent: unknown;
72
+ } | {
73
+ content: Array<{
74
+ type: string;
75
+ text: string;
76
+ }>;
77
+ isError: true;
78
+ }>;
79
+ };
80
+ export {};
@@ -0,0 +1,72 @@
1
+ import { error, requireString, successStructured } from "./utils.js";
2
+ export function createFormatAndSaveTool(deps) {
3
+ return {
4
+ schema: {
5
+ name: "formatAndSave",
6
+ description: "Format a file and save it in one call. Runs formatDocument, then saveDocument. " +
7
+ "Eliminates the race window where the on-disk copy lags the formatted buffer. " +
8
+ "Formatter errors are propagated unchanged; save is not attempted on format failure.",
9
+ annotations: { destructiveHint: true, idempotentHint: true },
10
+ inputSchema: {
11
+ $schema: "http://json-schema.org/draft-07/schema#",
12
+ type: "object",
13
+ additionalProperties: false,
14
+ required: ["filePath"],
15
+ properties: {
16
+ filePath: {
17
+ type: "string",
18
+ description: "Path to the file (absolute or workspace-relative)",
19
+ },
20
+ },
21
+ },
22
+ outputSchema: {
23
+ type: "object",
24
+ properties: {
25
+ formatted: { type: "boolean" },
26
+ changes: { type: "string" },
27
+ saved: { type: "boolean" },
28
+ source: { type: "string" },
29
+ message: { type: "string" },
30
+ },
31
+ },
32
+ },
33
+ async handler(args, signal, progress) {
34
+ const filePath = requireString(args, "filePath");
35
+ // Step 1: format — reuse the existing tool's handler so all of its
36
+ // extension/CLI fallback logic is preserved.
37
+ const fmt = await deps.formatDocument.handler({ filePath }, signal, progress);
38
+ if ("isError" in fmt && fmt.isError)
39
+ return fmt;
40
+ const fmtData = fmt
41
+ .structuredContent;
42
+ if (!fmtData || typeof fmtData !== "object") {
43
+ return error("formatDocument returned unexpected shape (no structuredContent)");
44
+ }
45
+ // Step 2: save — reuse the existing tool's handler.
46
+ const save = await deps.saveDocument.handler({ filePath });
47
+ if ("isError" in save && save.isError)
48
+ return save;
49
+ const saveData = save
50
+ .structuredContent;
51
+ if (!saveData || typeof saveData !== "object") {
52
+ return error("saveDocument returned unexpected shape (no structuredContent)");
53
+ }
54
+ return successStructured({
55
+ formatted: fmtData.formatted ?? false,
56
+ changes: fmtData.changes ?? "unknown",
57
+ saved: saveData.saved ?? false,
58
+ source: saveData.source ?? fmtData.source ?? "unknown",
59
+ ...(typeof fmtData.linesBeforeCount === "number" && {
60
+ linesBeforeCount: fmtData.linesBeforeCount,
61
+ }),
62
+ ...(typeof fmtData.linesAfterCount === "number" && {
63
+ linesAfterCount: fmtData.linesAfterCount,
64
+ }),
65
+ ...(typeof saveData.message === "string" && {
66
+ message: saveData.message,
67
+ }),
68
+ });
69
+ },
70
+ };
71
+ }
72
+ //# sourceMappingURL=formatAndSave.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"formatAndSave.js","sourceRoot":"","sources":["../../src/tools/formatAndSave.ts"],"names":[],"mappings":"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"}
@@ -21,6 +21,7 @@ import { createUnwatchFilesTool, createWatchFilesTool } from "./fileWatcher.js";
21
21
  import { createFindFilesTool } from "./findFiles.js";
22
22
  import { createFixAllLintErrorsTool } from "./fixAllLintErrors.js";
23
23
  import { createFoldingRangesTool } from "./foldingRanges.js";
24
+ import { createFormatAndSaveTool } from "./formatAndSave.js";
24
25
  import { createFormatDocumentTool } from "./formatDocument.js";
25
26
  import { createGenerateAPIDocumentationTool } from "./generateAPIDocumentation.js";
26
27
  import { createGenerateTestsTool } from "./generateTests.js";
@@ -56,9 +57,11 @@ import { createGetHandoffNoteTool, createSetHandoffNoteTool, } from "./handoffNo
56
57
  import { createGetHoverAtCursorTool } from "./hoverAtCursor.js";
57
58
  import { createParseHttpFileTool, createSendHttpRequestTool, } from "./httpClient.js";
58
59
  import { createGetInlayHintsTool } from "./inlayHints.js";
60
+ import { createJumpToFirstErrorTool } from "./jumpToFirstError.js";
59
61
  import { createListClaudeTasksTool } from "./listClaudeTasks.js";
60
62
  import { createListTerminalsTool } from "./listTerminals.js";
61
63
  import { createApplyCodeActionTool, createFindImplementationsTool, createFindReferencesTool, createFormatRangeTool, createGetCallHierarchyTool, createGetCodeActionsTool, createGetHoverTool, createGoToDeclarationTool, createGoToDefinitionTool, createGoToTypeDefinitionTool, createPrepareRenameTool, createPreviewCodeActionTool, createRenameSymbolTool, createSearchWorkspaceSymbolsTool, } from "./lsp.js";
64
+ import { createNavigateToSymbolByNameTool } from "./navigateToSymbolByName.js";
62
65
  import { createOpenDiffTool } from "./openDiff.js";
63
66
  import { createOpenFileTool } from "./openFile.js";
64
67
  import { createOpenInBrowserTool } from "./openInBrowser.js";
@@ -164,8 +167,14 @@ export function registerAllTools(transport, config, openedFiles, probes, extensi
164
167
  const workspaceFolders = config.workspaceFolders;
165
168
  const diagnosticsTool = createGetDiagnosticsTool(workspace, probes, extensionClient, config.linters.length > 0 ? config.linters : undefined);
166
169
  const testsTool = createRunTestsTool(workspace, probes, automationHooks ? (r) => automationHooks.handleTestRun(r) : undefined);
170
+ // Dep-injected tools for composite factories.
171
+ // Extract before `tools = [...]` so composite tools can receive them.
172
+ const formatDocumentTool = createFormatDocumentTool(workspace, probes, extensionClient);
173
+ const saveDocumentTool = createSaveDocumentTool(workspace, extensionClient);
174
+ const openFileTool = createOpenFileTool(workspace, config.editorCommand, openedFiles, extensionClient);
175
+ const setEditorDecorationsToolInstance = createSetEditorDecorationsTool(workspace, extensionClient);
167
176
  const tools = [
168
- createOpenFileTool(workspace, config.editorCommand, openedFiles, extensionClient),
177
+ openFileTool,
169
178
  createOpenDiffTool(workspace, config.editorCommand),
170
179
  createOpenInBrowserTool(),
171
180
  createGetOpenEditorsTool(openedFiles, extensionClient, workspace),
@@ -175,7 +184,7 @@ export function registerAllTools(transport, config, openedFiles, probes, extensi
175
184
  createGetLatestSelectionTool(extensionClient),
176
185
  diagnosticsTool,
177
186
  createCheckDocumentDirtyTool(workspace, extensionClient),
178
- createSaveDocumentTool(workspace, extensionClient),
187
+ saveDocumentTool,
179
188
  createCloseTabTool(workspace, extensionClient),
180
189
  createCloseAllDiffTabsTool(),
181
190
  createGetToolCapabilitiesTool(probes, extensionClient, config),
@@ -234,7 +243,7 @@ export function registerAllTools(transport, config, openedFiles, probes, extensi
234
243
  createWatchActivityLogTool(activityLog),
235
244
  ]
236
245
  : []),
237
- createBridgeStatusTool(extensionClient, sessions, orchestrator, automationHooks, getDisconnectInfo),
246
+ createBridgeStatusTool(extensionClient, probes, sessions, orchestrator, automationHooks, getDisconnectInfo),
238
247
  createWatchFilesTool(extensionClient),
239
248
  createUnwatchFilesTool(extensionClient),
240
249
  createListTerminalsTool(extensionClient, terminalPrefix),
@@ -250,7 +259,18 @@ export function registerAllTools(transport, config, openedFiles, probes, extensi
250
259
  createGetBufferContentTool(workspace, extensionClient),
251
260
  createReplaceBlockTool(workspace, extensionClient, fileLock, sessionId),
252
261
  createEditTextTool(workspace, extensionClient, fileLock, sessionId),
253
- createFormatDocumentTool(workspace, probes, extensionClient),
262
+ formatDocumentTool,
263
+ createFormatAndSaveTool({
264
+ formatDocument: formatDocumentTool,
265
+ saveDocument: saveDocumentTool,
266
+ }),
267
+ createJumpToFirstErrorTool({
268
+ getDiagnostics: diagnosticsTool,
269
+ openFile: openFileTool,
270
+ setEditorDecorations: setEditorDecorationsToolInstance,
271
+ extensionClient,
272
+ }),
273
+ createNavigateToSymbolByNameTool(extensionClient),
254
274
  createFixAllLintErrorsTool(workspace, probes, extensionClient),
255
275
  createOrganizeImportsTool(workspace, extensionClient),
256
276
  createWatchDiagnosticsTool(workspace, extensionClient, probes, config.linters.length > 0 ? config.linters : undefined),
@@ -284,7 +304,7 @@ export function registerAllTools(transport, config, openedFiles, probes, extensi
284
304
  createSetDebugBreakpointsTool(workspace, extensionClient),
285
305
  createStartDebuggingTool(extensionClient),
286
306
  createStopDebuggingTool(extensionClient),
287
- createSetEditorDecorationsTool(workspace, extensionClient),
307
+ setEditorDecorationsToolInstance,
288
308
  createClearEditorDecorationsTool(extensionClient),
289
309
  createSetActiveWorkspaceFolderTool(config),
290
310
  createSendHttpRequestTool({
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/tools/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/tools/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,70 @@
1
+ import type { ExtensionClient } from "../extensionClient.js";
2
+ import type { ProgressFn } from "../transport.js";
3
+ import type { createSetEditorDecorationsTool } from "./decorations.js";
4
+ import type { createGetDiagnosticsTool } from "./getDiagnostics.js";
5
+ import type { createOpenFileTool } from "./openFile.js";
6
+ type GetDiagnosticsTool = ReturnType<typeof createGetDiagnosticsTool>;
7
+ type OpenFileTool = ReturnType<typeof createOpenFileTool>;
8
+ type SetEditorDecorationsTool = ReturnType<typeof createSetEditorDecorationsTool>;
9
+ export declare function createJumpToFirstErrorTool(deps: {
10
+ getDiagnostics: GetDiagnosticsTool;
11
+ openFile: OpenFileTool;
12
+ setEditorDecorations?: SetEditorDecorationsTool;
13
+ extensionClient?: ExtensionClient;
14
+ }): {
15
+ schema: {
16
+ name: string;
17
+ description: string;
18
+ annotations: {
19
+ readOnlyHint: boolean;
20
+ idempotentHint: boolean;
21
+ };
22
+ inputSchema: {
23
+ $schema: string;
24
+ type: "object";
25
+ additionalProperties: false;
26
+ properties: {};
27
+ };
28
+ outputSchema: {
29
+ type: "object";
30
+ properties: {
31
+ found: {
32
+ type: string;
33
+ };
34
+ file: {
35
+ type: string;
36
+ };
37
+ line: {
38
+ type: string;
39
+ };
40
+ column: {
41
+ type: string;
42
+ };
43
+ message: {
44
+ type: string;
45
+ };
46
+ rule: {
47
+ type: string;
48
+ };
49
+ decorationApplied: {
50
+ type: string;
51
+ };
52
+ };
53
+ required: string[];
54
+ };
55
+ };
56
+ handler(_args: Record<string, unknown>, signal?: AbortSignal, progress?: ProgressFn): Promise<{
57
+ content: Array<{
58
+ type: string;
59
+ text: string;
60
+ }>;
61
+ structuredContent: unknown;
62
+ } | {
63
+ content: Array<{
64
+ type: string;
65
+ text: string;
66
+ }>;
67
+ isError: true;
68
+ }>;
69
+ };
70
+ export {};
@@ -0,0 +1,126 @@
1
+ /**
2
+ * jumpToFirstError — composite tool that replaces the 3-call pattern of
3
+ * getDiagnostics → openFile → setEditorDecorations with a single call.
4
+ *
5
+ * Most common session-start workflow: "find the first error and take me to it".
6
+ *
7
+ * Implementation notes (from v2.25.25 session plan):
8
+ * - diagnostic.file may be `file://...` (LSP path) OR workspace-relative
9
+ * (CLI linter path). resolveFilePath handles relative but not `file://` —
10
+ * we strip the scheme before calling openFile.
11
+ * - Diagnostic field is `rule`, not `code`. (getDiagnostics outputSchema
12
+ * confirms.)
13
+ * - setEditorDecorations requires top-level `id` + `file` — the shape
14
+ * `{ startLine, style, message }` is only the inner decoration entry.
15
+ * - Guard for `fmt.isError` / `diag.isError` before reading structuredContent;
16
+ * several fix rounds in v2.25.18–24 fixed bugs caused by skipping this.
17
+ */
18
+ import { fileURLToPath } from "node:url";
19
+ import { error, successStructured } from "./utils.js";
20
+ function normalizeFilePath(f) {
21
+ if (f.startsWith("file://")) {
22
+ try {
23
+ return fileURLToPath(f);
24
+ }
25
+ catch {
26
+ return f.slice("file://".length);
27
+ }
28
+ }
29
+ return f;
30
+ }
31
+ export function createJumpToFirstErrorTool(deps) {
32
+ return {
33
+ schema: {
34
+ name: "jumpToFirstError",
35
+ description: "Find the first error in the workspace and jump to it in one call. " +
36
+ "Replaces the 3-call getDiagnostics → openFile → setEditorDecorations pattern. " +
37
+ "Returns { found: false } if the workspace has no errors. When the extension is " +
38
+ "connected, also applies a red decoration at the error line.",
39
+ annotations: { readOnlyHint: false, idempotentHint: true },
40
+ inputSchema: {
41
+ $schema: "http://json-schema.org/draft-07/schema#",
42
+ type: "object",
43
+ additionalProperties: false,
44
+ properties: {},
45
+ },
46
+ outputSchema: {
47
+ type: "object",
48
+ properties: {
49
+ found: { type: "boolean" },
50
+ file: { type: "string" },
51
+ line: { type: "integer" },
52
+ column: { type: "integer" },
53
+ message: { type: "string" },
54
+ rule: { type: "string" },
55
+ decorationApplied: { type: "boolean" },
56
+ },
57
+ required: ["found"],
58
+ },
59
+ },
60
+ async handler(_args, signal, progress) {
61
+ // Step 1: fetch the first error
62
+ const diag = await deps.getDiagnostics.handler({ severity: "error", maxResults: 1 }, signal, progress);
63
+ if ("isError" in diag && diag.isError)
64
+ return diag;
65
+ const diagData = diag
66
+ .structuredContent;
67
+ if (!diagData || typeof diagData !== "object") {
68
+ return error("getDiagnostics returned unexpected shape (no structuredContent)");
69
+ }
70
+ const diagnostics = diagData.diagnostics;
71
+ if (!Array.isArray(diagnostics) || diagnostics.length === 0) {
72
+ return successStructured({ found: false });
73
+ }
74
+ const first = diagnostics[0];
75
+ const rawFile = typeof first.file === "string" ? first.file : undefined;
76
+ if (!rawFile) {
77
+ return error("first diagnostic missing 'file' field — cannot jump to error");
78
+ }
79
+ const filePath = normalizeFilePath(rawFile);
80
+ const line = typeof first.line === "number" ? first.line : 1;
81
+ const column = typeof first.column === "number" ? first.column : 1;
82
+ const message = typeof first.message === "string" ? first.message : "Unknown error";
83
+ const rule = typeof first.rule === "string" ? first.rule : undefined;
84
+ // Step 2: open the file at the error line
85
+ const openResult = await deps.openFile.handler({
86
+ filePath,
87
+ startLine: line,
88
+ });
89
+ if ("isError" in openResult && openResult.isError)
90
+ return openResult;
91
+ // Step 3: decorate the error line (best-effort; extension-only)
92
+ let decorationApplied = false;
93
+ if (deps.setEditorDecorations &&
94
+ deps.extensionClient?.isConnected() === true) {
95
+ try {
96
+ const decoResult = await deps.setEditorDecorations.handler({
97
+ id: "jump-to-first-error",
98
+ file: filePath,
99
+ decorations: [
100
+ {
101
+ startLine: line,
102
+ endLine: typeof first.endLine === "number" ? first.endLine : line,
103
+ style: "error",
104
+ message,
105
+ },
106
+ ],
107
+ });
108
+ decorationApplied = !("isError" in decoResult && decoResult.isError);
109
+ }
110
+ catch {
111
+ // best-effort; decoration failure does not fail the jump
112
+ }
113
+ }
114
+ return successStructured({
115
+ found: true,
116
+ file: filePath,
117
+ line,
118
+ column,
119
+ message,
120
+ ...(rule && { rule }),
121
+ decorationApplied,
122
+ });
123
+ },
124
+ };
125
+ }
126
+ //# sourceMappingURL=jumpToFirstError.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"jumpToFirstError.js","sourceRoot":"","sources":["../../src/tools/jumpToFirstError.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,76 @@
1
+ /**
2
+ * navigateToSymbolByName — composite tool that searches for a symbol by name
3
+ * and jumps to its definition in one call. Replaces the 2-call
4
+ * searchSymbols → goToDefinition dance.
5
+ *
6
+ * Implementation notes (from v2.25.25 session plan + real handler inspection):
7
+ * - Client method is `extensionClient.searchSymbols`, NOT `searchWorkspaceSymbols`.
8
+ * - Second arg is a positional number (`maxResults`), NOT an options object.
9
+ * - Handler FLATTENS the LSP response — `symbols` return { name, kind, file,
10
+ * line, column, containerName } with 1-based line/column and absolute path.
11
+ * (Not nested range.start as the plan review speculated — verified against
12
+ * vscode-extension/src/handlers/lsp.ts:461-473.)
13
+ * - `goToDefinition` returns an ARRAY of locations (not a single one), each
14
+ * with { file, line, column, endLine, endColumn }, or null on no result /
15
+ * command error. Verified against lsp.ts:71-88.
16
+ * - `openFile` on the client is positional: `openFile(file, line?)`.
17
+ *
18
+ * Defensive shape parsing is still applied — the client methods are typed as
19
+ * `Promise<unknown>` by convention (see project_shape_mismatch_prevention.md).
20
+ */
21
+ import type { ExtensionClient } from "../extensionClient.js";
22
+ import type { ProgressFn } from "../transport.js";
23
+ export declare function createNavigateToSymbolByNameTool(extensionClient: ExtensionClient): {
24
+ schema: {
25
+ name: string;
26
+ extensionRequired: boolean;
27
+ description: string;
28
+ annotations: {
29
+ readOnlyHint: boolean;
30
+ idempotentHint: boolean;
31
+ };
32
+ inputSchema: {
33
+ $schema: string;
34
+ type: "object";
35
+ additionalProperties: false;
36
+ required: string[];
37
+ properties: {
38
+ query: {
39
+ type: "string";
40
+ description: string;
41
+ };
42
+ };
43
+ };
44
+ outputSchema: {
45
+ type: "object";
46
+ properties: {
47
+ found: {
48
+ type: string;
49
+ };
50
+ symbol: {
51
+ type: string;
52
+ };
53
+ definition: {
54
+ type: string;
55
+ };
56
+ alternatives: {
57
+ type: string;
58
+ };
59
+ };
60
+ required: string[];
61
+ };
62
+ };
63
+ handler(args: Record<string, unknown>, signal?: AbortSignal, _progress?: ProgressFn): Promise<{
64
+ content: Array<{
65
+ type: string;
66
+ text: string;
67
+ }>;
68
+ structuredContent: unknown;
69
+ } | {
70
+ content: Array<{
71
+ type: string;
72
+ text: string;
73
+ }>;
74
+ isError: true;
75
+ }>;
76
+ };
@@ -0,0 +1,92 @@
1
+ import { error, extensionRequired, requireString, successStructured, } from "./utils.js";
2
+ export function createNavigateToSymbolByNameTool(extensionClient) {
3
+ return {
4
+ schema: {
5
+ name: "navigateToSymbolByName",
6
+ extensionRequired: true,
7
+ description: "Find a workspace symbol by name and jump to its definition. " +
8
+ "Replaces the 2-call searchSymbols → goToDefinition pattern. " +
9
+ "Returns the chosen symbol, its definition, and up to 4 alternative matches.",
10
+ annotations: { readOnlyHint: false, idempotentHint: true },
11
+ inputSchema: {
12
+ $schema: "http://json-schema.org/draft-07/schema#",
13
+ type: "object",
14
+ additionalProperties: false,
15
+ required: ["query"],
16
+ properties: {
17
+ query: {
18
+ type: "string",
19
+ description: "Symbol name to search for",
20
+ },
21
+ },
22
+ },
23
+ outputSchema: {
24
+ type: "object",
25
+ properties: {
26
+ found: { type: "boolean" },
27
+ symbol: { type: "object" },
28
+ definition: { type: "object" },
29
+ alternatives: { type: "array" },
30
+ },
31
+ required: ["found"],
32
+ },
33
+ },
34
+ async handler(args, signal, _progress) {
35
+ if (!extensionClient.isConnected()) {
36
+ return extensionRequired("navigateToSymbolByName");
37
+ }
38
+ const query = requireString(args, "query");
39
+ // Step 1: search workspace symbols
40
+ const raw = await extensionClient.searchSymbols(query, 5, signal);
41
+ if (raw === null || typeof raw !== "object") {
42
+ return successStructured({ found: false });
43
+ }
44
+ const symbolsList = raw.symbols;
45
+ if (!Array.isArray(symbolsList) || symbolsList.length === 0) {
46
+ return successStructured({ found: false });
47
+ }
48
+ // Defensively extract the first symbol's coordinates
49
+ const best = symbolsList[0];
50
+ const symbolFile = typeof best.file === "string" ? best.file : undefined;
51
+ const symbolLine = typeof best.line === "number" ? best.line : undefined;
52
+ const symbolColumn = typeof best.column === "number" ? best.column : undefined;
53
+ if (!symbolFile || symbolLine == null || symbolColumn == null) {
54
+ return error("searchSymbols returned unexpected shape for first match");
55
+ }
56
+ // Step 2: resolve to definition
57
+ const defRaw = await extensionClient.goToDefinition(symbolFile, symbolLine, symbolColumn, signal);
58
+ // Handler returns an array of locations, or null on no result / error
59
+ if (defRaw === null) {
60
+ return successStructured({
61
+ found: true,
62
+ symbol: best,
63
+ definition: null,
64
+ alternatives: symbolsList.slice(1, 5),
65
+ });
66
+ }
67
+ if (!Array.isArray(defRaw) || defRaw.length === 0) {
68
+ return successStructured({
69
+ found: true,
70
+ symbol: best,
71
+ definition: null,
72
+ alternatives: symbolsList.slice(1, 5),
73
+ });
74
+ }
75
+ const firstDef = defRaw[0];
76
+ const defFile = typeof firstDef.file === "string" ? firstDef.file : undefined;
77
+ const defLine = typeof firstDef.line === "number" ? firstDef.line : undefined;
78
+ if (!defFile || defLine == null) {
79
+ return error("goToDefinition returned unexpected shape");
80
+ }
81
+ // Step 3: open the definition location
82
+ await extensionClient.openFile(defFile, defLine);
83
+ return successStructured({
84
+ found: true,
85
+ symbol: best,
86
+ definition: firstDef,
87
+ alternatives: symbolsList.slice(1, 5),
88
+ });
89
+ },
90
+ };
91
+ }
92
+ //# sourceMappingURL=navigateToSymbolByName.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"navigateToSymbolByName.js","sourceRoot":"","sources":["../../src/tools/navigateToSymbolByName.ts"],"names":[],"mappings":"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"}
@@ -34,8 +34,8 @@ export function createSaveDocumentTool(workspace, extensionClient) {
34
34
  // Use extension for real buffer flush when available
35
35
  if (extensionClient?.isConnected()) {
36
36
  try {
37
- const saved = await extensionClient.saveFile(filePath);
38
- if (saved) {
37
+ const result = await extensionClient.saveFile(filePath);
38
+ if (result?.saved) {
39
39
  return successStructured({
40
40
  success: true,
41
41
  filePath,
@@ -43,12 +43,16 @@ export function createSaveDocumentTool(workspace, extensionClient) {
43
43
  source: "vscode-buffer",
44
44
  });
45
45
  }
46
- // falsefile not open in editor (already on disk from editText or never opened)
46
+ // Not saved handler returned a structured error (e.g. untitled
47
+ // document, document not open). Surface the handler's message when
48
+ // available; otherwise explain the "not open in editor" case.
49
+ const message = result?.error ??
50
+ "File is not open in VS Code editor — content is already persisted to disk";
47
51
  return successStructured({
48
52
  success: true,
49
53
  filePath,
50
54
  saved: false,
51
- message: "File is not open in VS Code editor — content is already persisted to disk",
55
+ message,
52
56
  });
53
57
  }
54
58
  catch (err) {
@@ -1 +1 @@
1
- {"version":3,"file":"saveDocument.js","sourceRoot":"","sources":["../../src/tools/saveDocument.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,qBAAqB,GACtB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAE/E,MAAM,UAAU,sBAAsB,CACpC,SAAiB,EACjB,eAAiC;IAEjC,OAAO;QACL,MAAM,EAAE;YACN,IAAI,EAAE,cAAc;YACpB,WAAW,EACT,mFAAmF;gBACnF,4EAA4E;YAC9E,WAAW,EAAE,EAAE,eAAe,EAAE,IAAI,EAAE;YACtC,WAAW,EAAE;gBACX,OAAO,EAAE,yCAAyC;gBAClD,IAAI,EAAE,QAAQ;gBACd,oBAAoB,EAAE,KAAK;gBAC3B,QAAQ,EAAE,CAAC,UAAU,CAAC;gBACtB,UAAU,EAAE;oBACV,QAAQ,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,0BAA0B,EAAE;iBACtE;aACF;YACD,YAAY,EAAE;gBACZ,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACV,OAAO,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE;oBAC5B,QAAQ,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;oBAC5B,KAAK,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE;oBAC1B,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;oBAC1B,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;iBAC5B;gBACD,QAAQ,EAAE,CAAC,SAAS,CAAC;aACtB;SACF;QAED,KAAK,CAAC,OAAO,CAAC,IAA6B;YACzC,MAAM,OAAO,GAAG,aAAa,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;YAChD,MAAM,QAAQ,GAAG,eAAe,CAAC,OAAO,EAAE,SAAS,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;YAEtE,qDAAqD;YACrD,IAAI,eAAe,EAAE,WAAW,EAAE,EAAE,CAAC;gBACnC,IAAI,CAAC;oBACH,MAAM,KAAK,GAAG,MAAM,eAAe,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;oBACvD,IAAI,KAAK,EAAE,CAAC;wBACV,OAAO,iBAAiB,CAAC;4BACvB,OAAO,EAAE,IAAI;4BACb,QAAQ;4BACR,KAAK,EAAE,IAAI;4BACX,MAAM,EAAE,eAAe;yBACxB,CAAC,CAAC;oBACL,CAAC;oBACD,kFAAkF;oBAClF,OAAO,iBAAiB,CAAC;wBACvB,OAAO,EAAE,IAAI;wBACb,QAAQ;wBACR,KAAK,EAAE,KAAK;wBACZ,OAAO,EACL,2EAA2E;qBAC9E,CAAC,CAAC;gBACL,CAAC;gBAAC,OAAO,GAAG,EAAE,CAAC;oBACb,IAAI,CAAC,CAAC,GAAG,YAAY,qBAAqB,CAAC;wBAAE,MAAM,GAAG,CAAC;oBACvD,2CAA2C;gBAC7C,CAAC;YACH,CAAC;YAED,kEAAkE;YAClE,OAAO,iBAAiB,CAAC;gBACvB,OAAO,EAAE,IAAI;gBACb,QAAQ;gBACR,KAAK,EAAE,KAAK;gBACZ,OAAO,EACL,kGAAkG;aACrG,CAAC,CAAC;QACL,CAAC;KACF,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"saveDocument.js","sourceRoot":"","sources":["../../src/tools/saveDocument.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,qBAAqB,GACtB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAE/E,MAAM,UAAU,sBAAsB,CACpC,SAAiB,EACjB,eAAiC;IAEjC,OAAO;QACL,MAAM,EAAE;YACN,IAAI,EAAE,cAAc;YACpB,WAAW,EACT,mFAAmF;gBACnF,4EAA4E;YAC9E,WAAW,EAAE,EAAE,eAAe,EAAE,IAAI,EAAE;YACtC,WAAW,EAAE;gBACX,OAAO,EAAE,yCAAyC;gBAClD,IAAI,EAAE,QAAQ;gBACd,oBAAoB,EAAE,KAAK;gBAC3B,QAAQ,EAAE,CAAC,UAAU,CAAC;gBACtB,UAAU,EAAE;oBACV,QAAQ,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,0BAA0B,EAAE;iBACtE;aACF;YACD,YAAY,EAAE;gBACZ,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACV,OAAO,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE;oBAC5B,QAAQ,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;oBAC5B,KAAK,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE;oBAC1B,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;oBAC1B,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;iBAC5B;gBACD,QAAQ,EAAE,CAAC,SAAS,CAAC;aACtB;SACF;QAED,KAAK,CAAC,OAAO,CAAC,IAA6B;YACzC,MAAM,OAAO,GAAG,aAAa,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;YAChD,MAAM,QAAQ,GAAG,eAAe,CAAC,OAAO,EAAE,SAAS,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;YAEtE,qDAAqD;YACrD,IAAI,eAAe,EAAE,WAAW,EAAE,EAAE,CAAC;gBACnC,IAAI,CAAC;oBACH,MAAM,MAAM,GAAG,MAAM,eAAe,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;oBACxD,IAAI,MAAM,EAAE,KAAK,EAAE,CAAC;wBAClB,OAAO,iBAAiB,CAAC;4BACvB,OAAO,EAAE,IAAI;4BACb,QAAQ;4BACR,KAAK,EAAE,IAAI;4BACX,MAAM,EAAE,eAAe;yBACxB,CAAC,CAAC;oBACL,CAAC;oBACD,iEAAiE;oBACjE,mEAAmE;oBACnE,8DAA8D;oBAC9D,MAAM,OAAO,GACX,MAAM,EAAE,KAAK;wBACb,2EAA2E,CAAC;oBAC9E,OAAO,iBAAiB,CAAC;wBACvB,OAAO,EAAE,IAAI;wBACb,QAAQ;wBACR,KAAK,EAAE,KAAK;wBACZ,OAAO;qBACR,CAAC,CAAC;gBACL,CAAC;gBAAC,OAAO,GAAG,EAAE,CAAC;oBACb,IAAI,CAAC,CAAC,GAAG,YAAY,qBAAqB,CAAC;wBAAE,MAAM,GAAG,CAAC;oBACvD,2CAA2C;gBAC7C,CAAC;YACH,CAAC;YAED,kEAAkE;YAClE,OAAO,iBAAiB,CAAC;gBACvB,OAAO,EAAE,IAAI;gBACb,QAAQ;gBACR,KAAK,EAAE,KAAK;gBACZ,OAAO,EACL,kGAAkG;aACrG,CAAC,CAAC;QACL,CAAC;KACF,CAAC;AACJ,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "claude-ide-bridge",
3
- "version": "2.25.23",
3
+ "version": "2.25.25",
4
4
  "description": "Standalone MCP bridge for Claude Code IDE integration with any editor — 136+ tools for LSP, debugging, terminals, Git, GitHub, and more",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",