See your Kickbacks.ai status, live earnings, and ad history right in your terminal — local-first, safe by default, nothing hidden.
macOS 13+ · signed & notarized by Apple · includes the kickback CLI.
Requires Kickbacks.ai — new to it? kickback setup installs the extension, kickback login signs you in.
Prefer a click to a command? Kickbacks Bar keeps your live today · lifetime earnings in the macOS menu bar — and puts the whole CLI (earnings, ad history, daily chart, status) one click away.
Both include the kickback CLI — the cask installs it as a dependency, and the direct .zip download bundles it and sets it up on first launch (it'll prompt to install Apple's free Command Line Tools if your Mac doesn't have Python yet). No separate step needed.
macOS. Needs python3 + openssl — openssl ships with macOS, and python3 comes with Apple's free Command Line Tools (you'll be prompted to install them on first run if needed). No pip packages.
It installs one script and writes a config with safe defaults. Inspect first if you like — that's encouraged: view the exact script.
Run kickback about any time for this, generated from the tool itself.
The exact same server the official extension already talks to. Nothing is ever sent to the tool's author or any third party.
Every feature that writes anything is off until you turn it on. Read-only status needs nothing.
| Feature | Default | What it does |
|---|---|---|
| network | on | contact the Kickbacks backend for earnings (turn off for fully-offline status) |
| sampler | off | 60s background job logging ad rotations & earnings → history / daily charts |
| notifications | off | daily macOS notification with your earnings |
| token_refresh | off ⚠ | when the editor is closed, refresh an expiring token & write it back (backup saved first) |
Everything is editable by hand in ~/.config/kickback/config.json — including the backend URL and keychain names. Nothing is hardcoded.
It's a companion to an extension that updates, so it degrades gracefully — earnings just show "unavailable", on-disk status keeps working, and it never crashes.
| Change | What you'd see |
|---|---|
| Extension changes the token format | earned — unavailable |
| Backend URL / endpoint changes | HTTP 4xx/5xx — edit config |
| Keychain scheme changes | keychain denied |
| Signed out / token expired, editor closed | unavailable until you reopen it |
kickback doctor checks all of these live.
The backend exposes only aggregate earnings (lifetime / today) — never CPM, advertiser cost, or billed impression counts. So per-ad dollars, effective rate, and per-day totals are derived by attributing earnings changes to whichever ad was showing. They're approximate and represent your share, not advertiser spend — and they're labeled that way everywhere in the tool.