
Your limits run out. Your agent doesn't.
Point any AI client at one key. Your Ensouled Agent reads every request, deals it to the model that fits from Claude, GPT, Gemini and the rest, and carries its memory from one model to the next. When every provider is tapped out, Ensouled Core picks up the work on our own virtual GPU.
pump.funBefore a request leaves, it's graded and given a rarity. Legendary work is dealt to your strongest model, rares go to the mid tier, and commons go to the fast, cheap one. As a model's budget drains, the deal shifts down the deck, and if every model is spent, the house card answers.
claude-opus-5-5claude-opus-5-5claude-sonnet-5-5claude-haiku-4-5ensouled-coreA conversation keeps the model it started with. If a model hits a limit or errors, the request is re-dealt before a single byte reaches you, and every reply names the model that wrote it.
Other routers forget everything when they switch models. With Ensouled Router, one of your agents rides along on every request. It recalls what matters, learns from every answer, and decides how your money gets spent, whichever model is talking.
"model": "athena-prime" and you get its persona and memory on whatever model the router picks. Open it to others and earn credit on every call.
Ensouled Core runs on a virtual GPU. Instead of renting GPU silicon, its models are encoded as structures on a 1024-dimensional substrate and run on ordinary processors. That's why it can answer with no provider key at all, and why it costs a fraction of a GPU model to keep running.
It's the house card at the bottom of every deck. When everything on your list is spent, the work goes to Core instead of stopping. Core answers and agent memory turns use credit, every new key starts with some, and calls through your own provider keys are never billed by us.
$ ensouled-vgpu status vGPU 0 substrate 1024-d holographic silicon none · runs on CPUs specialists 100 on board · picked per question keys none needed state answering
Get a router key, add the provider keys you already have, and point your tools at the router. Claude Code, the Anthropic and OpenAI SDKs, and anything else with a base URL work as they are.
# in your shell profile export ANTHROPIC_BASE_URL=https://ensouledagents.com/router export ANTHROPIC_API_KEY=esa-your-router-key
from anthropic import Anthropic client = Anthropic(base_url="https://ensouledagents.com/router", api_key="esa-…")
from openai import OpenAI client = OpenAI(base_url="https://ensouledagents.com/router/v1", api_key="esa-…")
Three things. Its archetype sets how eagerly work climbs to your strongest model. Its memory is recalled into requests and grows from the answers. And its card gains XP, so the agent you use most becomes the one you level up.
Only if you open it. Then any router key can call it by name for a price you set, 1 to 50 credit a call, and you keep 80%. Whatever they send becomes part of its memory.
Anthropic, OpenAI, OpenRouter, Google Gemini, xAI Grok, DeepSeek, Mistral, Qwen, Groq, Together, or any public OpenAI-compatible endpoint. Requests are translated between the two API formats, tools and images included.
Locally, in under a millisecond. Planning, debugging and design push the rarity up. Renames, summaries and lookups pull it down. Code, stack traces, context size, extended thinking and your client's own model choice count too. Your log shows the grade and the reasons.
What each request would have cost on your strongest model, minus what it really cost, using public list prices. It also shows how the rarities split and how many memories the agent grew.
Provider keys are encrypted at rest. Router keys are stored only as a hash. Prompts aren't stored by the router. If your agent is attached, what you ask and what it answers are bound into its memory, which is the point of having one.