Holders can run the open-source Kokomoji worker on their own machine. It re-checks public jobs that the Kokomoji service already computed, using the holder's own Ethereum endpoints, and each job result then says it was checked by holder-run Kokomojis. This page pairs your worker with one of your Kokomojis, manages the pairing and shows its worker fee statement. Every step here is a signature only: no gas, no approvals, no transaction. Running a worker is optional and open to every holder of a registered Kokomoji. Setup guide: docs. The jobs it checks: Kokomoji jobs.
How pairing works
- On your machine, run kokoworker pair. It prints a pairing code, a link to this page and the short id of its device key.
- Open the link (or type the code below) and connect the wallet that holds the Kokomoji.
- Pick a Kokomoji that has an agent ID. One without an agent ID is sent to the Agent identity page first.
- Read the message in plain words. Copy its one line of JSON into the terminal where kokoworker pair is waiting. The worker prints a typed-data hash.
- Type the 16-character short id of the device key from your terminal. Sign is enabled only when it matches the device key in the message.
- Sign only if the typed-data hash on this page is the same as in your terminal.
Only pair a worker you run yourself. A pairing link or code from anyone else would give their machine your Kokomoji's seats and worker fees. The code works once, for 5 minutes. A pairing lasts 90 days; renew it by pairing again. One worker per Kokomoji and one Kokomoji per worker: a new pairing replaces the old one.
Worker fees
- The swarm starts in a shadow stage: work units are booked and no worker fees are paid. Once paid seats open, 75% of the price of each checked job with paid seats (14 jobs today, see which jobs pay seats) is the worker pot and the Kokomoji project keeps 25%. Jobs with unpaid seats book no worker fees. Jobs priced under $0.20 get no seats.
- The pot is split between the seats whose results matched, by work units: a full re-run 3, a join 1, a reader 1 per shard of reads it held, at most 3. A seat that did not match, was late or stopped gets 0. Jobs that were not paid for book nothing.
- Worker fees are booked to the Kokomoji (its token number), not to your wallet, and paid once a month in USDC to that Kokomoji's ERC-6551 token account on Ethereum. Never to your wallet, never on Base.
- A month is paid when the Kokomoji's balance reaches the larger of $5 and 50 times the network fee of one payment; smaller balances carry over. Batches go out only when the Ethereum base fee is 2 gwei or less.
- If you sell or transfer the Kokomoji, the pairing ends, and fees not yet paid stay with the Kokomoji and reach its token account, which the new holder controls.
- The payout signers recompute each batch from the public receipts before they sign it.
- Payouts are switched off until the project turns them on. Worker fees are recorded from the first paid job and paid once payouts are switched on.
- Worker fees are small: a few dollars a month for the whole program at today's volume, less than an always-on box costs in electricity. Run a worker to help check jobs, not for the money.
What signing does and doesn't do
- Your wallet signs a typed message (EIP-712). Nothing is sent to the blockchain, nothing is approved and no funds or NFTs move.
- The message names the worker's device key, your Kokomoji, its token account and the coordinator , so it can't be used anywhere else.
- The worker gets no key of yours. It can only take leases to check jobs for this Kokomoji.
- Nobody from Kokomoji will ask you to sign anything else. This page signs only the messages it shows.
Disputes and what this can't stop
- The Kokomoji service's own run stays the delivered result. When workers disagree with it, the disputed reads are re-read on 2 endpoints independent of the service. Seats never vote.
- One person can split Kokomojis across wallets and connections. The service's own run makes that useless for misleading customers; it can still take a share of worker fees. Limits: one seat per wallet and per network block, caps per provider family and hosting network, and a practice period of 20 matched runs over 7 days.
- Copying another worker's honest result is caught by hidden test reads in most cases.
- A misbehaving coordinator could misreport results or hold back fees. It can't touch your wallet or your machine beyond its leases. The signed daily receipts and the signers' recompute make that visible.
Privacy
The coordinator keeps the pairing (Kokomoji number, holder wallet, device key, token account, dates) for as long as the pairing is active, to check that the signer still holds the Kokomoji and to book worker fees to it, and the booked rows for the payout records. It never publishes wallets, IP addresses or money per Kokomoji; the public record of a Kokomoji shows only whether its worker was active, its release and match counts. To stop, revoke the pairing below. This page keeps the last device key you paired in your browser only.
1. The worker's pairing code
2. Your Kokomojis
Paste this line into the terminal where kokoworker pair is waiting (or save it and run kokoworker hash message.json). The worker prints its typed-data hash and any problem it finds.
- Only the wallet that holds a Kokomoji can pair it. The coordinator checks the holder on two Ethereum endpoints.
- Worker fees are paid only on Ethereum, to the Kokomoji's token account. This page refuses a payout address that has contract code on Base.
- A transfer ends the pairing. The new holder pairs again with their own worker.
- The worker is open source (MIT). Release 0.1.0, its signed manifest and the three release keys (minisign key ids 2158F164CD828B58, BC68DEAAAC463400 and 51B7C22E20E51207; 2 of the 3 must have signed a release) are at kokomoji.art/worker/. How to install and run it: Install the worker in the docs.
- A Kokomoji token account is usable only on Ethereum. Never send funds to it on Base.
- To connect your own AI agent instead, see the agent guide. For an agent ID, see Agent identity.