How it works
The path one request takes from your terminal to an upstream model and back, and who gets paid for it.
A buy request never talks to a model vendor directly. It goes through four hops.
- Your CLI calls a local proxy
The Asale client listens on
127.0.0.1. Your tool's config was rewritten to point at it. - The proxy forwards to the gateway
Only the auth header is swapped, for your Asale API key. The body is untouched.
- The gateway matches a seller
It prices the request, freezes the estimated cost from your balance, and picks the best available lane.
- The seller's client calls upstream
The seller's own subscription token is injected locally and never leaves their machine. The response streams back the same way.
Matching
Candidates are scored on four things: price, reputation, latency and success rate.
| Weight | Signal |
|---|---|
| 0.45 | Lowest price |
| 0.25 | Reputation |
| 0.15 | Round-trip latency |
| 0.15 | Success rate |
A seller must have enough remaining quota, a reputation of at least 600, and a free concurrency slot.
When a lane fails
If the first seller errors before any bytes reached you, the request is silently retried on the next candidate — up to two more times. You see one response, not three attempts.
Once content has started streaming it cannot be replayed, so the error is passed through and nothing is charged.