More Agents

Empryo

Quick answer
Prism adds one custom provider entry to Empryo's config.json. Empryo deliberately keeps credentials out of config files, so instead of writing the token Prism declares the environment variable PRISM_API_KEY and shows you the one command that stores the key.

Last updated Reviewed against Prism v0.3.26

Config location

PlatformPath
Windows%LOCALAPPDATA%\Empryo\config.json
macOS~/.empryo/config.json
Linux~/.empryo/config.json
Why not ~/.empryo/config.json on Windows
Empryo stores its settings, logs and secrets under %LOCALAPPDATA%\Empryo on Windows and does not read the Unix-style path as its global config. An entry written there would only act as a per-project config, which stays inert unless Empryo is started from that exact directory and the directory is trusted — so a provider written there would never reach the model picker.

One-click setup

1

Open the Agents tab

In the Admin UI, select Agents, then Empryo.
2

Click Setup

Prism adds its provider entry and keeps a one-time backup. Other providers, MCP servers and every unrelated key are preserved.
3

Store the token

Empryo will not send a key for a provider whose key it does not have. Run the command Prism shows:
empryo --set-key prism prism
The key value is the fixed literal prism.
4

Pick a model

Empryo builds model ids as <provider id>/<model id>, so Prism's models appear as prism/<model>.

What Prism writes

{
  "providers": [
    {
      "id": "prism",
      "name": "Prism",
      "baseURL": "http://127.0.0.1:11434/v1",
      "envVar": "PRISM_API_KEY",
      "reasoning": { "auto": true },
      "models": [
        {
          "id": "glm-5.1:cloud",
          "name": "GLM 5.1 (Ollama Cloud)",
          "contextWindow": 128000,
          "maxOutputTokens": 16384
        }
      ]
    }
  ]
}
FieldValue
idprism. Empryo never replaces a built-in provider whose id collides.
baseURLThe Prism proxy's OpenAI-compatible base.
envVarPRISM_API_KEY — the variable Empryo reads the token from and sends as a bearer token.
reasoning.autotrue. Reasoning is provider-wide in Empryo, so auto lets Empryo send the thinking fields each model's vendor expects.
models[].contextWindow / maxOutputTokensYour configured values, defaulting to 128000 and 16384.

Where Empryo keeps the key

Empryo refuses to store credentials in config files. It uses the system keychain on macOS, DPAPI on Windows, and a secret store or ~/.empryo/secrets.json on Linux. Prism therefore never writes a secret into config.json — it only declares which environment variable to read and shows you the setup command.

Why reasoning is set to auto

Empryo has one reasoning setting per provider, not per model. With auto, Empryo looks each model up in models.dev and sends the thinking fields that model's own vendor expects, which is more reliable than Prism guessing field names for every upstream.

Add MCP servers

Empryo stores MCP servers in an array inside the same config file. Prism writes its gateway entry there, and removing access deletes only that entry. See MCP Gateway.

Undoing setup
Disabling the integration removes Prism's provider entry; if Prism created the whole providers list, the key is dropped entirely so the file returns to its original shape.