Skip to main content
This is an operator reference for the default gateway configuration. If you only use the desktop app, start with Configuration Overview and change these values only when you need a gateway-level setting.
Most users do not need to read this page end to end. Use it when support, automation, or a deployment guide asks for a specific setting name.

Top-level settings

By default, runtime home is ~/.pioneer. On startup, the gateway creates missing SOUL.md and IDENTITY.md files at the root of runtime home. These files seed the Soul Core and Identity Core prompt sections and may be edited over time.

Install settings

Most users should not change install settings.

Gateway settings

Local-only example:
The desktop app exposes this as Settings > General > Preflight model. Use gateway.preflight_model for new configuration. Legacy memory active-recall model settings are migrated to this general preflight model setting when no explicit preflight model is present.

Telemetry settings

Gateway telemetry uses OTLP/HTTP endpoints for metrics and traces. The app-config switch enables the exporter, while the user-facing general.telemetry_enabled setting from Settings API records the current consent choice and can turn export off at runtime. Telemetry credentials stay on the gateway side. A client receives status and diagnostics through the normal observability surfaces, not through exported credentials.

Task review settings

Example:
Immediate attached subagent tasks use parent-agent review by default. Scheduled or detached work should not depend on a live parent turn and may be finalized automatically according to task policy.

Self-improvement settings

Self-improvement is configured per workspace through the Settings API, not through a [gateway.self_improvement] TOML section. The settings object contains enabled, an optional default_model, and an optional reviewer_model. Each model selection names a native API provider and model. CLI runtime ids and local providers are not eligible for this service. When enabled and eligible, the service can turn completed work into learned skills. Learned skills remain workspace-scoped and go through the normal skill policy, visibility, provenance, dependency, and prompt-capacity checks.

Hook recovery settings

Hook recovery repairs persisted hook/task/turn state after gateway restart or stale runtime activity.

Artifact storage settings

Artifacts are gateway-owned durable files and generated outputs.

Resilience settings

Command execution resilience settings control how long command execution leases can stay active and how long recovery can keep trying to reconcile command execution state. Provider stream item resilience settings do the same for streamed provider items that may need reconciliation after interruption or restart. Context compaction has its own lease and recovery window because compaction can remain active while the gateway rebuilds a thread context. Provider transport timeouts are configured separately under [gateway.provider]: non_stream_request_timeout_secs, connect_timeout_secs, first_chunk_timeout_secs, inter_chunk_idle_timeout_secs, and the optional max_stream_duration_secs. These control the provider request itself; the resilience leases above control ownership and recovery of persisted streamed items after interruption.

Agent memory settings

Example:
capsules_dir is resolved under runtime home. Pioneer rejects empty paths, absolute paths, .., and other unsafe runtime-home escapes. The desktop app does not own these settings. It reads and updates gateway-owned runtime settings through the settings API. That is what lets the same desktop app connect to a different gateway and show that gateway’s actual memory configuration.

Thread episodic context settings

Thread episodic context is the searchable conversation-history layer. It is separate from durable memory. Durable memory stores selected facts and project decisions. Thread episodic context indexes visible conversation snippets so Pioneer can recall old discussion fragments when a future turn needs them. Vector search is an opt-in projection for thread episodic context. It keeps embedding configuration in app config and reports provider-key, refill, and local-model readiness through the Settings API. Example:
Use the public settings API for user-facing runtime changes. App config is for defaults and operator-managed configuration; gateway-settings.toml is the runtime override file owned by the gateway.

Thread defaults

You can override these if you want new threads to start with a different default model.

Web tool settings

Tool loop limits

These limits help stop runaway loops. Permission modes and sandbox/resource policy control whether sensitive tool actions are allowed immediately, require approval, receive scoped grants, or are rejected.

Execution window limits

Execution windows bound long agent turns in smaller windows and also keep total-turn limits.

Computer-use settings

Skills settings

CLI agent runtime settings

gateway.cli_agent_runtime sets shared defaults for CLI-backed agent runtimes. The legacy app-config fallback is disabled by default. The runtime settings snapshot exposes enabled Codex and Claude instances by default, while named app-config instances can replace or extend that fallback. Named instances can be configured under [gateway.cli_agent_runtimes.<id>]:
startup_probe_timeout_ms is the canonical name for a named runtime instance. startup_timeout_ms remains accepted as a compatibility alias in that section. When gateway.cli_agent_runtimes contains instances, those instances replace the legacy fallback unless the shared enabled flag also adds the defaults. User-facing clients should prefer the settings/get and settings/update cli_runtimes section when editing runtime instances after install.

Voice settings

Voice configuration controls the gateway-side transcription runtime. Microphone capture remains a client concern. The current provider is local; buffered_gateway_session is the default transcription strategy, while experimental_streaming is available for adapters that support it. The settings API reports installation and loading state through voice_input.runtime and gateway_voice_input_status_changed. Use that snapshot to distinguish a disabled voice feature from a model that is downloading, loading, or unavailable.

Remote access settings

Remote access is supervised by the gateway through pioneer-tunnel. App config provides operator defaults; runtime enablement and the relay key are managed through settings/update. The remote-access key is never stored in app config or ordinary settings content. settings/update writes it into the gateway keystore and the settings snapshot exposes only has_key.

Provider attachment settings

Provider runtime settings control request timeouts before the provider-specific adapter runs. Provider attachment settings control files, URLs, upload registry behavior, and attachment safety checks.

Database settings

Gateway runtime settings file

Runtime secret values are not configured as ordinary app config keys. The gateway creates gateway-settings.toml under runtime home with:
Only keystore is supported. The old db-keystore backend name is not accepted. This setting selects the secret backend; the storage model itself is described in Secret Storage. The same file also stores gateway-scoped runtime settings that users change through clients, such as memory switches and thread episodic context switches. Clients should change those values with settings/update, not by writing the file directly.

Auth settings

The public credential flow is device activation followed by short-lived access credentials and a refresh credential. JWT settings above configure the gateway’s internal access-token implementation; clients should use the device and session methods documented in Identity and authentication, not mint or exchange a shared superuser token.

Desktop gateway settings

Further reading