YAML Configuration File
Customize DAIV for your repository using a .daiv.yml YAML configuration file in the default branch and repository root directory.
This file lets you control features, code formatting, and more.
Example Configuration
Below is a complete example of a .daiv.yml YAML configuration file.
You can copy and modify this template for your repository.
Configure Repository Settings
Repository settings control the default branch and context file configuration.
| Option | Type | Default | Description |
|---|---|---|---|
default_branch |
str \| null |
Repository default branch | The branch DAIV uses by default to load the .daiv.yml YAML configuration file. |
context_file_name |
str \| null |
"AGENTS.md" |
File name to load the repository context in the format of https://agents.md/. |
Tip
- The context file helps agents understand your repository structure and conventions. You can use the AGENTS.md format to define your repository context.
- If not specified, DAIV will look for an "AGENTS.md" file by default.
Enable or Disable Features
Control which DAIV features are active in your repository.
Configure the following feature sections in your .daiv.yml YAML configuration file:
Issue Addressing
| Option | Type | Default | Description |
|---|---|---|---|
enabled |
bool |
true |
Enable the issue addressor feature. |
Enable automated issue resolution with plan approval:
| YAML | |
|---|---|
Note
Plan approval is handled via the /approve-plan quick action. See Quick Actions for details.
Code Review
| Option | Type | Default | Description |
|---|---|---|---|
enabled |
bool |
true |
Enable the code review addressor feature. |
Quick Actions
| Option | Type | Default | Description |
|---|---|---|---|
enabled |
bool |
true |
Enable quick actions feature. |
Tip
Disable features you do not need to reduce noise and speed up processing.
Branch Naming and Commit Message Conventions
DAIV automatically generates branch names and commit messages for pull requests based on repository conventions. You can define these conventions in your AGENTS.md context file.
Example AGENTS.md conventions:
| Markdown | |
|---|---|
If no conventions are defined in AGENTS.md, DAIV uses sensible defaults:
- Branch naming: <type>/<short-kebab-summary> where type ∈ {feat, fix, chore, docs, refactor, test}
- Commit messages: Conventional Commits style <type>: <short summary>
Tip
- The PR describer agent reads your
AGENTS.mdfile to understand your repository's conventions - If multiple conventions exist, the agent chooses the one that best matches the change type
- Keep conventions clear and simple to ensure consistent results
Control File Access
Control which files DAIV can see and read.
Warning
Files excluded from being seen and/or read will not be available to DAIV's AI agents.
| Option | Type | Default | Description |
|---|---|---|---|
extend_exclude_patterns |
list[str] |
[] |
Add patterns to exclude more files from being seen. |
exclude_patterns |
tuple[str] |
["*.pyc", "*.log", "*.zip", "*.coverage", "**/.git/**", "**/.mypy_cache/**", "**/.tox/**", "**/vendor/**", "**/venv/**", "**/.venv/**", "**/.env/**", "**/node_modules/**", "**/dist/**", "**/__pycache__/**", "**/data/**", "**/.idea/**", "**/.pytest_cache/**", "**/.ruff_cache/**"] |
Override the default exclude patterns. |
omit_content_patterns |
tuple[str] |
["*package-lock.json", "*pnpm-lock.yaml", "*.lock", "*.svg", "*.sql"] |
Files that DAIV can see exist but won't read their content. |
Tip
- Exclude sensitive files and build artifacts.
- Prefer using
extend_exclude_patternsto add more patterns. - Use
omit_content_patternsfor large files that shouldn't be read but need to be seen.
Set Up Sandbox
To take advantage of the sandbox to execute commands, you must have a daiv-sandbox instance running (see the daiv-sandbox repository for more information), and the base_image option must be set to enable sandbox functionality.
Under your .daiv.yml YAML configuration file's sandbox: section, configure the following keys:
| Option | Type | Default | Description |
|---|---|---|---|
base_image |
str \| null |
null |
Docker image for the sandbox. Use distro images only. |
format_code |
list[str] \| null |
null |
List of commands to format code before committing. |
Here's how it works:
Before committing code generated by DAIV, DAIV will call daiv-sandbox to:
- Create a container from the
base_image. - Execute each command in the
format_codelist sequentially to format the code before committing.
Example configuration:
| YAML | |
|---|---|
Warning
If any of the commands fail, DAIV will commit the code as is to be manually fixed by the user, if needed.
Tip
- Use specific image versions for reproducibility.
- Include dependency installation commands in the
format_codelist if needed. - The sandbox is only enabled when
base_imageis specified anddaiv-sandboxis running.
Configure Model Settings
Override the default model configurations for agents on a per-repository basis. This allows you to use smaller models for simple projects or larger models for complex ones.
Configuration priority (highest to lowest):
1. Issue labels (e.g., daiv-max) - highest priority
2. .daiv.yml models section - per-repository overrides
3. Environment variables - global defaults (lowest priority)
Plan and Execute Agent
Configure models for the plan and execute agent used in issue addressing.
| Option | Type | Default | Description |
|---|---|---|---|
planning_model |
str \| null |
null |
Model name for planning tasks. Overrides PLAN_AND_EXECUTE_PLANNING_MODEL_NAME environment variable. |
planning_fallback_model |
str \| null |
null |
Fallback model name for planning tasks. Overrides PLAN_AND_EXECUTE_PLANNING_FALLBACK_MODEL_NAME environment variable. |
planning_thinking_level |
"minimal" \| "low" \| "medium" \| "high" \| null |
null |
Thinking level for planning tasks. Overrides PLAN_AND_EXECUTE_PLANNING_THINKING_LEVEL environment variable. |
execution_model |
str \| null |
null |
Model name for execution tasks. Overrides PLAN_AND_EXECUTE_EXECUTION_MODEL_NAME environment variable. |
execution_fallback_model |
str \| null |
null |
Fallback model name for execution tasks. Overrides PLAN_AND_EXECUTE_EXECUTION_FALLBACK_MODEL_NAME environment variable. |
execution_thinking_level |
"minimal" \| "low" \| "medium" \| "high" \| null |
null |
Thinking level for execution tasks. Overrides PLAN_AND_EXECUTE_EXECUTION_THINKING_LEVEL environment variable. |
code_review_model |
str \| null |
null |
Model name for code review tasks. Overrides PLAN_AND_EXECUTE_CODE_REVIEW_MODEL_NAME environment variable. |
code_review_thinking_level |
"minimal" \| "low" \| "medium" \| "high" \| null |
null |
Thinking level for code review tasks. Overrides PLAN_AND_EXECUTE_CODE_REVIEW_THINKING_LEVEL environment variable. |
Example configuration:
| YAML | |
|---|---|
Review Addressor Agent
Configure models for the review addressor agent used in code review.
| Option | Type | Default | Description |
|---|---|---|---|
review_comment_model |
str \| null |
null |
Model name for routing review comments. Overrides REVIEW_ADDRESSOR_REVIEW_COMMENT_MODEL_NAME environment variable. |
reply_model |
str \| null |
null |
Model name for replying to review comments. Overrides REVIEW_ADDRESSOR_REPLY_MODEL_NAME environment variable. |
reply_temperature |
float \| null |
null |
Temperature for the reply model. Overrides REVIEW_ADDRESSOR_REPLY_TEMPERATURE environment variable. |
Example configuration:
| YAML | |
|---|---|
Note
The review addressor agent calls the plan and execute agent to address the review comments. Therefore, the review addressor agent uses the same model configuration defined for the plan and execute agent to address the review comments.
Codebase Chat Agent
Configure models for the codebase chat agent.
| Option | Type | Default | Description |
|---|---|---|---|
model |
str \| null |
null |
Model name for codebase chat. Overrides CODEBASE_CHAT_MODEL_NAME environment variable. |
temperature |
float \| null |
null |
Temperature for codebase chat. Overrides CODEBASE_CHAT_TEMPERATURE environment variable. |
PR Describer Agent
Configure models for the PR describer agent.
| Option | Type | Default | Description |
|---|---|---|---|
model |
str \| null |
null |
Model name for PR description. Overrides PR_DESCRIBER_MODEL_NAME environment variable. |
Example configuration:
Note
The PR describer agent automatically reads your AGENTS.md context file to understand branch naming and commit message conventions. See Branch Naming and Commit Message Conventions for details.