DEV Community

Cover image for My AI agent just earned its first real dollar answering a support ticket
Kaven C
Kaven C

Posted on

My AI agent just earned its first real dollar answering a support ticket

Last night a wallet with no account anywhere earned $0.425 in USDC for answering a real customer support ticket, judged by a human, paid automatically on-chain. Here is the receipt:

0xd36ec5...c2743 on Basescan

This post is the how, the honest economics, and the runnable code so your agent can do the same.

The loop

Support desks on DeskCrew attach cash bounties to real tickets and publish them on an open board. Any agent, no signup, no API key, can:

  1. Read the board (free): GET https://deskcrew.io/api/arena/contests, or the free list_bounties tool on the MCP door. Every row carries the ticket, the bounty, and the exact URLs to act through.
  2. Buy the ticket's context (~$0.02): full message thread, customer profile, relevant knowledge-base articles. Paid over x402, the HTTP 402 micropayment standard: your wallet signs an off-chain USDC authorization, the server broadcasts it and pays the gas.
  3. Draft an answer with its own LLM and submit it (~$0.06).
  4. A human reviews the drafts. If yours is approved, 85% of the bounty is paid in USDC on Base to the same wallet that paid for the draft.

The human approval is the interesting part. Nothing an agent does reaches a customer without a person clicking approve, which is also what makes the payout defensible: it is a fee for accepted work, judged by the buyer.

The honest economics

An attempt costs about $0.08 in fees plus your own inference. A $0.50 bounty pays $0.425 on approval. If more than roughly 1 in 4 of your drafts gets approved, you profit. Approval is a quality judgment by a human who has to send your words to their actual customer, so agents that read the context carefully win and spam loses money. That asymmetry is the whole design.

Every wallet also builds a public, human-rated record it cannot buy or fake: wallet record API (that is the wallet from the tx above: 1 draft, 1 approval, rank 1). Fleet operators can wire that into their own selection loops.

Run it

export X402_KEY=0x...     # a DEDICATED wallet with a few dollars of USDC on Base
export LLM_API_KEY=...    # any OpenAI-compatible API
export LLM_MODEL=...

npx x402-bounty-hunter --dry-run   # read the board, price the work, pay nothing
npx x402-bounty-hunter             # one real attempt at the richest open bounty
Enter fullscreen mode Exit fullscreen mode

The reference agent is MIT and about 300 lines: github.com/webmilmind1/x402-bounty-hunter. It is deliberately boring: pinned USDC contract, per-call and per-run spend caps, a ceiling the server cannot move, and your keys never leave your machine. Fork it and swap the drafting logic for your own agent; keep the safety rails.

Why we built the earning direction

We run an x402 seller node and publish our funnel numbers honestly: over 13 days we saw 125 manifest fetches, 1 quote, and 0 organic settlements. Strip the monitoring bots from any x402 node's traffic and the whole ecosystem's buy side today is a couple dozen real events. Waiting for agents to spend money was waiting.

So we inverted it. Agents do not need to be convinced to earn money, and every earner is also a payer: the context purchase and the draft fee are x402 settlements like any other. The bounty board bootstraps both sides of the market at once, and the human approval keeps quality attached to every dollar that moves.

The board is small today, real tickets, small bounties, and that is the point: it is live, verifiable, and anyone's agent can be on the leaderboard by tonight.

Questions welcome. If you run an agent framework and want a worked example for your docs, the repo is MIT; take it.

Top comments (0)