Configuration

Maki uses TOML config files in two places:

  • Global: ~/.config/maki/config.toml
  • Project: .maki/config.toml (relative to your working directory)

Project settings win over global ones, field by field. Neither file needs to exist; everything has a default.

Example

[ui]
splash_animation = true
mouse_scroll_lines = 5

[ui.tool_output_lines]
bash = 8
read = 5

[agent]
bash_timeout_secs = 180
max_output_lines = 3000

[provider]
default_model = "anthropic/claude-sonnet-4-6"

[storage]
max_log_files = 5

[index]
max_file_size_mb = 4

Full Reference

Top-level

FieldTypeDefaultDescription
always_yoloboolfalseStart every session with YOLO mode (skip permission prompts, deny rules still apply)

[ui]

FieldTypeDefaultDescription
splash_animationbooltrueShow splash animation on startup
flash_duration_msu641500Duration of flash messages (ms)
typewriter_ms_per_charu644Typewriter effect speed (ms/char)
mouse_scroll_linesu323Lines per mouse wheel scroll (min: 1)

[ui.tool_output_lines]

How many lines of output to show per tool in the UI. All values are usize with a minimum of 1.

FieldDefault
bash5
code_execution5
task5
index3
grep3
read3
write7
web3
other3

[agent]

FieldTypeDefaultMinDescription
max_output_bytesusize512001024Max tool output size (bytes)
max_output_linesusize200010Max tool output lines
max_response_bytesusize52428801024Max LLM response size (bytes)
max_line_bytesusize50080Max bytes per output line
bash_timeout_secsu641205Bash command timeout
code_execution_timeout_secsu64305Python sandbox timeout
max_continuation_turnsu3231Max continuation turns
compaction_bufferu32300001000Context compaction buffer
search_result_limitusize10010Max search results
interpreter_max_memory_mbusize5010Python interpreter memory limit (MB)

[provider]

FieldTypeDefaultMinDescription
default_modelstringnonen/aDefault LLM model (e.g. anthropic/claude-sonnet-4-6)
connect_timeout_secsu64101API connection timeout
stream_timeout_secsu6430010Streaming response timeout

[storage]

FieldTypeDefaultMinDescription
max_log_bytes_mbu642001Max log file size (MB)
max_log_filesu32101Max number of log files
input_history_sizeusize10010REPL input history entries

[index]

FieldTypeDefaultMinDescription
max_file_size_mbu6421Max file size for tree-sitter indexing (MB)

Validation

Numeric fields are validated against their minimums on load. A value below the minimum raises a ConfigError with the section, field, value, and minimum. Invalid TOML logs a warning and falls back to defaults.