How crystals meter: 1,000 crystals ≈ 500 fast turns→
PIXCODE · SUBSCRIPTION AI CODING GATEWAY

Change one base URL,and 31 models are there.

Get startedRead the docs

One base URL. Claude Code, opencode, Cline and Zed connect without a patch.

export ANTHROPIC_BASE_URL=api.pixcode.ai/anthropicexport ANTHROPIC_AUTH_TOKEN=sk-px-••••••

31 models. Open-weight models under their official names, closed ones via inference providers, prices you can check.

input
$0.31 / M
output
$0.46 / M
cache read
$0.15 / M

Two protocols. Anthropic Messages and OpenAI Chat Completions, both live.

/anthropic/v1/messages

/openai/v1/chat/completions

Metered in crystals. You pay for what you use, itemised down to the cache price. Crystals you buy never expire.

1,142/ 1,900

TTL — never

No silent routing. The alias you send is the model that runs — no downgrade at peak.

pixcode-max → pixcode-max

pixcode-pro → pixcode-pro

no fallback·no downgrade

  • Claude CodeAnthropic compatible
  • opencodeAnthropic / OpenAI
  • ClineAnthropic / OpenAI
  • Roo CodeOpenAI compatible
  • Kilo CodeOpenAI compatible
  • Factory DroidBYOK custom model
  • Zedanthropic_compatible
  • GooseOpenAI compatible

One command to sign in. Approve it once in the browser and the credential lands in ~/.pixcode/auth.json — no pasting keys between tabs.

~/work/api — pixcodeLIVE
$ pixcode providers login --provider pixcode
→ Browser opened, just approve (no key to copy)
✓ Approved · credential written to ~/.pixcode/auth.json
$ export ANTHROPIC_BASE_URL="https://api.pixcode.ai/anthropic"
$ export ANTHROPIC_DEFAULT_SONNET_MODEL="pixcode-pro"
$ claude "pull the auth middleware into its own package"
read 47 files · 91% cache hit
● planned 6 steps → edited 12 files · added 2 tests
✓ tests passed 24/24 · 3m41s
this turn cost 3 crystals · pixcode-pro · balance 1,139
$
Or set four environment variables by hand
export ANTHROPIC_BASE_URL="https://api.pixcode.ai/anthropic"
export ANTHROPIC_AUTH_TOKEN="sk-px-..."
export ANTHROPIC_DEFAULT_SONNET_MODEL="pixcode-pro"
export ANTHROPIC_DEFAULT_HAIKU_MODEL="pixcode-fast"

Three things we will not change for margin. Printing them on the landing page is what makes them checkable.

01

Every rate is published

Sold at the upstream official list price — zero markup on all 31 models. Open their pricing page next to ours and the numbers should match exactly.

02

No silent routing

The alias you send is the model that runs. Swapping the model under an alias would make every other number on this page meaningless.

03

Bring your own key, free forever

The CLI takes your own upstream key and we charge nothing for the proxy. Through the gateway the price is the same as the vendor’s — the only difference is who manages the key.

Questions worth asking before you buy.

How is the rate calculated?

The upstream official list price, zero markup, published line by line on the pricing page so you can check it against the vendor’s own site. Our margin is the wholesale discount we negotiate with suppliers — not a markup on you.

Do crystals expire?

Crystals you buy never expire. Only the bonus that comes with a subscription expires at month end, and charges draw from the bonus first so you spend the expiring part before the rest.

How does this compare to buying the upstream API?

The price is the same — the official list price either way. What you get is not juggling keys and balances across vendors, one entry point for every model family, and a payment path that works in regions where topping up upstream simply does not. Prefer direct? Our CLI supports your own key at no charge.

Will you quietly route my request to a cheaper model?

No. You pick the model; the aliases and their rates are written on the models page. Automatic downgrades are the kind of thing a user cannot see, and doing them spends trust.

What models are behind this?

Exactly what the catalogue says: open-weight models (GLM, Kimi, DeepSeek and others) sold under their official names; Claude, GPT and Gemini served through third-party inference providers, with names matching the originals and prices you can verify.

What happens when I run out?

A 402 with a prompt to get more crystals. No silent fallback to a worse model.

Billed per call, not per seat. What each request cost, and whether it billed at the input or the cache price, is itemised on the bill — you do not wait for a month-end statement to find out where the money went.

Turns per 1,000 crystals

pixcode-fast500 turns
pixcode-pro175 turns
pixcode-max25 turns

The same 1,000 crystals: about 500 turns on fast, about 25 on max. Max costs twenty times more, and it is worth it in exactly one case — when a long run has to finish.

What one turn costs

Input0.8
Cache read0.3
Output1.9
Turn total3.0 crystals

Once the prefix cache hits, repeated context settles at the cache price rather than the input price — the biggest saving in a long session.

PURCHASED CRYSTALS NEVER EXPIRE · ONLY SUBSCRIPTION BONUS CLEARS MONTHLY · CHARGES DRAW FROM BONUS FIRST

0%

Listed markup

Every one of the 31 models at the official list price, printed on pricing

1M

Context window

Available on pixcode-pro — paste the whole package in

2

Compatible protocols

Anthropic Messages + OpenAI Chat Completions

Singapore

Gateway region

Egress from Singapore, one less hop to upstream

Do the arithmetic first.

What each model costs per million tokens is on the pricing page — the same numbers as the vendor’s own site. Gateway or your own key, both work; the difference is how many keys you want to manage.

See pricingRead the docs