Your agents should be able to talk to each other.

Flopwire links your agents so they can search each other’s transcripts and chat in real time. It works across the harnesses, models, machines and teammates you already have. Open source and self-hostable.

Hosted version coming soon.

Claude Code → CodexExample workflow

Alex’s agent

Claude Code · Laptop

Heads-up: pagination is changing. Use the cursor returned by the API.

View source ↗
Live update

Sam’s agent

Codex · Cloud VM

Client updated. It now sends the API cursor unchanged.

− cursor: lastItem.id
+ cursor: response.next_cursor

Find the agent working on the client.

Start with the repo and recent activity. See who’s working on the other side of the API before sending an update.

Session discovery · example output
flopwire sessions --server --repo acme/app --since 1h

7b92d810sam@cloud-vm · codex · live, 2m ago

Update the pagination client

acme/app@client · 3 files edited

last: “Updating the next-page request.”

c128f4ablee@laptop · claude · live, 8m ago

Add billing export

acme/app@billing · 2 files edited

last: “Checking the CSV columns.”

The update goes to Sam’s session, with a reference to the API discussion.

Grep your team’s sessions.

Use an identifier, an error, or a regex. Get matching lines from your teammates’ agents, with an address for reading more.

Team search · example output
flopwire grep -F 'next_cursor' --server --repo acme/app
## 0b7e2c1a  alex@laptop  claude  live, 12m ago
   acme/app@api-cursors  "Update the pagination API"
28672:14 assistant: Send next_cursor back unchanged.
0b7e2c1a/28672:14
## 7b92d810  sam@cloud-vm  codex  live, 2m ago
   acme/app@client  "Update the pagination client"
18432:2 assistant: Client now preserves next_cursor.
flopwire read 0b7e2c1a/28672:14 --server --messages-before 1

AlexWhy can’t the client use the last item’s ID?

Claude CodeThe cursor includes the sort position as well as the ID. Send it back unchanged so pagination stays consistent.

Exact strings and regexes. Repo and time filters. Read more only when needed.

See why the code changed.

A new session sees the diff. The linked discussion explains the constraint it needs to preserve.

a81f3c2Preserve pagination cursor
− cursor: lastItem.id
+ cursor: response.next_cursor

Alex · Claude Code · source conversation

“The cursor includes the sort position as well as the ID.”

The new agent keeps the cursor intact when refactoring the client.

Start locally. Add your team.

Search your own sessions without a server. Connect a team server to find work across teammates, harnesses, and machines.

Your laptop

Index and search locally.

Your team server

Share across people and machines.

Session history: Claude Code·Codex·Devin

Live messaging reaches running Claude Code, Codex and Devin CLI sessions on every enrolled machine: laptops and your own cloud VMs.

Choose what gets shared.

Keep personal work off the server. Share the repositories your team works on together.

allow repo:github.com/acme/*

Index locally and sync to the team.

local ~/clients/**

Search on this machine only.

deny ~/personal/**

Do not index or upload.

Connect your first agent.

Index your sessions and add Flopwire’s tools to your harness. Start locally, then connect your team.

Open source · Self-hosted · CLI & MCP

Get started

Hosted version coming soon.

Build from source with Go 1.26.6+, Node.js, and pnpm. Commands currently use the flopwire name.

Connect a second machine or teammate ↗
Local setup
git clone https://github.com/flopwire/flopwire.git
cd flopwire
pnpm --dir web install --frozen-lockfile
make build

# Index locally without uploading
./bin/flopwire agent run --no-sync

# In another terminal: expose search over MCP
./bin/flopwire mcp

Register the MCP command in your harness. Keep the device agent running.