Skip to main content

Configuration Reference

Inferoa loads configuration from the user config path unless --config is provided. By default, the user config path is:

~/.inferoa/config.yaml

Use INFEROA_STATE_DIR or --state-dir to change the state directory. The state directory also holds the local secret vault, session database, and other durable state.

Top-Level Shape

The full default configuration is written by inferoa debug init. The defaults shipped in src/config/defaults.ts are:

model_setup:
mode: direct
provider: vllm
base_url: http://localhost:8000/v1
context_window: 32768

model_retry:
initial_delay_ms: 1000
max_delay_ms: 60000
backoff_factor: 2
jitter_ratio: 0.2
request_timeout_ms: 300000

omni:
enabled: false
endpoints: {}

permissions:
mode: full_access

context:
compression_threshold: 0.8
context_window: 32768
protected_recent_loops: 3
engine:
provider: auto
startup: welcome
require_ready_before_chat: true
watch: true

skills:
enabled:
- coding-workflow
managed_installs: ask

web_search:
provider: auto

rtk:
enabled: true
delivery: managed
version: 0.42.3
auto_download: true

daemon:
poll_ms: 1000

Key Fields

  • model_setup.mode — one of direct, auto, or external. auto delegates model selection to vLLM Semantic Router.
  • model_setup.provider — provider id such as vllm, vllm-sr, or an external provider id from the setup wizard.
  • omni.endpoints — keyed by capability. Supported keys are vision, image_generation, image_edit, video_understanding, video_generation, audio_understanding, audio_generation, and speech.
  • permissions.mode — workspace permission mode. One of full_access, auto_approve, ask, or custom. Override per workspace from the TUI with /access.
  • context.engine.providerauto, codegraph, builtin, or off.
  • skills.managed_installsask, always, or never.

Environment Overrides

Environment variables override config at startup. They never persist to disk.

VariableEffect
INFEROA_BASE_URLOverrides model_setup.base_url
VLLM_BASE_URLFallback override for model_setup.base_url
INFEROA_MODELOverrides model_setup.model
VLLM_MODELFallback override for model_setup.model
INFEROA_MODE=autoSets model_setup.mode=auto and uses the vLLM Semantic Router
INFEROA_RTKEnables or disables RTK
INFEROA_RTK_PATHUses a specific RTK binary path
INFEROA_RTK_AUTO_DOWNLOADEnables or disables managed RTK download
INFEROA_OMNI_VISION_URLEnables and configures the Omni vision endpoint URL
INFEROA_OMNI_IMAGE_URLEnables and configures image generation
INFEROA_OMNI_IMAGE_EDIT_URLEnables and configures image editing
INFEROA_OMNI_VIDEO_URLEnables and configures video generation
INFEROA_OMNI_SPEECH_URLEnables and configures speech generation

Each Omni URL override also supports a matching INFEROA_OMNI_<KEY>_MODEL variable. The accepted keys are the endpoint names: VISION, IMAGE, IMAGE_EDIT, VIDEO, SPEECH.

Secret Handling

Config files should store api_key_ref, not raw api_key values. The setup wizard writes raw secrets into the local vault and stores only references in the YAML file. The same rule applies to model_setup, omni.endpoints.*.api_key, and web_search.api_key.

inferoa debug setup redacts any *api_key* field before printing. Public docs, progress logs, and evidence artifacts must not include raw keys.