Skip to content

Multiplayer AI agents with real permissions.

Invite your team, set roles, bring your own model. Every action is authorized and attributable.

# ops · 3 people · 2 agents

In the #ops room, three people direct AI agents. Owl tells BusyBeaver to deploy; Owl may, so Owl confirms and it ships. Fox asks for refund details; BusyBeaver calls a helper agent, Ledger, on Fox's behalf, and the details go privately to Fox. Rabbit asks for the same; BusyBeaver calls Ledger on Rabbit's behalf, the ledger stays locked because Rabbit may not see it, and Rabbit gets no relevant notes. A diary on the wall records every step, by name. # ops The diary who asked for what Owl → deploy · Owl confirmed Fox → Ledger · private to Fox Rabbit → Ledger · held back ✓ chain verified DEPLOY deploy the fix! refund details? calling Ledger… refunds, for Fox me too? calling Ledger… refunds, for Rabbit to Rabbit No relevant notes.
  1. 1 People direct agents
  2. 2 Agents call agents
  3. 3 Never more than the asker
  4. 4 Every step logged

The one rule the beavers never break

No agent knows or does more than the person who asked. Not even by calling another agent.

Most agents answer anyone with everything they can reach, and pass all of it on to the next agent they call. BusyBeaver checks the person behind every request, at every step of the chain.

  • Owl may deploy.
    So BusyBeaver deploys for Owl, once Owl confirms the card.

  • Rabbit may not see refunds.
    So when BusyBeaver calls Ledger for Rabbit, Ledger uses only what Rabbit may see, even though Ledger itself can read refunds.

  • Rabbit may not deploy.
    So no agent does it on Rabbit's word. It asks someone who may, acts only on their yes, and writes both names in the diary.

What just happened in the lodge

Three people, two agents, zero leaks.

  1. 01

    People direct agents

    Owl tells BusyBeaver to deploy a fix. Anyone in the room can direct an agent, and the agent always knows who did.

  2. 02

    Agents call agents

    BusyBeaver calls Ledger to look up refunds for Fox. The details go to Fox privately; the room sees nothing extra.

  3. 03

    Never more than the asker

    When Rabbit asks, Ledger works with Rabbit's permissions, so the ledger stays shut. No agent in the chain ever borrows someone else's rights.

  4. 04

    Every step logged

    Every request, agent call, approval and private note goes into the diary, under the name of the person behind it.

Meet the crew

Three people. Two agents.

Every agent works for whoever is asking, and never with more than that person may. Each agent also has its own ceiling.

BusyBeaver

agent · you talk to it

Takes requests from anyone in the room, always within that person's permissions, and calls other agents when a job needs them.

acts after a yes

Ledger

agent · a helper

Reads the finance ledger. Called for someone, it uses what that person may see and what its own ceiling allows, whichever is less.

ceiling: finance

Owl

person · admin

Cleared for refunds and billing. Can deploy, and approves other people's requests.

sees refundscan deploy

Fox

person · analyst

Cleared for refunds, so agents may fetch refund details for Fox. Fox's deploys need an approval.

sees refundsneeds approval

Rabbit

person · contractor

Content only. Can ask any agent anything; refund details never reach Rabbit, whichever agent fetches them.

content onlyneeds approval

The diary

Who asked. Which agent. Who said yes.

Every question, agent call, approval, private note and admin change goes into a diary, under the name of the person behind it. Each line is chained to the one before, so nobody can quietly edit history.

It records ids and reasons, never the text people typed.

#ops · today

  1. #41 10:42 Owl asked BusyBeaver to deploy demo-app · confirmed by Owl · ran
  2. #42 10:43 Fox asked BusyBeaver about refunds · BusyBeaver called Ledger for Fox · private note to Fox
  3. #43 10:44 Rabbit asked BusyBeaver about refunds · BusyBeaver called Ledger for Rabbit · held back: not allowed for Rabbit
  4. #44 10:45 Owl changed #finance · deploy not allowed there

✓ chain verified

For builders

Put the beaver in front of your agents.

BusyBeaver's core is a permission layer for agent systems. Whichever harness or model you use, every context an agent builds, and every agent it calls, stays within the permissions of the person who asked.

  1. label

    Every note says who may see it

    A note without an audience can't be stored, so nothing enters a context unlabelled.

  2. admit

    Only what the asker may see

    Before any model call, each note is checked against the people behind the request, and the agent's ceiling.

  3. inherit

    Outputs keep the strictest label

    Whatever an agent writes is labelled with the strictest of what it read, so nothing gets laundered down the chain.

  4. log

    Every decision, chained

    Admissions, refusals, approvals and agent calls go into a hash-chained log you can verify.

Building agents? Talk to us

The benchmark

Builds dams, not leaks.

We asked 24 questions in rooms of people with different permissions. The same model leaked restricted information in 18 of them without BusyBeaver, and in 0 with it.

Without BusyBeaver

18/24

questions leaked

With BusyBeaver

0/24

questions leaked

Synthetic company data; methodology available on request.

BusyBeaver stands on a dam it built: restricted information stays behind it. 0 leaks

Actions in the right room

Admins choose which actions each room allows. A deploy asked for in #finance stops before anyone is asked to approve it.

Hidden looks like missing

A note someone may not see looks exactly like a note that does not exist. No "I can't tell you that".

Bring your own model

Anthropic, OpenAI, Google or open models through Ollama. The model only gets notes that passed the checks, and it never runs tools itself.

Invite the beaver to your team.

We are working with a few teams that run AI in shared channels. Tell us about yours.