Built for teams using Claude Code

A control room for your team's Claude Code.

Every session on one screen: watch it run live, queue prompts, approve the risky tool calls, and pull a teammate in mid-run. Claude's remote control drives one session for one person — PairWave gives a whole team shared control, with real permissions, a logged audit trail, and cost in view the entire time.

Owner views logged & notified·Per-machine tokens — never your API key·Live cost + weekly reports
andy/auth-svc·acme-eng / auth-svc
ACRWAJ3 collaborators
AJ
Walk me through rotating the hub signing key without dropping any open SSE sockets.
Dual-key rollout: introduce v2 alongside v1, sign new tokens with v2, accept either for verification, retire v1 after the longest socket TTL. Want me to look at how the current verifier loads keys before sketching code?
ACOperator chat
@andy before you code — we promised SRE we'd do rotations through Vault, not env. Worth mentioning to Claude.
AJ
Adjust: keys come from Vault now. Loader should pull current + previous from /v1/secret/data/hub/signing and refresh on a 60s timer.
Pinned for writeup
"Rotation handoff via Vault — never let it touch env." Tag this turn so it shows up when this session becomes a writeup.
⊙ 1 approval pendinggit push origin andy/vault-key-rotation
14 prompts · 3h elapsed
< 1 minfrom sign-in to a live, watchable session
100%of owner views logged & notified — no silent watching
Per-sessioncost tracked, with your own spend alerts
1 machineshared by the whole team — one Claude subscription
Cost & control

Know what it costs. Know who did what.

Claude Code is powerful and it isn't free. PairWave keeps spend visible and bounded, and keeps a clean record of who steered every session — the oversight that makes it safe to give a team this much leverage.

Per-session cost, in view

Every session shows estimated spend by model, cache-hit rate, and output ratio. Set a dollar threshold and PairWave flags a session before it runs away — a nudge at 80%, a red flag at the line.

≈ $19.40 · 71% cache hit · over your $30 alert

Weekly reports, in your inbox

Each member gets a private weekly report — prompts, cost, cache efficiency, and patterns worth noticing. Opt in and it emails itself; no dashboard-watching required.

87 prompts · 14 sessions · $42.18 · emailed Monday

Auto-compact, with the savings counted

Sessions that go quiet are compacted automatically so the next prompt rides a smaller, cheaper context. PairWave projects the pre-compact spend rate over the time the session was actually used and shows you what /compact avoided — on each session, on your weekly report, and on the team screen for owners.

/compact saved ≈ $11.94 this month · 6 sessions

Who did what, always

Every prompt, approval, and owner view is attributed and timestamped. You can hand the whole team Claude Code's reach and still answer 'who steered this, and why?' in one glance.

@andy approved · git push · owner viewed: "high spend"
Structural primitives

Three nested units. Roles that match how engineering actually works.

The same person is a lead on one workstream and a contributor on another. PairWave models that — no global seniority labels, no permanent "junior" tag attached to anyone.

TeamBilling & membership

The unit owners manage. One Stripe sub, one member roster, many projects in flight.

ProjectThe unit of work

Lessons, writeups, reports, and visibility settings all scope here — not to the whole team.

LeadPer-project role

Drives a project, accepts contributors, gets consent-scoped visibility into shared work.

ContributorPer-project role

Works on the project. Sets their own visibility preferences when they join.

StakeholderPer-project role

Read-only access to published artifacts. The PM who wants to follow along.

OwnerTeam-wide

Handles billing, governance, and team-wide access. Every owner-view is logged and notified.

Beyond the live session

A session today becomes the record tomorrow.

Watching live is the start. Owners get logged governance access, everyone gets a private weekly mirror, and the work worth keeping turns into shareable writeups and a curated lessons library — so the team compounds what it learns instead of re-solving it.

01

Session writeups

The teaching artifact: a 3–10 sentence narrative of the arc — what was tried, what shifted, why the final approach worked.

Cleaning up test fixtures without nuking CI
02

Session sharing

Sessions are private by default. Publish like a gist when one is worth sharing — to the project, the team, or no one.

Visibility: project · attached writeup
03

Lessons library

Promoted writeups become owned, time-boxed lessons. 90-day review cycle keeps the library small and current.

Scope rm operations explicitly · ★ team-wide
04

Owner oversight

Owners can view any session. Every view is logged, notified to the operator, and shows the reason. No silent observation.

owner viewed: "investigating high spend last week"
05

Weekly reports

Each member gets a private report on their own Claude work — including token usage, cache-hit, and estimated cost per model. Sharing scales with the situation, not with rank.

87 prompts · 14 sessions · $42.18 spend · 71% cache hit
Your machines

Real Claude Code, running on your own workstations.

Install the Relay desktop app, pair the machine with a six-digit code, and spawn or drive Claude Code sessions from the browser. PairWave never holds your Anthropic key — it brokers a per-machine token and talks to the hub. Sessions stream onto your dashboard the moment they start.

  • One-time device pairing
    The daemon shows a code; you approve it once at /pair. No SSH, no inbound ports — the machine dials out to the hub.
  • Spawn & control from anywhere
    Pick a folder, set a routing name, hit spawn. Restart, switch permission mode, peek at a live terminal, or kill — all from the Machines page.
  • Share a machine with a teammate
    Grant viewer (read-only) or operator (spawn + control) by email. Revoke any time; their sessions stop with it.
andys-mbp.localonline
daemon v0.4.1
liveandy/auth-svc
RestartMode ⇧⇥Kill
idleandy/billing
last active 12m ago
Shared with @ren@acme.dev as operator · @alice@acme.dev as viewer
Privacy by default

Sharing is the choice — not the default.

People don't teach honestly when they're being watched; they perform. PairWave is built around publishing and pulling — not surveillance and pushing.

  • No live over-the-shoulder mode by default
    Pair sessions exist as an opt-in feature both sides explicitly enable for one duration. Not the headline.
  • Pull-based feedback, not public flag queues
    Operators mark moments worth a second look. The team responds. Leads only engage when summoned.
  • Owner views are logged & notified
    Owners get the access they need for governance. Operators retain dignity — they know when they're being looked at, and why.
  • No global seniority labels
    Per-project roles, no permanent 'junior' tag. Lessons are attributed when the author opts in.
Audit log · session ses_cd9eOwner viewed
  1. 2026-04-29 14:22
    @andy (owner) viewed full session
    reason: "investigating high spend last week"
  2. 2026-04-29 14:23
    system operator notified: owner viewed your session
  3. 2026-04-22 10:15
    @andy published session to project
Project: auth-svc · join flowNew contributor

Share weekly reports with the project lead? This helps them help you. You can change this anytime.

Defaulted on for first-90-days members; defaulted off for established members.

Pricing

Per-team billing. No per-event fees, no AI markup.

TeamRecommended
$15/seat/mo

The full learning loop. Where PairWave shines.

  • Per-user shares with anyone
  • Project-scoped roles & lessons
  • Logged owner oversight
  • Weekly per-member reports
  • Pull-based ask-the-project
  • 7-day trial, no card required
Start a Team trial

Give your team Claude Code's reach — with the oversight to trust it.

Live sessions, shared control with real permissions, cost in view, and a logged audit trail. Link your first machine and start a session in under a minute — the guided setup walks you through it.