โœฆ durbin

Dictate to Claude Code from your phone and watch your dev server's live preview. One app, from anywhere.

Before you start

Two one-time prerequisites

Both are per machine, not per project. Once they're done, every future project is just durbin.

Node 20+ and a Claude Code login

claude.com/claude-code

durbin runs Claude on your machine using your existing plan or API key, so sign in once with the Claude Code CLI. There is no separate durbin account, and no Claude login on your phone.

node --version   # v20 or newer
claude           # sign in if you haven't

Tailscale, logged in

tailscale.com/download

This is what gives your machine a stable HTTPS address reachable from anywhere, for free, with no server to run. Being logged in is all durbin needs; it turns on Funnel by itself.

# Linux (macOS and Windows: use the installer)
curl -fsSL https://tailscale.com/install.sh | sh
sudo tailscale up

On macOS and Windows, install the app and sign in through it. The first time you ever use Funnel, Tailscale asks you to enable it for your tailnet; durbin prints the link when that happens.

Getting started

Set up in three steps

1

Install and run it

In any project on your machine:

npm i -g durbin
durbin
2

Scan the QR

durbin prints a QR code that opens this app with your machine already filled in. Or connect by hand with the hostname it shows.

3

Talk to your code

Dictate changes, approve edits, and watch your dev server's live preview, from anywhere.

Two first-run cases durbin walks you through if they come up: Funnel not yet enabled on your tailnet (it prints Tailscale's enable link, open it once), and Tailscale needing sudo (it prints the one command to fix that).

Why durbin

Built for the moments you're away from the monitor

Resting your eyes, on the couch, in a cafรฉ while your workstation runs at home. Pair it with any voice keyboard and development becomes a conversation with a live preview.

Voice-first agent chat

Type or dictate what Claude Code should do. Claude runs on your machine, in your repo, and its output streams back token by token.

Live preview, built in

Your dev server is embedded right next to the chat, websockets and hot reload included. Watch the site change as Claude edits your files.

Interactive permission cards

When Claude needs a permission or asks a clarifying question, the run pauses and a card appears with buttons to answer. Nothing is silently auto-approved beyond the mode you picked.

Send screenshots

Attach photos from your phone and Claude sees them: mark up a design, circle a bug, or screenshot the preview itself.

Every machine in one place

Connect as many projects and computers as you like, then switch between them from the same app. Each keeps its own session and scrollback.

Installable web app

Add it to your home screen and you get a fullscreen app with no browser chrome. No app store, and no Claude login on the phone.

Your machine, your code

The bridge runs on your computer and rides HTTPS through your own Tailscale Funnel. This app talks to it straight from your browser, so nothing is proxied through our servers.

Zero framework lock-in

The proxy works with anything that serves HTTP on a port: Next.js, Vite, Rails, whatever. Switch dev servers live without restarting.

Architecture

How it works

One bridge process on your computer, two jobs. Your phone never talks to Claude's servers directly. Everything runs on your machine, in your repo, with your existing Claude Code plan.

๐Ÿ“ฑ This app, in any browser

Static pages. It holds no accounts and stores your connections on your own device.

โ†“ https, straight to your machine (Tailscale Funnel)

๐Ÿ”ญ durbin bridge, on your computer

  • the agent API: Claude Code via the official Claude Agent SDK
  • everything else: reverse proxy to your dev server, hot reload included

Control

Permission modes, per message

The mode button maps onto Claude Code's permission modes and applies per message: plan one task, auto-run the next, in the same conversation. Clarifying questions always reach you.

โœ‹ Manual
Every tool call, file edits included, pauses the run and asks on your phone.
๐Ÿ“ Plan
Claude explores but touches nothing, then proposes a plan as a card. "Build it" approves; "Keep planning" sends feedback.
โœ๏ธ Edits(default)
File edits auto-approved so work flows; shell commands and everything else still ask first.
โšก Auto
Everything runs without asking: builds, git, installs, the lot.

Comparison

durbin vs. Claude Code Remote Control

Claude Code's official Remote Control also drives a local session from your phone, and the two compose nicely. Here's what durbin adds.

Swipe the table to compare โ†’

Featureโœฆ durbinRemote Control
Claude runs on your machine, in your repoโœ“โœ“
Live preview of your dev server, hot reload includedโœ“โ€“
Agent and preview in one placeโœ“โ€“
Works in any browser, no Claude login on the phoneโœ“โ€“
Always-on: nothing to keep alive or re-pairโœ“โ€“
One-tap dev server restart after a rebootโœ“โ€“
Open source bridge, you own the transportโœ“โ€“

Your code stays on your machine

durbin runs entirely on your own computer. This app talks to it directly from your browser over your private Tailscale URL, so your source, prompts and diffs never pass through our servers. The bridge is open source so you can verify exactly that.

See your project from far away.

Your machine, your repo, your tunnel. The bridge is free and MIT licensed.

Connect a machine