{"agent":"reviewer","tool":"read_page","args":{"url":"https://darwincompute.com/docs"},"result":"<untrusted_content source=\"https://darwincompute.com/docs\">\nTitle: Darwin Compute\n\ndarwin\nDocs\nOpen the app\nIntroduction\nQuickstart\nKeys and sign-in\nConnect your tools\nAPI reference\nMCP server\nSwarm\nHow routing works\nDarwin's GPU\nCredits and burns\nUpgrades\nYour own models\nErrors\nPrivacy\nDarwin docs\n\nDarwin is one API in front of every model you use. It takes requests in the OpenAI or the Anthropic format, grades how hard each one is, and sends it to the cheapest model on your list that can do it. When your top model's budget runs low, more work moves down the list. When everything is out, Darwin's own GPU model answers instead of an error.\n\nDarwin is paid for by burning $DARWIN. A workspace's API and MCP server work while it has credit from a burn, and need no provider keys: requests go to Darwin's GPU model until you add your own.\n\nQuickstart\nOpen the app and connect a Solana wallet, or continue without one. You get a workspace and a Darwin key that starts with dk_.\nBurn $DARWIN on the Credits page. The API and the MCP server work once the workspace has credit.\nCopy the key from the Get started panel.\nSend a request with any OpenAI or Anthropic client. Use any model name; Darwin picks the model and says which in the x-darwin-model header.\nOpenAI Python\nOpenAI JavaScript\nAnthropic Python\ncurl\nCopy\nfrom openai import OpenAI\n\nclient = OpenAI(base_url=\"https://darwincompute.com/v1\", api_key=\"YOUR_DARWIN_KEY\")\nreply = client.chat.completions.create(\n    model=\"darwin\",\n    messages=[{\"role\": \"user\", \"content\": \"Hello from Darwin\"}],\n)\nprint(reply.choices[0].message.content)\nKeys and sign-in\n\nSend the Darwin key as Authorization: Bearer dk_... or as x-api-key: dk_.... Both work on every endpoint, so OpenAI and Anthropic clients need nothing special. Darwin stores only a hash of each key and shows a key once, when it's made.\n\nA workspace made with a wallet is linked to it. Signing in with that wallet again makes a new key for the same workspace, so a lost key never loses the workspace. A workspace made without a wallet depends on its key until you link one on the Credits page or from the Get started panel. Linking signs a one-time message and sends no transaction.\n\nMake more keys, see when each was last used, and revoke them on the Keys page.\n\nConnect your tools\n\nClaude Code reads its address and key from environment variables. Leave ANTHROPIC_API_KEY empty so it uses the Darwin key.\n\nClaude Code\nCopy\nexport ANTHROPIC_BASE_URL=https://darwincompute.com\nexport ANTHROPIC_AUTH_TOKEN=YOUR_DARWIN_KEY\nexport ANTHROPIC_API_KEY=\nclaude\n\nAnything that speaks chat completions takes Darwin's address as its base URL: the OpenAI SDKs, Cursor, Continue, Aider, LangChain. Use https://darwincompute.com/v1 as the base URL, the Darwin key as the API key and darwin as the model. Anthropic SDKs take https://darwincompute.com as the base URL.\n\nCodex uses OpenAI's Responses API, which Darwin doesn't serve yet.\n\nAPI reference\nEndpoint\tWhat it does\nPOST /v1/chat/completions\tOpenAI chat completions, streaming or not, with tools.\nPOST /v1/messages\tAnthropic messages, streaming or not, with tools and thinking where the model supports them.\nPOST /v1/messages/count_tokens\tToken count for a messages request. Exact with an Anthropic key on your top model, an estimate otherwise.\nGET /v1/models\tThe models on your ladder, plus darwin.\n\nReplies come straight from the model that answered, in the format you asked in. Two headers say what happened: x-darwin-model is the model that answered and x-darwin-rung is its place on your ladder, 0 being the top. Request bodies can be up to 25 MB, and long streams are never cut off by Darwin.\n\nMCP server\n\nDarwin is also an MCP server, for agents that would rather call a tool than an API. Connect to https://darwincompute.com/mcp with the Darwin key as a Bearer token, or to https://darwincompute.com/mcp/YOUR_DARWIN_KEY for clients that can't set headers. Like the API, it needs credit from a burn.\n\nClaude Code\nAny MCP client\nCopy\nclaude mcp add --transport http darwin https://darwincompute.com/mcp --header \"Authorization: Bearer YOUR_DARWIN_KEY\"\nTool\tWhat it does\ndarwin_ask\tSends one prompt through your ladder and returns the answer, the model that wrote it, the cost and the time.\ndarwin_swarm\tRuns a list of prompts at once on Darwin's GPU and returns straight away with a swarm id.\ndarwin_swarm_results\tWhere a swarm is and its answers so far, in pages.\ndarwin_swarm_stop\tStops a swarm; waiting jobs are dropped and running ones cut off.\ndarwin_credits\tThe workspace's credit and whether Darwin's GPU is running.\ndarwin_models\tYour ladder, top first, and the fallback model.\nSwarm\n\nSwarm is for batches where each prompt is short and each answer is long: a hundred tickets to label, forty variants of a page to draft, a test to write for every function in a list. Instead of forty darwin_ask calls in a row, your agent sends the whole list in one darwin_swarm call and gets a swarm id back at once. Darwin runs the jobs on its GPU 4 at a time, or 16 with Pro, while the agent carries on.\n\nThe agent collects the answers with darwin_swarm_results, which waits up to 40 seconds for the swarm to finish and then returns the answers by index, in the order the prompts were sent. Long result sets come in pages; when next is a number, the agent asks again from there.\n\nJobs\tUp to 100 per swarm, 3 swarms open per workspace\nModel\tDarwin's GPU, or the Pro model with Pro; your ladder isn't used\nReplies\t1,024 tokens each by default, up to 8,192\nPrice\tEach job is charged like any GPU request, when it finishes\nKept\t7 days\n\nEach prompt has to carry everything the model needs, because the GPU can't see your files or the agent's conversation. Your agent writes every prompt as its own output, so pasting whole files into a swarm usually costs more than it saves. A swarm started while the GPU sleeps waits for it to wake, so a cold start no longer runs into the agent's tool timeout. If credit runs out, the jobs still waiting stop and nothing more is charged. A deploy in the middle of a swarm puts its running jobs back in the queue.\n\nHow routing works\n\nYour ladder is your list of models from the top, the one you'd use for everything, down to the cheapest. You set it, a daily dollar budget for the top model, and the point at which Darwin starts moving work down, on the Ladder page.\n\nDarwin grades each request by rules, not with another model: words like plan, migrate or refactor push it up, words like rename, summarise or format push it down, and attached tools add a little. While more than the start point of the budget is left, everything goes to the top model. Below it, the bar for staying on top rises as the budget runs down, and easier requests go to a model further down the list.\n\nA conversation stays on the model it started on, because thinking blocks and prompt caches belong to one model. It only moves down when that model fails or is out. When a model rejects an option it doesn't support, Darwin retries once without the newer options. A rate-limit error pauses that model until its retry time passes. If every model on the ladder fails, the request goes to the fallback model, Darwin's GPU by default.\n\nDarwin's GPU\nModel\tQwen3 30B A3B Instruct, FP8\nContext\t65,536 tokens; replies are capped at 8,192\nFormats\tOpenAI and Anthropic, streaming, tool calls\nPrice\t$0.10 in and $0.40 out per million tokens, paid from credit\nIn flight\tUp to 4 requests at once per workspace\n\nThe GPU scales to zero when nobody is using it. The first request after a quiet spell starts a worker, which can take several minutes; Darwin holds the request open until it's answered. Requests after that answer in about a second. Very long agent sessions can outgrow the 64K context; add your own models for those.\n\nCredits and burns\n\nDarwin is paid for by burning $DARWIN, its token on Solana. The API and the MCP server work while a workspace has credit, and answer 402 when it has none. Requests to Darwin's GPU model draw the credit down at its token prices; requests routed to your own provider keys don't.\n\n$DARWIN is the Solana token 5VnbrKp28Qs9CAH6PyZdxBNvLxZcbeX3YBsozgWnpump. Each million burned adds $5 of credit. The Credits page builds the burn for you: one transaction from your wallet that burns the tokens and carries the memo darwin:<workspace id>. Darwin reads it back from Solana before adding credit, so a burn only counts for the workspace it names, and only once.\n\nUpgrades\n\nCredit also buys more compute for your agents, on the Upgrades page. Buying more of an upgrade you already have extends it.\n\nUpgrade\tWhat it does\tPrice\nPro\tDarwin's GPU requests go to gpt-oss-120b instead of Qwen3 30B, with a 128K context, replies up to 32K tokens and 16 requests at once. Tokens cost $0.25 in and $1 out per million.\t$3 a day\nWarm GPU\tKeeps a worker running on Darwin's GPU so requests never wait for a cold start. While anyone holds warm hours, the GPU stays on for everyone. Hours on sale are limited by what Darwin's GPU account can pay for.\t$2 an hour\nWarm Pro GPU\tThe same for the Pro GPU. Needs Pro.\t$4 an hour\nYour own models\n\nAdd provider keys on the Keys page. Darwin checks each key with its provider before saving it, encrypted, and only uses it to call that provider for your requests.\n\nProvider\tReaches\nOpenRouter\tEvery model OpenRouter lists, in both formats. The simplest way to reach Grok, DeepSeek, Mistral, Qwen, Llama and the rest.\nAnthropic\tClaude models directly, in both formats.\nOpenAI\tGPT models directly, for OpenAI-format requests.\nGoogle\tGemini models directly, for OpenAI-format requests.\n\nWhen a model can be reached both directly and through OpenRouter, Darwin uses the direct key.\n\nErrors\n\nErrors come back in the format of the request: an OpenAI error object for chat completions, an Anthropic error object for messages.\n\nStatus\tMeaning\n400\tThe body isn't valid, or no model on your ladder can take this kind of request with your keys.\n401\tThe Darwin key is missing, wrong or revoked.\n402\tThe workspace has no credit. Burn $DARWIN on the Credits page.\n413\tThe request body is over 25 MB.\n429\tEvery model that could answer is rate limited. Retry after the time in the provider's error.\n5xx\tThe provider failed or couldn't be reached, after Darwin tried the rest of the ladder.\nPrivacy\n\nDarwin keeps the model, token counts, cost, timing and status of each request, and never the prompt or the reply. Provider keys are encrypted at rest. Prompts for Darwin's GPU model run on GPUs Darwin rents from RunPod, and Darwin doesn't store them; prompts for your own models go to those providers under your own agreements with them.\n\nLinks:\nhttps://darwincompute.com/\nhttps://x.com/darwincompute\nhttps://darwincompute.com/app\nhttps://darwincompute.com/docs#intro\nhttps://darwincompute.com/docs#quickstart\nhttps://darwincompute.com/docs#auth\nhttps://darwincompute.com/docs#connect\nhttps://darwincompute.com/docs#api\nhttps://darwincompute.com/docs#mcp\nhttps://darwincompute.com/docs#swarm\nhttps://darwincompute.com/docs#routing\nhttps://darwincompute.com/docs#gpu\nhttps://darwincompute.com/docs#credits\nhttps://darwincompute.com/docs#upgrades\nhttps://darwincompute.com/docs#providers\nhttps://darwincompute.com/docs#errors\nhttps://darwincompute.com/docs#privacy\n</untrusted_content>","isError":false,"images":[]}