Skip to content

Configuration Reference

All settings are environment variables with sensible defaults. Override by exporting before launch or setting in the systemd service file.

Paths

Variable Default Description
MIRACH_BASE_DIR ~/mirach Project root directory
MIRACH_SOCKET /tmp/mirach.sock Unix socket path for daemon-client IPC
MIRACH_SYSTEM_PROMPT ~/mirach/system_prompt.md Path to the system prompt file

Audio capture

Variable Default Description
MIRACH_MIC fifine Substring match against microphone name
MIRACH_SAMPLE_RATE 48000 Native sample rate of your microphone
MIRACH_RMS_SILENCE 0.005 RMS threshold below which audio is discarded as silence
MIRACH_MAX_RECORDING_SEC 60.0 Maximum recording duration in seconds (safety cap to prevent memory issues)

STT (Whisper)

Variable Default Description
MIRACH_WHISPER_MODEL medium Model name (any faster-whisper compatible model)
MIRACH_WHISPER_DEVICE cuda cuda for GPU, cpu for CPU-only
MIRACH_WHISPER_COMPUTE int8 int8 for lower VRAM, float16 for max accuracy
MIRACH_WHISPER_LANG es ISO 639-1 language code for transcription
MIRACH_WHISPER_BEAM_SIZE 3 Beam size 1-5 (lower = faster, higher = more accurate)

TTS (Piper)

Variable Default Description
MIRACH_VOICE daniela.onnx Filename inside voices/ directory
MIRACH_VOICE_SPEED 1.2 Piper length_scale (>1 = slower, <1 = faster)

LLM (OpenCode)

Variable Default Description
MIRACH_OPENCODE_MODEL opencode/deepseek-v4-flash-free Model identifier for opencode run
MIRACH_OPENCODE_TIMEOUT 120 Timeout in seconds for normal queries
MIRACH_OPENCODE_TIMEOUT_CODING 300 Timeout in seconds for coding-related queries (5 min)
MIRACH_SESSION_IDLE_TIMEOUT 3600 Seconds of inactivity before starting a new LLM session (1 hour)

User feedback

Variable Default Description
MIRACH_LOCALE en UI language (en, es, or custom)
MIRACH_HOTKEY Alt+Z Display label shown in notifications (cosmetic only)
MIRACH_FILLER_DELAY 6.0 Seconds between filler phrases during long LLM calls
MIRACH_FILLERS (localized) Pipe-separated override for filler phrases, e.g. "Wait.|Thinking."

Obsidian (persistent memory)

Variable Default Description
MIRACH_OBSIDIAN_VAULT ~/ObsidianVault Path to Obsidian vault root
MIRACH_OBSIDIAN_CACHE_MAX_AGE 300.0 Max age in seconds before cache is considered stale (5 min)