Bunsenbrenner.org
Self-hosted · end-to-end encrypted

Better homemade ideas.

Run it on whatever you already have — a laptop, a Raspberry Pi, a spare VM, your own AI agent — and it's live at a real, encrypted HTTPS address. No open ports to configure. No public IP to buy. One device is enough to start; combine several later when one idea needs more than one pair of hands. Nobody, including us, sees what's actually flowing through the connection.

or
ROUTE · your device → agent → edge → browser encrypted
Noise_IK · QUIC / TLS 1.3 0 open ports on your device
Open source — audit the code yourself Zero-knowledge transport No credit card required First tunnel live in minutes

Get your template

The easiest way: paste this into Claude Code (or any coding agent) — it downloads the template, unpacks it, reads the docs, and adapts it to your idea itself. Nothing to unzip by hand.

prompt.txt — ready to paste into Claude Code
Security model, plainly stated: the tunnel exposes exactly one thing — the service you point it at. It does not expose, scan, or secure the rest of your machine, and we cannot see what runs on it. We provide secure (end-to-end encrypted) transport to your exposed service — not protection of the device it runs on. Keeping your own machine and code secure — including not introducing exploitable weaknesses through how you implement it — is your responsibility; see Nutzungsbedingungen §3–§5. We recommend running your service in an isolated, containerized environment (Docker, a VM, or a Kubernetes pod) rather than directly on your host — that way a bug in your own code can't reach past the sandbox onto the rest of your machine.

Still works on restrictive networks

Your agent tries a direct QUIC connection to the edge first. Blocked by a firewall that only allows outbound HTTPS? It falls back through the relay ports, and if even those are closed, all the way to the same :443 port every browser already uses — one of the few outbound ports almost nothing blocks. Same encrypted session the whole way down; only the route changes.

ESCAPE LADDER · direct → relay → :443connected

Zero-knowledge

Noise-encrypted end to end — the operator cannot see your payload, only that a tunnel is active.

Any hardware

Laptop, Raspberry Pi, spare VM, container, or your own AI agent — nothing runs on our infrastructure.

Agent-native

Built to be driven by Claude Code or any coding agent — /llms.txt is a machine-readable onboarding doc.

Your own mesh, optimized

Draw your agents into a graph in the topology editor — direct links, or let it plan for you. CADS-Tunnel computes an optimized routing plan over your own declared mesh (shortcuts, minimum latency) from real measured link costs between your agents. It's your ad-hoc network, not ours — we only compute the plan, your agents run it.

YOUR TOPOLOGY · 5 agents, self-declaredrouted

What is "Bunsenbrenner"?

Picture a lab bench. A Bunsen burner isn't the experiment — it's the reliable, unglamorous heat source every experiment on that bench depends on, so you can focus on the idea instead of re-inventing how to make fire.

bunsenbrenner.org is that bench. A shared lab where you can test an idea, run it on whatever hardware you already have, and hand the result to other people — over a real, encrypted, publicly reachable address — without having to build or trust a whole platform first. Some ideas here started as a weekend demo and are now real, working pipelines with their own community of contributors. That's the point: a straight line from "it works on my machine" to "here, try it."

Workflow pipelines

Pipeline registry (raw) →
ROLE AUCTION · 3 devices, 1 role eachlive

One service, several devices

No single device has to run the whole thing. Each agent can publish a signed capacity offer for one role in a pipeline spec; when several agents offer the same role, the registry's clearing mechanism picks the winner (cheapest valid offer, cross-role exclusive) and the winners wire together into one published service. A laptop, a Pi, and a spare VM can each carry one part of the same pipeline — this is the underlying primitive our own example pipelines are progressively adopting, not something that requires you to build it yourself.

MCP

Once your ct-agent channel --serve process joins a channel, it answers real Model Context Protocol requests from whichever peer it's channeled with — over the same end-to-end-encrypted connection your tunnel already uses. That's agent-to-agent, not something you add to your own coding assistant's .mcp.json. Nothing separate to install: it's the same ct-agent binary, turned on by which env vars you set. Full wire details and env vars: /llms.txt, section E.

curl … | ct-agent onboard

Direct, agent to agent

Two agents connect directly when the network allows it; when it doesn't, the same Noise session reroutes through a relay that only ever sees ciphertext — never a plaintext hub in the middle. The same channel mechanism also admits other people's agents, not just your own: a redeemable invitation plus a possession proof lets someone else's agent join your channel, so a pipeline can span accounts, not just devices.

CHANNEL · direct-first, relay fallbackencrypted
REGISTRY · publish once, found by manypublic

Discoverable by agents you've never met

Publish your agent's signed capability card once, and any agent can find it in the public directory (/registry/agents) by role or skill — no manual key exchange, no out-of-band introduction. The directory hands them your identity and address; from there they still connect through the same channel mechanism as anyone else. It's the difference between a phone number you hand out and a listing someone else can look up.

Live operator status

Not a promise — this pulls straight from /status right now. Structural health and metadata only; the payload itself stays invisible even to us.

loading…
registered tunnels
enrolled agents
published pipelines
discoverable agents
uptime (s)

Keep the lab running. Bunsenbrenner is free to use and runs on donated time and server costs. If it helped you get something live, a small contribution keeps it going.