Ads in the Claude Code spinner. Developers earn 50% in USDC on Base, settled on-chain. Built in the open, spec by spec.
Add the Kickbags extension and connect a Base wallet by signing once. The extension never holds your private key — it carries a scoped device token.
One-line ads appear in the spinner while Claude works. You earn per verified impression. No clicking required; nothing interrupts Claude.
Cash out your accrued balance whenever you want — no minimum, from your very first ad. You pay the gas; the protocol covers the rest.
Advertisers fund budgets on-chain. Developers earn for attention. Every payout settles on Base and is verifiable.
Shows the ad, measures real visible time, and lets you withdraw. Never runs ad code, never injects, never blocks Claude.
Serves the best eligible ad and credits a verified impression past a visible-time threshold. Custodies no funds; moves nothing without a valid signature.
Advertiser budgets live segregated per campaign — no shared pool. Payouts are EIP-712 signed and settle on Base; the 50% is enforced in code.
The developer who shows the ad always earns 50% of what the advertiser pays, in USDC. No token, buyback, or staking can reduce, delay, or gate it.
The platform side is the only part governance can re-divide. The developer's 50% is an invariant — it never changes.
The ad business pays developers in USDC and stands on its own. $KICK is an optional token layer on top whose value derives from real revenue.
A share of ad revenue and the token pool's swap fees.
Bought back on-chain, automatically — no sell pressure.
Bought-back $KICK flows to a staking vault, on-chain.
The $KICK engine is built and tested on testnet — not live yet, and it never touches the developer's 50%.
Every feature starts as a written spec before any code. A short constitution governs the repo and takes precedence over any other practice.
Anything promised as verifiable is readable on-chain. The backend authorizes payouts by signature and custodies no funds.
No contract ships without a green suite: valid/invalid signatures, expired deadlines, double-spend, budget overruns, pause.
An ad can never execute, inject terminal sequences, or block Claude. Network failures degrade silently.
Integer micro-USDC (6 decimals) everywhere — contract, database, API, UI. No floats for money.
EIP-712 signed payouts with deadlines, reentrancy-guarded, with a pause kill-switch.
Testnet before mainnet. If something is pending or weak, it's documented as a risk — not hidden.
Each feature is a numbered spec in the repo. Public-level summaries of what each one delivers.
The full ad → earn → settle loop, verified on-chain on Base Sepolia.
Buyback + staking on top of the ad business — built and tested on testnet.
Anti-fraud impression accounting: an impression counts only after enough server-measured visible time, with per-hour caps.
Only a wallet that proves ownership (by signing) can accrue earnings — closes self-crediting and sybil-grief.
Withdraw your accrued balance anytime, no minimum, in one transaction; you pay gas; anti-replay on-chain.
No ad serves until a human approves it; editing served content sends it back to review (anti bait-and-switch).
Cancel a pending edit and restore your last approved content — can never self-approve new content.
Connect your wallet to the extension by signing once — no copy-paste of tokens.
Advertiser funds are segregated by campaign on-chain; a payout only ever debits the specific campaigns that earned it, never a shared pool.
Every withdrawal is an EIP-712 authorization with a deadline, anchored to your on-chain cumulative balance so a stale or reused proof reverts.
Earnings accrue only to an authenticated session that proved wallet ownership; the server measures visible time itself.
Every ad is reviewed before it can serve; served URLs are validated (https only, no IP literals, no link shorteners); abusive advertiser wallets can be banned.
Ads are text. They cannot run code, inject terminal escape sequences, or interfere with Claude. The extension degrades silently on any failure.
Kickbags runs on Base Sepolia (testnet) so the whole loop can be exercised end-to-end for real before mainnet. We document what's pending instead of hiding it.
Independent security audit of the escrow (and the token engine if launched).
Move the contract owner and signer to a multisig / timelock.
A stronger usage-review / anti-sybil layer.
Production infrastructure, a real advertiser, and legal / regulatory review.
Publish the extension to the VS Code Marketplace and Open VSX.
No. You earn per verified impression while you code. Clicking is never required.
Anytime, from your first ad. No minimum. You pay the gas.
Accrued against on-chain budgets, then paid to your wallet on Base when you withdraw. Always verifiable on-chain.
No. Ads are text only and cannot execute, inject, or block Claude.
Not yet — it runs on Base Sepolia testnet while audits and multisig are completed.
An optional token whose value comes from real ad revenue via buyback + staking. It never affects the developer's 50%.
Install the extension, connect a Base wallet, and start earning in your editor.