Layered Configuration
Configuration is managed through grove.yml files located at multiple levels. Settings are merged in a specific order, allowing project-level configurations to override more general ones.
The merge order is as follows:
- Global:
~/.config/grove/grove.yml - Ecosystem:
grove.ymlat the root of an ecosystem. - Project:
grove.ymlat the root of a specific project.
Each tool defines its own configuration block within these files (e.g., flow:, context:, gemini:).
For example, a project can specify a different model than the global default:
yaml
# In ~/.config/grove/grove.yml
gemini:
model: "gemini-1.5-flash"yaml
# In ~/path/to/project/grove.yml
gemini:
model: "gemini-1.5-pro" # Overrides the global setting for this project