Which API should you use with nanobot?

For nanobot, the self-hosted personal agent from HKU's Data Intelligence Lab, the best API for an always-on setup is a cost-optimized OpenAI-compatible provider: add a standardcompute provider with apiBase https://api.stdcmpt.com/v1 to ~/.nanobot/config.json (or Settings → Models → New preset → Add provider) and a preset with the model standardcompute, and Standard Compute's router sends each step to the cheapest model that can do it (Claude Fable 5.1 or GPT-6 Astra only when it counts), on a plan from $19 a month with a $20 compute budget. OpenRouter and direct provider keys bill per token, and a local model through Ollama costs nothing per token. nanobot itself is free and MIT-licensed.

Guide updated 2026-10-15. Check each provider's current terms below.
Get your API key$0.25 trial for eligible new accounts, no card. Plans from $19/mo.
Light or occasional use
For a nanobot that answers a few messages a day, a pay-as-you-go key on an efficient model will likely cost the least. A local model through Ollama works if your machine stays on.
Daily use, cost-optimized
Once nanobot runs scheduled tasks, chat channels and tool calls around the clock, a Standard Compute provider sends each step to the cheapest model that can do it, and for every model we vet providers for price, uptime and speed, with automatic fallback. Opt-in Europe or US Compliance rules apply per key, team or company, and we don't train on your prompts or store them. The bill stays at the monthly plan price: requests stop with HTTP 402 when the compute budget is used, so a runaway loop cannot bill you on top.

API and subscription options for nanobot

OptionPriceWhat you get
OpenRouterPay-as-you-goChoose models and providers through one API. Usage-based pricing can suit light or bursty work; estimate long agent sessions and review current fees and limits. Source: openrouter.ai
Standard Compute (us)From $19/moSmart routing sends each request to the cheapest model that can do it, or pin any model by its exact ID. Standard Compute starts at $19/month with a $20 monthly compute budget. Requests stop when that budget is exhausted until renewal or a plan change; there are no automatic overage charges. Requests are not slowed as the budget is used. It is a fixed bill with a finite allowance.
Anthropic APIPay-as-you-goDirect API access for supported Claude models. Token use, model choice, service limits and spending controls determine the cost and available throughput. Source: claude.com
Local model (Ollama / vLLM)Hardware + electricityNo hosted per-token bill, but hardware, context capacity, throughput and maintenance still limit what you can run. Test task quality on your own hardware. Source: docs.ollama.com

Prices and allowances can change. nanobot's provider and preset format and its ${VAR} secret references come from its providers and configuration docs, read on October 15, 2026. nanobot: providers and models · nanobot: configuration · nanobot repo. Spot an error? Tell us.

Add Standard Compute to nanobot

~/.nanobot/config.json
{
  "providers": {
    "standardcompute": {
      "apiKey": "${STANDARDCOMPUTE_API_KEY}",
      "apiBase": "https://api.stdcmpt.com/v1"
    }
  },
  "modelPresets": {
    "primary": {
      "provider": "standardcompute",
      "model": "standardcompute",
      "maxTokens": 8192,
      "contextWindowTokens": 200000
    }
  },
  "agents": { "defaults": { "modelPreset": "primary" } }
}

Merge this into the config nanobot onboard created, export STANDARDCOMPUTE_API_KEY in the environment that starts nanobot, and restart it. In the WebUI the same lives under Settings → Models → New preset → Add provider.

nanobot questions

Why does nanobot's custom provider fail without a base URL?
nanobot's custom provider does not infer a default base URL, so you must set apiBase, including the version path: https://api.stdcmpt.com/v1 for Standard Compute. Give each OpenAI-compatible endpoint its own key under providers (for example standardcompute) and use that same key as the preset's provider.
Can nanobot use an Anthropic-compatible endpoint?
Yes. For a named custom provider that serves Anthropic Messages, set providers.<name>.api.supportedApis to ["anthropic_messages"]; for an Anthropic-compatible proxy, nanobot's docs say to keep the provider as anthropic and override apiBase. The OpenAI-compatible setup above is the simpler one, and Standard Compute's routing works the same way on both.
How do I keep my API key out of nanobot's config.json?
Use a ${VAR} reference, such as "apiKey": "${STANDARDCOMPUTE_API_KEY}". nanobot resolves it from the environment at startup, so start nanobot from the same environment that sets the variable.

Try one task before choosing a plan

  1. Check the API format and model configuration supported by your installed nanobot version.
  2. Run a small task on a clean branch and review the result, elapsed time and compute used.
  3. Estimate your actual monthly workload before selecting a larger allowance.
Get your API keynanobot setup guide →Compare compute budgets →

Record your own results with the workload CSV and report template. These are blank templates, not published benchmark results.

Disclosure: this guide is maintained by Standard Compute, one of the options above. Choose based on task quality, supported features and total cost for your workload. Light usage may cost less on a usage-based API; sustained workloads need enough allowance on any subscription.

All flat-rate plans compared →The cheapest-tokens math →Plan compute for your team →