claude-ide-bridge 2.4.11 → 2.5.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.
- package/README.md +47 -8
- package/dist/bridge.d.ts +3 -0
- package/dist/bridge.js +31 -0
- package/dist/bridge.js.map +1 -1
- package/dist/prompts.js +2 -0
- package/dist/prompts.js.map +1 -1
- package/dist/tools/handoffNote.d.ts +17 -2
- package/dist/tools/handoffNote.js +56 -18
- package/dist/tools/handoffNote.js.map +1 -1
- package/dist/tools/index.js +2 -2
- package/dist/tools/index.js.map +1 -1
- package/package.json +1 -1
- package/scripts/gen-mcp-config.sh +15 -4
- package/scripts/install-extension.sh +6 -1
- package/scripts/start-all.sh +86 -9
- package/templates/CLAUDE.bridge.md +37 -1
- package/templates/dispatch-context.md +4 -0
- package/templates/scheduled-tasks/dependency-audit/SKILL.md +27 -2
- package/templates/scheduled-tasks/health-check/SKILL.md +19 -0
- package/templates/scheduled-tasks/nightly-review/SKILL.md +24 -0
package/README.md
CHANGED
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
[](https://github.com/Oolab-labs/claude-ide-bridge/actions/workflows/ci.yml)
|
|
5
5
|
[](https://opensource.org/licenses/MIT)
|
|
6
6
|
|
|
7
|
-
A standalone MCP bridge that gives [Claude Code](https://claude.ai/code) full IDE integration — **
|
|
7
|
+
A standalone MCP bridge that gives [Claude Code](https://claude.ai/code) full IDE integration — **136+ tools** for LSP, debugging, terminals, Git, GitHub, diagnostics, code analysis, screen capture, and more. Works with any VS Code-compatible editor (VS Code, Windsurf, Cursor) and pairs with a companion extension for real-time editor state.
|
|
8
8
|
|
|
9
9
|
## How It Works
|
|
10
10
|
|
|
@@ -34,6 +34,12 @@ Claude Code connects to the bridge, which connects to your IDE extension. Claude
|
|
|
34
34
|
|
|
35
35
|
**Prerequisites:** [Claude Code CLI](https://claude.ai/code), Node.js ≥ 20, tmux (`brew install tmux`)
|
|
36
36
|
|
|
37
|
+
> **Required env var:** Claude Code will not discover the bridge without this:
|
|
38
|
+
> ```bash
|
|
39
|
+
> export CLAUDE_CODE_IDE_SKIP_VALID_CHECK=true
|
|
40
|
+
> ```
|
|
41
|
+
> Add to your `~/.zshrc` or `~/.bashrc` to make it permanent. After that, `claude --ide` is all you need.
|
|
42
|
+
|
|
37
43
|
**Step 1 — Install the VS Code extension**
|
|
38
44
|
|
|
39
45
|
Search `oolab-labs.claude-ide-bridge-extension` in the VS Code / Windsurf / Cursor extension marketplace, or install from the command line:
|
|
@@ -52,7 +58,7 @@ cd /your/project
|
|
|
52
58
|
claude-ide-bridge
|
|
53
59
|
```
|
|
54
60
|
|
|
55
|
-
The bridge starts, writes a lock file to `~/.claude/ide/`, and waits for connections. Your editor extension connects automatically.
|
|
61
|
+
The bridge starts, writes a lock file to `~/.claude/ide/`, and waits for connections. Your editor extension connects automatically. The lock file is removed automatically when the bridge exits cleanly.
|
|
56
62
|
|
|
57
63
|
> **One bridge per workspace.** Each project directory needs its own bridge instance. If you work across multiple repos, start a separate `claude-ide-bridge` in each workspace.
|
|
58
64
|
|
|
@@ -120,12 +126,32 @@ Launches four tmux panes: health monitor, bridge, Claude Code, and remote contro
|
|
|
120
126
|
|
|
121
127
|
| Doc | What it covers |
|
|
122
128
|
|-----|----------------|
|
|
123
|
-
| **[Platform Docs](documents/platform-docs.md)** | Complete tool reference (
|
|
129
|
+
| **[Platform Docs](documents/platform-docs.md)** | Complete tool reference (136+ tools), parameters, examples |
|
|
124
130
|
| **[Data Reference](documents/data-reference.md)** | Data flows, state management, protocol details |
|
|
125
131
|
| **[Plugin Authoring](documents/plugin-authoring.md)** | Writing custom plugins — manifest schema, entrypoint API |
|
|
126
132
|
| **[Use Cases](documents/use-cases.md)** | Real-world workflows and scenarios |
|
|
127
133
|
| **[Roadmap](documents/roadmap.md)** | Planned features and development direction |
|
|
128
134
|
|
|
135
|
+
## Session Continuity
|
|
136
|
+
|
|
137
|
+
The bridge persists state across restarts and context switches (CLI ↔ Desktop ↔ Cowork).
|
|
138
|
+
|
|
139
|
+
### Handoff Notes
|
|
140
|
+
Use `setHandoffNote` to save context before switching sessions. Notes are **workspace-scoped** — switching workspaces won't overwrite each other's context. `getHandoffNote` retrieves the most recent note for your current workspace.
|
|
141
|
+
|
|
142
|
+
The bridge also auto-snapshots a basic handoff note whenever a new session connects and the existing note is stale (>5 minutes old).
|
|
143
|
+
|
|
144
|
+
### Checkpoint Restore
|
|
145
|
+
When the bridge restarts within 5 minutes of the previous run, it automatically restores the list of open files from the last session checkpoint. The first connecting client receives a notification:
|
|
146
|
+
> `Session restored from checkpoint: N file(s) tracked (checkpoint was Xs old)`
|
|
147
|
+
|
|
148
|
+
### CLI → Desktop → Cowork Workflow
|
|
149
|
+
1. **CLI session:** work normally; bridge tracks opened files
|
|
150
|
+
2. **Switching to Desktop:** call `setHandoffNote` first, or run `/mcp__bridge__cowork` to auto-collect context
|
|
151
|
+
3. **Cowork:** MCP tools are NOT available inside Cowork — the handoff note is the bridge. Always run `/mcp__bridge__cowork` in regular chat before opening Cowork (Cmd+2).
|
|
152
|
+
|
|
153
|
+
> **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.
|
|
154
|
+
|
|
129
155
|
## Full Orchestrator
|
|
130
156
|
|
|
131
157
|
The `start-all` command launches everything in a tmux session: bridge + Claude Code + remote control, with automatic health monitoring and process restart.
|
|
@@ -196,7 +222,7 @@ claude --plugin-dir ./claude-ide-bridge-plugin
|
|
|
196
222
|
| `WorktreeCreate` | Reports bridge ↔ worktree relationship; warns about LSP limitations |
|
|
197
223
|
| `SubagentStart` | Verifies bridge is alive before IDE subagents run |
|
|
198
224
|
|
|
199
|
-
##
|
|
225
|
+
## 136+ MCP Tools
|
|
200
226
|
|
|
201
227
|
### File Operations (8)
|
|
202
228
|
`openFile` · `openDiff` · `saveDocument` · `closeTab` · `closeAllDiffTabs` · `checkDocumentDirty` · `getOpenEditors` · `searchWorkspace`
|
|
@@ -263,7 +289,7 @@ Text editing · Workspace settings · File watchers · Decorations · `executeVS
|
|
|
263
289
|
| Clipboard | 2 | Mixed |
|
|
264
290
|
| HTTP | 2 | No |
|
|
265
291
|
| VS Code Integration | 10 | Yes |
|
|
266
|
-
| **Total** | **~
|
|
292
|
+
| **Total** | **~136+** | |
|
|
267
293
|
|
|
268
294
|
## MCP Prompts (Slash Commands)
|
|
269
295
|
|
|
@@ -505,6 +531,8 @@ Available tools in headless mode: file operations, git, terminals, search, CLI l
|
|
|
505
531
|
|
|
506
532
|
> **Stable tokens:** Use `--fixed-token <uuid>` (or `CLAUDE_IDE_BRIDGE_TOKEN=<uuid>`) to keep the same token across restarts. Without it, a new token is generated each time the bridge starts, requiring a config update.
|
|
507
533
|
|
|
534
|
+
> **VPS filesystem scope:** A bridge running on a VPS serves **that VPS's filesystem only**. File tools (`readFile`, `writeFile`, `searchWorkspace`, etc.) read and write files on the VPS — not on your local Mac. If you want Claude to work on files on your local machine, run the bridge locally (or use VS Code Remote-SSH, which runs both the extension and bridge on the VPS alongside your remote files).
|
|
535
|
+
|
|
508
536
|
> **Security:** `--bind 0.0.0.0` exposes the bridge to the network. Put nginx or Caddy in front with TLS before exposing to the internet. See [docs/remote-access.md](docs/remote-access.md) for a production Caddy setup.
|
|
509
537
|
|
|
510
538
|
---
|
|
@@ -630,7 +658,7 @@ Your Phone
|
|
|
630
658
|
|
|
631
659
|
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.
|
|
632
660
|
|
|
633
|
-
> **Not Cowork:** Dispatch routes through the main conversation, not a Cowork session. All
|
|
661
|
+
> **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.
|
|
634
662
|
|
|
635
663
|
### Setup
|
|
636
664
|
|
|
@@ -698,7 +726,7 @@ Team Lead (Claude Code)
|
|
|
698
726
|
└── Teammate C ──► Bridge Session 3 ──► IDE
|
|
699
727
|
```
|
|
700
728
|
|
|
701
|
-
All teammates share the same IDE and workspace. Each gets full access to all
|
|
729
|
+
All teammates share the same IDE and workspace. Each gets full access to all 136+ bridge tools.
|
|
702
730
|
|
|
703
731
|
### Setup
|
|
704
732
|
|
|
@@ -718,6 +746,7 @@ All teammates share the same IDE and workspace. Each gets full access to all 124
|
|
|
718
746
|
- **Pre-approve tools** — teammates block on permission prompts. Use `--dangerously-skip-permissions` in sandboxed environments or pre-approve common tools.
|
|
719
747
|
- **Avoid file conflicts** — assign teammates to different files/modules. The bridge doesn't lock files across sessions.
|
|
720
748
|
- **Use the team-status prompt** — the lead can call `/mcp__bridge__team-status` to see workspace state and recent activity across all sessions.
|
|
749
|
+
- **SendMessage auto-resume (≥ v2.1.77)** — As of Claude Code v2.1.77, `SendMessage` automatically resumes stopped agents instead of returning an error. You no longer need to check whether a teammate agent is running before sending it a message.
|
|
721
750
|
|
|
722
751
|
---
|
|
723
752
|
|
|
@@ -848,7 +877,7 @@ claude-ide-bridge \
|
|
|
848
877
|
|
|
849
878
|
> 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.
|
|
850
879
|
|
|
851
|
-
> **Tool availability:** All
|
|
880
|
+
> **Tool availability:** All 136+ tools are available. VS Code extension-dependent tools (LSP, debugger, editor state) require the extension to be connected on the remote machine. Without the extension, ~74 CLI tools still work (file ops, git, terminal, search, HTTP client).
|
|
852
881
|
|
|
853
882
|
### Alternatives
|
|
854
883
|
|
|
@@ -1103,6 +1132,16 @@ Occasionally a running agent or tool call hangs — the bridge is active, the ex
|
|
|
1103
1132
|
|
|
1104
1133
|
**Fix:** Stop the current process (interrupt the Claude Code session or cancel the running task), then try again. In most cases the task resumes cleanly on the second attempt. If it happens repeatedly on the same prompt, try breaking the task into smaller steps.
|
|
1105
1134
|
|
|
1135
|
+
### Tool parameters rejected with type errors in long sessions
|
|
1136
|
+
|
|
1137
|
+
After conversation compaction, deferred tools (loaded via ToolSearch) lose their input schemas, causing array/number parameters to be rejected with type errors. This is a known Claude Code bug fixed in v2.1.76.
|
|
1138
|
+
|
|
1139
|
+
**Fix:** Update Claude Code to ≥ 2.1.76:
|
|
1140
|
+
|
|
1141
|
+
```bash
|
|
1142
|
+
npm update -g @anthropic-ai/claude-code
|
|
1143
|
+
```
|
|
1144
|
+
|
|
1106
1145
|
### `start-all` launched from inside a Claude Code session
|
|
1107
1146
|
|
|
1108
1147
|
Launching `start-all` from within an active Claude Code session can cause tmux conflicts. Kill the existing tmux server first:
|
package/dist/bridge.d.ts
CHANGED
|
@@ -24,6 +24,7 @@ export declare class Bridge {
|
|
|
24
24
|
private orchestrator;
|
|
25
25
|
/** openedFiles restored from the previous-run checkpoint; consumed by the first connecting session. */
|
|
26
26
|
private restoredOpenedFiles;
|
|
27
|
+
private checkpointRestored;
|
|
27
28
|
private port;
|
|
28
29
|
private pluginTools;
|
|
29
30
|
private pluginWatcher;
|
|
@@ -32,6 +33,8 @@ export declare class Bridge {
|
|
|
32
33
|
/** Incremented each time the VS Code extension (re)connects — guards stale async callbacks. */
|
|
33
34
|
private extensionConnectionGeneration;
|
|
34
35
|
constructor(config: Config);
|
|
36
|
+
/** Write an auto-snapshot handoff note when a new first session connects, unless one was recently written. */
|
|
37
|
+
private maybeAutoSnapshotHandoff;
|
|
35
38
|
/** Debounced tools/list_changed notification — max one per 2 seconds. */
|
|
36
39
|
private sendListChanged;
|
|
37
40
|
private _buildCheckpoint;
|
package/dist/bridge.js
CHANGED
|
@@ -18,6 +18,7 @@ import { Server } from "./server.js";
|
|
|
18
18
|
import { SessionCheckpoint } from "./sessionCheckpoint.js";
|
|
19
19
|
import { StreamableHttpHandler } from "./streamableHttp.js";
|
|
20
20
|
import { initTelemetry, shutdownTelemetry } from "./telemetry.js";
|
|
21
|
+
import { readNote, writeNote } from "./tools/handoffNote.js";
|
|
21
22
|
import { registerAllTools } from "./tools/index.js";
|
|
22
23
|
import { cleanupTempDirs } from "./tools/openDiff.js";
|
|
23
24
|
import { resolveFilePath } from "./tools/utils.js";
|
|
@@ -72,6 +73,7 @@ export class Bridge {
|
|
|
72
73
|
orchestrator = null;
|
|
73
74
|
/** openedFiles restored from the previous-run checkpoint; consumed by the first connecting session. */
|
|
74
75
|
restoredOpenedFiles = null;
|
|
76
|
+
checkpointRestored = null;
|
|
75
77
|
port = 0;
|
|
76
78
|
pluginTools = [];
|
|
77
79
|
pluginWatcher = null;
|
|
@@ -110,6 +112,9 @@ export class Bridge {
|
|
|
110
112
|
ws.close(1013, "Bridge at capacity");
|
|
111
113
|
return;
|
|
112
114
|
}
|
|
115
|
+
if (this.sessions.size === 0) {
|
|
116
|
+
void this.maybeAutoSnapshotHandoff();
|
|
117
|
+
}
|
|
113
118
|
const sessionId = randomUUID();
|
|
114
119
|
const transport = new McpTransport(this.logger);
|
|
115
120
|
transport.workspace = this.config.workspace;
|
|
@@ -129,6 +134,17 @@ export class Bridge {
|
|
|
129
134
|
}
|
|
130
135
|
}, 200);
|
|
131
136
|
}
|
|
137
|
+
if (this.checkpointRestored) {
|
|
138
|
+
const { fileCount, ageSec } = this.checkpointRestored;
|
|
139
|
+
this.checkpointRestored = null;
|
|
140
|
+
if (ws.readyState === WebSocket.OPEN) {
|
|
141
|
+
McpTransport.sendNotification(ws, "notifications/message", {
|
|
142
|
+
level: "info",
|
|
143
|
+
logger: "bridge",
|
|
144
|
+
data: `Session restored from checkpoint: ${fileCount} file(s) tracked (${ageSec}s ago).`,
|
|
145
|
+
}, this.logger);
|
|
146
|
+
}
|
|
147
|
+
}
|
|
132
148
|
};
|
|
133
149
|
// Restore previously-tracked files into the first connecting session, then
|
|
134
150
|
// clear so subsequent sessions in the same run start with a clean slate.
|
|
@@ -275,6 +291,20 @@ export class Bridge {
|
|
|
275
291
|
this.sendListChanged();
|
|
276
292
|
};
|
|
277
293
|
}
|
|
294
|
+
/** Write an auto-snapshot handoff note when a new first session connects, unless one was recently written. */
|
|
295
|
+
async maybeAutoSnapshotHandoff() {
|
|
296
|
+
try {
|
|
297
|
+
const existing = await readNote(this.config.workspace);
|
|
298
|
+
if (existing && Date.now() - existing.updatedAt < 5 * 60_000) {
|
|
299
|
+
return;
|
|
300
|
+
}
|
|
301
|
+
const summary = `[auto-snapshot ${new Date().toISOString()}] Workspace: ${this.config.workspace}. Active bridge sessions: ${this.sessions.size}. Use getOpenEditors and getDiagnostics to inspect current state.`;
|
|
302
|
+
await writeNote(summary, this.config.workspace, undefined, true);
|
|
303
|
+
}
|
|
304
|
+
catch {
|
|
305
|
+
// best-effort — never let this crash the connection handler
|
|
306
|
+
}
|
|
307
|
+
}
|
|
278
308
|
/** Debounced tools/list_changed notification — max one per 2 seconds. */
|
|
279
309
|
sendListChanged() {
|
|
280
310
|
if (this.stopped)
|
|
@@ -526,6 +556,7 @@ export class Bridge {
|
|
|
526
556
|
const allFiles = extractRestoredFiles(prevCheckpoint, this.config.workspace);
|
|
527
557
|
if (allFiles.size > 0) {
|
|
528
558
|
this.restoredOpenedFiles = allFiles;
|
|
559
|
+
this.checkpointRestored = { fileCount: allFiles.size, ageSec };
|
|
529
560
|
this.logger.info(`Restored ${allFiles.size} tracked file(s) from previous session (${ageSec}s ago, port ${prevCheckpoint.port})`);
|
|
530
561
|
}
|
|
531
562
|
else {
|
package/dist/bridge.js.map
CHANGED
|
@@ -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
|
@@ -588,6 +588,8 @@ const TEMPLATES = {
|
|
|
588
588
|
content: {
|
|
589
589
|
type: "text",
|
|
590
590
|
text: [
|
|
591
|
+
"**Context check:** If bridge tools (getHandoffNote, getOpenEditors, etc.) are not in your available tools list, you are inside a Cowork session where MCP is unavailable. Exit Cowork, run this prompt in regular Claude Code or Desktop chat to collect context and set a handoff note, then return to Cowork.",
|
|
592
|
+
"",
|
|
591
593
|
"## Step 1 of 2 — Gather IDE context (you are here)",
|
|
592
594
|
"",
|
|
593
595
|
"⚠️ **Important:** Cowork (computer-use) sessions do NOT have access to MCP bridge tools.",
|
package/dist/prompts.js.map
CHANGED
|
@@ -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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"}
|
|
@@ -1,4 +1,15 @@
|
|
|
1
|
-
|
|
1
|
+
interface HandoffNote {
|
|
2
|
+
note: string;
|
|
3
|
+
updatedAt: number;
|
|
4
|
+
updatedBy: string;
|
|
5
|
+
auto?: boolean;
|
|
6
|
+
}
|
|
7
|
+
export declare function readNote(workspace?: string, configDir?: string): Promise<HandoffNote | null>;
|
|
8
|
+
export declare function writeNote(note: string, workspace?: string, configDir?: string, _auto?: boolean): Promise<void>;
|
|
9
|
+
export declare function createSetHandoffNoteTool(_sessionId: string, deps?: {
|
|
10
|
+
workspace?: string;
|
|
11
|
+
configDir?: string;
|
|
12
|
+
}): {
|
|
2
13
|
schema: {
|
|
3
14
|
name: string;
|
|
4
15
|
annotations: {
|
|
@@ -25,7 +36,10 @@ export declare function createSetHandoffNoteTool(_sessionId: string): {
|
|
|
25
36
|
}>;
|
|
26
37
|
}>;
|
|
27
38
|
};
|
|
28
|
-
export declare function createGetHandoffNoteTool(
|
|
39
|
+
export declare function createGetHandoffNoteTool(deps?: {
|
|
40
|
+
workspace?: string;
|
|
41
|
+
configDir?: string;
|
|
42
|
+
}): {
|
|
29
43
|
schema: {
|
|
30
44
|
name: string;
|
|
31
45
|
annotations: {
|
|
@@ -45,3 +59,4 @@ export declare function createGetHandoffNoteTool(): {
|
|
|
45
59
|
}>;
|
|
46
60
|
}>;
|
|
47
61
|
};
|
|
62
|
+
export {};
|
|
@@ -1,21 +1,68 @@
|
|
|
1
|
+
import crypto from "node:crypto";
|
|
1
2
|
import fs from "node:fs";
|
|
2
3
|
import os from "node:os";
|
|
3
4
|
import path from "node:path";
|
|
4
5
|
import { error, success } from "./utils.js";
|
|
5
|
-
function
|
|
6
|
-
const configDir = process.env.CLAUDE_CONFIG_DIR || path.join(os.homedir(), ".claude");
|
|
6
|
+
function getGlobalNotePath(configDir) {
|
|
7
7
|
return path.join(configDir, "ide", "handoff-note.json");
|
|
8
8
|
}
|
|
9
|
-
function
|
|
9
|
+
function workspaceScopedNotePath(workspace, configDir) {
|
|
10
|
+
const hash = crypto
|
|
11
|
+
.createHash("sha256")
|
|
12
|
+
.update(workspace)
|
|
13
|
+
.digest("hex")
|
|
14
|
+
.slice(0, 12);
|
|
15
|
+
return path.join(configDir, "ide", `handoff-note-${hash}.json`);
|
|
16
|
+
}
|
|
17
|
+
function resolveConfigDir() {
|
|
18
|
+
return process.env.CLAUDE_CONFIG_DIR || path.join(os.homedir(), ".claude");
|
|
19
|
+
}
|
|
20
|
+
function readNoteFromPath(notePath) {
|
|
10
21
|
try {
|
|
11
|
-
const raw = fs.readFileSync(
|
|
22
|
+
const raw = fs.readFileSync(notePath, "utf-8");
|
|
12
23
|
return JSON.parse(raw);
|
|
13
24
|
}
|
|
14
25
|
catch {
|
|
15
26
|
return null;
|
|
16
27
|
}
|
|
17
28
|
}
|
|
18
|
-
export function
|
|
29
|
+
export async function readNote(workspace, configDir) {
|
|
30
|
+
const dir = configDir ?? resolveConfigDir();
|
|
31
|
+
if (workspace) {
|
|
32
|
+
const scoped = readNoteFromPath(workspaceScopedNotePath(workspace, dir));
|
|
33
|
+
if (scoped !== null)
|
|
34
|
+
return scoped;
|
|
35
|
+
}
|
|
36
|
+
return readNoteFromPath(getGlobalNotePath(dir));
|
|
37
|
+
}
|
|
38
|
+
export async function writeNote(note, workspace, configDir, _auto) {
|
|
39
|
+
const dir = configDir ?? resolveConfigDir();
|
|
40
|
+
const content = {
|
|
41
|
+
note,
|
|
42
|
+
updatedAt: Date.now(),
|
|
43
|
+
updatedBy: "cli",
|
|
44
|
+
...(_auto === true ? { auto: true } : {}),
|
|
45
|
+
};
|
|
46
|
+
const contentJson = JSON.stringify(content, null, 2);
|
|
47
|
+
// Determine primary write path
|
|
48
|
+
const primaryPath = workspace
|
|
49
|
+
? workspaceScopedNotePath(workspace, dir)
|
|
50
|
+
: getGlobalNotePath(dir);
|
|
51
|
+
fs.mkdirSync(path.dirname(primaryPath), { recursive: true, mode: 0o700 });
|
|
52
|
+
fs.writeFileSync(primaryPath, contentJson, { mode: 0o600 });
|
|
53
|
+
// Dual-write to global path (best-effort) when writing to a scoped path
|
|
54
|
+
if (workspace) {
|
|
55
|
+
const globalPath = getGlobalNotePath(dir);
|
|
56
|
+
try {
|
|
57
|
+
fs.mkdirSync(path.dirname(globalPath), { recursive: true, mode: 0o700 });
|
|
58
|
+
fs.writeFileSync(globalPath, contentJson, { mode: 0o600 });
|
|
59
|
+
}
|
|
60
|
+
catch {
|
|
61
|
+
// best-effort — ignore failures on global write
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
export function createSetHandoffNoteTool(_sessionId, deps = {}) {
|
|
19
66
|
return {
|
|
20
67
|
schema: {
|
|
21
68
|
name: "setHandoffNote",
|
|
@@ -38,26 +85,17 @@ export function createSetHandoffNoteTool(_sessionId) {
|
|
|
38
85
|
if (note.length > 10_000) {
|
|
39
86
|
return error(`Note exceeds maximum length of 10,000 characters (got ${note.length}).`);
|
|
40
87
|
}
|
|
41
|
-
const notePath = getNotePath();
|
|
42
|
-
const content = {
|
|
43
|
-
note,
|
|
44
|
-
updatedAt: Date.now(),
|
|
45
|
-
updatedBy: "cli",
|
|
46
|
-
};
|
|
47
88
|
try {
|
|
48
|
-
|
|
49
|
-
fs.writeFileSync(notePath, JSON.stringify(content, null, 2), {
|
|
50
|
-
mode: 0o600,
|
|
51
|
-
});
|
|
89
|
+
await writeNote(note, deps.workspace, deps.configDir);
|
|
52
90
|
}
|
|
53
91
|
catch (err) {
|
|
54
92
|
return error(`Failed to write handoff note: ${err instanceof Error ? err.message : String(err)}`);
|
|
55
93
|
}
|
|
56
|
-
return success({ saved: true, updatedAt:
|
|
94
|
+
return success({ saved: true, updatedAt: Date.now() });
|
|
57
95
|
},
|
|
58
96
|
};
|
|
59
97
|
}
|
|
60
|
-
export function createGetHandoffNoteTool() {
|
|
98
|
+
export function createGetHandoffNoteTool(deps = {}) {
|
|
61
99
|
return {
|
|
62
100
|
schema: {
|
|
63
101
|
name: "getHandoffNote",
|
|
@@ -70,7 +108,7 @@ export function createGetHandoffNoteTool() {
|
|
|
70
108
|
},
|
|
71
109
|
},
|
|
72
110
|
handler: async (_args) => {
|
|
73
|
-
const note = readNote();
|
|
111
|
+
const note = await readNote(deps.workspace, deps.configDir);
|
|
74
112
|
if (!note) {
|
|
75
113
|
return success({
|
|
76
114
|
note: null,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"handoffNote.js","sourceRoot":"","sources":["../../src/tools/handoffNote.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAE5C,SAAS,
|
|
1
|
+
{"version":3,"file":"handoffNote.js","sourceRoot":"","sources":["../../src/tools/handoffNote.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,aAAa,CAAC;AACjC,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAE5C,SAAS,iBAAiB,CAAC,SAAiB;IAC1C,OAAO,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,KAAK,EAAE,mBAAmB,CAAC,CAAC;AAC1D,CAAC;AAED,SAAS,uBAAuB,CAAC,SAAiB,EAAE,SAAiB;IACnE,MAAM,IAAI,GAAG,MAAM;SAChB,UAAU,CAAC,QAAQ,CAAC;SACpB,MAAM,CAAC,SAAS,CAAC;SACjB,MAAM,CAAC,KAAK,CAAC;SACb,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IAChB,OAAO,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,KAAK,EAAE,gBAAgB,IAAI,OAAO,CAAC,CAAC;AAClE,CAAC;AAED,SAAS,gBAAgB;IACvB,OAAO,OAAO,CAAC,GAAG,CAAC,iBAAiB,IAAI,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,SAAS,CAAC,CAAC;AAC7E,CAAC;AASD,SAAS,gBAAgB,CAAC,QAAgB;IACxC,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,EAAE,CAAC,YAAY,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;QAC/C,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAgB,CAAC;IACxC,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,QAAQ,CAC5B,SAAkB,EAClB,SAAkB;IAElB,MAAM,GAAG,GAAG,SAAS,IAAI,gBAAgB,EAAE,CAAC;IAC5C,IAAI,SAAS,EAAE,CAAC;QACd,MAAM,MAAM,GAAG,gBAAgB,CAAC,uBAAuB,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC,CAAC;QACzE,IAAI,MAAM,KAAK,IAAI;YAAE,OAAO,MAAM,CAAC;IACrC,CAAC;IACD,OAAO,gBAAgB,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAC,CAAC;AAClD,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,SAAS,CAC7B,IAAY,EACZ,SAAkB,EAClB,SAAkB,EAClB,KAAe;IAEf,MAAM,GAAG,GAAG,SAAS,IAAI,gBAAgB,EAAE,CAAC;IAC5C,MAAM,OAAO,GAAgB;QAC3B,IAAI;QACJ,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE;QACrB,SAAS,EAAE,KAAK;QAChB,GAAG,CAAC,KAAK,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAC1C,CAAC;IACF,MAAM,WAAW,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;IAErD,+BAA+B;IAC/B,MAAM,WAAW,GAAG,SAAS;QAC3B,CAAC,CAAC,uBAAuB,CAAC,SAAS,EAAE,GAAG,CAAC;QACzC,CAAC,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAC;IAE3B,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;IAC1E,EAAE,CAAC,aAAa,CAAC,WAAW,EAAE,WAAW,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;IAE5D,wEAAwE;IACxE,IAAI,SAAS,EAAE,CAAC;QACd,MAAM,UAAU,GAAG,iBAAiB,CAAC,GAAG,CAAC,CAAC;QAC1C,IAAI,CAAC;YACH,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;YACzE,EAAE,CAAC,aAAa,CAAC,UAAU,EAAE,WAAW,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;QAC7D,CAAC;QAAC,MAAM,CAAC;YACP,gDAAgD;QAClD,CAAC;IACH,CAAC;AACH,CAAC;AAED,MAAM,UAAU,wBAAwB,CACtC,UAAkB,EAClB,OAAmD,EAAE;IAErD,OAAO;QACL,MAAM,EAAE;YACN,IAAI,EAAE,gBAAgB;YACtB,WAAW,EAAE,EAAE,eAAe,EAAE,IAAI,EAAE,cAAc,EAAE,IAAI,EAAE;YAC5D,WAAW,EACT,0TAA0T;YAC5T,WAAW,EAAE;gBACX,IAAI,EAAE,QAAiB;gBACvB,UAAU,EAAE;oBACV,IAAI,EAAE;wBACJ,IAAI,EAAE,QAAQ;wBACd,SAAS,EAAE,MAAM;wBACjB,WAAW,EACT,2IAA2I;qBAC9I;iBACF;gBACD,QAAQ,EAAE,CAAC,MAAM,CAAC;aACnB;SACF;QACD,OAAO,EAAE,KAAK,EAAE,IAA6B,EAAE,EAAE;YAC/C,MAAM,IAAI,GAAG,IAAI,CAAC,IAAc,CAAC;YACjC,IAAI,IAAI,CAAC,MAAM,GAAG,MAAM,EAAE,CAAC;gBACzB,OAAO,KAAK,CACV,yDAAyD,IAAI,CAAC,MAAM,IAAI,CACzE,CAAC;YACJ,CAAC;YACD,IAAI,CAAC;gBACH,MAAM,SAAS,CAAC,IAAI,EAAE,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;YACxD,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,OAAO,KAAK,CACV,iCAAiC,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CACpF,CAAC;YACJ,CAAC;YACD,OAAO,OAAO,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;QACzD,CAAC;KACF,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,wBAAwB,CACtC,OAAmD,EAAE;IAErD,OAAO;QACL,MAAM,EAAE;YACN,IAAI,EAAE,gBAAgB;YACtB,WAAW,EAAE,EAAE,YAAY,EAAE,IAAI,EAAE;YACnC,WAAW,EACT,sKAAsK;YACxK,WAAW,EAAE;gBACX,IAAI,EAAE,QAAiB;gBACvB,UAAU,EAAE,EAAE;gBACd,QAAQ,EAAE,EAAE;aACb;SACF;QACD,OAAO,EAAE,KAAK,EAAE,KAA8B,EAAE,EAAE;YAChD,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;YAC5D,IAAI,CAAC,IAAI,EAAE,CAAC;gBACV,OAAO,OAAO,CAAC;oBACb,IAAI,EAAE,IAAI;oBACV,OAAO,EAAE,4DAA4D;iBACtE,CAAC,CAAC;YACL,CAAC;YACD,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC;YAC1C,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,GAAG,MAAM,CAAC,CAAC;YAC9C,MAAM,QAAQ,GACZ,UAAU,GAAG,EAAE;gBACb,CAAC,CAAC,GAAG,UAAU,OAAO;gBACtB,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,GAAG,EAAE,CAAC,OAAO,CAAC;YAC5C,OAAO,OAAO,CAAC;gBACb,IAAI,EAAE,IAAI,CAAC,IAAI;gBACf,SAAS,EAAE,IAAI,CAAC,SAAS;gBACzB,SAAS,EAAE,IAAI,CAAC,SAAS;gBACzB,GAAG,EAAE,QAAQ;aACd,CAAC,CAAC;QACL,CAAC;KACF,CAAC;AACJ,CAAC"}
|
package/dist/tools/index.js
CHANGED
|
@@ -144,8 +144,8 @@ export function registerAllTools(transport, config, openedFiles, probes, extensi
|
|
|
144
144
|
// Phase 4: Additional features
|
|
145
145
|
createReadClipboardTool(extensionClient),
|
|
146
146
|
createWriteClipboardTool(extensionClient),
|
|
147
|
-
createGetHandoffNoteTool(),
|
|
148
|
-
createSetHandoffNoteTool(sessionId),
|
|
147
|
+
createGetHandoffNoteTool({ workspace: config.workspace }),
|
|
148
|
+
createSetHandoffNoteTool(sessionId, { workspace: config.workspace }),
|
|
149
149
|
createGetWorkspaceSettingsTool(extensionClient),
|
|
150
150
|
createSetWorkspaceSettingTool(extensionClient),
|
|
151
151
|
createCaptureScreenshotTool(extensionClient),
|
package/dist/tools/index.js.map
CHANGED
|
@@ -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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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "claude-ide-bridge",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.5.1",
|
|
4
4
|
"description": "Standalone MCP bridge for Claude Code IDE integration with any editor — 124+ tools for LSP, debugging, terminals, Git, GitHub, and more",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "dist/index.js",
|
|
@@ -118,8 +118,8 @@ fi
|
|
|
118
118
|
# --- Remote target: no lock file needed — caller supplies host and token ---
|
|
119
119
|
if [[ "$TARGET" == "remote" ]]; then
|
|
120
120
|
if [[ -z "$REMOTE_HOST" || -z "$REMOTE_TOKEN" ]]; then
|
|
121
|
-
echo "Error: remote target requires --host <host:port> and --token <token>" >&2
|
|
122
|
-
echo "
|
|
121
|
+
echo "Error: 'remote' target requires --host <host:port> and --token <token>" >&2
|
|
122
|
+
echo " Example: bash gen-mcp-config.sh remote --host mybridge.example.com:8080 --token abc123 --write" >&2
|
|
123
123
|
exit 1
|
|
124
124
|
fi
|
|
125
125
|
OUTPUT_PATH="${HOME}/.claude/mcp.json"
|
|
@@ -137,7 +137,9 @@ if [[ "$TARGET" == "remote" ]]; then
|
|
|
137
137
|
}
|
|
138
138
|
EOF
|
|
139
139
|
)
|
|
140
|
-
#
|
|
140
|
+
# WARNING: Ephemeral tunnels (trycloudflare.com) generate a new URL on every restart.
|
|
141
|
+
# Any MCP config using this URL will break when the tunnel restarts.
|
|
142
|
+
# For stable remote access, use a fixed domain with --fixed-token.
|
|
141
143
|
if [[ "$REMOTE_HOST" == *".trycloudflare.com"* ]]; then
|
|
142
144
|
echo "⚠️ WARNING: trycloudflare.com tunnels are ephemeral — the URL changes every time" >&2
|
|
143
145
|
echo " cloudflared restarts. Your MCP config will break on the next restart." >&2
|
|
@@ -158,6 +160,11 @@ EOF
|
|
|
158
160
|
echo "Tip: Claude Code supports \${VAR:-default} in .mcp.json. Replace the token value"
|
|
159
161
|
echo " with \${BRIDGE_TOKEN} and set BRIDGE_TOKEN in your shell profile to avoid"
|
|
160
162
|
echo " storing the token in the config file. See docs/remote-access.md for details."
|
|
163
|
+
echo ""
|
|
164
|
+
echo "⚠️ IMPORTANT: Start your bridge with --fixed-token <uuid> (or CLAUDE_IDE_BRIDGE_TOKEN=<uuid>)"
|
|
165
|
+
echo " to keep this token stable across restarts. Without it, the bridge generates a new"
|
|
166
|
+
echo " token on every restart and this MCP config will stop working immediately."
|
|
167
|
+
echo " Example: claude-ide-bridge --bind 0.0.0.0 --fixed-token \$BRIDGE_TOKEN --workspace /path/to/project"
|
|
161
168
|
if $WRITE; then
|
|
162
169
|
# Find the nearest .mcp.json (walk up from cwd, fallback to ~/.claude/mcp.json)
|
|
163
170
|
_find_mcp_json() {
|
|
@@ -271,7 +278,9 @@ PYEOF
|
|
|
271
278
|
elif command -v jq >/dev/null 2>&1; then
|
|
272
279
|
jq -r --arg f "$field" '.[$f]' "$LOCK_FILE"
|
|
273
280
|
else
|
|
274
|
-
echo "Error: python3 or jq is required to parse lock file" >&2
|
|
281
|
+
echo "Error: python3 or jq is required to parse the bridge lock file." >&2
|
|
282
|
+
echo " Install python3: brew install python3 (macOS) or apt install python3 (Linux)" >&2
|
|
283
|
+
echo " Install jq: brew install jq (macOS) or apt install jq (Linux)" >&2
|
|
275
284
|
exit 1
|
|
276
285
|
fi
|
|
277
286
|
}
|
|
@@ -369,6 +378,8 @@ if $WRITE; then
|
|
|
369
378
|
echo "Backed up existing config to $(basename "$BACKUP")"
|
|
370
379
|
fi
|
|
371
380
|
# Atomic write via tmp file to prevent partial writes on interrupt
|
|
381
|
+
TMP_FILE="$(mktemp)"
|
|
382
|
+
trap 'rm -f "$TMP_FILE"' EXIT
|
|
372
383
|
TMP_PATH="${OUTPUT_PATH}.tmp"
|
|
373
384
|
printf '%s\n' "$CONFIG" > "$TMP_PATH"
|
|
374
385
|
mv "$TMP_PATH" "$OUTPUT_PATH"
|
|
@@ -86,6 +86,10 @@ if $DO_BUILD; then
|
|
|
86
86
|
fi
|
|
87
87
|
|
|
88
88
|
# --- Find the VSIX ---
|
|
89
|
+
VSIX_COUNT=$(ls "$VSIX_DIR"/*.vsix 2>/dev/null | wc -l | tr -d ' ')
|
|
90
|
+
if [ "$VSIX_COUNT" -gt 1 ]; then
|
|
91
|
+
echo "Warning: Found $VSIX_COUNT .vsix files — using newest. Run with --build to rebuild." >&2
|
|
92
|
+
fi
|
|
89
93
|
VSIX=$(ls -t "$VSIX_DIR"/*.vsix 2>/dev/null | head -1)
|
|
90
94
|
if [[ -z "$VSIX" ]]; then
|
|
91
95
|
echo "Error: No .vsix file found in $VSIX_DIR" >&2
|
|
@@ -94,8 +98,9 @@ if [[ -z "$VSIX" ]]; then
|
|
|
94
98
|
fi
|
|
95
99
|
|
|
96
100
|
echo "Installing $(basename "$VSIX") into $IDE..."
|
|
101
|
+
# --force reinstalls even if already installed (needed for upgrades)
|
|
97
102
|
"$INSTALL_CMD" --install-extension "$VSIX" --force
|
|
98
103
|
|
|
99
104
|
echo ""
|
|
100
|
-
echo "Done.
|
|
105
|
+
echo "Done. To activate: restart your IDE, or open the Command Palette (Cmd+Shift+P on Mac / Ctrl+Shift+P on Windows/Linux) and run 'Developer: Reload Window'."
|
|
101
106
|
echo "The extension will auto-connect to any running bridge."
|
package/scripts/start-all.sh
CHANGED
|
@@ -8,25 +8,43 @@
|
|
|
8
8
|
# 2 — claude --ide (Claude Code CLI, connects to bridge for IDE tools)
|
|
9
9
|
# 3 — claude remote-control --spawn=session (exposes the workspace to claude.ai;
|
|
10
10
|
# spawned sessions auto-discover the bridge via ~/.claude/ide/*.lock)
|
|
11
|
+
# 4 — SSH reverse tunnel to VPS (optional, enabled with --vps <user@host:port>)
|
|
12
|
+
# Forwards VPS_PORT on the remote host back to the local bridge port.
|
|
13
|
+
# Allows claude.ai integrations to use a static VPS URL instead of a
|
|
14
|
+
# rotating remote-control session URL.
|
|
11
15
|
#
|
|
12
16
|
# Usage:
|
|
13
|
-
# ./scripts/start-all.sh [--workspace <path>] [--notify <ntfy-topic>]
|
|
17
|
+
# ./scripts/start-all.sh [--workspace <path>] [--notify <ntfy-topic>] [--vps <user@host:port>]
|
|
14
18
|
# npm run start-all -- --workspace /path/to/project
|
|
15
19
|
#
|
|
20
|
+
# Options:
|
|
21
|
+
# --workspace <path> Directory to open in Claude (default: current directory)
|
|
22
|
+
# --notify <topic> Push notifications via ntfy.sh when remote-control connects or
|
|
23
|
+
# the bridge restarts. Free, no account needed — pick any topic
|
|
24
|
+
# name and subscribe at ntfy.sh/<topic> or in the ntfy mobile app.
|
|
25
|
+
# Example: --notify my-claude-alerts
|
|
26
|
+
# The session URL is pushed automatically on each (re)connect,
|
|
27
|
+
# so Dispatch always has the current link without manual copy/paste.
|
|
28
|
+
# --vps <user@host> SSH reverse tunnel: forward a VPS port back to the local bridge,
|
|
29
|
+
# enabling a stable public URL for claude.ai integrations.
|
|
30
|
+
#
|
|
16
31
|
# Controls:
|
|
17
32
|
# Ctrl+C in any pane — stops that process only
|
|
18
|
-
# Ctrl+B, D
|
|
33
|
+
# Ctrl+B then D (press Ctrl+B, release, then press D) — detach (everything keeps running)
|
|
19
34
|
# tmux kill-session -t claude-all — stop everything
|
|
20
35
|
|
|
21
36
|
set -uo pipefail
|
|
22
37
|
|
|
38
|
+
trap 'echo "[orchestrator] Caught signal, stopping all panes..."; tmux kill-session -t "${SESSION:-claude-all}" 2>/dev/null; exit 0' SIGINT SIGTERM
|
|
39
|
+
|
|
23
40
|
SESSION="claude-all"
|
|
24
41
|
SCRIPT_PATH="$(cd "$(dirname "$0")" && pwd)/$(basename "$0")"
|
|
25
42
|
BRIDGE_DIR="$(cd "$(dirname "$0")/.." && pwd)"
|
|
26
43
|
WORKSPACE="."
|
|
27
44
|
NTFY_TOPIC=""
|
|
28
45
|
IDE_NAME=""
|
|
29
|
-
|
|
46
|
+
VPS=""
|
|
47
|
+
BRIDGE_READY_TIMEOUT="${BRIDGE_READY_TIMEOUT:-30}"
|
|
30
48
|
LAST_CLAUDE_RESTART=0
|
|
31
49
|
RESTART_COUNT=0
|
|
32
50
|
RESTART_DELAY=5
|
|
@@ -38,10 +56,15 @@ while [[ $# -gt 0 ]]; do
|
|
|
38
56
|
--workspace) WORKSPACE="$2"; shift 2 ;;
|
|
39
57
|
--notify) NTFY_TOPIC="$2"; shift 2 ;;
|
|
40
58
|
--ide) IDE_NAME="$2"; shift 2 ;;
|
|
59
|
+
--vps) VPS="$2"; shift 2 ;;
|
|
41
60
|
*) echo "Unknown option: $1" >&2; exit 1 ;;
|
|
42
61
|
esac
|
|
43
62
|
done
|
|
44
63
|
WORKSPACE="$(cd "$WORKSPACE" && pwd)" || { echo "Error: workspace directory not found" >&2; exit 1; }
|
|
64
|
+
if [ ! -d "$WORKSPACE" ]; then
|
|
65
|
+
echo "Error: workspace directory does not exist: $WORKSPACE" >&2
|
|
66
|
+
exit 1
|
|
67
|
+
fi
|
|
45
68
|
|
|
46
69
|
# --- Dependency checks ---
|
|
47
70
|
command -v tmux >/dev/null 2>&1 || {
|
|
@@ -65,14 +88,14 @@ if [[ -z "${TMUX:-}" ]]; then
|
|
|
65
88
|
fi
|
|
66
89
|
# Create session detached, re-run this script inside it, then attach
|
|
67
90
|
tmux new-session -d -s "$SESSION" -x 200 -y 50
|
|
68
|
-
tmux send-keys -t "$SESSION" "\"$SCRIPT_PATH\" --workspace \"$WORKSPACE\"$([ -n "$NTFY_TOPIC" ] && echo " --notify \"$NTFY_TOPIC\"")$([ -n "$IDE_NAME" ] && echo " --ide \"$IDE_NAME\"")" Enter
|
|
91
|
+
tmux send-keys -t "$SESSION" "\"$SCRIPT_PATH\" --workspace \"$WORKSPACE\"$([ -n "$NTFY_TOPIC" ] && echo " --notify \"$NTFY_TOPIC\"")$([ -n "$IDE_NAME" ] && echo " --ide \"$IDE_NAME\"")$([ -n "$VPS" ] && echo " --vps \"$VPS\"")" Enter
|
|
69
92
|
exec tmux attach -t "$SESSION"
|
|
70
93
|
fi
|
|
71
94
|
|
|
72
95
|
# --- We're inside tmux now (running in pane 0) ---
|
|
73
96
|
echo "=== Claude IDE Bridge Full Orchestrator ==="
|
|
74
97
|
echo " Ctrl+C in any pane — stops that process"
|
|
75
|
-
echo " Ctrl+B, D — detach (keeps running)"
|
|
98
|
+
echo " Ctrl+B then D (press Ctrl+B, release, then press D) — detach (keeps running)"
|
|
76
99
|
echo " tmux kill-session -t $SESSION — stop everything"
|
|
77
100
|
[[ -n "$NTFY_TOPIC" ]] && echo " Push notifications: ntfy.sh/$NTFY_TOPIC"
|
|
78
101
|
echo ""
|
|
@@ -124,6 +147,43 @@ SESSION_DISPLAY_NAME="bridge:${WS_BASENAME}"
|
|
|
124
147
|
# Ensures PostToolUse/SessionEnd hook payloads are delivered even during graceful shutdown.
|
|
125
148
|
CLAUDE_CMD="cd $(printf '%q' "$WORKSPACE") && unset CLAUDECODE && CLAUDE_CODE_IDE_SKIP_VALID_CHECK=true CLAUDE_CODE_SESSIONEND_HOOKS_TIMEOUT_MS=10000 claude --ide --name $(printf '%q' "$SESSION_DISPLAY_NAME")"
|
|
126
149
|
|
|
150
|
+
# --- SSH reverse tunnel command (pane 4, only when --vps is set) ---
|
|
151
|
+
# Format: --vps user@host:remote_port (e.g. root@185.220.204.65:9000)
|
|
152
|
+
# The tunnel forwards remote_port on the VPS back to the local bridge port,
|
|
153
|
+
# so a static MCP URL on the VPS proxies directly to the local bridge.
|
|
154
|
+
TUNNEL_CMD=""
|
|
155
|
+
if [[ -n "$VPS" ]]; then
|
|
156
|
+
VPS_HOST="${VPS%:*}" # everything before the last colon
|
|
157
|
+
VPS_PORT="${VPS##*:}" # everything after the last colon
|
|
158
|
+
# Derive local bridge port from lock file at startup time (resolved later after bridge starts)
|
|
159
|
+
# We use a wrapper that reads the port dynamically so restarts pick up new ports automatically.
|
|
160
|
+
TUNNEL_CMD="bash -c '
|
|
161
|
+
delay=5; max_delay=60; failures=0
|
|
162
|
+
while true; do
|
|
163
|
+
# Read current bridge port from the newest lock file
|
|
164
|
+
LOCAL_PORT=\$(ls -t ~/.claude/ide/*.lock 2>/dev/null | head -1 | xargs -I{} python3 -c \"import json,sys; d=json.load(open(sys.argv[1])); print(d.get(\\\"port\\\", \\\"\\\"))\" {} 2>/dev/null || echo \"\")
|
|
165
|
+
# Fall back to basename of lock file (port is the filename)
|
|
166
|
+
if [[ -z \"\$LOCAL_PORT\" ]]; then
|
|
167
|
+
LOCAL_PORT=\$(ls -t ~/.claude/ide/*.lock 2>/dev/null | head -1 | xargs basename 2>/dev/null | sed \"s/.lock//\")
|
|
168
|
+
fi
|
|
169
|
+
if [[ -z \"\$LOCAL_PORT\" ]]; then
|
|
170
|
+
echo \"[\$(date +%H:%M:%S)] No bridge lock file found, retrying in \${delay}s...\"
|
|
171
|
+
sleep \$delay; continue
|
|
172
|
+
fi
|
|
173
|
+
echo \"[\$(date +%H:%M:%S)] Opening SSH tunnel: ${VPS_HOST} port ${VPS_PORT} -> localhost:\$LOCAL_PORT\"
|
|
174
|
+
ssh -o StrictHostKeyChecking=no -o ServerAliveInterval=30 -o ServerAliveCountMax=3 \
|
|
175
|
+
-o ExitOnForwardFailure=yes -o BatchMode=yes \
|
|
176
|
+
-R 0.0.0.0:${VPS_PORT}:localhost:\$LOCAL_PORT -N ${VPS_HOST}
|
|
177
|
+
code=\$?
|
|
178
|
+
[ \$code -eq 130 ] && { echo \"Exited by Ctrl+C.\"; exit 0; }
|
|
179
|
+
failures=\$((failures+1))
|
|
180
|
+
[ \$failures -ge 20 ] && { echo \"Too many tunnel failures. Giving up.\"; exit 1; }
|
|
181
|
+
echo \"[\$(date +%H:%M:%S)] Tunnel disconnected (exit \$code). Reconnecting in \${delay}s...\"
|
|
182
|
+
sleep \$delay
|
|
183
|
+
[ \$delay -lt \$max_delay ] && delay=\$((delay*2))
|
|
184
|
+
done'"
|
|
185
|
+
fi
|
|
186
|
+
|
|
127
187
|
# Export for subshell access
|
|
128
188
|
export NTFY_TOPIC
|
|
129
189
|
|
|
@@ -157,10 +217,11 @@ while true; do
|
|
|
157
217
|
sleep \$delay
|
|
158
218
|
done'"
|
|
159
219
|
|
|
160
|
-
# --- Create
|
|
220
|
+
# --- Create additional panes (pane 0 = orchestrator, 1 = bridge, 2 = claude, 3 = remote-control, 4 = ssh tunnel) ---
|
|
161
221
|
tmux split-window -v -t "$SESSION" # pane 1 for bridge
|
|
162
222
|
tmux split-window -v -t "$SESSION" # pane 2 for claude --ide
|
|
163
223
|
tmux split-window -v -t "$SESSION" # pane 3 for claude remote-control
|
|
224
|
+
[[ -n "$TUNNEL_CMD" ]] && tmux split-window -v -t "$SESSION" # pane 4 for ssh tunnel (optional)
|
|
164
225
|
tmux select-layout -t "$SESSION" even-vertical
|
|
165
226
|
|
|
166
227
|
# --- Helper: wait for a NEW lock file (ignores pre-existing ones) ---
|
|
@@ -239,6 +300,12 @@ sleep 3
|
|
|
239
300
|
# Pane 3: Remote control with auto-restart loop
|
|
240
301
|
tmux send-keys -t "${SESSION}:0.3" "$REMOTE_CMD" Enter
|
|
241
302
|
|
|
303
|
+
# Pane 4: SSH reverse tunnel (only if --vps was set)
|
|
304
|
+
if [[ -n "$TUNNEL_CMD" ]]; then
|
|
305
|
+
notify "Starting SSH tunnel to ${VPS}..."
|
|
306
|
+
tmux send-keys -t "${SESSION}:0.4" "$TUNNEL_CMD" Enter
|
|
307
|
+
fi
|
|
308
|
+
|
|
242
309
|
# --- Health monitor (runs in pane 0 — the orchestrator pane) ---
|
|
243
310
|
echo ""
|
|
244
311
|
echo "Health monitor active. Watching: $(basename "$LOCK_FILE")"
|
|
@@ -251,22 +318,27 @@ cleanup() {
|
|
|
251
318
|
tmux send-keys -t "${SESSION}:0.1" C-c 2>/dev/null
|
|
252
319
|
tmux send-keys -t "${SESSION}:0.2" C-c 2>/dev/null
|
|
253
320
|
tmux send-keys -t "${SESSION}:0.3" C-c 2>/dev/null
|
|
321
|
+
[[ -n "$TUNNEL_CMD" ]] && tmux send-keys -t "${SESSION}:0.4" C-c 2>/dev/null
|
|
254
322
|
# Wait up to 5s for panes to exit gracefully, then force-kill
|
|
323
|
+
local panes=(1 2 3)
|
|
324
|
+
[[ -n "$TUNNEL_CMD" ]] && panes=(1 2 3 4)
|
|
255
325
|
for _ in $(seq 1 5); do
|
|
256
326
|
sleep 1
|
|
257
327
|
all_idle=true
|
|
258
|
-
for pane in
|
|
328
|
+
for pane in "${panes[@]}"; do
|
|
259
329
|
cmd=$(tmux display-message -t "${SESSION}:0.${pane}" -p '#{pane_current_command}' 2>/dev/null || echo "")
|
|
260
330
|
[[ "$cmd" != "bash" && "$cmd" != "zsh" && -n "$cmd" ]] && { all_idle=false; break; }
|
|
261
331
|
done
|
|
262
332
|
$all_idle && break
|
|
263
333
|
done
|
|
264
334
|
# Force-kill any remaining panes
|
|
265
|
-
for pane in
|
|
335
|
+
for pane in "${panes[@]}"; do
|
|
266
336
|
tmux send-keys -t "${SESSION}:0.${pane}" C-c 2>/dev/null || true
|
|
267
337
|
done
|
|
268
338
|
sleep 1
|
|
269
|
-
|
|
339
|
+
local rpanes=(3 2 1)
|
|
340
|
+
[[ -n "$TUNNEL_CMD" ]] && rpanes=(4 3 2 1)
|
|
341
|
+
for pane in "${rpanes[@]}"; do
|
|
270
342
|
tmux kill-pane -t "${SESSION}:0.${pane}" 2>/dev/null || true
|
|
271
343
|
done
|
|
272
344
|
}
|
|
@@ -282,6 +354,7 @@ while true; do
|
|
|
282
354
|
tmux send-keys -t "${SESSION}:0.1" C-c
|
|
283
355
|
tmux send-keys -t "${SESSION}:0.2" C-c
|
|
284
356
|
tmux send-keys -t "${SESSION}:0.3" C-c
|
|
357
|
+
[[ -n "$TUNNEL_CMD" ]] && tmux send-keys -t "${SESSION}:0.4" C-c
|
|
285
358
|
# Wait for bridge (pane 1) and claude (pane 2) to actually stop
|
|
286
359
|
for _ in $(seq 1 10); do
|
|
287
360
|
pane1_cmd=$(tmux display-message -t "${SESSION}:0.1" -p '#{pane_current_command}' 2>/dev/null || echo "")
|
|
@@ -344,6 +417,10 @@ while true; do
|
|
|
344
417
|
sleep 3
|
|
345
418
|
# Restart remote-control
|
|
346
419
|
tmux send-keys -t "${SESSION}:0.3" "$REMOTE_CMD" Enter
|
|
420
|
+
# Restart SSH tunnel (port may have changed — tunnel cmd reads lock file dynamically)
|
|
421
|
+
if [[ -n "$TUNNEL_CMD" ]]; then
|
|
422
|
+
tmux send-keys -t "${SESSION}:0.4" "$TUNNEL_CMD" Enter
|
|
423
|
+
fi
|
|
347
424
|
notify "All processes restarted"
|
|
348
425
|
else
|
|
349
426
|
# Bridge is alive — check if Claude CLI (pane 2) has exited
|
|
@@ -63,6 +63,8 @@ Path globs on rule files mean Claude only loads them when working on matching fi
|
|
|
63
63
|
|
|
64
64
|
### Dispatch prompts (mobile)
|
|
65
65
|
|
|
66
|
+
When a terse message arrives via Claude Desktop Dispatch (phone/Siri), Claude automatically routes it to the appropriate bridge prompt. You can also invoke these prompts directly by name in any chat.
|
|
67
|
+
|
|
66
68
|
When responding to terse Dispatch messages from a phone, use these prompts for consistent, concise output:
|
|
67
69
|
|
|
68
70
|
| Phone message | Prompt | Tools called |
|
|
@@ -82,4 +84,38 @@ Keep responses concise (under 20 lines) when the conversation arrives via Dispat
|
|
|
82
84
|
| Team lead checking on parallel agents | `team-status` | Workspace state, active tasks, recent activity across sessions |
|
|
83
85
|
| Scheduled nightly/hourly health check | `health-check` | Tests + diagnostics + security advisories + git status |
|
|
84
86
|
|
|
85
|
-
|
|
87
|
+
> Prerequisite for `team-status`: multiple Claude Code sessions must be connected simultaneously. Solo sessions will show empty team activity.
|
|
88
|
+
|
|
89
|
+
> **Claude Code ≥ v2.1.77**: `SendMessage` auto-resumes stopped agents — no need to check whether a teammate is running before sending to it.
|
|
90
|
+
|
|
91
|
+
Ready-made scheduled task templates are available in `templates/scheduled-tasks/` — copy to `~/.claude/scheduled-tasks/` for recurring autonomous workflows (nightly-review, health-check, dependency-audit):
|
|
92
|
+
|
|
93
|
+
```bash
|
|
94
|
+
cp templates/scheduled-tasks/health-check/SKILL.md ~/.claude/scheduled-tasks/health-check.md
|
|
95
|
+
```
|
|
96
|
+
|
|
97
|
+
(And restart Claude Desktop to detect it.)
|
|
98
|
+
|
|
99
|
+
### Cowork (computer-use)
|
|
100
|
+
|
|
101
|
+
**MCP bridge tools are NOT available inside Cowork sessions.** Always run `/mcp__bridge__cowork` in a regular Claude Code or Claude Desktop chat first to gather context and write a handoff note, then open Cowork.
|
|
102
|
+
|
|
103
|
+
Workflow:
|
|
104
|
+
1. Regular chat: run `/mcp__bridge__cowork` → Claude collects IDE state → calls `setHandoffNote`
|
|
105
|
+
2. Open Cowork (Cmd+2 on Mac) → Cowork reads the handoff note for context
|
|
106
|
+
|
|
107
|
+
**If bridge tools are missing from your tool list inside Cowork:** you're in the wrong context. Exit, run the prompt in regular chat, then return.
|
|
108
|
+
|
|
109
|
+
Full details: [docs/cowork-workflow.md](docs/cowork-workflow.md)
|
|
110
|
+
|
|
111
|
+
**Cowork uses git worktrees:** Cowork sessions operate in an isolated git worktree (separate branch/working copy), not the main workspace root. Files written by Cowork land in the worktree. Always add "write all files to the workspace root, not a subdirectory" as the first instruction in your CLAUDE.md when using Cowork with a synced workspace. After Cowork finishes, review and merge the worktree branch back to main.
|
|
112
|
+
|
|
113
|
+
### Session continuity
|
|
114
|
+
|
|
115
|
+
| Scenario | Action |
|
|
116
|
+
|---|---|
|
|
117
|
+
| Switching CLI → Desktop | Call `setHandoffNote` before switching; bridge auto-snapshots if note is >5 min stale |
|
|
118
|
+
| Session just started | Call `getHandoffNote` to pick up prior context (workspace-scoped) |
|
|
119
|
+
| Bridge restarted | First connected client receives a "restored from checkpoint" notification |
|
|
120
|
+
| Preparing for Cowork | Run `/mcp__bridge__cowork` in regular chat first — Cowork has no MCP access |
|
|
121
|
+
| Multi-workspace | Notes are workspace-scoped; switching workspaces won't overwrite each other's notes |
|
|
@@ -27,3 +27,7 @@ When the user message is short (< 20 words), assume it's from Dispatch (phone) a
|
|
|
27
27
|
## Available tools
|
|
28
28
|
|
|
29
29
|
124+ MCP tools across: file ops, git, GitHub, LSP, diagnostics, testing, debugging, terminals, security audits, and more. Call `getToolCapabilities` if unsure what's available.
|
|
30
|
+
|
|
31
|
+
## Scripted / automated `-p` calls
|
|
32
|
+
|
|
33
|
+
For non-interactive scripted invocations using `-p`, pass `--bare` (Claude Code ≥ 2.1.81) to skip hooks, LSP initialization, and plugin sync. This reduces startup overhead significantly for fast one-shot automation.
|
|
@@ -1,3 +1,20 @@
|
|
|
1
|
+
## Installation
|
|
2
|
+
|
|
3
|
+
Copy this template to your Claude Desktop scheduled-tasks directory:
|
|
4
|
+
|
|
5
|
+
```bash
|
|
6
|
+
mkdir -p ~/.claude/scheduled-tasks/dependency-audit
|
|
7
|
+
cp /path/to/claude-ide-bridge/templates/scheduled-tasks/dependency-audit/SKILL.md \
|
|
8
|
+
~/.claude/scheduled-tasks/dependency-audit/SKILL.md
|
|
9
|
+
```
|
|
10
|
+
|
|
11
|
+
Then restart Claude Desktop to detect the new scheduled task. Configure the schedule in Claude Desktop settings under "Scheduled Tasks".
|
|
12
|
+
|
|
13
|
+
> The bridge must be running when this task fires. Start it with `claude-ide-bridge --watch` or `npm run start-all`.
|
|
14
|
+
|
|
15
|
+
> **Emergency stop**: Set `CLAUDE_CODE_DISABLE_CRON=1` in your environment to immediately halt all scheduled cron jobs mid-session. Useful if a task runs amok or you need to suppress scheduled runs temporarily.
|
|
16
|
+
|
|
17
|
+
---
|
|
1
18
|
---
|
|
2
19
|
name: dependency-audit
|
|
3
20
|
description: Scan dependencies for security vulnerabilities and outdated packages. Run weekly via Claude Desktop scheduled tasks.
|
|
@@ -35,7 +52,8 @@ Scan all project dependencies for known security vulnerabilities.
|
|
|
35
52
|
<package@version — description>
|
|
36
53
|
|
|
37
54
|
## Outdated Packages
|
|
38
|
-
<package — current → latest> (only
|
|
55
|
+
<package — current → latest> (only packages ≥1 major version OR ≥3 minor versions behind)
|
|
56
|
+
Direct: listed in package.json. Transitive: pulled in by direct dependencies.
|
|
39
57
|
|
|
40
58
|
## Recommended Actions
|
|
41
59
|
1. <specific upgrade command or action>
|
|
@@ -44,9 +62,16 @@ Scan all project dependencies for known security vulnerabilities.
|
|
|
44
62
|
## Overall: SECURE | REVIEW NEEDED | ACTION REQUIRED
|
|
45
63
|
```
|
|
46
64
|
|
|
65
|
+
## Grading Criteria
|
|
66
|
+
|
|
67
|
+
- **SECURE** — 0 vulnerabilities + ≤2 patch-level outdated packages
|
|
68
|
+
- **REVIEW NEEDED** — 1-2 moderate advisories OR ≥3 outdated packages
|
|
69
|
+
- **ACTION REQUIRED** — any critical/high vulnerability
|
|
70
|
+
|
|
47
71
|
## Guidelines
|
|
48
72
|
|
|
49
73
|
- Focus on actionable findings — skip informational-only advisories
|
|
74
|
+
- Report only packages ≥1 major version OR ≥3 minor versions behind as "outdated"
|
|
75
|
+
- Direct dependencies: listed in package.json. Transitive: pulled in by direct dependencies. Flag transitive dependencies separately.
|
|
50
76
|
- For each vulnerability, include the fix command if one exists (e.g., `npm install package@version`)
|
|
51
77
|
- If no vulnerabilities found, report "All clear — 0 vulnerabilities across N dependencies"
|
|
52
|
-
- Flag transitive dependencies separately from direct dependencies
|
|
@@ -1,3 +1,20 @@
|
|
|
1
|
+
## Installation
|
|
2
|
+
|
|
3
|
+
Copy this template to your Claude Desktop scheduled-tasks directory:
|
|
4
|
+
|
|
5
|
+
```bash
|
|
6
|
+
mkdir -p ~/.claude/scheduled-tasks/health-check
|
|
7
|
+
cp /path/to/claude-ide-bridge/templates/scheduled-tasks/health-check/SKILL.md \
|
|
8
|
+
~/.claude/scheduled-tasks/health-check/SKILL.md
|
|
9
|
+
```
|
|
10
|
+
|
|
11
|
+
Then restart Claude Desktop to detect the new scheduled task. Configure the schedule in Claude Desktop settings under "Scheduled Tasks".
|
|
12
|
+
|
|
13
|
+
> The bridge must be running when this task fires. Start it with `claude-ide-bridge --watch` or `npm run start-all`.
|
|
14
|
+
|
|
15
|
+
> **Emergency stop**: Set `CLAUDE_CODE_DISABLE_CRON=1` in your environment to immediately halt all scheduled cron jobs mid-session. Useful if a task runs amok or you need to suppress scheduled runs temporarily.
|
|
16
|
+
|
|
17
|
+
---
|
|
1
18
|
---
|
|
2
19
|
name: health-check
|
|
3
20
|
description: Comprehensive project health — tests, diagnostics, security, and git status. Run hourly or daily via Claude Desktop scheduled tasks.
|
|
@@ -50,5 +67,7 @@ Advisories: <N critical, M high, K moderate | None>
|
|
|
50
67
|
## Guidelines
|
|
51
68
|
|
|
52
69
|
- If `getSecurityAdvisories` or `auditDependencies` are unavailable, note "Security: not checked (tools unavailable)"
|
|
70
|
+
- For security advisories, report only HIGH and CRITICAL severity. Moderate/low can be logged but don't affect the grade.
|
|
53
71
|
- This runs unattended — no interactive prompts, no questions
|
|
54
72
|
- Keep the report structured and scannable
|
|
73
|
+
- Avoid emojis in automated reports for clarity.
|
|
@@ -1,3 +1,20 @@
|
|
|
1
|
+
## Installation
|
|
2
|
+
|
|
3
|
+
Copy this template to your Claude Desktop scheduled-tasks directory:
|
|
4
|
+
|
|
5
|
+
```bash
|
|
6
|
+
mkdir -p ~/.claude/scheduled-tasks/nightly-review
|
|
7
|
+
cp /path/to/claude-ide-bridge/templates/scheduled-tasks/nightly-review/SKILL.md \
|
|
8
|
+
~/.claude/scheduled-tasks/nightly-review/SKILL.md
|
|
9
|
+
```
|
|
10
|
+
|
|
11
|
+
Then restart Claude Desktop to detect the new scheduled task. Configure the schedule in Claude Desktop settings under "Scheduled Tasks".
|
|
12
|
+
|
|
13
|
+
> The bridge must be running when this task fires. Start it with `claude-ide-bridge --watch` or `npm run start-all`.
|
|
14
|
+
|
|
15
|
+
> **Emergency stop**: Set `CLAUDE_CODE_DISABLE_CRON=1` in your environment to immediately halt all scheduled cron jobs mid-session. Useful if a task runs amok or you need to suppress scheduled runs temporarily.
|
|
16
|
+
|
|
17
|
+
---
|
|
1
18
|
---
|
|
2
19
|
name: nightly-review
|
|
3
20
|
description: Review uncommitted changes, check diagnostics, and summarize test status. Run nightly via Claude Desktop scheduled tasks.
|
|
@@ -25,6 +42,7 @@ Uncommitted: <N files changed, M insertions, K deletions>
|
|
|
25
42
|
|
|
26
43
|
## Changes Summary
|
|
27
44
|
<file-by-file summary, 1 line per file: what changed and why it looks correct or concerning>
|
|
45
|
+
Example: `src/bridge.ts: Added error handling for stale connections (+12 lines)`
|
|
28
46
|
|
|
29
47
|
## Diagnostics
|
|
30
48
|
<N errors, M warnings — list files with errors>
|
|
@@ -38,6 +56,12 @@ Uncommitted: <N files changed, M insertions, K deletions>
|
|
|
38
56
|
<1-3 sentences summarizing the overall state and any recommended actions>
|
|
39
57
|
```
|
|
40
58
|
|
|
59
|
+
## Action Matrix
|
|
60
|
+
|
|
61
|
+
- **CLEAN** — no action needed
|
|
62
|
+
- **NEEDS ATTENTION** — leave a note for the next session
|
|
63
|
+
- **BROKEN** — flag immediately
|
|
64
|
+
|
|
41
65
|
## Guidelines
|
|
42
66
|
|
|
43
67
|
- Be thorough but concise — this report is read the next morning
|