Agent Setup

Factory Droid

Quick answer
Prism adds custom model entries to ~/.factory/settings.local.json — the local-override file that Droid merges on top of settings.json but never rewrites — so your Prism models keep working after Droid updates itself.

Last updated Reviewed against Prism v0.3.26

Why the local-override file

Droid manages ~/.factory/settings.json itself and can overwrite it. Writing custom models there would lose them. Prism writes to settings.local.json instead, which Droid merges over the main file and leaves alone.

Older versions were migrated
Earlier Prism releases wrote directly into settings.json. Current versions strip those stale entries on the next sync, so no manual cleanup is needed.

One-click setup

1

Open the Agents tab

In the Admin UI, select Agents. Droid is detected when ~/.factory/settings.json exists or the droid binary is on PATH.
2

Click Setup

Prism preserves your existing custom models from both files, appends the Prism ones, and keeps a one-time settings.local.json.prism-backup.
3

Restart Droid

Your Prism models appear in Droid's model list, tagged with the Prism display name.

What Prism writes

{
  "customModels": [
    {
      "model": "glm-5.1:cloud",
      "displayName": "GLM 5.1 (Ollama Cloud)",
      "baseUrl": "http://127.0.0.1:11434/v1",
      "apiKey": "prism",
      "provider": "generic-chat-completion-api",
      "maxOutputTokens": 16384,
      "noImageSupport": false
    }
  ]
}

How the provider field is chosen

Model protocolprovider valueEndpoint Droid uses
chat_completionsgeneric-chat-completion-api/v1/chat/completions
responses, or a Codex OAuth modelopenai/v1/responses

Per-model protocol is a Prism-internal detail; Droid just needs to know which endpoint to hit. Prism picks the right one for each entry.

Other fields Prism sets

FieldSource
displayNameYour model's display name in the Prism catalog.
maxOutputTokensThe model's configured max output, defaulting to 16384.
noImageSupporttrue unless the model reports vision capability.

Your own custom models are kept

Non-Prism customModels entries from both files are collected, de-duplicated by their model field and written back alongside the Prism ones. Disabling the integration removes only the entries Prism tagged.

Add MCP servers

Droid keeps MCP servers in ~/.factory/mcp.json. Prism writes an HTTP entry with an explicit oauth: false so Droid does not start its own OAuth flow for a server that authenticates with a plain header. See MCP Gateway.