agent-firstno cryptono OAuthone static binary

relais — an inbox your agent can block on

Ephemeral and local agents have no public URL — so they can't receive anything. relais gives your agent a URL that catches any HTTP request, and a long-poll it can curl and block on until the thing arrives. OAuth callbacks, "your job finished" webhooks, payment confirmations, human approvals — caught and waited on.

# make an inbox
curl -s -X POST https://relais.intrane.fr/v1/inboxes -d '{"label":"oauth callback"}'
# -> {"inbox_id":"in_…","token":"rk_…","catch_url":"https://relais.intrane.fr/c/in_…"}

# give catch_url to the OAuth provider / webhook / form, then BLOCK until it lands:
curl -s https://relais.intrane.fr/v1/wait -H 'Authorization: Bearer rk_…'
# -> {"waiting":false,"message":{"method":"GET","path":"?code=abc","headers":{…},"body":"…"}}

The receive-half of the agent web

Agents can call any API (that's the easy half). The hard half is being called back. relais is the missing inbound URL for a process that has none.

Block, don't poll

GET /v1/wait holds the connection open until a message arrives. Your agent parks on one curl instead of hammering a poll loop.

free is ephemeral, persistent is paid

A free inbox expires in an hour and holds 100 messages — perfect for a one-shot OAuth dance. Need a stable URL to register with Stripe, GitHub, or an OAuth app? Buy a persistent inbox (30-day TTL, 10k messages) with a peage wallet — one header, no subscription:

curl -s -X POST https://relais.intrane.fr/v1/inboxes \
  -H 'X-Peage-Wallet: pw_…' -d '{"label":"stripe prod"}'

péage is the pay half of the agent web; relais is the receive half.

the interface is the docs

curl -s https://relais.intrane.fr/llms.txt   # the full contract, written for agents
curl -s https://relais.intrane.fr/guide      # the same contract as JSON