Empryoempryo.beta
← Providers
provider

OpenAI with Empryo

OpenAI is one of Empryo's 21 built-in providers. Set one API key and Empryo's GPT-5 series models drive every part of the agent: AST-level edits through the editor, the ranked Genome graph, and per-slot routing. Reasoning effort and thinking budgets are wired in, so you control how hard each model thinks per task.

Popular models

gpt-5.5gpt-5.4gpt-5.4-minigpt-5.4-nano

Setup

1. Get an API key

Create a key at platform.openai.com. OpenAI keys start with sk-.

2. Save it to Empryo

empryo --set-key openai sk-...

The key goes to your OS keychain when available (macOS Login Keychain, libsecret on Linux, DPAPI on Windows), with an encrypted file fallback otherwise. Confirm it landed:

empryo --list-providers

Or pass it per-launch

Built-in providers also read environment variables, useful for CI or one-off sessions. Nothing is persisted:

OPENAI_API_KEY=sk-... empryo

If a shell-exported key keeps overriding a stored one, flip the lookup order in ~/.empryo/config.json:

{ "keyPriority": "app" }

"app" resolves keychain → file → env; the default "env" checks env first.

3. Pick a model

Inside Empryo, press Ctrl+L and choose OpenAI, then a model. Or set it as the default in ~/.empryo/config.json:

{ "defaultModel": "openai/gpt-5.5" }

From the command line:

empryo --list-models openai
empryo --model openai/gpt-5.4

Model strings are always openai/<model-id>, e.g. openai/gpt-5.5, openai/gpt-5.4-mini.

4. Tune reasoning

GPT-5 series models reason. Control the depth in config:

{
  "thinking": { "mode": "adaptive" }
}

mode is "off", "adaptive", or "enabled". With "enabled", set an explicit thinking.budgetTokens (1024, 2048, 5000, 10000, 20000). "adaptive" lets Empryo scale effort to the task.

5. Route models per task (optional)

You don't have to run one model for everything. The task router assigns models per job, so a cheap model handles search and cleanup while a strong one writes code:

{
  "taskRouter": {
    "ember":      "openai/gpt-5.5",
    "spark":      "openai/gpt-5.4-mini",
    "webSearch":  "openai/gpt-5.4-nano",
    "compact":    "openai/gpt-5.4-mini"
  }
}

ember runs code-writing agents, spark runs read-only research agents, webSearch runs the search agent, and compact handles context compaction. Anything unset falls back to taskRouter.default, then your active model.