Skip to content

Use casesCoding agents

Claude Code and Codex for the whole team, inside limits you set.

Change the base URL and the key. Every developer's agent then runs on your own provider accounts with its own spend limit, the models you approved, and every request in one log.

~/.zshrc · one developerExample
ANTHROPIC_BASE_URLhttps://api.infro.io
ANTHROPIC_AUTH_TOKENsk_infro_… (this developer's key, $200 / month)
ANTHROPIC_CUSTOM_HEADERSX-INFRO-Workflow: claude-code
On the limit402 before the provider is called

Example setup. The same key works for the Claude Agent SDK; Codex uses a model provider entry.

The problem

Without a control plane

  • A shared provider key on every laptop, and no way to tell whose agent spent what.
  • Any model the provider offers is one setting away.
  • Revoking one developer means rotating a key everyone uses.

With INFRO

  • A gateway key per developer or agent, each with a spend limit.
  • Model allowlists per organization, project or key.
  • Turn off or rotate one key without touching anyone else's.

How it works

  1. Create a key per developer

    In a project for your coding agents, each with a monthly limit. Provider keys stay in INFRO; no laptop holds one.

  2. Point the agent at INFRO

    ANTHROPIC_BASE_URL for Claude Code, a model provider entry for Codex, base_url for the agent SDKs. Anthropic's Messages API and OpenAI's Responses API are served natively.

  3. Watch it in one log

    Spend per key, model and workflow, budgets refused before the call, and guardrails applied as on every other request.

What you get

Each one is documented, and each says which plan includes it. Where no plan is named, it is on every plan.

  • Native agent APIs

    Anthropic's Messages API and OpenAI's Responses API, with routing, budgets, guardrails and the request log applied.

    Docs
  • A limit per developer

    Each key has its own ceiling; a request it cannot cover is refused with 402 before the provider sees it.

    Docs
  • Model allowlists

    Approve which models a key or project may call; anything else returns 403 model_not_allowed instead of a line item.

    Docs
  • Per-key controls

    Limit a key to chosen providers or IP ranges, turn it off, or rotate it with an overlap window.

    Docs
  • Agent tools through the MCP gatewayFrom Business

    The MCP servers your agents call, behind the same key: approved and pinned tools, grants per key, a call log.

    Docs
  • Audit log

    Member, key and policy changes recorded with actor and time.

    Docs

Who it is for

  • Engineering leadersRoll agents out to the whole team with a cost per developer you can read and a ceiling you can enforce.
  • SecurityNo provider key on a laptop, a model list you approved, and one key to revoke when someone leaves.
  • DevelopersTwo environment variables, and the agent works as before.

FAQ

Does Claude Code work unchanged through INFRO?

Yes: set ANTHROPIC_BASE_URL and an INFRO key. Set ENABLE_TOOL_SEARCH=true so MCP tools stay deferred; INFRO forwards tool references on an Anthropic connection.

Whose provider account pays for the tokens?

Yours. Requests run on the provider accounts your organization connected, and your provider bills you directly. INFRO adds nothing to that bill.

Can a developer use a model we have not approved?

Not through INFRO. With an allowlist on the key, project or organization, any other model is refused with 403 model_not_allowed before a call.

The full contract is in the Claude Code & Codex docs, and every other question is on the FAQ.

Get started

Try it on your own provider accounts.

Connect a provider, create a gateway key and change one base URL. Your providers keep billing you directly; 0% markup on model spend.