wetpaint

a wet paint sign for git

See which files your teammates are still painting, before you smudge each other's work - so two of you never quietly change the same file and collide in a painful merge.

Free for pairs · macOS app · only file paths leave your machine, never your code
dry wet paint nearby wet paint — don't touch

the problemTwo people. One repo. No idea.

You rewrite a file, feel great about it - then discover a teammate just rewrote it too. Now it's a merge conflict, a lost hour, and a "wait, who changed this?" Slack thread. Modern AI agents make this worse: everyone's moving fast across many files at once, with zero visibility into each other.

how it worksUp and running in two minutes

  1. Install the app and point it at your repo folder. A small paint drop appears in your menu bar.
  2. Invite a teammate with a one-time link. They install, pick their own clone of the same repo, and they're in.
  3. Work as normal. Each app quietly reports the files you've changed but not committed. Everyone sees the same live board and gets a heads-up before touching a file someone else is in.

every editor, every boxNo menu bar? No problem.

The macOS app is the easy path, but the signal is just your dirty git files - so wetpaint runs anywhere you do. Same board, same token, same repo-aware collisions.

🧩

VS Code · Antigravity · Cursor

A 🟢/🟡/🔴 wet-paint sign in the status bar that reports for you and toasts on a collision.

↓ Download the extension

Command Palette → Extensions: Install from VSIX…
then set wetpaint.token + wetpaint.user in Settings.
🖥️

Headless box over SSH (Linux)

No GUI? Leave the terminal sign in a tmux pane - it reports and redraws a live board, and rings the bell on a collision.

curl -fsSL wetpaint.dev/download/wetpaint-tui.sh -o wetpaint-tui
chmod +x wetpaint-tui
WETPAINT_TOKEN=… WETPAINT_USER=you ./wetpaint-tui
🤖

Claude Code, in any terminal

Drop the hook into your repo's .claude/hooks and every edit gets checked against the board - with an inline “edit anyway?” warning before you overwrite a teammate.

why teams use itSmall, quiet, and exactly enough

💧

A paint drop in your menu bar

A glossy teardrop that changes colour at a glance - 🟢 green when you're dry (clear), 🟡 amber when a teammate is working nearby, 🔴 red when you're both in the exact same file right now.

⏱️

Live, not after the fact

Presence refreshes every few seconds and auto-expires after ~10 minutes. No stale wet-paint warnings, no cleanup, no nagging.

🤖

Built for agent workflows

Claude Code, Cursor, Antigravity or any editor. Claude Code users also get an inline “edit anyway?” warning before they overwrite a teammate.

🧭

Repo-aware by design

Presence is tagged by your git remote, so collisions only count inside the same repository - the same id on every machine.

🔒

Paths only, never code

It transmits file paths, branch names and your repo address - never your source, contents or commits. Hide any paths you don't want shared.

📡

One-link onboarding

No terminal, no config files, no accounts. Share a one-time invite; your teammate clicks, picks a folder, done.

pricingFree for pairs. Flat for teams.

wetpaint is a network tool - a board with holes in it is broken for the payer too. So there are no per-seat fees and no feature gates: every client is identical on every tier. You only pay for a bigger board. One person pays, the whole board is covered.

Pair
Free forever
no card, ever
Up to 2 painters
Everything included. The tip jar lives here if it saves you a merge.
Studio
$90 / year
or $10 / month
Up to 30 painters
Bigger crew? Beyond 30, email me.
One avoided merge conflict pays for the year. No per-seat math. No feature gates. You upgrade from your board when a 3rd painter joins - a 14-day trial starts automatically, no card needed.

who it's forPairs and small teams, same repo, same time

If you've ever lost an hour to a conflict you could have seen coming, wetpaint is for you. It shines for people moving fast with AI coding agents, but it's editor-agnostic - anyone with uncommitted changes shows up on the board.

privacyWhat it never sees

wetpaint stores only what the board needs: the file paths you've changed, your branch, your repo's address, and the name you choose. Live presence auto-deletes after about 10 minutes. We never receive your source code.

faqQuestions, answered

Does wetpaint see my code?

No. It only ever transmits file paths, branch names and your repo's address - never your source code, file contents or commits. Live presence auto-deletes after about 10 minutes.

Do I need a particular editor?

No. The signal is simply your dirty git files, which is editor-agnostic. The menu-bar app works with any editor; Claude Code users get an extra inline “edit anyway?” warning for free.

How does a teammate join?

You send a one-time invite link. They open the app, choose “Join”, paste the link, and pick their own clone of the same repo. Use a different name from your teammate so you each show up distinctly.

What do the colors mean?

🟢 dry - all clear. 🟡 wet paint nearby - a teammate is working in the same directory. 🔴 wet paint — don't touch - a teammate has the exact same file uncommitted right now.

Isn't this called git-radar?

wetpaint was formerly git-radar. Same tool, new name and coat of paint - the old links redirect here.

What does it cost?

Free forever for pairs (up to 2 painters). Bigger boards are flat: Team is $36/year (or $4/month) up to 10 painters, Studio is $90/year (or $10/month) up to 30. One person pays; the whole board is covered. Every client is identical on every tier.

What counts as a “painter”?

A distinct teammate who has reported to the board in the last 30 days. Someone who stops working ages off automatically, so an ex-teammate never permanently eats a seat.

What happens when the trial ends?

When a 3rd painter joins, the board starts a 14-day Team trial automatically - no card. If it ends without upgrading, the board reverts to Pair: the 2 most-recently-active painters keep working, and extras become read-only - they still see the whole board, their presence just isn't broadcast until someone upgrades. We never silently drop anyone.

Does anyone lose data?

No. wetpaint only ever holds transient presence (10-minute TTL) and your board's billing state. Downgrades and lapsed payments change who can broadcast, never delete anything.

Can I expense it?

Yes - every payment gets a Stripe receipt you can forward to finance.

Is there still a tip jar?

Yes, on the free tier - a “buy me a coffee” if wetpaint saves you a merge headache.