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.

Where configuration lives. Settings resolve from three layers, in order of precedence: environment variables (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

SettingDefaultNotes
provider / modelemptySelected provider id and chat model. Empty provider = infer from the model slug.
max_tokens4096Max output tokens.
temperature0.7Sampling temperature.
top_p / top_k / min_p0.8 / 20 / 0.0Nucleus, top-k, and min-p sampling.
repeat_penalty1.0Repetition penalty.
thinking_leveloffoff · low · medium · high. Wired per-provider (budget tokens map low=1024 / medium=4096 / high=16384).
custom promptsemptyOptional 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

SettingDefaultEffect
execution_isolationnonenone · sandbox (/tmp/aura-sandbox-{task} path rewrite) · container.
native_modefalseWhen false and Docker is available, bash runs inside debian:bookworm-slim.
execution_backendlocalAlternative bash backend: local · docker · ssh · singularity (HPC).
elevated_bashtrueAllow sudo / elevation in bash.
workspace_sharingcopy-on-writeSandbox sharing mode: copy-on-write · locking · read-only.
max_concurrent_tools4Parallel tool-execution cap within one task.
Isolation caveat. The DB/serde default of 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

SettingDefaultEffect
web_server_enabledtrueAuto-start the embedded web UI on launch (port 18800).
web_server_port18800Bind port. The --port CLI flag overrides it.
web_server_tokenemptyBearer token for /api/*. Empty = no auth. AURA_WEB_TOKEN overrides.

ACP peer discovery

SettingDefaultEffect
acp_discovery_enabledtrueListen for ACP peer broadcasts and upsert them into acp_agents.
acp_broadcast_enabledtrueAdvertise this agent on ACP (decoupled from listening — a headless orchestrator can listen-only).
acp_discovery_port18802UDP port for ACP discovery.
acp_routing_policybest-fitRouting 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:

SettingEffect
provider_keysNamed API keys, keyed by provider id or a sub-key (e.g. moonshot-coding).
provider_urlsPer-provider base-URL override (proxies, enterprise endpoints).
key_overridesPer-model or per-provider key selection — pick which plan a given model bills to.
cli_credentials_disabledPer 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_projectOptional OpenAI OpenAI-Organization / OpenAI-Project headers.
model_paramsPer-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.

SettingDefaultEffect
routing_enabledfalseEnable the smart tier-based router.
routing_configempty (JSON)Tiers, score thresholds, per-tier models, and fallbacks.
force_single_agentfalseSkip team/workflow classification — always run a single agent.
latency_failover_ms15000Swap to a faster fallback when a provider's average response time exceeds this. 0 = disabled.
goal_max_iterations5Goal-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.

SettingDefaultEffect
memory_enabledtrueMaster switch — inject recalled memory into agent context.
memory_recall_max_items8Max facts injected per recall.
memory_recall_char_budget2000Character budget for injected memory.
memory_embeddings_enabledfalseTurn on the vector half of hybrid retrieval (needs an embedding endpoint).
memory_embeddings_urlemptyExternal embedding endpoint (OpenAI-compatible /v1/embeddings or legacy).
memory_embeddings_modeltext-embedding-3-smallEmbedding model id (OpenAI format).
memory_embeddings_api_key / memory_embeddings_formatempty / openaiBearer key (optional for local servers) and wire format (openai · legacy).
memory_distill_enabledfalseBackground L1→L2→L3 distillation loop.
memory_distill_interval_hours / memory_distill_min_facts12 / 12Distillation cadence and the minimum un-distilled facts before a scope rolls up.
default_memory_visibilityprivateVisibility for new memory assets: private · team · global.
codegraph_enabled / wiki_enabledtrue / trueEnable 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 the spend_limits table. 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 credentials table; 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:

SettingDefaultEffect
search_providerduckduckgoWeb search backend: duckduckgo (no key) · google · brave · serper · bing. Paid providers use search_api_key.
email_methodautoauto · sendmail · smtp. SMTP mode adds host/port/user/password and from name/address, with a Test Email button.
voice_enabled / tts_providerfalse / systemText-to-speech output; provider system · openai · elevenlabs · groq, with a voice picker.
stt_enginewhisperSpeech-to-text: whisper · system · groq · openai · xai.
oauth_modecloudlocal (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 of name → 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_settings table.

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

ActionDescription
Clear conversation historyDelete task messages and conversation data. Tasks themselves are preserved.
Reset API keysRemove all stored provider API keys from the encrypted store.
Clear model cacheDrop cached model metadata and force a re-fetch from providers.
Reset databaseFull reset to factory defaults — deletes settings, tasks, conversations, and configuration.
Reset app dataComplete reset including database and cached files.
DiagnosticsSystem 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.

VarPurposeDefault
AURA_WEB_TOKENBearer token for /api/* and most /acp/*. Overrides web_server_token.none
AURA_VIEWER_MODEtrue → serve the viewer SPA instead of the full frontend.false
AURA_REMOTE_DEPLOYMENTtrue → 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_URLSeed the provider key / model / base URL on daemon boot.none
AURA_MAX_PARALLEL_AGENTS / AURA_MAX_PARALLEL_PER_PROVIDERGlobal and per-provider parallel-agent semaphores.8 / 4
AURA_HEARTBEAT_URL / AURA_DEPLOYMENT_IDPOST status every 30s, with this UUID in the payload.none / ""
PORTAL_API_URL / PORTAL_ORG_ID / PORTAL_INGEST_TOKENEnterprise-portal policy pull, tenant id, and ingest token (managed mode).none
Daemon modes. Local inference has been removed. 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.