WaitPerk
How it worksPlacementsPrivacyDashboardEarnings
Log inInstallRun an ad
Privacy and data dictionary

Your work stays yours.

WaitPerk’s client is built around a strict outbound allowlist. It never opens transcript files and never sends the content of your coding sessions. Everything it changes lives in your own Claude settings file, backed up first and restored on uninstall — it patches nothing else on your machine.

Never collectedUsed locallySent to WaitPerkNetwork dataYour controlsVerify it yourself
01

Never collected or transmitted

WaitPerk never opens or reads Claude transcript files. It never stores or transmits prompts, responses, source code, file contents, filenames, working-directory paths, repository names, terminal history, or project structure.

02

Used only on your computer

Claude provides a broad status-line JSON object. The WaitPerk client immediately selects only the model display name, context percentage, session identifier, optional prompt identifier, and terminal width. Model and context are displayed locally. The identifiers are transformed with a device secret before any receipt leaves your computer.

03

Exact outbound event schema

Device token

A random, revocable credential used to authenticate the installed client.

Delivery ID

An opaque identifier for the specific sponsor placement.

Opaque turn key

An HMAC generated locally from Claude’s session or prompt identifier. The raw identifier is not transmitted.

Client version

Used to diagnose compatibility and safely retire outdated clients.

Receipt time

When a qualified render receipt reached WaitPerk.

04

Network and retention

The hosting provider necessarily receives an IP address when the client connects. WaitPerk does not create a standalone raw-IP database field. Campaign, install, and ledger records are retained to validate deduplication and support accurate reporting to developers and advertisers.

05

Pause, uninstall, and deletion

Run python3 ~/.waitperk/waitperk.py pause to stop sponsor lines, or run python3 ~/.waitperk/waitperk.py uninstall to remove the status line, spinner verbs, and hooks WaitPerk added, leaving the rest of your Claude settings untouched. (Installs made before client 0.8.0 also carried an optional VS Code panel ad; updated clients and uninstall both remove that patch and restore the extension from its backup.) Data deletion requests are handled manually until self-serve account tooling ships.

06

Verify what you run

The client is one plain Python file with no dependencies, and you never have to pipe it blind. Download the installer first (use your personal install URL from the get-started page — the bare endpoint only prints a sign-up note), read it, then run it:

curl -fsSL "https://waitperk.com/api/install?link=WPK-XXXXXX" -o install-waitperk.py
less install-waitperk.py   # about a hundred readable lines
python3 install-waitperk.py

Updates are signed offline with an Ed25519 key that is never stored on WaitPerk’s servers; the client refuses any update whose signature does not verify against the public key baked into it, so even a compromised server cannot push code to installs. The public key is published at /client/waitperk.pub and the current signature at /client/waitperk.py.sig. Check your installed copy any time:

shasum -a 256 ~/.waitperk/waitperk.py
curl -fsSL https://waitperk.com/client/waitperk.py | shasum -a 256

On macOS the client also keeps its access token in your login Keychain rather than a file on disk.

WaitPerk

A little perk while your agent works.

DashboardAdvertisersMy ad statsAboutPrivacyTerms

Privacy-first by design · Uninstall anytime