LemonCore.Config.TUI (lemon_core v0.1.0)

View Source

TUI (Terminal User Interface) configuration for themes and debug mode.

Inspired by Ironclaw's modular config pattern, this module handles TUI-specific configuration including theme selection and debug settings.

Configuration

Configuration is loaded from the TOML config file under [tui]:

[tui]
theme = "lemon"
debug = false

Environment variables override file configuration:

  • LEMON_TUI_THEME
  • LEMON_TUI_DEBUG

Note: The agent theme setting (under [agent]) is separate from the TUI theme. The TUI theme controls the terminal interface appearance, while the agent theme may affect agent behavior or output formatting.

Summary

Functions

Returns the default TUI configuration as a map.

Resolves TUI configuration from settings and environment variables.

Types

t()

@type t() :: %LemonCore.Config.TUI{debug: boolean(), theme: String.t()}

Functions

defaults()

@spec defaults() :: map()

Returns the default TUI configuration as a map.

This is used as the base configuration that gets overridden by user settings.

resolve(settings)

@spec resolve(map()) :: t()

Resolves TUI configuration from settings and environment variables.

Priority: environment variables > TOML config > defaults