Docs / Configuration Build
Configuration File
ekos.toml — every section, with defaults.
ekos.toml lives at the workspace root. Unknown keys are rejected, so typos surface immediately; ekos config validate checks syntax and [observe] mistakes.
[workspace]
root = "."
log-level = "info" # trace | debug | info | warn | error
log-format = "pretty" # "pretty" | "json"
[observe]
paths = ["."]
ignore-patterns = [".ekos", ".git", "target", "node_modules"] # directory NAMES
[llm]
provider = "ollama" # "ollama" | "anthropic" | "openai"
model = "llama3:latest"
api-key-env = "ANTHROPIC_API_KEY"
[ai]
max-tokens = 8192
[llm-description]
enabled = false
scope = "modules" # "modules" | "symbols" | "all"
[embeddings]
enabled = false
[recover.sql]
default-dialect = "generic"
[security]
extra-excluded-globs = []
Sections
| Section | Purpose | Page |
|---|---|---|
[workspace], [observe] |
root, logging, what to observe | this page |
[llm], [ai] |
provider for compilation passes and for ekos ask |
LLM Providers |
[embeddings], [retrieval] |
vector index, LLM rerank | Embeddings |
[llm-description], [document-semantics], [architecture-reasoning], [binary-reconstruction] |
opt-in LLM stages | Advanced Configuration |
[recover.sql] |
SQL dialect rules | Indexing a Database |
[security] |
extra redaction patterns and excluded globs | Security Model |
[storage] |
containers, partitioning, distributed | Storage |
[clickhouse], [architecture], [marketing] |
connector- and feature-specific | Configuration Reference |
Comments inside ekos.toml are ignored, so use them liberally — the repository's own ekos.toml records why each exclusion exists.