claude-ide-bridge 2.11.23 → 2.12.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/README.md CHANGED
@@ -74,12 +74,12 @@ This appends the bridge section to your existing `CLAUDE.md` and writes `.claude
74
74
 
75
75
  ## Slim Mode vs Full Mode
76
76
 
77
- By default, the bridge starts in **slim mode** — 48 IDE-exclusive tools that Claude can't replicate with its built-in `Read`/`Write`/`Bash` tools: LSP intelligence, debugger, editor decorations, diagnostics, refactoring, impact analysis, and editor state. This is the right default for most workflows because Claude already has file editing and shell access built in.
77
+ By default, the bridge starts in **slim mode** — 50 IDE-exclusive tools that Claude can't replicate with its built-in `Read`/`Write`/`Bash` tools: LSP intelligence, debugger, editor decorations, diagnostics, refactoring, impact analysis, and editor state. This is the right default for most workflows because Claude already has file editing and shell access built in.
78
78
 
79
79
  If you need Claude to use the bridge's **git, terminal, file ops, HTTP client, or GitHub** tools instead of its built-in equivalents, start in full mode:
80
80
 
81
81
  ```bash
82
- claude-ide-bridge --watch --full # all ~130 tools
82
+ claude-ide-bridge --watch --full # all 136+ tools
83
83
  ```
84
84
 
85
85
  Or set it permanently in your config file (`claude-ide-bridge.config.json`):
@@ -169,7 +169,7 @@ See [docs/multi-ide-review.md](docs/multi-ide-review.md) for the staged review w
169
169
 
170
170
  | Doc | What it covers |
171
171
  |-----|----------------|
172
- | **[Platform Docs](documents/platform-docs.md)** | Complete tool reference (130+ tools), parameters, examples |
172
+ | **[Platform Docs](documents/platform-docs.md)** | Complete tool reference (136+ tools), parameters, examples |
173
173
  | **[Data Reference](documents/data-reference.md)** | Data flows, state management, protocol details |
174
174
  | **[Plugin Authoring](documents/plugin-authoring.md)** | Writing custom plugins — manifest schema, entrypoint API |
175
175
  | **[Use Cases](documents/use-cases.md)** | Real-world workflows and scenarios |
@@ -195,7 +195,9 @@ When the bridge restarts within 5 minutes of the previous run, it automatically
195
195
 
196
196
  > **Cowork sessions (Claude Desktop computer-use):** MCP bridge tools are NOT available inside Cowork. Run `/mcp__bridge__cowork` in a regular Desktop chat first to capture context, then open Cowork. Cowork also operates in an isolated git worktree — files won't appear in your main `git status` until merged.
197
197
 
198
- ## Full Orchestrator
198
+ ## Full Session Launcher (`start-all`)
199
+
200
+ > **Not the same as [Multi-IDE Orchestrator](#multi-ide-orchestrator).** The Multi-IDE Orchestrator runs two bridge instances for two parallel IDE windows. `start-all` is a convenience launcher that runs a single bridge instance alongside Claude Code and remote control in a tmux session.
199
201
 
200
202
  The `start-all` command launches everything in a tmux session: bridge + Claude Code + remote control, with automatic health monitoring and process restart.
201
203
 
@@ -278,10 +280,10 @@ claude --plugin-dir ./claude-ide-bridge-plugin
278
280
 
279
281
  The bridge exposes tools in two modes:
280
282
 
281
- - **Slim mode (default)** — 48 IDE-exclusive tools. Only tools that require a live VS Code extension and have no native Claude equivalent. This is what you get with `claude-ide-bridge --watch`.
282
- - **Full mode (`--full`)** — all ~130 tools, adding git, terminal, file ops, HTTP, and GitHub. Use this for large projects or workflows that rely on those integrations.
283
+ - **Slim mode (default)** — 50 IDE-exclusive tools. Only tools that require a live VS Code extension and have no native Claude equivalent. This is what you get with `claude-ide-bridge --watch`.
284
+ - **Full mode (`--full`)** — all 136+ tools, adding git, terminal, file ops, HTTP, and GitHub. Use this for large projects or workflows that rely on those integrations.
283
285
 
284
- ### Slim mode — 48 IDE tools (default)
286
+ ### Slim mode — 50 IDE tools (default)
285
287
 
286
288
  | Category | Tools |
287
289
  |----------|-------|
@@ -314,7 +316,9 @@ The bridge exposes tools in two modes:
314
316
 
315
317
  ## MCP Prompts (Slash Commands)
316
318
 
317
- The bridge exposes 15 built-in slash commands via the MCP `prompts/list` + `prompts/get` protocol. These appear as `/mcp__bridge__<name>` in any MCP client that supports prompts.
319
+ The bridge exposes 27 built-in slash commands via the MCP `prompts/list` + `prompts/get` protocol. These appear as `/mcp__bridge__<name>` in any MCP client that supports prompts.
320
+
321
+ **General / Dispatch**
318
322
 
319
323
  | Prompt | Argument | Description |
320
324
  |--------|----------|-------------|
@@ -332,6 +336,24 @@ The bridge exposes 15 built-in slash commands via the MCP `prompts/list` + `prom
332
336
  | `/mcp__bridge__recent-activity` | `count` (optional, default: `10`) | Recent git log and uncommitted changes (Dispatch) |
333
337
  | `/mcp__bridge__team-status` | _(none)_ | Workspace state, active tasks, and recent activity for team leads (Agent Teams) |
334
338
  | `/mcp__bridge__health-check` | _(none)_ | Comprehensive project health: tests, diagnostics, security (Scheduled Tasks) |
339
+ | `/mcp__bridge__orient-project` | _(none)_ | Architecture overview from key docs and CLAUDE.md |
340
+
341
+ **LSP Intelligence**
342
+
343
+ | Prompt | Arguments | Description |
344
+ |--------|-----------|-------------|
345
+ | `/mcp__bridge__find-callers` | `symbol` (required) | List all callers of a symbol via call hierarchy + references |
346
+ | `/mcp__bridge__blast-radius` | `file`, `line`, `column` (all required) | Compute change impact at a position — risk badge + reference counts |
347
+ | `/mcp__bridge__why-error` | `file` (required), `line` (optional) | Explain a diagnostic in plain English with type context |
348
+ | `/mcp__bridge__unused-in` | `file` (required) | Find dead exports and unused code in a file |
349
+ | `/mcp__bridge__trace-to` | `symbol` (required) | Trace outgoing call chain from a symbol with type signatures |
350
+ | `/mcp__bridge__imports-of` | `symbol` (required) | List every file that imports a symbol, with reference counts |
351
+ | `/mcp__bridge__circular-deps` | _(none)_ | Detect circular import cycles in the workspace |
352
+ | `/mcp__bridge__refactor-preview` | `file`, `line`, `column`, `newName` (all required) | Preview rename edits and blast-radius risk before committing |
353
+ | `/mcp__bridge__module-exports` | `file` (required) | List a file's exported symbols with type signatures |
354
+ | `/mcp__bridge__type-of` | `file`, `line`, `column` (all required) | Get the type signature at a position (no documentation) |
355
+ | `/mcp__bridge__deprecations` | _(none)_ | Find `@deprecated` APIs workspace-wide and count their callers |
356
+ | `/mcp__bridge__coverage-gap` | `file` (required) | List untested functions by correlating coverage data with document symbols |
335
357
 
336
358
  > **Cowork sessions and MCP tools:** MCP tools (including all bridge tools) are **not available inside a Cowork session**. Use a two-step workflow: run `/mcp__bridge__cowork` in a regular Claude Code chat first — it gathers full IDE context and produces an action plan — then open a Cowork session armed with that context.
337
359
 
@@ -448,6 +470,26 @@ claude-ide-bridge --workspace /path/to/project \
448
470
  "onFailureOnly": true,
449
471
  "prompt": "Tests failed ({{failed}}/{{total}}). Fix the failures:\n{{failures}}",
450
472
  "cooldownMs": 15000
473
+ },
474
+ "onGitCommit": {
475
+ "enabled": true,
476
+ "prompt": "Committed {{hash}} on {{branch}}: {{message}}\nFiles changed: {{files}}",
477
+ "cooldownMs": 5000
478
+ },
479
+ "onGitPush": {
480
+ "enabled": true,
481
+ "prompt": "Pushed {{branch}} to {{remote}} ({{hash}}). Run getGitLog to confirm.",
482
+ "cooldownMs": 5000
483
+ },
484
+ "onBranchCheckout": {
485
+ "enabled": true,
486
+ "prompt": "Switched to branch {{branch}} (from {{previousBranch}}). Call getDiagnostics to check state.",
487
+ "cooldownMs": 5000
488
+ },
489
+ "onPullRequest": {
490
+ "enabled": true,
491
+ "prompt": "PR #{{number}} opened: {{title}} ({{url}}). Run getDiagnostics on changed files.",
492
+ "cooldownMs": 5000
451
493
  }
452
494
  }
453
495
  ```
@@ -465,6 +507,10 @@ When automation is active, VS Code save/change events, diagnostic errors, and Cl
465
507
  | `onPostCompact` | Claude compacts its context (Claude Code 2.1.76+) | `enabled`, `prompt`, `cooldownMs` |
466
508
  | `onInstructionsLoaded` | Claude loads CLAUDE.md at session start (Claude Code 2.1.76+) | `enabled`, `prompt` |
467
509
  | `onTestRun` | `runTests` completes | `enabled`, `onFailureOnly` (bool, default `true`), `prompt` (supports `{{runner}}`, `{{failed}}`, `{{passed}}`, `{{total}}`, `{{failures}}`), `cooldownMs` |
510
+ | `onGitCommit` | `gitCommit` tool succeeds | `enabled`, `prompt` (supports `{{hash}}`, `{{branch}}`, `{{message}}`, `{{count}}`, `{{files}}`), `cooldownMs` |
511
+ | `onGitPush` | `gitPush` tool succeeds | `enabled`, `prompt` (supports `{{remote}}`, `{{branch}}`, `{{hash}}`), `cooldownMs` |
512
+ | `onBranchCheckout` | Git branch created or switched (via `gitCheckout` tool) | `enabled`, `prompt` (supports `{{branch}}`, `{{previousBranch}}`, `{{created}}`), `cooldownMs` |
513
+ | `onPullRequest` | PR event occurs (via `githubCreatePR` or bridge PR tools) | `enabled`, `prompt` (supports `{{url}}`, `{{number}}`, `{{title}}`, `{{branch}}`), `cooldownMs` |
468
514
 
469
515
  > **Cloud sessions**: If `CLAUDE_CODE_REMOTE=true` (Claude Code on the web), automation tasks will still enqueue but the bridge itself runs locally — those tasks will not execute. Guard policy prompts or the `onInstructionsLoaded` hook with an environment check if needed.
470
516
 
@@ -659,7 +705,7 @@ bash scripts/gen-claude-desktop-config.sh --write
659
705
 
660
706
  Then restart Claude Desktop once to load the new config. After that, the bridge's **stdio shim** handles everything automatically — it discovers the running bridge via lock files, buffers requests until connected, and reconnects transparently when the bridge restarts. No port or token needs to be hard-coded, and no further Desktop restarts are needed when the bridge restarts.
661
707
 
662
- > **Tool availability:** Without the VS Code extension connected, ~48 tools (debugger, LSP intelligence, editor state, decorations, refactoring) are unavailable. Claude Desktop works best alongside the running extension. You can verify connectivity by asking *"What tools do you have available?"* — the response will list what's active.
708
+ > **Tool availability:** Without the VS Code extension connected, ~50 tools (debugger, LSP intelligence, editor state, decorations, refactoring) are unavailable. Claude Desktop works best alongside the running extension. You can verify connectivity by asking *"What tools do you have available?"* — the response will list what's active.
663
709
 
664
710
  > **Debugging the shim:** If the connection seems stuck, the shim logs to stderr. In Claude Desktop, check **Settings → Developer → MCP Logs** to see shim output. Common cause: bridge not running — start it with `claude-ide-bridge --watch` first.
665
711
 
@@ -699,7 +745,7 @@ Your Phone
699
745
 
700
746
  Dispatch messages land in Claude Desktop's **main conversation**, which has full MCP bridge access. Claude calls the bridge tools, gathers results, and sends a summary back to your phone.
701
747
 
702
- > **Not Cowork:** Dispatch routes through the main conversation, not a Cowork session. All 130+ bridge tools are available. The Cowork tool-access limitation does not apply here.
748
+ > **Not Cowork:** Dispatch routes through the main conversation, not a Cowork session. All 136+ bridge tools are available. The Cowork tool-access limitation does not apply here.
703
749
 
704
750
  ### Setup
705
751
 
@@ -767,7 +813,7 @@ Team Lead (Claude Code)
767
813
  └── Teammate C ──► Bridge Session 3 ──► IDE
768
814
  ```
769
815
 
770
- All teammates share the same IDE and workspace. Each gets full access to all 130+ bridge tools.
816
+ All teammates share the same IDE and workspace. Each gets full access to all 136+ bridge tools.
771
817
 
772
818
  ### Setup
773
819
 
@@ -918,7 +964,7 @@ claude-ide-bridge \
918
964
 
919
965
  > The bridge token is entered once during authorization. After that, claude.ai holds a short-lived OAuth access token that it refreshes automatically — you don't need to update the connector URL when the bridge restarts.
920
966
 
921
- > **Tool availability:** All 130+ tools are available in full mode. VS Code extension-dependent tools (LSP, debugger, editor state) require the extension to be connected on the remote machine. Without the extension, ~57 CLI-backed tools still work (file ops, git, terminal, search, HTTP client). In slim mode (default), only the 48 IDE-exclusive tools are exposed.
967
+ > **Tool availability:** All 136+ tools are available in full mode. VS Code extension-dependent tools (LSP, debugger, editor state) require the extension to be connected on the remote machine. Without the extension, ~57 CLI-backed tools still work (file ops, git, terminal, search, HTTP client). In slim mode (default), only the 50 IDE-exclusive tools are exposed.
922
968
 
923
969
  ### Alternatives
924
970
 
@@ -1014,7 +1060,7 @@ claude-ide-bridge gen-claude-md [--write] [--workspace <path>]
1014
1060
  --automation-policy <path> Path to JSON automation policy file
1015
1061
  --plugin <path> Load a plugin directory (repeatable)
1016
1062
  --plugin-watch Watch plugin directories and hot-reload on change
1017
- --full Register all ~130 tools (default: slim mode with 48 IDE-exclusive tools)
1063
+ --full Register all 136+ tools (default: slim mode with 50 IDE-exclusive tools)
1018
1064
  --verbose Enable debug logging
1019
1065
  --version, -v Print version and exit
1020
1066
  --analytics <on|off> Enable or disable anonymous usage analytics
@@ -1033,8 +1079,8 @@ claude-ide-bridge/
1033
1079
  config.ts CLI args & config
1034
1080
  claudeDriver.ts IClaudeDriver interface + SubprocessDriver
1035
1081
  claudeOrchestrator.ts Task queue (MAX_CONCURRENT=10, MAX_QUEUE=20)
1036
- automation.ts AutomationHooks — onDiagnosticsError / onFileSave / onFileChanged / onTestRun / onPostCompact / onInstructionsLoaded policies
1037
- tools/ 130+ MCP tool implementations
1082
+ automation.ts AutomationHooks — onDiagnosticsError / onFileSave / onFileChanged / onTestRun / onGitCommit / onGitPush / onBranchCheckout / onPullRequest / onCwdChanged / onPostCompact / onInstructionsLoaded policies
1083
+ tools/ 136+ MCP tool implementations
1038
1084
  vscode-extension/
1039
1085
  src/extension.ts VS Code extension
1040
1086
  src/connection.ts WebSocket connection management
@@ -1042,7 +1088,7 @@ claude-ide-bridge/
1042
1088
  claude-ide-bridge-plugin/
1043
1089
  skills/ 9 slash commands
1044
1090
  agents/ 3 specialized subagents
1045
- hooks/ 7 hook events (PreToolUse, PostToolUse, SessionStart, InstructionsLoaded, Elicitation, WorktreeCreate, SubagentStart)
1091
+ hooks/ 16 hook events (PreToolUse, PostToolUse, SessionStart, InstructionsLoaded, Elicitation, ElicitationResult, PostCompact, WorktreeCreate, WorktreeRemove, SubagentStart, SubagentStop, TeammateIdle, TaskCompleted, ConfigChange, Stop, StopFailure)
1046
1092
  .mcp.json MCP server config
1047
1093
  ```
1048
1094
 
@@ -1050,6 +1096,8 @@ claude-ide-bridge/
1050
1096
 
1051
1097
  ### Useful tools you might not know about
1052
1098
 
1099
+ - **`bridgeDoctor`** — comprehensive environment health check. Verifies extension connection, git, TypeScript, linter, test runner, lock file, node_modules, and GitHub CLI. Returns actionable suggestions for anything broken. Call this first when tools are missing or the setup feels off.
1100
+
1053
1101
  - **`getBridgeStatus`** — ask Claude to call this when things feel wrong. It returns extension connection state, circuit breaker status (including remaining suspension time), active session count, and uptime. Faster than reading logs.
1054
1102
 
1055
1103
  - **`getActivityLog`** — returns a history of all tool calls in the current bridge session. Pass `showStats: true` to get per-tool call counts, average durations, and error rates. Useful after long autonomous tasks.
@@ -1137,7 +1185,7 @@ npm test # Run 394 extension tests
1137
1185
 
1138
1186
  ### Claude says a tool doesn't exist or tool count seems low
1139
1187
 
1140
- When the VS Code extension is disconnected, 48 tools that require extension access return an error with reconnect instructions (they remain visible but non-functional). These include LSP, debugger, editor state, and refactoring tools. In slim mode (default), all tools need the extension; in full mode, ~57 CLI-backed tools (git, terminal, file ops, HTTP, GitHub) still work. Check the "Claude IDE Bridge" output channel in VS Code — if you see a disconnection event, use `Claude IDE Bridge: Reconnect` from the command palette, or reload the window.
1188
+ When the VS Code extension is disconnected, 50 tools that require extension access return an error with reconnect instructions (they remain visible but non-functional). These include LSP, debugger, editor state, and refactoring tools. In slim mode (default), all tools need the extension; in full mode, ~57 CLI-backed tools (git, terminal, file ops, HTTP, GitHub) still work. Check the "Claude IDE Bridge" output channel in VS Code — if you see a disconnection event, use `Claude IDE Bridge: Reconnect` from the command palette, or reload the window.
1141
1189
 
1142
1190
  ### Bridge and extension version mismatch
1143
1191
 
package/dist/bridge.js CHANGED
@@ -598,7 +598,7 @@ export class Bridge {
598
598
  shuttingDown = true;
599
599
  this.logger.info(`Shutdown initiated by ${signal}`);
600
600
  const forceTimer = setTimeout(() => {
601
- process.exit(1);
601
+ process.exit(exitCode);
602
602
  }, SHUTDOWN_TIMEOUT_MS);
603
603
  forceTimer.unref();
604
604
  await this.stop();
@@ -1 +1 @@
1
- {"version":3,"file":"bridge.js","sourceRoot":"","sources":["../src/bridge.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"bridge.js","sourceRoot":"","sources":["../src/bridge.ts"],"names":[],"mappings":"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"}
package/dist/prompts.js CHANGED
@@ -157,6 +157,169 @@ export const PROMPTS = [
157
157
  },
158
158
  ],
159
159
  },
160
+ // ── LSP composition prompts (Round: LSP Leverage) ─────────────────────────
161
+ // These wrap the bridge's existing LSP primitives + composites (getChangeImpact,
162
+ // explainSymbol, refactorAnalyze, etc.) into one-call developer workflows.
163
+ {
164
+ name: "find-callers",
165
+ description: "Find every caller of a symbol with file:line locations. Wraps searchWorkspaceSymbols + getCallHierarchy(incoming) + findReferences. Answers: 'what breaks if I change this?'",
166
+ arguments: [
167
+ {
168
+ name: "symbol",
169
+ description: "Symbol name to look up (function, class, variable).",
170
+ required: true,
171
+ },
172
+ ],
173
+ },
174
+ {
175
+ name: "blast-radius",
176
+ description: "Compute the blast radius of a change at a specific position: diagnostics + reference counts + risk badge. Wraps getChangeImpact.",
177
+ arguments: [
178
+ {
179
+ name: "file",
180
+ description: "Workspace-relative or absolute path to the file.",
181
+ required: true,
182
+ },
183
+ {
184
+ name: "line",
185
+ description: "Line number (1-based).",
186
+ required: true,
187
+ },
188
+ {
189
+ name: "column",
190
+ description: "Column number (1-based).",
191
+ required: true,
192
+ },
193
+ ],
194
+ },
195
+ {
196
+ name: "why-error",
197
+ description: "Explain a diagnostic in plain English with surrounding type context. Wraps getDiagnostics + explainSymbol at the error position.",
198
+ arguments: [
199
+ {
200
+ name: "file",
201
+ description: "Workspace-relative or absolute path to the file.",
202
+ required: true,
203
+ },
204
+ {
205
+ name: "line",
206
+ description: "Optional line number to focus on (default: first error).",
207
+ required: false,
208
+ },
209
+ ],
210
+ },
211
+ {
212
+ name: "unused-in",
213
+ description: "List unused exports, parameters, and imports in a file with reference verification. Wraps detectUnusedCode + findReferences.",
214
+ arguments: [
215
+ {
216
+ name: "file",
217
+ description: "Workspace-relative or absolute path to the file.",
218
+ required: true,
219
+ },
220
+ ],
221
+ },
222
+ {
223
+ name: "trace-to",
224
+ description: "Trace the call chain from entry points to a target symbol with type signatures at each hop. Wraps getCallHierarchy(outgoing) + getImportedSignatures.",
225
+ arguments: [
226
+ {
227
+ name: "symbol",
228
+ description: "Target symbol name to trace toward.",
229
+ required: true,
230
+ },
231
+ ],
232
+ },
233
+ {
234
+ name: "imports-of",
235
+ description: "List every file that imports a given symbol with reference counts. Wraps findReferences + getImportTree.",
236
+ arguments: [
237
+ {
238
+ name: "symbol",
239
+ description: "Symbol name to look up imports for.",
240
+ required: true,
241
+ },
242
+ ],
243
+ },
244
+ {
245
+ name: "circular-deps",
246
+ description: "Detect circular import dependencies in the workspace. Wraps getImportTree with cycle detection.",
247
+ arguments: [],
248
+ },
249
+ {
250
+ name: "refactor-preview",
251
+ description: "Preview the exact edits a rename would make at a position, plus blast-radius risk. Wraps refactorAnalyze + refactorPreview.",
252
+ arguments: [
253
+ {
254
+ name: "file",
255
+ description: "Workspace-relative or absolute path to the file.",
256
+ required: true,
257
+ },
258
+ {
259
+ name: "line",
260
+ description: "Line number (1-based).",
261
+ required: true,
262
+ },
263
+ {
264
+ name: "column",
265
+ description: "Column number (1-based).",
266
+ required: true,
267
+ },
268
+ {
269
+ name: "newName",
270
+ description: "Proposed new name for the symbol.",
271
+ required: true,
272
+ },
273
+ ],
274
+ },
275
+ {
276
+ name: "module-exports",
277
+ description: "List a module's exported symbols with their type signatures, formatted as Markdown. Wraps getDocumentSymbols + getHover for each export.",
278
+ arguments: [
279
+ {
280
+ name: "file",
281
+ description: "Workspace-relative or absolute path to the file.",
282
+ required: true,
283
+ },
284
+ ],
285
+ },
286
+ {
287
+ name: "type-of",
288
+ description: "Get just the type signature at a position (no documentation). Wraps getHoverAtCursor + getTypeSignature.",
289
+ arguments: [
290
+ {
291
+ name: "file",
292
+ description: "Workspace-relative or absolute path to the file.",
293
+ required: true,
294
+ },
295
+ {
296
+ name: "line",
297
+ description: "Line number (1-based).",
298
+ required: true,
299
+ },
300
+ {
301
+ name: "column",
302
+ description: "Column number (1-based).",
303
+ required: true,
304
+ },
305
+ ],
306
+ },
307
+ {
308
+ name: "deprecations",
309
+ description: "Find @deprecated APIs across the workspace and count their callers. Wraps searchWorkspace for @deprecated + findReferences.",
310
+ arguments: [],
311
+ },
312
+ {
313
+ name: "coverage-gap",
314
+ description: "Identify untested functions in a file by correlating coverage with document symbols. Wraps getCodeCoverage + getDocumentSymbols.",
315
+ arguments: [
316
+ {
317
+ name: "file",
318
+ description: "Workspace-relative or absolute path to the file.",
319
+ required: true,
320
+ },
321
+ ],
322
+ },
160
323
  ];
161
324
  // ── Orient-project prompt text builder ────────────────────────────────────────
162
325
  const ORIENT_PHASE_1 = `## Phase 1 — Discover the project
@@ -980,6 +1143,377 @@ const TEMPLATES = {
980
1143
  },
981
1144
  ],
982
1145
  }),
1146
+ // ── LSP composition prompts ──────────────────────────────────────────────
1147
+ "find-callers": ({ symbol }) => ({
1148
+ description: `Find callers of ${symbol}`,
1149
+ messages: [
1150
+ {
1151
+ role: "user",
1152
+ content: {
1153
+ type: "text",
1154
+ text: [
1155
+ `Find every caller of \`${symbol}\` and report file:line locations.`,
1156
+ "",
1157
+ `1. Call \`searchWorkspaceSymbols\` with query \`${symbol}\` to find the definition`,
1158
+ "2. Call `getCallHierarchy` with `direction: 'incoming'` at the definition position",
1159
+ "3. Call `findReferences` for cross-verification (some callers may not be in the call graph for dynamic dispatch)",
1160
+ "",
1161
+ "Report:",
1162
+ "```",
1163
+ `Symbol: ${symbol} (defined at <file:line>)`,
1164
+ "Callers (N):",
1165
+ " <file:line> <containing function>",
1166
+ " ...",
1167
+ "```",
1168
+ "",
1169
+ "Keep total response under 25 lines. If the symbol is not found, say so and stop.",
1170
+ ].join("\n"),
1171
+ },
1172
+ },
1173
+ ],
1174
+ }),
1175
+ "blast-radius": ({ file, line, column }) => ({
1176
+ description: `Blast radius at ${file}:${line}:${column}`,
1177
+ messages: [
1178
+ {
1179
+ role: "user",
1180
+ content: {
1181
+ type: "text",
1182
+ text: [
1183
+ `Compute the blast radius of changing the symbol at \`${file}:${line}:${column}\`.`,
1184
+ "",
1185
+ `1. Call \`getChangeImpact\` with file \`${file}\`, line ${line}, column ${column}`,
1186
+ "2. Read the structured output: `blastRadius`, `referenceCount`, `affectedFiles`, `diagnostics`",
1187
+ "",
1188
+ "Report:",
1189
+ "```",
1190
+ `Position: ${file}:${line}:${column}`,
1191
+ "Risk: <LOW | MEDIUM | HIGH>",
1192
+ "References: N (across M files)",
1193
+ "Diagnostics: <X errors, Y warnings>",
1194
+ "Top affected files:",
1195
+ " <file> (<refs> refs)",
1196
+ " ...",
1197
+ "```",
1198
+ "",
1199
+ "If risk is MEDIUM or HIGH, list the top 5 affected files. Keep response under 20 lines.",
1200
+ ].join("\n"),
1201
+ },
1202
+ },
1203
+ ],
1204
+ }),
1205
+ "why-error": ({ file, line }) => {
1206
+ const lineHint = line ? ` (focus on line ${line})` : "";
1207
+ return {
1208
+ description: `Explain error in ${file}${lineHint}`,
1209
+ messages: [
1210
+ {
1211
+ role: "user",
1212
+ content: {
1213
+ type: "text",
1214
+ text: [
1215
+ `Explain the diagnostic error in \`${file}\`${lineHint} in plain English with surrounding type context.`,
1216
+ "",
1217
+ `1. Call \`getDiagnostics\` for \`${file}\``,
1218
+ line
1219
+ ? `2. Find the diagnostic at or nearest to line ${line}`
1220
+ : "2. Pick the first error (or warning if no errors exist)",
1221
+ "3. Call `explainSymbol` at the diagnostic position to gather hover, definition, and context",
1222
+ "4. Call `getHover` at the position for the exact type information",
1223
+ "",
1224
+ "Explain:",
1225
+ "- What the error message *literally* says",
1226
+ "- *Why* it's wrong in this context (use the type info)",
1227
+ "- *How* to fix it — show the corrected code",
1228
+ "",
1229
+ "Keep the explanation accessible. No jargon without definition. Under 30 lines.",
1230
+ ].join("\n"),
1231
+ },
1232
+ },
1233
+ ],
1234
+ };
1235
+ },
1236
+ "unused-in": ({ file }) => ({
1237
+ description: `Unused code in ${file}`,
1238
+ messages: [
1239
+ {
1240
+ role: "user",
1241
+ content: {
1242
+ type: "text",
1243
+ text: [
1244
+ `Find all unused exports, parameters, and imports in \`${file}\` with reference verification.`,
1245
+ "",
1246
+ `1. Call \`detectUnusedCode\` for \`${file}\``,
1247
+ "2. For each candidate, call `findReferences` to verify zero external uses (dead code rules differ across linters)",
1248
+ "3. Cross-check imports against actual usage in the file body",
1249
+ "",
1250
+ "Report a prioritized cleanup list:",
1251
+ "```",
1252
+ `## Unused in ${file}`,
1253
+ "",
1254
+ "### Truly dead (0 references)",
1255
+ "- <kind> <name> (<line>) — safe to delete",
1256
+ "",
1257
+ "### Local-only (used in this file but not exported elsewhere)",
1258
+ "- <kind> <name> (<line>) — consider making private",
1259
+ "",
1260
+ "### Unused imports",
1261
+ "- <import> (<line>) — safe to remove",
1262
+ "```",
1263
+ "",
1264
+ "If nothing is unused, say so and stop. Keep response under 30 lines.",
1265
+ ].join("\n"),
1266
+ },
1267
+ },
1268
+ ],
1269
+ }),
1270
+ "trace-to": ({ symbol }) => ({
1271
+ description: `Trace call chain to ${symbol}`,
1272
+ messages: [
1273
+ {
1274
+ role: "user",
1275
+ content: {
1276
+ type: "text",
1277
+ text: [
1278
+ `Trace the call chain from entry points to \`${symbol}\` with type signatures at each hop.`,
1279
+ "",
1280
+ `1. Call \`searchWorkspaceSymbols\` with query \`${symbol}\` to find the definition`,
1281
+ "2. Call `getCallHierarchy` with `direction: 'incoming'` recursively (up to 5 levels)",
1282
+ "3. For each hop, call `getHover` to extract the function signature",
1283
+ "4. Call `getImportedSignatures` on the entry point file to understand the data types being passed",
1284
+ "",
1285
+ "Report a vertical call chain:",
1286
+ "```",
1287
+ "Entry: <topLevelFunction>(<args>): <return> @ <file:line>",
1288
+ " ↓",
1289
+ "<intermediate>(<args>): <return> @ <file:line>",
1290
+ " ↓",
1291
+ `${symbol}(<args>): <return> @ <file:line>`,
1292
+ "```",
1293
+ "",
1294
+ "Keep response under 35 lines. If multiple entry points exist, show the 2 shortest chains.",
1295
+ ].join("\n"),
1296
+ },
1297
+ },
1298
+ ],
1299
+ }),
1300
+ "imports-of": ({ symbol }) => ({
1301
+ description: `Files importing ${symbol}`,
1302
+ messages: [
1303
+ {
1304
+ role: "user",
1305
+ content: {
1306
+ type: "text",
1307
+ text: [
1308
+ `List every file that imports \`${symbol}\` with reference counts.`,
1309
+ "",
1310
+ `1. Call \`searchWorkspaceSymbols\` with query \`${symbol}\` to find its definition file`,
1311
+ "2. Call `findReferences` and filter results to those occurring inside import statements",
1312
+ "3. For each importing file, count the inline references (uses of the symbol after import)",
1313
+ "",
1314
+ "Report:",
1315
+ "```",
1316
+ `${symbol} is imported by N files:`,
1317
+ " <file> — <inline refs> uses",
1318
+ " ...",
1319
+ "```",
1320
+ "",
1321
+ "Sort by inline reference count descending. Keep response under 25 lines.",
1322
+ ].join("\n"),
1323
+ },
1324
+ },
1325
+ ],
1326
+ }),
1327
+ "circular-deps": (_args) => ({
1328
+ description: "Detect circular import dependencies",
1329
+ messages: [
1330
+ {
1331
+ role: "user",
1332
+ content: {
1333
+ type: "text",
1334
+ text: [
1335
+ "Detect circular import dependencies in the workspace.",
1336
+ "",
1337
+ "1. Call `getProjectInfo` to find the project entry points",
1338
+ "2. Call `getImportTree` on each entry point with depth >= 5 — the response includes a `cycles` array",
1339
+ "3. If no entry points are obvious, call `getFileTree` and pick the top 3 source files",
1340
+ "",
1341
+ "Report each cycle as:",
1342
+ "```",
1343
+ "Cycle 1: <file-a> → <file-b> → <file-c> → <file-a>",
1344
+ "Cycle 2: ...",
1345
+ "```",
1346
+ "",
1347
+ "If no cycles, say 'No circular dependencies found'. Keep response under 20 lines.",
1348
+ ].join("\n"),
1349
+ },
1350
+ },
1351
+ ],
1352
+ }),
1353
+ "refactor-preview": ({ file, line, column, newName }) => ({
1354
+ description: `Preview rename to ${newName} at ${file}:${line}:${column}`,
1355
+ messages: [
1356
+ {
1357
+ role: "user",
1358
+ content: {
1359
+ type: "text",
1360
+ text: [
1361
+ `Preview the exact edits a rename to \`${newName}\` would make at \`${file}:${line}:${column}\`, plus blast-radius risk.`,
1362
+ "",
1363
+ `1. Call \`refactorAnalyze\` at \`${file}:${line}:${column}\` to get \`risk\`, \`referenceCount\`, \`callerCount\``,
1364
+ `2. Call \`refactorPreview\` at the same position with \`newName: '${newName}'\` to get the exact edit list`,
1365
+ "3. Do NOT apply the rename — this is a preview only",
1366
+ "",
1367
+ "Report:",
1368
+ "```",
1369
+ `Rename: <oldName> → ${newName}`,
1370
+ "Risk: <LOW | MEDIUM | HIGH>",
1371
+ "References: N | Callers: M",
1372
+ "",
1373
+ "Edits (K total across J files):",
1374
+ " <file>: <count> edits",
1375
+ " ...",
1376
+ "```",
1377
+ "",
1378
+ "If risk is HIGH, recommend writing tests first. Keep response under 25 lines.",
1379
+ ].join("\n"),
1380
+ },
1381
+ },
1382
+ ],
1383
+ }),
1384
+ "module-exports": ({ file }) => ({
1385
+ description: `Module exports of ${file}`,
1386
+ messages: [
1387
+ {
1388
+ role: "user",
1389
+ content: {
1390
+ type: "text",
1391
+ text: [
1392
+ `List the exported symbols of \`${file}\` with their type signatures, formatted as Markdown.`,
1393
+ "",
1394
+ `1. Call \`getDocumentSymbols\` for \`${file}\``,
1395
+ "2. Filter to top-level exported symbols (functions, classes, types, constants)",
1396
+ "3. For each export, call `getHover` at its position to read the type signature",
1397
+ "",
1398
+ "Format as Markdown:",
1399
+ "```markdown",
1400
+ `## Exports of \`${file}\``,
1401
+ "",
1402
+ "### Functions",
1403
+ "- `functionName(args): ReturnType` — brief description from JSDoc if available",
1404
+ "",
1405
+ "### Classes",
1406
+ "- `ClassName` — brief description",
1407
+ "",
1408
+ "### Types",
1409
+ "- `TypeName` — definition",
1410
+ "",
1411
+ "### Constants",
1412
+ "- `CONST_NAME: Type`",
1413
+ "```",
1414
+ "",
1415
+ "Skip private/internal symbols. Keep response focused on the public API.",
1416
+ ].join("\n"),
1417
+ },
1418
+ },
1419
+ ],
1420
+ }),
1421
+ "type-of": ({ file, line, column }) => ({
1422
+ description: `Type at ${file}:${line}:${column}`,
1423
+ messages: [
1424
+ {
1425
+ role: "user",
1426
+ content: {
1427
+ type: "text",
1428
+ text: [
1429
+ `Return ONLY the type signature at \`${file}:${line}:${column}\` — no documentation, no examples.`,
1430
+ "",
1431
+ `1. Call \`getTypeSignature\` for \`${file}:${line}:${column}\``,
1432
+ "2. If `getTypeSignature` is unavailable or returns nothing, call `getHoverAtCursor` at the position and extract the first fenced code block",
1433
+ "",
1434
+ "Output the type signature in a single fenced code block. Nothing else. Example:",
1435
+ "```typescript",
1436
+ "function processOrder(order: Order, opts?: Options): Promise<Receipt>",
1437
+ "```",
1438
+ "",
1439
+ "If no type info is available, just say 'No type information at this position.'",
1440
+ ].join("\n"),
1441
+ },
1442
+ },
1443
+ ],
1444
+ }),
1445
+ deprecations: (_args) => ({
1446
+ description: "Find deprecated APIs and their callers",
1447
+ messages: [
1448
+ {
1449
+ role: "user",
1450
+ content: {
1451
+ type: "text",
1452
+ text: [
1453
+ "Find every `@deprecated` API in the workspace and count its callers.",
1454
+ "",
1455
+ "1. Call `searchWorkspace` with query `@deprecated` and a glob like `**/*.{ts,tsx,js,jsx,py,go,rs}`",
1456
+ "2. For each result, identify the symbol the annotation applies to (function/class/method on the next non-comment line)",
1457
+ "3. Call `findReferences` on each deprecated symbol to count callers",
1458
+ "4. Call `getHover` on each to extract the deprecation message and migration hint",
1459
+ "",
1460
+ "Report sorted by caller count descending:",
1461
+ "```markdown",
1462
+ "## Deprecated APIs (N total, M still in use)",
1463
+ "",
1464
+ "### High caller count (urgent migration)",
1465
+ "- `symbolName` (K callers) — defined at <file:line>",
1466
+ " Migration: <message from JSDoc>",
1467
+ "",
1468
+ "### Low caller count (easy cleanup)",
1469
+ "- `symbolName` (1 caller) — ...",
1470
+ "",
1471
+ "### Unused (safe to delete)",
1472
+ "- `symbolName` (0 callers) — ...",
1473
+ "```",
1474
+ "",
1475
+ "Keep response under 50 lines.",
1476
+ ].join("\n"),
1477
+ },
1478
+ },
1479
+ ],
1480
+ }),
1481
+ "coverage-gap": ({ file }) => ({
1482
+ description: `Coverage gaps in ${file}`,
1483
+ messages: [
1484
+ {
1485
+ role: "user",
1486
+ content: {
1487
+ type: "text",
1488
+ text: [
1489
+ `Identify untested functions in \`${file}\` by correlating line coverage with document symbols.`,
1490
+ "",
1491
+ `1. Call \`getCodeCoverage\` for \`${file}\` to get per-line hit counts`,
1492
+ `2. Call \`getDocumentSymbols\` for \`${file}\` to map line ranges to function names`,
1493
+ "3. For each function, compute: lines covered / total lines",
1494
+ "4. Sort by coverage ascending — least-tested first",
1495
+ "",
1496
+ "Report:",
1497
+ "```",
1498
+ `## Coverage gaps in ${file}`,
1499
+ "",
1500
+ "Untested (0%):",
1501
+ " - functionName (lines L1-L2)",
1502
+ "",
1503
+ "Partial (<50%):",
1504
+ " - functionName (lines L1-L2) — N/M lines",
1505
+ "",
1506
+ "Well covered (>= 50%):",
1507
+ " - <count> functions",
1508
+ "```",
1509
+ "",
1510
+ "If `getCodeCoverage` is unavailable, say so and recommend running tests with coverage first.",
1511
+ "Keep response under 30 lines.",
1512
+ ].join("\n"),
1513
+ },
1514
+ },
1515
+ ],
1516
+ }),
983
1517
  };
984
1518
  // ── Public API ────────────────────────────────────────────────────────────────
985
1519
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"prompts.js","sourceRoot":"","sources":["../src/prompts.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"prompts.js","sourceRoot":"","sources":["../src/prompts.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "claude-ide-bridge",
3
- "version": "2.11.23",
3
+ "version": "2.12.0",
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",
@@ -0,0 +1,66 @@
1
+ {
2
+ "_comment": "Example automation policy with LSP-aware prompts. Copy to automation-policy.json and adjust as needed.",
3
+ "_usage": "Start bridge with: claude-ide-bridge --automation --automation-policy ./automation-policy.json --claude-driver subprocess",
4
+
5
+ "onFileChanged": {
6
+ "enabled": true,
7
+ "patterns": [
8
+ "**/*.{ts,tsx,js,jsx,py,go,rs}",
9
+ "!node_modules/**",
10
+ "!dist/**"
11
+ ],
12
+ "prompt": "File {{file}} was just edited. Call getChangeImpact on the changed symbols to compute blast radius. If risk is medium or high (referenceCount > 10 or callerCount > 5), also call findReferences to list the affected files. Report in ≤15 lines: risk badge, reference counts, and the top 5 most-impacted files.",
13
+ "cooldownMs": 15000
14
+ },
15
+
16
+ "onFileSave": {
17
+ "enabled": false,
18
+ "patterns": ["**/*.{ts,tsx}"],
19
+ "prompt": "{{file}} was saved. Run getDiagnostics for this file and report any new errors or warnings. If there are type errors, call getHover at the first error position to explain the expected vs actual types.",
20
+ "cooldownMs": 10000
21
+ },
22
+
23
+ "onDiagnosticsError": {
24
+ "enabled": true,
25
+ "minSeverity": "error",
26
+ "patterns": ["**/*.{ts,tsx,js,jsx}"],
27
+ "prompt": "New diagnostic errors appeared in {{file}}:\n\n{{diagnostics}}\n\nFor each error: (1) call getHover at the error position to fetch type info, (2) call explainSymbol on the failing symbol if applicable, (3) suggest the most likely fix. Keep response under 20 lines.",
28
+ "cooldownMs": 20000
29
+ },
30
+
31
+ "onBranchCheckout": {
32
+ "enabled": true,
33
+ "prompt": "Switched to branch {{branch}} (from {{previousBranch}}). Run getDiagnostics with no uri to baseline workspace health. If there are errors, call explainSymbol on the first one. Report: branch name, error count, warning count, and first error (if any).",
34
+ "cooldownMs": 30000
35
+ },
36
+
37
+ "onGitCommit": {
38
+ "enabled": true,
39
+ "prompt": "Committed {{hash}} on {{branch}}: {{message}}. Changed files: {{files}}. For each changed file: call getChangeImpact to check blast radius. If any export was removed or renamed, call findReferences to verify no broken callers remain. Report a compact post-commit health summary.",
40
+ "cooldownMs": 10000
41
+ },
42
+
43
+ "onGitPush": {
44
+ "enabled": false,
45
+ "prompt": "Pushed {{commits}} commits to {{remote}}/{{branch}}. Run getDiagnostics workspace-wide and detectUnusedCode to flag any dead exports that were pushed. Keep report under 15 lines.",
46
+ "cooldownMs": 5000
47
+ },
48
+
49
+ "onPullRequest": {
50
+ "enabled": true,
51
+ "prompt": "PR #{{number}} opened: {{title}} ({{url}}). Changed files: {{files}}. For each changed file: (1) call getChangeImpact to report blast radius, (2) call getDiagnostics to surface any new errors. Output a compact PR readiness report: risk badge per file, total error count, top 3 most-impacted downstream files.",
52
+ "cooldownMs": 5000
53
+ },
54
+
55
+ "onTestRun": {
56
+ "enabled": true,
57
+ "prompt": "Tests just ran. Results: {{results}}. For each failed test file: call getDiagnostics to check for type errors, then call getCallHierarchy (incoming) on the failing function to identify what changed upstream. Suggest the most likely root cause in ≤10 lines.",
58
+ "cooldownMs": 15000
59
+ },
60
+
61
+ "onPostCompact": {
62
+ "enabled": true,
63
+ "prompt": "Context was just compacted. Re-orient: call getProjectInfo for workspace summary, getGitStatus for current changes, and getDiagnostics to check health. Report in ≤10 lines so the session can continue smoothly.",
64
+ "cooldownMs": 60000
65
+ }
66
+ }