Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

7. TOML configuration format

Date: 2026-04-22

Status

Accepted

Context

Cerebro needs a user-friendly configuration format that supports multiple projects and settings.

Decision

Cerebro uses TOML with two sections:

[settings]
opencode_db_path = "..."        # Path to AI tool's SQLite DB (optional)
output_dir = "..."             # Dashboard output directory

[[projects]]
name = "project-name"         # Display name
repo_path = "~/Projects/..."   # Git repository path
active = true                  # Include in build

Cerebro reads manual notes from a fixed path derived from the output directory ({output_dir}/notes/projects/{name}.md) rather than a per-project note_path field.

Consequences

Pros

  • TOML is human-readable and well-supported in Rust
  • Clear separation between settings and project definitions
  • Easy to add new fields without breaking existing configs

Cons

  • Requires toml parsing dependency
  • ~ path expansion needed

Notes

Parsed in cerebro-core via toml crate. ~ expansion in config.rs.