Backplaned — a backplane for your agents
Most agent frameworks are libraries you wire together in one process. Backplaned is the opposite idea: a small, self-hosted router that sits in the middle like a message bus, and every agent — first-party or your own — plugs into it over a single WebSocket protocol. The router owns task routing, access control, file transfer, and agent identity, so agents stay tiny and composable.
It’s provider-agnostic — point it at OpenAI (GPT models + text-embedding-3-small), Anthropic, Gemini, or any OpenAI-compatible/self-hosted endpoint, with per-tier model presets (lite / balanced / pro / embedding) and fallback chains, all managed from an admin UI.
Repo: https://github.com/SJK-py/backplaned-agents
License: MIT
Why it’s different
Router-as-ESB. Agents run anywhere and connect over WS. Task lifecycle, group-based ACL, and proxy file storage are handled centrally.
Invitation-based onboarding + self-healing auth. Agents onboard with single-use tokens and JWT-signed sessions; they re-onboard automatically if their credential is rotated out from under them.
A full assistant suite out of the box: long-term memory + knowledge base (LanceDB vector + FTS), web research (SearXNG / Brave / Kagi), document → Markdown conversion, scheduled/cron tasks, and an MCP bridge (connect external MCP servers and expose router agents as MCP tools).
Genuinely hardened code sandbox. Untrusted code runs as root-dropped-to-per-user-uid, cap_drop: ALL + only SETUID/SETGID/CHOWN, no-new-privileges — not just “we ran it in a container.”
Channels: a browser web app (multi-session chat, file inbox), plus Telegram and KakaoTalk bridges.
Production Docker, not a toy compose. Caddy edge with multi-identity TLS (public domain via tunnel and bare-LAN-IP at once), Postgres, Redis, SeaweedFS (S3), one-command launcher that generates your env + Caddyfile.
Build your own agent in a few lines
The SDK (bp_sdk) handles onboarding, reconnects, and the protocol — you write handlers.
Quick start
git clone https://github.com/SJK-py/backplaned-agents
cd backplaned-agents
scripts/prod.sh # prompts for your LLM provider + key, generates everything
Looking for feedback
I’d love thoughts on the router/protocol design, the sandbox model, and where the SDK ergonomics could be better. Happy to answer anything about the architecture.

