The config file is the recommended way to configure meka. Environment variables are useful as overrides – for example, in CI pipelines, containers, or when you want to temporarily switch providers without editing your config.
Environment variables override config file values but are overridden by CLI flags.
Replace [prompt].instructions for this run. Equivalent to --instructions. Used by the mekabox container wrapper to tell the agent it can install packages freely.
Be terse.
MEKA_CONFIG_DIR
Override the default config directory. Points at the meka directory itself (contains config.toml and skills/). The only isolation knob that works on every platform — dirs::config_dir() ignores $XDG_CONFIG_HOME on macOS/Windows.
/tmp/meka-test/meka
MEKA_DATA_DIR
Override the default data directory (where sessions.db lives). Same cross-platform escape hatch — dirs::data_dir() ignores $XDG_DATA_HOME on macOS/Windows. Useful for tests, portable installs, and per-project session isolation.
Per-call timeout for MCP tools, in milliseconds. Applies to every remote tool invocation; on timeout meka cancels the request and returns an error to the model.
Override the default OpenAI OAuth client ID for the openai-codex setup wizard (rarely needed)
On first use, the OAuth token is saved to the database and loaded automatically on subsequent launches. Setting the env var again replaces the stored token.