selo CLI is built so that both stay with you.
Give your agent this instruction
Copy the block below into Claude Code, Cursor or any agent that can run shell commands in your project. Replace the three values in angle brackets first.Agent instruction
Who does what
What the CLI enforces
The CLI does not rely on your agent behaving. These rules hold for any caller:- No Mainnet payment without approval flags.
--network mainnetwithout both--approve-mainnetand--pay-toexits3before anything is signed. Treat--approve-mainnetas your signature: tell your agent it may only add it after you say yes. - No wallet, no payment. If
SELO_PAYER_MNEMONICis unset,selo testexits3. The mnemonic is read only from that variable and is never printed or written to disk. Signed payments are never printed either. - A budget per run.
--max-usdccaps what one run may pay Selo. A higher price is refused before signing. - The right payee and network. The CLI refuses a
402on another network than--network, or with a payee other than--pay-to. - One payment, never retried on its own. If an outcome is unconfirmed, the CLI records it in
.selo/runs/<release>.jsonand refuses to pay again for that release until someone reruns the same command with--resume. - Private links stay private. The report link is redacted in terminal output and in summaries. The full link is kept only in the local run state file, written with mode 600.
--resume.
Machine-readable discovery
Agents that find Selo on their own can read two free files from the API. Both are served without payment.- llms.txt
- agent-card.json
Terminal
llms.txt
GET /v1/reports/{token}, with the braces URL-encoded.Paying Selo with any x402 client
The paid routePOST /v1/release-test answers an unpaid request with a standard x402 v2 402 challenge. Any x402 client that can pay USDC on Algorand can pay it; the CLI is not required. This is the accepts entry from Selo’s live 402, captured on Mainnet:
Selo 402 requirement
402 only for a request with a valid body that names an eligible, unexpired preflight, so run the free authorization and preflight first.
What the CLI adds on top of a plain x402 client: a fresh preflight, the price and payee checks before signing, a stable Idempotency-Key, safe recovery with --resume, attestation saving and exit codes for CI. See Pay with any x402 client for the raw request and the API overview for every route.