Shared memory for teams of AI agents: tasks, decisions and docs your agents read and write over MCP. Self-hosted, one docker compose up.
概览
Tasks, decisions and docs in one workspace that Claude Code, Cursor, Codex and your teammates all work from, over MCP. Self-hosted, open source, one docker compose up. Your team already works with agents, and every session starts from zero. What one agent decided on Monday lives in a chat nobody will reopen. Memory is locked inside each tool, per person. The next agent, on someone else's machine and a different model, contradicts last week's decision or redoes the work. Bcontext is the place that work lands. An agent starts by asking for a : what is unblocked, which decisions are open, what changed since it last looked. It picks a task, does the work and closes it with a the next agent or person builds on. People see the same graph in the web app and steer it: review what agents wrote, fix it, decide. Tomorrow a teammate's agent, in another editor, starts from that result instead of from scratch.
README
Why
Your team already works with agents, and every session starts from zero. What one agent decided on Monday lives in a chat nobody will reopen. Memory is locked inside each tool, per person. The next agent, on someone else’s machine and a different model, contradicts last week’s decision or redoes the work.
Bcontext is the place that work lands. An agent starts by asking for a
brief: what is unblocked, which decisions are open, what changed since it
last looked. It picks a task, does the work and closes it with a
## Result the next agent or person builds on. People see the same graph
in the web app and steer it: review what agents wrote, fix it, decide.
flowchart LR
subgraph Agents
CC[Claude Code]
CU[Cursor]
CX[Codex / any MCP client]
end
subgraph Bcontext
MCP["/mcp/org/workspaceOAuth 2.1 · scoped tokens"]
G[("Workspace graphtasks · decisions · docsmeetings · bugs · ADRs")]
R[Hybrid searchpgvector + keyword]
end
W[Web appfor the humans]
CC & CU & CX MCP
MCP G
G --- R
W G
What a session looks like
you ▸ Pick up the next payments task.
agent ▸ brief()
3 unblocked · 1 open decision · 7 changes since yesterday
↳ "Retry failed webhook deliveries with backoff" todo · high
↳ decision "Idempotency keys on every payment write" was accepted
agent ▸ nodes_write(update, status: in_progress)
… writes the code, honouring the idempotency decision …
agent ▸ nodes_write(append, "## Result")
Retries use pg-boss with exponential backoff (5 attempts, max 1h).
Dead letters land in the Ops view. PR #142.
Tomorrow a teammate’s agent, in another editor, starts from that result instead of from scratch.
Features
Screenshots
Quickstart
Let your agent install it
Paste this into Claude Code, Codex, Cursor or any agent with a shell:
Install Bcontext (https://github.com/Ibonarambarri/bcontext) on this machine.
Follow https://raw.githubusercontent.com/Ibonarambarri/bcontext/main/docs/install-with-an-agent.md
step by step: clone or update the repo, configure it, start it, wait until it
is healthy, then connect yourself to my workspace over MCP. Ask me only for
what you cannot decide.
It checks Docker, asks where it should run and your email, writes the configuration, starts the stack and, once you have created your account, connects itself over MCP. The steps it follows are in docs/install-with-an-agent.md.
Or by hand
You need Docker with Compose v2, openssl and about 4 GB of free RAM to build
(the running stack uses under 1 GB).
git clone https://github.com/Ibonarambarri/bcontext.git && cd bcontext
./setup.sh --domain localhost --admin-email [email protected] -y
docker compose up -d
Open , create your account and organization at /start,
and you’re in. The first up builds the images from source when no release
image is available, which takes a few minutes. Port 80 taken? Add
--http-port 8080 to setup.sh.
On a server with a real domain, Caddy gets the HTTPS certificate automatically: see docs/self-hosting.md for DNS, email, AI keys, backups and updates.
Connect your agent
In the web app, Agents → Add agent gives you a ready-to-paste snippet for each client. For Claude Code by hand:
claude mcp add --transport http bcontext https://your-host/mcp//
Claude Code opens the browser to approve the connection (OAuth). For the
plugin, which adds the working conventions as a skill and a
/bcontext:brief command, and for Cursor, Codex and token auth, see
docs/connect-agents.md.
Architecture
Project status
Bcontext started as a commercial product and is now released as open source for anyone who wants to run it. It ran in production and works end to end, but it is maintained on a best-effort basis: issues and pull requests are welcome, and there are no response-time promises. Start with CONTRIBUTING.md. Agents working on the codebase, start with AGENTS.md.
License
GNU Affero General Public License v3.0 (AGPL-3.0-only). You can
use, modify and self-host it freely. If you run a modified Bcontext as a
network service, you must offer its source to its users.
安装
This server does not publish a one-line install command.
Open the repository installation guide