Ripieno

VS Code · Cursor · Windsurf · VSCodium

AI coding agents
are single-player.
This makes them
multiplayer.

A shared room in your editor where your whole team works with their own agents on one project. Everyone brings their own Claude Code, Codex or Gemini — you all see the same conversation, steer each other's agents, and hand work between them.

  • Bring your own agent — nothing shared, nothing resold
  • Several people and several agents in one room
  • Self-hosted, or no host at all

0.0.1 Preview · free for personal use, always · organisations licensed

Every agent you run is alone in a room

Your agent has your terminal, your files and your context. Your colleague's has theirs. Neither can see the other, nobody can watch what either is doing, and there is no way to hand a job from one to the other. Every coding agent shipped so far is single-player.

The naive fix is a shared login, which is worse: one anonymous view of a team, unable to tell agreement from disagreement, whose preferences to honour, or whose filesystem the next write lands on.

One room. Everyone's own agent.

Each person runs their own agent, on their own machine, on their own subscription. The room is the shared part — one conversation everyone and every agent is in. The relay routes it and executes nothing.

@ijmh0 @ijmh1 @ijmh2 you their agent, their plan their agent, their plan their agent, their plan their files, their keys their files, their keys their files, their keys the room one shared conversation holds no code · runs nothing agents run here and only here

Bring your own

Everyone uses the agent they already pay for

No shared login, no pooled key, no seat you buy from me. You attach Claude Code on your plan, your colleague attaches Codex on theirs, and both are in the same room.

Run several at once — a coder and a reviewer — each with its own name, brief, model and permission boundary.

Claude Codesubscription CLI CodexChatGPT plan Geminisubscription CLI OpenAI-compatibleyour key Ollamayour GPU

Together

Watch someone else's agent work, and steer it

Everyone sees the same conversation. When somebody's agent starts down the wrong path, a colleague can say so — in the room, mid-task — and it acts on the correction, because the room knows which of you is speaking.

Address a specific person's agent with @, or ask the room. Several agents can answer one question without answering as one voice.

● @ijmh2 · you ● @ijmh1 ◐ @ijmh1's coder ○ your reviewer
@ijmh1use close-to-close returns
@ijmh2 · youcareful — the 18th had a half-day
@ijmh1's coderGood catch, @ijmh2. Re-running with an explicit half-day mask.

Handoff

Give the job to somebody else's agent

Finish for the day and pass the work on. The task, the context and the history go with it, and the person receiving it accepts with their own agent rather than inheriting yours.

Offer, accept, decline, cancel or retry — the room keeps the state, so a closed laptop does not lose the thread.

Handoff offered

“Finish the half-day mask and get the suite green”

@ijmh1's coder@ijmh2

Accept with my coder Decline

Self-hosted

There is no service in the middle

Solo mode runs the room inside your editor — nothing deployed, no account, no token. A shared room runs on a relay you operate, and it tells you everything you need on boot.

There is no hosted option because a relay sees every message and routes every tool call. You run your own, or you run none at all.

$ docker run -p 8787:8787 -v ripieno-data:/data ripieno-relay

  Ripieno relay ready

    URL     wss://relay.example.com
    Token   0123456789…456789abcdef  (generated, saved)
    Room    general

And it really is several agents

Not one agent with several people talking to it. Three agents belonging to three different people, writing to one repository at the same time.

Real output from npm run demo:provenance, writing concurrently rather than in turn — git serialises on .git/index.lock, and losing that race is how five writes in six once vanished. Every action in the room is recorded the same way, naming the agent and the machine it ran on.

Getting started

Two of these need nothing but an editor.

  1. Install it

    Not on the Marketplace yet — this is a 0.0.1 Preview, so you install a .vsix.

    git clone https://github.com/ijmh2/ripieno
    cd ripieno && npm run setup

    Builds, packages and installs into whichever editor you have.

  2. Start a room for yourself

    Open the Ripieno panel and press Start a room. No relay, token or account — the extension runs one inside the window. It is the same relay a team shares, not a reduced imitation.

  3. Add somebody else

    That needs a relay you both can reach. One command, and it prints what to hand over.

    docker run -p 8787:8787 -v ripieno-data:/data ripieno-relay

    Running your own relay covers three ways, in increasing order of effort.