Settings
The Settings panel is the control surface for how Aura Workshop 1.36.2 behaves at runtime — which provider drives the agent loop, how tools are isolated, what memory is recalled, how cost is capped, and which services are connected. This page walks each tab. Defaults shown are the shipped values.
AURA_* / PORTAL_*)
win for the keys they cover; otherwise the SQLite settings table
(written by the UI, PUT /api/settings, or the save_settings Tauri
command) applies. A handful of tables — spend limits, routing rules, guardrails, credentials,
OAuth connections — persist outside the settings table and are edited from their own
tabs. Concrete overrides: AURA_WEB_TOKEN > web_server_token,
--port > web_server_port, portal env vars > portal_* rows.
General — model, sampling & execution
Global defaults for the selected model and how the agent runs tools. Per-model overrides (see Models & Providers) win over these globals.
Model & sampling
| Setting | Default | Notes |
|---|---|---|
provider / model | empty | Selected provider id and chat model. Empty provider = infer from the model slug. |
max_tokens | 4096 | Max output tokens. |
temperature | 0.7 | Sampling temperature. |
top_p / top_k / min_p | 0.8 / 20 / 0.0 | Nucleus, top-k, and min-p sampling. |
repeat_penalty | 1.0 | Repetition penalty. |
thinking_level | off | off · low · medium · high. Wired per-provider (budget tokens map low=1024 / medium=4096 / high=16384). |
| custom prompts | empty | Optional overrides for the system prompt, the local-model prompt, and the compaction/summary prompt. |
A separate media model (image / video / audio / music) is held apart from the chat
model — a media model can't drive the chat loop. Context is compacted automatically at 70% of the
active model's window, preserving tool_use/tool_result pairs.
Execution isolation & backend
| Setting | Default | Effect |
|---|---|---|
execution_isolation | none | none · sandbox (/tmp/aura-sandbox-{task} path rewrite) · container. |
native_mode | false | When false and Docker is available, bash runs inside debian:bookworm-slim. |
execution_backend | local | Alternative bash backend: local · docker · ssh · singularity (HPC). |
elevated_bash | true | Allow sudo / elevation in bash. |
workspace_sharing | copy-on-write | Sandbox sharing mode: copy-on-write · locking · read-only. |
max_concurrent_tools | 4 | Parallel tool-execution cap within one task. |
native_mode is false
(isolated), but the runtime fallback resolves to true — if the settings row fails to load,
the desktop app runs bash natively. See Deployment &
Security for the full isolation model.
Device capabilities
Toggle host access per tool: screen_capture_enabled (off), camera_capture_enabled
(off), system_notifications_enabled (on), and headless_mode (off — set on for
CI/server). Agent context injection (git status, project instruction files) is controlled by the
AURA_GIT_CONTEXT / AURA_PROJECT_INSTRUCTIONS flags.
Security
- Biometric authentication — gate access to credentials and sensitive operations behind Touch ID (macOS) or Windows Hello.
- Password lock — require a password to open the Settings panel.
- License — enter and activate a license key, then view the current tier, expiry, and feature entitlements. The key is written via a dedicated path so the frontend can't accidentally clear it.
- Session management — view and revoke active JWT sessions issued for the web UI.
Named credentials and OAuth tokens are encrypted with the encryption model described in Deployment & Security; the encryption key lives in the system keychain.
Connectivity — web server & ACP discovery
Embedded web server
| Setting | Default | Effect |
|---|---|---|
web_server_enabled | true | Auto-start the embedded web UI on launch (port 18800). |
web_server_port | 18800 | Bind port. The --port CLI flag overrides it. |
web_server_token | empty | Bearer token for /api/*. Empty = no auth. AURA_WEB_TOKEN overrides. |
ACP peer discovery
| Setting | Default | Effect |
|---|---|---|
acp_discovery_enabled | true | Listen for ACP peer broadcasts and upsert them into acp_agents. |
acp_broadcast_enabled | true | Advertise this agent on ACP (decoupled from listening — a headless orchestrator can listen-only). |
acp_discovery_port | 18802 | UDP port for ACP discovery. |
acp_routing_policy | best-fit | Routing for delegate_to_acp_pool: best-fit · round-robin · random · lowest-load. |
Discovered peers are admitted manually — see Multi-Agent Teams. Live ports across the app: 18800 (web / REST / SSE / WS / ACP), 18790 (webhooks), 18802/udp (ACP discovery).
Models & Providers
Hold multiple provider keys and endpoints at once. Full guidance on connecting providers lives in Models & Providers; the settings themselves:
| Setting | Effect |
|---|---|
provider_keys | Named API keys, keyed by provider id or a sub-key (e.g. moonshot-coding). |
provider_urls | Per-provider base-URL override (proxies, enterprise endpoints). |
key_overrides | Per-model or per-provider key selection — pick which plan a given model bills to. |
cli_credentials_disabled | Per provider, stop reading an installed CLI's token and fall back to an API key or in-app OAuth. The CLI file is left untouched. |
openai_organization / openai_project | Optional OpenAI OpenAI-Organization / OpenAI-Project headers. |
model_params | Per-model sampling map (temperature, topP, topK, maxTokens…). Per-model entries win over the General defaults and are what Routing / fallback read when they hot-swap models. |
Routing
Aura Routing scores each request and picks a tier, then resolves a model for that tier — trading cost against capability automatically.
| Setting | Default | Effect |
|---|---|---|
routing_enabled | false | Enable the smart tier-based router. |
routing_config | empty (JSON) | Tiers, score thresholds, per-tier models, and fallbacks. |
force_single_agent | false | Skip team/workflow classification — always run a single agent. |
latency_failover_ms | 15000 | Swap to a faster fallback when a provider's average response time exceeds this. 0 = disabled. |
goal_max_iterations | 5 | Goal-mode verify-and-retry cap. |
Aura Routing 2.0 layers five mostly table-backed phases on top of the scorer: a passive
health circuit breaker, a task-sticky load balancer, routing_rules (first-match pins a
tier/model and short-circuits the scorer), guardrails, and an optional semantic cache. Every routing
event is logged to routing_decisions and surfaced in the Routing Debug Log.
The semantic cache is off by default (semantic_cache_enabled = false) so a
stale answer never silently short-circuits a task; when on, it matches at cosine
semantic_cache_threshold (0.95, clamped 0.5–0.999) with a fixed 7-day TTL, and never serves
on a Retry/Restart or empty prompt.
Memory
Controls what the agent recalls and how knowledge is distilled. The full model is in Memory & Knowledge.
| Setting | Default | Effect |
|---|---|---|
memory_enabled | true | Master switch — inject recalled memory into agent context. |
memory_recall_max_items | 8 | Max facts injected per recall. |
memory_recall_char_budget | 2000 | Character budget for injected memory. |
memory_embeddings_enabled | false | Turn on the vector half of hybrid retrieval (needs an embedding endpoint). |
memory_embeddings_url | empty | External embedding endpoint (OpenAI-compatible /v1/embeddings or legacy). |
memory_embeddings_model | text-embedding-3-small | Embedding model id (OpenAI format). |
memory_embeddings_api_key / memory_embeddings_format | empty / openai | Bearer key (optional for local servers) and wire format (openai · legacy). |
memory_distill_enabled | false | Background L1→L2→L3 distillation loop. |
memory_distill_interval_hours / memory_distill_min_facts | 12 / 12 | Distillation cadence and the minimum un-distilled facts before a scope rolls up. |
default_memory_visibility | private | Visibility for new memory assets: private · team · global. |
codegraph_enabled / wiki_enabled | true / true | Enable the CodeGraph symbol index and the curated Wiki asset. |
The tab itself also lets you browse, add, edit, delete, and search memories by type
(user / feedback / project / reference) and scope, edit project instruction (AURA.md)
files, and review LLM-extracted facts with their confidence scores. Recall is hybrid FTS5/BM25 +
embedding-cosine fused with RRF, ACL-filtered. Embeddings are a user-configured external endpoint —
there is no bundled inference.
Billing & Usage
- Usage dashboard — summary cards for today's cost, this month's cost, lifetime cost, and today's tokens, plus daily spend charts and a per-provider / per-model breakdown.
- Spend limits — per-provider
{daily_limit_usd, monthly_limit_usd, enabled}in thespend_limitstable. When the current provider is over budget, the resolver walks the fallback chain. - Provider fallback order — priority-ordered
{provider, model, base_url, api_key_ref}rows the resolver walks when a provider is over budget or unreachable. - Model pricing table — editable input/output cost per million tokens, pre-seeded with market rates, with a reset-to-defaults action.
Managed via GET/PUT /api/billing/limits and /api/billing/fallback-order.
Credentials
- Credential list — every stored credential by name, type, and timestamps. Secret values are never shown in the list.
- Add — create an entry with a name, type (API key, token, password, SSH key), and value.
- View — reveal a decrypted value; gated behind biometric authentication where enabled.
- Delete — remove a credential permanently.
- Encryption — values are encrypted before writing to the
credentialstable; the key lives in the system keychain. - Usage — credentials are referenced by id from listeners, webhooks, MCP servers, ACP peers, and remote deployments, so tokens never appear in config files.
Integrations — search, email & voice
Service connections for OAuth providers (Slack, Gmail, GitHub, Notion, and 100+ more) live in Integrations. This tab covers the built-in helpers:
| Setting | Default | Effect |
|---|---|---|
search_provider | duckduckgo | Web search backend: duckduckgo (no key) · google · brave · serper · bing. Paid providers use search_api_key. |
email_method | auto | auto · sendmail · smtp. SMTP mode adds host/port/user/password and from name/address, with a Test Email button. |
voice_enabled / tts_provider | false / system | Text-to-speech output; provider system · openai · elevenlabs · groq, with a voice picker. |
stt_engine | whisper | Speech-to-text: whisper · system · groq · openai · xai. |
oauth_mode | cloud | local (direct OAuth with your own client ids) · cloud (Composio-managed Aura Cloud OAuth). |
Design
Optionally pin a design system that every task injects, so generated UI artifacts stay on-brand.
active_design_system— when set, this design system is injected into every task.design_systems_enabled— a map ofname → enabled.design_linked_memories— memory names to co-inject alongside the active design system.- Manage tokens (colors, typography, spacing, radii, shadows) and application theme. Tokens are exposed to agents via the design-systems endpoint and consumed by the design skills.
Skills
- Skill list — every installed skill with its name, category, and prompt preview.
- Edit / delete / new — modify a skill's prompt and metadata, remove it, or author a new one.
- Per-skill settings — enable/disable and configuration overrides, persisted in the
skill_settingstable.
See Skills & Agent Tools for the bundled skill catalog and how skills load.
Plugins
- Plugin list — installed plugins with name, version, status, and description.
- Enable / disable — disabled plugins are not loaded and consume no resources.
- Configuration — each plugin may expose its own settings; installed CLI tools can register as MCP servers via a plugin manifest.
Managed programmatically via /api/plugins.
MCPs
Add, edit, connect, disconnect, and delete Model Context Protocol servers (stdio or HTTP), set their isolation mode (shared or per-task), attach OAuth credentials, and import from JSON. Full details are in Integrations.
Teams & Roles
Teams
- List, create, edit, and delete teams — each with member roles and a workflow type (sequence / parallel / fan-out).
- Quick-start templates seed common configurations.
Roles & Prompts
- Built-in and custom roles grouped by category. Each role is a markdown system prompt with tool permissions, optional per-role model, and output settings.
- Create, duplicate, edit, and delete custom roles; built-ins can't be deleted.
See Multi-Agent Teams for how teams and roles run together.
Workflows
Create, edit, import, export, and delete visual workflows, and browse run history. The canvas editor and node types are documented in Automation & Workflows.
Commands
Manage custom slash commands — view them by name, description, handler type, and enabled state, and create / edit / delete them. Slash commands are covered in Automation & Workflows.
Data Management
| Action | Description |
|---|---|
| Clear conversation history | Delete task messages and conversation data. Tasks themselves are preserved. |
| Reset API keys | Remove all stored provider API keys from the encrypted store. |
| Clear model cache | Drop cached model metadata and force a re-fetch from providers. |
| Reset database | Full reset to factory defaults — deletes settings, tasks, conversations, and configuration. |
| Reset app data | Complete reset including database and cached files. |
| Diagnostics | System info (OS, architecture, memory, disk), database statistics, and dependency status. |
Each destructive action requires confirmation.
Updates
- Check for updates — query the update server for a newer version.
- Changelog — see what changed between the installed version and the latest.
- Download and install — one-click update that verifies integrity and restarts. A toast appears automatically when an update is available.
Environment variables
Read at startup by aura-daemon / aura-workshop, or per-task by subsystem
modules. For the keys they cover, env wins over the DB row — most useful for headless daemon deployments.
| Var | Purpose | Default |
|---|---|---|
AURA_WEB_TOKEN | Bearer token for /api/* and most /acp/*. Overrides web_server_token. | none |
AURA_VIEWER_MODE | true → serve the viewer SPA instead of the full frontend. | false |
AURA_REMOTE_DEPLOYMENT | true → strict auth (reject anon even with no token) and serve the viewer. Set in the daemon image. | false |
AURA_API_KEY / AURA_MODEL / AURA_BASE_URL | Seed the provider key / model / base URL on daemon boot. | none |
AURA_MAX_PARALLEL_AGENTS / AURA_MAX_PARALLEL_PER_PROVIDER | Global and per-provider parallel-agent semaphores. | 8 / 4 |
AURA_HEARTBEAT_URL / AURA_DEPLOYMENT_ID | POST status every 30s, with this UUID in the payload. | none / "" |
PORTAL_API_URL / PORTAL_ORG_ID / PORTAL_INGEST_TOKEN | Enterprise-portal policy pull, tenant id, and ingest token (managed mode). | none |
aura-daemon accepts
--mode but only full is supported (worker is a backward-compatible
alias); any other value logs a warning and runs full. To connect a local model, add any
OpenAI-compatible server (Ollama, LM Studio, vLLM) as a custom provider under
Models & Providers.
Editing settings programmatically
Beyond the UI, settings can be written over REST or (in the desktop app) via Tauri.
TOKEN=...
curl -X PUT https://aura.example.com/api/settings \
-H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" \
-d '{"native_mode": false, "execution_isolation": "sandbox"}'
Enum-typed fields are coerced on read — an invalid string falls back to its default silently. There is no
schema endpoint; this page and the Settings struct are the reference. Some state is persisted
outside the settings table (license key, on-disk memory, skill metadata, spend limits / fallback /
routing rules / guardrails, OAuth connections, named credentials, and portal enrollment) — each edited from
its own tab or API.