AFKash
Your AI works. Your counter ticks.
While Claude Code thinks, AFKash shows one short line, always labelled SPONSORED, on
surfaces you are already watching. Each time a line is shown to you, you earn a share of
what that advertiser paid for it. You keep coding; the waiting earns.
Why you can trust it
- Never reads your code. AFKash never reads your code, your prompts, your files or
your conversations. To tell "the AI is working" from "idle" it looks at one thing only:
the modification timestamp of Claude Code's own session-transcript files. Never their
contents.
- One-click reversible. AFKash: Restore turns every surface off and puts back
everything it changed. Uninstalling cleans up after itself too (details below).
- Always labelled. Every sponsored line says so, on every surface where it can fit.
- A client you can read. The packaged extension is a plain, unminified JavaScript
bundle: open it in your extensions folder and check what it does.
- Anonymous by default. A random device id until you choose to sign in. No analytics
SDK, no third-party telemetry.
Get started
- Install. Sponsored lines start showing right away, under a random, anonymous
device id.
- Link your account. Run AFKash: Sign in to link this device to an AFKash
account. Crediting starts at sign-in: lines shown while the extension runs
anonymously are not recorded, and cannot be claimed later.
- Cash in. From then on every sponsored line actually shown to you is a credited
view. Your balance, your live rate per 1,000 views and your history are at
https://afkash.vercel.app and in the AFKash sidebar.
You are paid a share of what that specific advertiser paid for that specific view,
not a flat rate.
On by default:
- Status bar: a sponsored item, next to a live earnings counter. The counter appears
once you sign in.
- Claude Code spinner: the verb line Claude Code shows while it works.
- Claude Code status line: the persistent line under your session.
Off by default, each opt-in and reversible from the same menu:
- Rich spinner: the sponsored line rendered inside Claude Code's webview with colour,
logo and a clickable link, instead of the width-capped plain text. Modifies one file
inside the installed Claude Code extension, keeping a backup.
- CLI spinner verbs: writes Claude Code's own native
spinnerVerbs setting so
standalone terminal sessions get sponsored verbs too. Append mode: Claude Code's
built-in verbs stay in the rotation.
- Codex ad bar: a persistent sponsored bar above the composer in OpenAI's Codex
extension. Modifies one file inside the installed Codex extension.
AFKash: Ad surfaces… turns any of these on or off, and the choice survives a reload.
A surface you turn off stops earning: AFKash never credits a view you cannot see.
What it touches, in detail
- What it writes on a default install, without further prompting: an AFKash
statusLine entry in ~/.claude/settings.json, and claudeCode.spinnerVerbs in your
VS Code settings. If you already have a custom Claude Code statusLine, AFKash keeps a
copy and puts it back when you restore or uninstall.
- What leaves your machine: an anonymous device identifier, a revocable server-issued
device token, view and click events, and, only if you sign in, your account
email.
- How lines are labelled. The status bar, the Claude Code status line, the Codex ad
bar and the rich spinner carry the full SPONSORED badge. Claude Code's own spinner-verb
slot is capped at 16 bytes, too narrow for the full word alongside real ad text: the
plain spinner and the terminal
spinnerVerbs use a shorter AD· marker there instead,
so every surface stays labelled even where the full badge can't fit.
- What Restore does. AFKash: Restore disables every surface, restores the files
AFKash patched (Claude Code's webview file and Codex's) from the backups it kept before
patching, and puts your own status line back if AFKash displaced one.
- What uninstalling does. Removing the extension restores Claude Code's webview file
and Codex's from their backups, puts your own status line back, clears the terminal
spinner verbs from
~/.claude/settings.json, and deletes the ~/.afkash directory. One
setting it cannot reach on the way out is claudeCode.spinnerVerbs, which only the
editor's own API can clear: run AFKash: Restore before uninstalling and that goes
too.
Commands
| Command |
What it does |
| AFKash: Sign in |
Link this device to your AFKash account |
| AFKash: Open Earnings Dashboard |
Open your dashboard |
| AFKash: Open Current Ad |
Open the sponsored link currently on screen |
| AFKash: Ad surfaces (turn sponsored lines on/off) |
Turn sponsored lines on or off, per surface |
| AFKash: Restore Claude Code spinner/status line |
Turn every surface off and undo everything AFKash changed |
| AFKash: Sign out |
Unlink this device |
Settings
| Setting |
Default |
What it does |
afkash.adSurfaceEnabled |
true |
Sponsored lines on the always-on surfaces |
afkash.adRotationMinutes |
5 |
How long each sponsored line stays on screen before the next one takes its turn (minimum 1) |
afkash.richSpinnerEnabled |
false |
Rich spinner inside Claude Code's webview |
afkash.cliSpinnerVerbsEnabled |
false |
Native spinnerVerbs for terminal sessions |
afkash.codexAdBarEnabled |
false |
Sponsored bar above OpenAI Codex's composer |
Support
Questions, payouts and advertiser enquiries: https://afkash.vercel.app
Release history is in the Changelog tab.
| |