Supported Providers
ADE supports multiple AI provider categories, configurable in any combination.Anthropic (Claude)
claude-opus-4-7, claude-sonnet-4-6, claude-haiku-4-5. Best for complex reasoning, long-context tasks, and code review.OpenAI
gpt-4o, gpt-4o-mini, o1, o3. Best for structured output, code completion, and tool use.OpenRouter
OpenCode
Local Models
Provider Comparison
Where to Configure Providers
Provider configuration lives in three places:local.secret.yaml— API keys and endpoint URLs. Never committed to git.ade.yaml— Default model and budget defaults. Committed to git and shared with your team.- Settings → AI Providers — GUI for adding/rotating keys, testing connections, and setting per-provider defaults. Writes to
local.secret.yamlon save.
Setting Up Anthropic (Claude)
Get an API key
sk-ant-.Add the key to local.secret.yaml
Set the default model in ade.yaml
claude-opus-4-7, claude-sonnet-4-6, claude-haiku-4-5.Test the connection
Setting Up OpenAI
Get an API key
sk-.Add the key to local.secret.yaml
Optionally set OpenAI as default
gpt-4o, gpt-4o-mini, o1, o3.Setting Up OpenRouter
OpenRouter provides a single API key that routes to hundreds of upstream models. This is useful for comparing models, accessing open-source models, or optimizing cost by routing different agent types to cheaper models.- Anthropic via OpenRouter
- OpenAI via OpenRouter
- Open-Source via OpenRouter
<provider>/<model-name>. Find the full list at openrouter.ai/models. When using OpenRouter, the model string you set in ade.yaml should use the OpenRouter format, prefixed with openrouter: — for example: openrouter:anthropic/claude-opus-4-7.Setting Up Local Models (Ollama)
Local models run entirely on your machine. No API key is needed. ADE communicates with locally-running Ollama or LM Studio through their OpenAI-compatible API endpoints.Install and start Ollama
Configure the local endpoint in local.secret.yaml
http://localhost:1234/v1 (or your configured port).Set a local model as default in ade.yaml
Model Reference
Anthropic (Claude)
OpenAI
Permission modes
Chat and Workers share the same permission picker. Each provider exposes a small set of presets that map directly to provider flags.Claude
Codex (via the Codex CLI)
Codex presets combine--approval-policy and --sandbox.
on-request approval policy rather than on-failure. The Codex sandbox in Workers is derived from the chosen mode — the separate sandbox dropdown has been removed from the Worker Permissions editor.
OpenCode
OpenCode follows its own internal permission scheme. Set it tofull-auto for the standard preset; override in OpenCode’s config when the project needs a different boundary.
Model Selection by Context
ADE lets you assign different models to AI task categories. This is the recommended approach for cost efficiency: use larger models for planning and review, and cheaper models for routine generation tasks.Budget Configuration
Budget caps prevent runaway spend from long-running agents or automation loops. Caps are enforced in the main process — when a session reaches its cap, the agent receives a stop signal and the session ends gracefully.Per-session budget
Per-session budget
ai.chat.sessionBudgetUsd sets the default budget for chat sessions that read project config. You can still adjust the current session from chat controls when available.Feature daily limits
Feature daily limits
ai.budgets is keyed by ADE feature, such as commit_messages, pr_descriptions, terminal_summaries, narratives, and initial_context. Each entry supports dailyLimit.Worker budgets
Worker budgets
defaultBudgetPerWorkerRun in ade.yaml.Monthly cap
Monthly cap
ai.monthlyBudgetCap in ade.yaml.Context Compaction
ADE monitors context usage for every active agent session. When usage reaches the configured threshold (default 70%), ADE automatically compacts the context to free space. How compaction works:- ADE identifies the oldest message segments in the context window
- A compaction request is sent to summarize those segments into a compact narrative
- The summary replaces the original messages in the context
- Key details (function signatures, file paths, error messages, agent decisions) are preserved verbatim in the summary
API Key Security
API keys are handled according to ADE’s trust boundary model:- Storage: Keys live only in
local.secret.yamlon disk. ADE reads them into main process memory at startup. - In-memory handling: Once loaded, keys are held in the main process (Electron main) only. They are never passed to the renderer process.
- SQLite: Keys are never written to ADE’s SQLite database. The database stores session metadata, costs, and audit records — not credentials.
- Log redaction: Any key value that appears in log output is automatically redacted and replaced with
***. - IPC bridge: The preload bridge does not expose any IPC channel that returns raw API key values to the renderer.
Troubleshooting
Authentication error (401)
Authentication error (401)
local.secret.yaml — ensure there are no leading or trailing spaces, and that the key is for the correct provider. Anthropic keys start with sk-ant-; OpenAI keys start with sk-.Rate limit exceeded (429)
Rate limit exceeded (429)
Monthly quota exceeded
Monthly quota exceeded
Model not found (404)
Model not found (404)
ade.yaml does not match a valid model ID for the configured provider. Check the exact model IDs in the Model Reference table above. Model IDs are case-sensitive.Local model not responding
Local model not responding
ollama serve is running and that the model is pulled (ollama list). Verify the baseUrl in local.secret.yaml matches the port Ollama is listening on (default 11434). Use Test Connection in Settings → AI Providers → Local to get the exact error.Context window exceeded
Context window exceeded