Skip to content

Runtimes

An agent’s runtime is the agent harness that runs inside its container: it reads instructions, calls the model, uses tools and edits files. ExoHuman supports five:

RuntimeModel providersAccount sign-in
Pi (default)Anthropic, OpenAI, Google, OpenRouter, Z.ai, DeepSeek, Moonshot, MiniMax, Mistral, Groq, xAI, and any connected provider/login per provider
Claude CodeAnthropicClaude account
CodexOpenAIChatGPT account (device sign-in)
Gemini CLIGoogle GeminiGoogle account
OpenCodeSame as PiPer provider

All five run their real CLI, not an API-only imitation. The platform normalises their output — token and cost estimates, tool calls, errors and live events — so executions look the same regardless of runtime.

  • Blank agents use your default runtime, which you can change in Settings → My account, or pick another in the New agent dialog.
  • Templates and repositories declare their runtime in template.yaml.
  • Pick the runtime whose model and tooling fits the work: Claude Code for Anthropic-native coding work, Codex for OpenAI, Gemini CLI for Google, and Pi or OpenCode when you want to use many providers or models from Settings → Models.

AGENTS.md is the canonical instruction file for every runtime. ExoHuman mirrors it to CLAUDE.md for Claude Code and GEMINI.md for Gemini CLI; Codex, OpenCode and Pi read AGENTS.md directly. Skills live in one store that every runtime discovers. Platform instructions — how to use canvases, asks, reports and other agents — are supplied on every turn regardless of runtime.

Owners and admins can switch an existing agent in Settings → General → Runtime. The agent must be idle. Switching:

  • recreates the container with the new runtime, keeping its workspace, credentials, MCP configuration, schedules and settings;
  • keeps the current model if it fits the new runtime, otherwise falls back to the runtime’s default;
  • carries instructions across (edits made in CLAUDE.md are copied into AGENTS.md first);
  • is recorded in the audit log.

Credentials are not converted: the new runtime needs its own sign-in or API key.

Each agent has its own model credentials; choosing a runtime never borrows someone else’s subscription. The owner signs an agent in from Settings → Storage → Model sign-in:

  • Sign in with an account runs the runtime’s official sign-in inside that agent; the provider stores the credential in the agent’s private directory.
  • Use an API key writes the provider key to the agent’s environment.

Alternatively, route the agent through a provider connected in Settings → Models — models appear as <connection>/<model> and are selectable anywhere a model is picked. See Model gateway & budgets.

CapabilityPiClaude CodeCodexGemini CLIOpenCode
Platform guardrails hooks✓✓Read-only mode via sandbox—Native tool permissions
Turn limit enforced✓✓Timeout bounds the runTimeout bounds the run✓
Read-only mode✓✓✓—✓
Image attachmentsRefused explicitly✓✓✓Refused explicitly
MCP servers✓✓✓✓✓

Execution timeouts apply on every runtime. For agents that need the strongest controls, prefer Pi or Claude Code.