Three products, one foundation.
We settle what agents pay for, so we can see what each dollar bought. All three products are built on that: choosing which setup to deploy, training agents to spend well, and routing each call.
Choosing
Know which AI works on your workload
A public benchmark tells you which model is good at a public benchmark. Give us 200–500 cases out of your production and we measure which model and configuration completes your workload, and what each one costs per task that finished.
- Graded by code: tests pass, exact match, correct end state. Never a model grading a model.
- We are the gateway the calls run through, so the cost in the report is what was charged, not a rate card times a token count.
- You get the numbers, where the failures cluster, and a policy you can deploy or ignore.
Not yet: We measure it for you. We do not yet tell you what usually wins — that answer needs many comparable workloads behind it, and saying it early is how you get caught by the customer whose result disagrees.
Training
Agents that learn to make better decisions with money
RL environments for agents that handle money, built to order: an agent is given a budget and has to pay for what the task needs. The reward comes from the settlement ledger, not a judge: who it paid, how much, how often, and whether it stayed within budget.
- Each environment is built for one task family and comes with a checkable outcome and a cost per task run.
- We synthesize every task and golden trajectory and write every grader; no customer data goes in.
- You get the environment, the task set, the graders, reviewed golden trajectories, a calibration report and a statement of rights.
Routing
Pay per call. Two ways in.
Developer infrastructure for pay-per-call AI models, tools, and data. One endpoint, 117 models, each call priced before it runs. Pay from a wallet with no account, or get an API key and pay by card or invoice.
- ClawRouter — MIT, on npm, runs on your side. Plugins for DeepSeek Harness, Hermes and OpenAI Codex.
- The gateway — one OpenAI-compatible endpoint, 90 chat models from 15 providers, plus image, video, music and speech.
- USDC on Base and Solana, settled per call — no account, no API key, no card.
- Every paid call returns a receipt and an id you can join to your own records one to one.
Not yet: Billing on the graded outcome instead of the call. Every charge today is per call. And the gateway does not pick models for you: it calls the model you asked for, and selection is ClawRouter's job, on your side of the wire.
One endpoint, whichever product you came for.
Evaluation runs through it, ClawRouter calls it, and settlement happens on it. It is OpenAI-compatible, so pointing an existing SDK at it is a base URL change.
Point an OpenAI client at one base URL. Every model, one wire format.
POST /v1/chat/completions
{
"model": "openai/gpt-5.6-luna",
"messages": [
{ "role": "user",
"content": "In one sentence: what does a routing layer do?" }
],
"max_tokens": 120
}{
"model": "openai/gpt-5.6-luna",
"choices": [{
"message": {
"role": "assistant",
"content": "A routing layer directs incoming requests or data
to the appropriate destination, service, or
processing path."
},
"finish_reason": "stop"
}],
"usage": { "prompt_tokens": 17, "completion_tokens": 23,
"total_tokens": 40 }
}Already on the Messages API? Same gateway, no migration.
POST /v1/messages
{
"model": "anthropic/claude-sonnet-5",
"max_tokens": 120,
"messages": [
{ "role": "user",
"content": "In one sentence: what does a routing layer do?" }
]
}{
"type": "message",
"role": "assistant",
"model": "anthropic/claude-sonnet-5",
"content": [{
"type": "text",
"text": "A routing layer examines incoming requests and directs
them to the appropriate destination — a service,
handler, server, or processing path — based on
defined rules, criteria, or logic."
}],
"stop_reason": "end_turn",
"usage": { "input_tokens": 21, "output_tokens": 63 }
}Every call is quoted before it runs, so a budget can be enforced by the caller — not reconciled weeks later.
POST /v1/chat/completions
{
"model": "anthropic/claude-opus-5",
"messages": [
{ "role": "user",
"content": "Summarise this 40-page contract." }
],
"max_tokens": 4096
}HTTP/1.1 402 Payment Required
{
"amount_usd": 0.01141,
"for": "Claude Opus 5 API call
(~32 input, 4096 max output tokens)",
"maxTimeoutSeconds": 300
}
# The price arrives before the work does. Your client decides
# whether to pay it — an over-budget call is never made, so
# there is nothing to claw back.Which agent spent what, on which model, is a query — not an investigation at the end of the month.
GET /v1/wallet/{address}/reconciliation?days=7
# No key, no dashboard login. The field is named revenueUsd
# because it is the same number on both sides of the invoice.{
"days": 7,
"totals": {
"calls": 47,
"inputTokens": 1467,
"outputTokens": 6227,
"revenueUsd": 0.37435508
},
"perModel": [
{ "model": "deepseek/deepseek-chat",
"calls": 15, "inputTokens": 106,
"outputTokens": 59, "revenueUsd": 0.00102744 },
{ "model": "deepseek/deepseek-v4-pro",
"calls": 14, "inputTokens": 1246,
"outputTokens": 140, "revenueUsd": 0.00066381 },
{ "model": "anthropic/claude-opus-5",
"calls": 1, "inputTokens": 16,
"outputTokens": 4, "revenueUsd": 0.001 }
],
"services": [
{ "service": "chat", "calls": 46, "revenueUsd": 0.02043935 },
{ "service": "video", "calls": 1, "revenueUsd": 0.35391573 }
]
}What delivers them
Five pieces of software, all of them shipping, plus the endpoint above. None of them is the product on its own — they are how the three above reach your stack.
19 tools inside Claude Code, Cursor and ChatGPT — chat, media, search, markets, RPC.
Neural search, prediction markets, equity tickers, multi-chain RPC, sandboxed compute, voice — priced per call like the models.
Start with the measurement.
Send us one workflow that already runs and we will tell you what completes it and what that costs — then routing and settlement are decisions you make with a number in hand.
Questions about evaluating, routing and settling AI work
- What does the Verified Eval product measure?
- Which model and configuration completes your workload — not a public benchmark — scored program-verifiably: tests pass, exact match, correct end state. Never a model grading a model. The cost in the report is what the gateway actually charged per task that finished.
- How is this different from a public LLM benchmark?
- A public benchmark tells you which model is good at that benchmark. This runs on cases taken from your own production traffic, so the answer is about your work, and the score comes from a program checking the result rather than a judge model's opinion.
- What is smart routing, and does it change my code?
- Routing sends each task to the model the evaluation showed completes it at the lowest cost. It is a policy you deploy — as a routing config on one endpoint — not a rewrite: your client keeps its OpenAI-compatible request shape.
- What does settling mean here?
- Paying for what actually happened. Every call is priced before it runs and billed on the usage it consumed, so the cost in an evaluation report and the cost on an invoice are the same number from the same ledger.
- Do I have to move my workload to BlockRun to be evaluated?
- No. The evaluation runs through the gateway on cases you provide; deploying the resulting policy and moving traffic is a decision you make afterwards, if the numbers justify it.
- Which models can the evaluation and routing cover?
- Every chat model on the catalog, across every vendor the gateway serves, so a comparison is not limited to the models one provider's console can reach.
- How do these products compare to an eval tool like Braintrust or LangSmith, or a router like LiteLLM?
- An eval tool scores runs you make with your own keys and lets you pick a judge; a router forwards between providers you hold accounts with. Here the same gateway evaluates, routes and settles, so the measured cost is the billed cost — there is no gap between the experiment and the invoice.
- How does an evaluation engagement start?
- With a set of real tasks from your production — no source code, no data access. The measurement comes back with where failures cluster and a routing policy you can deploy or ignore.