# GitHub - hkc5/cursor-bridge: Claude Code that runs on your Cursor subscription. One Rust binary, zero config.

**One binary. Claude Code on Cursor's backend. Zero config.**

[![Crates.io](https://camo.githubusercontent.com/84a8cc4a4b85192ca7b6817ceae00a2acc39f5f9b7f9780f2116d668a1ebe71d/68747470733a2f2f696d672e736869656c64732e696f2f6372617465732f762f637572736f722d627269646765)](https://crates.io/crates/cursor-bridge) [![License](https://camo.githubusercontent.com/7cd35f87f0496f4fd85d0c37ca2045eba93ca1de08d6b555df38d51e85233167/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f6c6963656e73652f686b63352f637572736f722d627269646765)](https://github.com/hkc5/cursor-bridge/blob/main/LICENSE) [![Stars](https://camo.githubusercontent.com/d24288e8e1ccb9097f0c927a95130ece923c74e5758b912d48522617813500aa/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f73746172732f686b63352f637572736f722d627269646765)](https://github.com/hkc5/cursor-bridge) [![CI](https://camo.githubusercontent.com/2935268d60097de9447dbf675371f065490e83093258d808bc0c66941ae145d9/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f616374696f6e732f776f726b666c6f772f7374617475732f686b63352f637572736f722d6272696467652f7075626c6973682e796d6c3f6272616e63683d6d61696e)](https://github.com/hkc5/cursor-bridge/actions) [![Platform](https://camo.githubusercontent.com/a9b58fc7ebedd261b2fb621777fe22e461f1e0f930216db308feff39948eaefb/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f706c6174666f726d2d6d61634f532532302537432532304c696e75782d626c7565)](https://github.com/hkc5/cursor-bridge/blob/main)

[![demo](https://github.com/hkc5/cursor-bridge/raw/main/demo.webp)](https://github.com/hkc5/cursor-bridge/blob/main/demo.webp)

## Why does this exist?

[](#why-does-this-exist)

You have a **Cursor subscription**. You want to use **Claude Code** (the CLI). Cursor's **Auto model** is included with your subscription — free, unlimited, no extra per-token cost.

Without cursor-bridge, you'd pay separately for Anthropic API credits or a Claude Pro plan. With cursor-bridge, you just run `cursor-bridge` and it works — Claude Code runs on your Cursor backend.

**Use cases:**

- You're already paying for Cursor → get Claude Code for free on top
- You want Claude Code's agent capabilities (file editing, shell commands, tool use) without Anthropic billing
- Cursor's Auto model is free and unlimited with subscription — Claude Code becomes effectively free to run

```
cursor-bridge                         # interactive session
cursor-bridge "refactor this file"    # one-shot prompt
cursor-bridge -p "list files"         # pipe mode
```

That's it. No proxy management. No env vars. Everything automatic.

## How it works

[](#how-it-works)

```
cursor-bridge (Rust binary)
  ├── Starts a local HTTP proxy on a random port
  ├── Reads your Cursor auth token from macOS keychain (or CURSOR_TOKEN env var on Linux)
  ├── Spawns `claude` with env vars pointing at the proxy
  ├── Proxy translates Anthropic API calls → Cursor agent CLI
  └── Cleans up on exit
```

You don't see the proxy. You don't manage it. It's there and gone.

## Install

[](#install)

```
# Prerequisites
# - Cursor installed with `agent` CLI authenticated (`agent login`)
# - Claude Code installed (`curl -O https://claude-code.anthropic.com/claude && chmod +x claude`)

cargo install cursor-bridge

# Then just use it
cursor-bridge
```

Or download a binary from Releases.

## Requirements

[](#requirements)

- **macOS** or **Linux**
- Cursor subscription (with `agent` CLI in PATH)
- Claude Code CLI (`claude` in PATH)
- **macOS**: token auto-read from keychain
- **Linux**: set `CURSOR_TOKEN` env var (no keychain fallback)

## How it differs from other proxies

[](#how-it-differs-from-other-proxies)

**All other solutions are background servers you manage. cursor-bridge is a command you run.**

Existing proxies (`cursor-api-proxy`, `cursor-composer-in-claude`, `cursor-proxy`) are Node.js servers that live in your process list, occupy a port, and need manual env var wiring. They don't ship with Claude Code — they sit between you and it, adding ceremony.

**cursor-bridge is the opposite.** There is nothing to start, stop, or configure. It *is* the session:

The old way cursor-bridge Start a proxy daemon, note the port, set env vars, *then* run `claude` Run `cursor-bridge` — done Background process that outlives your session Lives and dies with your terminal Pick a port, pray it doesn't clash Random port, zero conflicts `npm install` + `npx` + Node.js runtime (60+ MB) One Rust binary, ~780 KB, statically compiled Multiple npm packages, peer deps, version mismatches `cargo install` or download. One binary. Nothing else.

No daemon. No `npm install`. No env vars. No port hunting. No cleanup. Just a single binary that works.

cursor-bridge replaces `claude` entirely — it manages the proxy lifecycle internally, spawns the CLI, and cleans up after itself when you're done.

## Caveats

[](#caveats)

- **Linux**: requires `CURSOR_TOKEN` env var (no keychain support).
- **No workspace sandboxing** — the agent runs in your current directory.
- **Single account** — no multi-account rotation (yet).

## Legal

[](#legal)

This project is not affiliated with Anthropic or Cursor/Anysphere. Use at your own risk.

## License

[](#license)

MIT