claude-ide-bridge 2.1.15 → 2.1.16

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
@@ -359,6 +359,46 @@ claude-ide-bridge install-extension cursor
359
359
  bash scripts/install-extension.sh --ide <name>
360
360
  ```
361
361
 
362
+ ## Remote Desktop IDEs
363
+
364
+ Run the bridge on a VPS with the IDE on your local machine — full tools, no compromise.
365
+
366
+ ### VS Code Remote-SSH / Cursor SSH (recommended)
367
+
368
+ When you connect VS Code or Cursor to a VPS via SSH, the extension host runs on the VPS. The bridge extension runs there too — it spawns the bridge, polls lock files, and connects over VPS localhost. Nothing needs to change on your end.
369
+
370
+ **Setup:**
371
+ 1. Install the extension in VS Code/Cursor locally (it will auto-install on the VPS via SSH)
372
+ 2. Connect via Remote-SSH and open your VPS workspace
373
+ 3. The extension activates on the VPS, auto-installs `claude-ide-bridge` if needed, and starts the bridge
374
+ 4. Claude Code on your local machine connects normally via the lock file
375
+
376
+ All tools are available — LSP, debugger, terminals, git, diagnostics — because the extension runs alongside the bridge on the same machine.
377
+
378
+ ### Headless VPS (no IDE, CLI tools only)
379
+
380
+ For VPS environments without VS Code (e.g. JetBrains Gateway, or a pure server setup):
381
+
382
+ ```bash
383
+ # On the VPS — start bridge bound to all interfaces
384
+ claude-ide-bridge --bind 0.0.0.0 --port 9000 --workspace /path/to/project
385
+
386
+ # Get the auth token
387
+ claude-ide-bridge print-token --port 9000
388
+ ```
389
+
390
+ ```bash
391
+ # On your local machine — generate and write the MCP config
392
+ bash scripts/gen-mcp-config.sh remote \
393
+ --host your-vps-ip:9000 \
394
+ --token <token-from-above> \
395
+ --write
396
+ ```
397
+
398
+ > **Security:** `--bind 0.0.0.0` exposes the bridge to your network. For production, put nginx or Caddy in front with TLS. The `remote` config generator uses `http://` — update the URL to `https://` once TLS is in place.
399
+
400
+ Available tools in headless mode: file operations, git, terminals, search, CLI linters, dependency audits, HTTP client. LSP, debugger, and editor-state tools are unavailable without the extension.
401
+
362
402
  ## Use with Claude Desktop
363
403
 
364
404
  Connect the Claude Desktop app to your running bridge — chat with your IDE using natural language.
package/dist/index.js CHANGED
@@ -1,7 +1,8 @@
1
1
  #!/usr/bin/env node
2
2
  import { execFileSync, spawn, spawnSync } from "node:child_process";
3
3
  import crypto from "node:crypto";
4
- import { existsSync, mkdirSync, readFileSync, readdirSync, renameSync, writeFileSync, } from "node:fs";
4
+ import { existsSync, mkdirSync, readFileSync, readdirSync, renameSync, statSync, writeFileSync, } from "node:fs";
5
+ import os from "node:os";
5
6
  import path from "node:path";
6
7
  import { fileURLToPath } from "node:url";
7
8
  import { Bridge } from "./bridge.js";
@@ -67,6 +68,58 @@ if (process.argv[2] === "gen-claude-md") {
67
68
  process.stderr.write(`✓ Bridge workflow section written to ${targetPath}\n`);
68
69
  process.exit(0);
69
70
  }
71
+ // Handle print-token subcommand — print the bridge auth token from a lock file
72
+ if (process.argv[2] === "print-token") {
73
+ const argv = process.argv.slice(3);
74
+ const portIdx = argv.indexOf("--port");
75
+ const portArg = portIdx !== -1 ? argv[portIdx + 1] : undefined;
76
+ const lockDir = path.join(process.env.CLAUDE_CONFIG_DIR ?? path.join(os.homedir(), ".claude"), "ide");
77
+ let lockFile;
78
+ if (portArg) {
79
+ lockFile = path.join(lockDir, `${portArg}.lock`);
80
+ if (!existsSync(lockFile)) {
81
+ process.stderr.write(`Error: No lock file found for port ${portArg} at ${lockFile}\n`);
82
+ process.exit(1);
83
+ }
84
+ }
85
+ else {
86
+ // Find the most recently modified lock file
87
+ let bestMtime = 0;
88
+ try {
89
+ for (const f of readdirSync(lockDir)) {
90
+ if (!f.endsWith(".lock"))
91
+ continue;
92
+ const full = path.join(lockDir, f);
93
+ const mtime = statSync(full).mtimeMs;
94
+ if (mtime > bestMtime) {
95
+ bestMtime = mtime;
96
+ lockFile = full;
97
+ }
98
+ }
99
+ }
100
+ catch {
101
+ // lock dir doesn't exist — handled below
102
+ }
103
+ }
104
+ if (!lockFile) {
105
+ process.stderr.write(`Error: No bridge lock file found in ${lockDir}\n`);
106
+ process.stderr.write("Make sure the bridge is running first, or pass --port <port>.\n");
107
+ process.exit(1);
108
+ }
109
+ try {
110
+ const data = JSON.parse(readFileSync(lockFile, "utf-8"));
111
+ if (!data.authToken) {
112
+ process.stderr.write(`Error: Lock file ${lockFile} has no authToken field\n`);
113
+ process.exit(1);
114
+ }
115
+ process.stdout.write(`${data.authToken}\n`);
116
+ }
117
+ catch {
118
+ process.stderr.write(`Error: Could not read lock file ${lockFile}\n`);
119
+ process.exit(1);
120
+ }
121
+ process.exit(0);
122
+ }
70
123
  // Handle install-extension subcommand before parseConfig (avoids unknown-flag error)
71
124
  if (process.argv[2] === "install-extension") {
72
125
  const editor = process.argv[3] || findEditor();
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/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.1.15",
3
+ "version": "2.1.16",
4
4
  "description": "Standalone MCP bridge for Claude Code IDE integration with any editor — 120+ tools for LSP, debugging, terminals, Git, GitHub, and more",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",
@@ -24,23 +24,35 @@ LOCK_DIR="$CLAUDE_DIR/ide"
24
24
 
25
25
  TARGET="${1:-}"
26
26
  WRITE=false
27
+ REMOTE_HOST=""
28
+ REMOTE_TOKEN=""
27
29
 
28
- for arg in "$@"; do
29
- [[ "$arg" == "--write" ]] && WRITE=true
30
+ # Parse flags (handle --host <val> and --token <val> for the remote target)
31
+ _argv=("$@")
32
+ for (( _i=1; _i<${#_argv[@]}; _i++ )); do
33
+ case "${_argv[$_i]}" in
34
+ --write) WRITE=true ;;
35
+ --host) REMOTE_HOST="${_argv[$((_i+1))]:-}"; ((_i++)) ;;
36
+ --token) REMOTE_TOKEN="${_argv[$((_i+1))]:-}"; ((_i++)) ;;
37
+ esac
30
38
  done
31
39
 
32
40
  # --- Usage ---
33
41
  if [[ -z "$TARGET" || "$TARGET" == "--help" || "$TARGET" == "-h" ]]; then
34
42
  echo "Usage: $0 <target> [--write]"
35
43
  echo ""
36
- echo "Targets: cursor | antigravity | codex | claude-desktop"
44
+ echo "Targets: cursor | antigravity | codex | claude-desktop | remote"
37
45
  echo " cursor .cursor/mcp.json"
38
46
  echo " antigravity mcp_config.json for Google Antigravity"
39
47
  echo " codex ~/.codex/config.toml section for OpenAI Codex CLI"
40
48
  echo " claude-desktop claude_desktop_config.json for Claude Desktop app"
49
+ echo " remote ~/.claude/mcp.json entry for a remote bridge over HTTP"
50
+ echo " Requires: --host <host:port> --token <token>"
41
51
  echo ""
42
52
  echo "Flags:"
43
- echo " --write Write config to the correct location"
53
+ echo " --write Write config to the correct location"
54
+ echo " --host <h:port> Remote host and port (remote target only)"
55
+ echo " --token <tok> Auth token (remote target only; get via: claude-ide-bridge print-token)"
44
56
  exit 0
45
57
  fi
46
58
 
@@ -100,6 +112,49 @@ PYEOF
100
112
  exit 0
101
113
  fi
102
114
 
115
+ # --- Remote target: no lock file needed — caller supplies host and token ---
116
+ if [[ "$TARGET" == "remote" ]]; then
117
+ if [[ -z "$REMOTE_HOST" || -z "$REMOTE_TOKEN" ]]; then
118
+ echo "Error: remote target requires --host <host:port> and --token <token>" >&2
119
+ echo " Get the token with: claude-ide-bridge print-token" >&2
120
+ exit 1
121
+ fi
122
+ OUTPUT_PATH="${HOME}/.claude/mcp.json"
123
+ CONFIG=$(cat <<EOF
124
+ {
125
+ "mcpServers": {
126
+ "claude-ide-bridge-remote": {
127
+ "type": "http",
128
+ "url": "http://${REMOTE_HOST}/mcp",
129
+ "headers": {
130
+ "Authorization": "Bearer ${REMOTE_TOKEN}"
131
+ }
132
+ }
133
+ }
134
+ }
135
+ EOF
136
+ )
137
+ echo "=== Remote bridge MCP config ==="
138
+ echo "Bridge: http://${REMOTE_HOST}/mcp"
139
+ echo ""
140
+ echo "$CONFIG"
141
+ echo ""
142
+ echo "Note: Use HTTPS in production — put nginx or Caddy in front with TLS."
143
+ if $WRITE; then
144
+ TMP_PATH="${OUTPUT_PATH}.tmp"
145
+ mkdir -p "$(dirname "$OUTPUT_PATH")"
146
+ if [[ -f "$OUTPUT_PATH" ]]; then
147
+ BACKUP="${OUTPUT_PATH}.$(date +%Y%m%d%H%M%S).bak"
148
+ cp "$OUTPUT_PATH" "$BACKUP"
149
+ echo "Backed up existing config to $(basename "$BACKUP")"
150
+ fi
151
+ printf '%s\n' "$CONFIG" > "$TMP_PATH"
152
+ mv "$TMP_PATH" "$OUTPUT_PATH"
153
+ echo "Written: $OUTPUT_PATH"
154
+ fi
155
+ exit 0
156
+ fi
157
+
103
158
  LOCK_FILE=$(find_lock)
104
159
 
105
160
  if [[ -z "$LOCK_FILE" ]]; then
@@ -201,7 +256,7 @@ EOF
201
256
  ;;
202
257
 
203
258
  *)
204
- echo "Error: Unknown target '$TARGET'. Use: cursor | antigravity | codex | claude-desktop" >&2
259
+ echo "Error: Unknown target '$TARGET'. Use: cursor | antigravity | codex | claude-desktop | remote" >&2
205
260
  exit 1
206
261
  ;;
207
262
  esac