{
  "markdown": "# Syncbridge\n\n> *You're 30 messages deep with Claude. The plan is solid. Now you need to build it\n> in your editor. So you copy. You paste. You lose half the context. Your editor\n> doesn't know what Claude knows. And next time you go back to Claude, it doesn't\n> know what your editor did.*\n>\n> *Syncbridge fixes this — automatically, for free, no CLI required.*\n\n[![VS Code Marketplace](https://img.shields.io/badge/VS%20Code-v0.1.1-blue)](https://marketplace.visualstudio.com/items?itemName=rehmansherazi.syncbridge)\n[![Chrome Extension](https://img.shields.io/badge/Chrome-v0.3.0-green)](https://github.com/rehmansherazi/syncbridge)\n[![npm](https://img.shields.io/badge/npm-syncbridge--mcp-red)](https://www.npmjs.com/package/syncbridge-mcp)\n[![License: MIT](https://img.shields.io/badge/License-MIT-yellow)](LICENSE.txt)\n\n---\n\n## The Problem\n\nEvery developer using AI chat faces the same daily toil:\n\n- AI gives a long response with 5 code blocks — you copy block 1, switch to your editor, paste, switch back, scroll to find block 2, copy, switch, paste, repeat\n- You make a change in your editor — you want AI feedback — you copy the code, switch to browser, paste, ask the question\n- Your chat gets too long — you start a new one — and re-explain your entire project from scratch\n- You use ChatGPT for one thing and Claude for another — context never carries over\n- You ask Claude for the plan and Cursor to build it — they never know what the other did\n- You use Cursor — it can send terminal output to its own AI chat, but there's no way to send AI chat responses back to your terminal automatically\n- You use Copilot or Windsurf — there's no bridge at all between their AI and your browser-based AI chats\n\n**This is the copy-paste tax. It compounds every single day.**\n\nSyncbridge eliminates it.\n\n> *Built independently to solve a daily frustration. Turns out even well-funded teams\n> with dedicated AI editors only solved half this problem. Syncbridge solves both directions\n> — and works with every AI site, not just one editor's built-in chat.*\n\n---\n\n## Who is this for\n\n**You don't need a CLI. You don't need a paid subscription. You just need a browser.**\n\n| Who | Pain | What Syncbridge gives them |\n|-----|------|---------------------------|\n| Developers using free AI chat | Copy-paste between browser and editor all day | Auto-copy + one-keystroke inject |\n| Students and bootcamp learners | Re-explaining project context in every new chat | Context migration in one click |\n| Freelancers | Losing context between client sessions | Persistent context across chats |\n| Multi-model users | Switching between Claude, ChatGPT, Gemini manually | Alt+C on one, Alt+V on another |\n| Claude Code / Cursor / Copilot CLI users | AI chat and CLI never in sync | Full bidirectional auto-sync |\n| Cursor users | Terminal→AI exists in Cursor but AI→terminal is missing | Completes the missing direction + works with any browser AI |\n| Copilot and Windsurf users | No terminal↔AI bridge at all in browser | Full bidirectional sync with any AI chat site |\n| Content creators and technical writers | Copy-pasting AI drafts into editors all day | Auto-copy eliminates the switching |\n| Cost-sensitive developers | Claude Code CLI too expensive | Chrome extension is completely free |\n| VS Code power users | Always hunting for better AI workflow tools | Install in 30 seconds, works immediately |\n\n**Free forever. No API key. No subscription. No CLI required.**\n\n---\n\n## Quick Start\n\n### Path A — Chrome extension only (no CLI needed)\n1. Clone or download this repo\n2. Go to `chrome://extensions` → enable Developer mode → Load unpacked → select `chrome-extension/` folder\n3. Go to any supported AI site — ask something — response auto-copies to clipboard\n4. Press `Alt+V` on any other AI site to inject it\n\nThat's it. No VS Code extension needed. No CLI. No setup.\n\n**Chrome Web Store version coming soon.**\n\n### Path B — Full sync (Chrome + VS Code + CLI)\n1. Install VS Code extension: search \"Syncbridge\" in Extensions panel\n2. Load Chrome extension (same as Path A step 2)\n3. Press `Ctrl+Shift+A` (Mac: `Cmd+Shift+A`) → select your project folder\n4. Press `Ctrl+Shift+E` (Mac: `Cmd+Shift+E`) → deploy file watcher hook\n5. Press `Ctrl+Shift+S` (Mac: `Cmd+Shift+S`) → open Syncbridge panel\n6. Run `claude` (or your CLI) from your project folder in terminal\n\nYou're ready. Ask your AI something — Syncbridge handles the rest.\n\n---\n\n## What it does\n\nSyncbridge works in two independent layers — use one or both:\n\n**Chrome extension only** — works for everyone, no CLI needed:\n- Auto-copies AI response to clipboard when it finishes\n- Alt+C to manually copy, Alt+V to inject into any AI input\n- Switch context between Claude, ChatGPT, Gemini, Grok, Mistral, Perplexity, Copilot with one keystroke\n- Green toast confirms copy even when widget is hidden\n\n**VS Code extension + Chrome extension** — full bidirectional sync:\n- AI response auto-copied → one keystroke sends to your CLI instructions file\n- CLI runs tasks → VS Code panel shows every action live\n- Context migration rebuilds your session for a fresh chat\n\n**Supported AI chat interfaces (Chrome extension):**\n- Claude.ai\n- ChatGPT\n- Google Gemini\n- Perplexity\n- Grok (x.ai)\n- Mistral\n- Microsoft Copilot\n\n**Supported coding CLIs (VS Code extension):**\n- Claude Code (full auto-sync with hooks)\n- Cursor\n- GitHub Copilot CLI\n- Windsurf\n- Aider\n- Custom (user-defined file names)\n\n---\n\n## Screenshots\n\n### The Problem — Manual copy-paste between AI and CLI\n![The Problem](screenshots/00.png)\n\n### The Solution — Syncbridge auto-copies AI responses\n![The Solution](screenshots/01.png)\n\n### Two Modes — Floating widget and hidden mode with toast notification\n![Two Modes](screenshots/02.png)\n\n### Hidden Mode — Green toast confirms auto-copy when widget is hidden\n![Hidden Mode](screenshots/03.png)\n\n### Live CLI State — VS Code panel updates in real time as CLI runs\n![Live CLI State](screenshots/04.png)\n\n---\n\n## How it works\n\n**AI → CLI** — Ask your AI something. Chrome extension auto-copies the response when it finishes. Press `Ctrl+Shift+X` (Mac: `Cmd+Shift+X`) in VS Code to write it to your instructions file. Run `/sync` in Claude Code CLI to execute.\n\n**CLI → AI** — Claude Code CLI runs tasks and the hook auto-updates `claude-state.md` after every file write and bash command. The VS Code panel shows these updates live. Copy the state and paste into any AI chat to resume with full context.\n\n**Context migration** — When your chat gets long, click ⟳ Regenerate in the Syncbridge panel. It merges your last instructions and last 10 CLI actions into a structured migration prompt. Paste into a new chat — the AI picks up exactly where you left off.\n\n---\n\n## Architecture\n\n- **VS Code extension** — sidebar panel, file watcher, status bar, clipboard bridge, project hook deployment\n- **Chrome extension** — floating widget UI, site adapters for each AI platform, auto-copy on response complete\n- **MCP server** — optional Claude Code CLI integration via MCP tools\n\n---\n\n## Installation\n\n### VS Code Extension\n\n**From Marketplace:**\nSearch \"Syncbridge\" in the Extensions panel and click Install.\n\n**From .vsix file:**\n```bash\ncode --install-extension syncbridge-0.1.0.vsix\n```\n\n### Chrome Extension\n\n**Developer mode (available now):**\n1. Download or clone this repo\n2. Go to `chrome://extensions`\n3. Enable Developer mode\n4. Click Load unpacked → select `chrome-extension/` folder\n\n**Chrome Web Store:** Under review — available soon.\n\n### MCP Server (Claude Code CLI)\n\n```bash\nclaude mcp add syncbridge npx syncbridge-mcp\n```\n\nAvailable MCP tools:\n- `update_state` — push CLI state to Syncbridge\n- `read_instructions` — pull latest AI instructions\n- `get_context` — get full merged context\n- `clear_state` — reset state for a new session\n\n---\n\n## VS Code Extension\n\n### Commands\n| Command | Description |\n|---------|-------------|\n| `Syncbridge: Open Panel` | Open the sync panel in column two |\n| `Syncbridge: Send Clipboard to CLI` | Write clipboard content to instructions file |\n| `Syncbridge: Set Active Project` | Set the active project folder |\n| `Syncbridge: Setup Project` | Deploy file watcher hook to current project |\n\n### Panel UI\nOpens in VS Code's second column. Displays live contents of all three control files with:\n- **Copy** button per file\n- **⟳ Regenerate context.md** — rebuilds migration prompt from current state\n- **⚠ Clear all control files** — resets all three files\n\nThe panel auto-refreshes whenever the state file changes on disk.\n\n### Status Bar\nShows last CLI action in the status bar. Click to open Claude.ai usage page.\nUpdates automatically when `claude-state.md` changes — no manual reload needed.\n\n### activeCli Setting\nSyncbridge adapts control file names based on which CLI you use.\n\nGo to VS Code Settings → search \"syncbridge\" → set **Active CLI**:\n\n| Setting | Instructions file | State file | Context file |\n|---------|------------------|------------|--------------|\n| claudecode (default) | claude-ai.md | claude-state.md | claude-context.md |\n| cursor | cursor-ai.md | cursor-state.md | cursor-context.md |\n| copilot | copilot-ai.md | copilot-state.md | copilot-context.md |\n| windsurf | windsurf-ai.md | windsurf-state.md | windsurf-context.md |\n| aider | aider-ai.md | aider-state.md | aider-context.md |\n| custom | user-defined | user-defined | user-defined |\n\nNon-Claude Code CLIs show an amber banner in the panel — state file must be updated manually for those CLIs.\n\n---\n\n## Chrome Extension\n\n### Features\n- Slim right-edge floating widget — hover to expand, click tab to pin open\n- Draggable vertically along the right edge\n- X button on hover removes widget from page — runs silently in background\n- Toolbar popup to show/hide floating widget from Chrome extensions bar\n- Auto-copies AI response to clipboard when response finishes (one copy per response)\n- Green toast notification confirms auto-copy — visible even when widget is hidden\n- Site adapters with per-site selectors for reading output and injecting input\n\n### Supported Sites\nClaude.ai · ChatGPT · Google Gemini · Perplexity · Grok · Mistral · Microsoft Copilot\n\n---\n\n## Keyboard Shortcuts\n\n| Shortcut (Windows/Linux) | Shortcut (Mac) | Where | Action |\n|--------------------------|----------------|-------|--------|\n| Ctrl+Shift+S | Cmd+Shift+S | VS Code | Open Syncbridge panel |\n| Ctrl+Shift+X | Cmd+Shift+X | VS Code | Send clipboard to instructions file |\n| Ctrl+Shift+A | Cmd+Shift+A | VS Code | Set active project |\n| Ctrl+Shift+E | Cmd+Shift+E | VS Code | Setup current project (deploy hook) |\n| Alt+C | Option+C | Chrome | Copy AI response to clipboard |\n| Alt+V | Option+V | Chrome | Inject clipboard into AI input |\n\n**To remap VS Code shortcuts:**\n- Edit `contributes.keybindings` in `package.json`, recompile and reinstall\n- Or use VS Code built-in editor: `Ctrl+K Ctrl+S` (Mac: `Cmd+K Cmd+S`)\n\n**To remap Chrome shortcuts:**\nEdit the `keydown` listener in `chrome-extension/src/bot.js` then reload at `chrome://extensions`.\n\n---\n\n## Control Files\n\nAll three files are created automatically in the workspace root on first activation.\nFile names adapt based on your `activeCli` setting (see above).\n\n| File (claudecode default) | Direction | Purpose |\n|---------------------------|-----------|---------|\n| `claude-ai.md` | AI → CLI | Instructions from chat; `/sync` reads and executes |\n| `claude-state.md` | CLI → AI | Auto-updated by hook after every file write and bash command |\n| `claude-context.md` | Shared | Migration prompt; rebuilt by ⟳ Regenerate button |\n\n---\n\n## Context Migration\n\nUse when your chat gets too long or context drifts.\n\n![Context Migration Flow](docs/syncbridge-flow.png)\n\n**Steps:**\n1. Click **⟳ Regenerate context.md** in the Syncbridge panel\n2. Merges last instructions + last 10 CLI actions into a structured prompt\n3. Copy `claude-context.md` contents\n4. Paste into a new chat — AI resumes exactly where you left off\n\n**When to use:**\n- Chat responses are drifting or losing accuracy\n- Starting a new day on the same project\n- Switching between AI models mid-session\n\n---\n\n## File Watcher Hook\n\nThe hook is configured in `.claude/settings.json` and fires automatically after every file write and bash command by Claude Code CLI.\n\nDeploy to a project: Press `Ctrl+Shift+E` (Mac: `Cmd+Shift+E`) in VS Code.\n\nTo copy manually to another project:\n```bash\ncp .claude/settings.json <project>/.claude/\n```\n\nHook captures:\n```\n✓ HH:MM:SS wrote <file_path>\n✓ HH:MM:SS ran: <command>\n```\n\n---\n\n## Multi-Folder Workspace\n\nWhen workspace has multiple root folders, active root resolves in this order:\n1. Folder containing the currently open file\n2. Folder set via `Ctrl+Shift+A` (Mac: `Cmd+Shift+A`)\n3. First folder in workspace list as fallback\n\n---\n\n## Roadmap\n\n<!-- PLACEHOLDER: SEP-24 and beyond — future improvements planned -->\n- [ ] Auto-detect installed CLIs on first run\n- [ ] Chrome Web Store public release\n- [ ] Onboarding walkthrough for first-time users\n- [ ] Additional AI platform adapters\n- [ ] Improved context migration with token awareness\n\n---\n\n## Requirements\n\n- VS Code 1.100.0 or higher\n- Node.js v18+\n- At least one supported CLI (Claude Code, Cursor, Copilot CLI, Windsurf, or Aider)\n- Chrome or Chromium-based browser for the Chrome extension\n\n---\n\n## Extension Test Runner\n\nTests live in `src/test/extension.test.ts` — 7 deterministic tests covering control file creation, write stability, append ordering, context regeneration, and extension activation.\n\nTo run: click the beaker icon (Testing) in VS Code sidebar → press ▷ Run All Tests.\n\nAll tests must pass before packaging.\n\n---\n\n## Development\n\nBuilt using VS Code Extension API + Claude Code CLI with a deterministic SEP-based workflow.\n\nRepository: https://github.com/rehmansherazi/syncbridge\n\n---\n\n## Known Limitations\n\n- Chrome extension site adapters use fallback selector chains — resilient to minor DOM changes but major site redesigns may require an update\n- File watcher hook requires manual setup per project via `Ctrl+Shift+E` (Mac: `Cmd+Shift+E`)\n- Auto-sync hook only available for Claude Code CLI — other CLIs require manual state file updates\n- CLI sync requires the CLI to be running from the project directory that has the hook deployed\n\n---\n\n## Privacy\n\nSyncbridge does not collect, transmit, or store any user data on external servers.\n\n- Clipboard access is used only to read AI responses and write context locally to your project files\n- Storage permission saves only widget visibility state in your browser locally\n- No analytics, no tracking, no telemetry\n- No data leaves your machine\n- All processing happens locally between your browser, VS Code, and terminal\n\nFor questions: mrsherazi@hotmail.com\n",
  "bytes": 14726,
  "sha": "fb4fbc3c73f1de45d42d3fbcd1350c0472322bd874f1c875f29e789054279c74",
  "repo_slug": "rehmansherazi/syncbridge",
  "fonte": "repo",
  "truncated": false,
  "api": "https://agentalog.com/api/listings/mcp_io_github_rehmansherazi_syncbridge_mcp_60e3f9ef/readme"
}