Skip to content

Configuration

autoducks is configured via .autoducks/autoducks.json at the root of your repository.

{
"providers": {
"its": "github",
"git": "github",
"llm": "claude"
},
"defaults": {
"model": "claude-sonnet-4-6",
"reasoning": "high",
"base_branch": "main"
}
}

Selects the implementation for each of the three provider interfaces.

Issue Tracking System provider. Controls all issue tracker interactions: issue creation/update, labels, comments, PR management, reactions.

ValueStatusDescription
github✅ SupportedGitHub Issues via the gh CLI

Git operations provider. Controls: branch creation/deletion, commits, pushes, PR merge.

ValueStatusDescription
github✅ SupportedGit CLI with GitHub repository operations

LLM provider. Controls: design spec generation, tactical planning, code execution, fix attempts.

ValueStatusDescription
claude✅ SupportedAnthropic Claude via the Claude Code action

Default runtime parameters used by all agents unless overridden by a directive argument.

The Claude model ID to use for LLM agents.

Default: claude-sonnet-4-6

Recommended values:

ModelUse case
claude-sonnet-4-6Default — good balance of speed and quality
claude-opus-4-7Best quality for complex design/tactical work
claude-haiku-4-5-20251001Fastest, lowest cost — good for simple execution tasks

Reasoning effort level for LLM agents.

ValueDescription
lowFaster, less thorough
mediumBalanced
highSlower, more thorough (default)

The branch that feature branches and orphan task branches are created from, and the branch that the final feature PR targets.

Default: main

Each agent can also have its own defaults.json in .autoducks/agents/{agent}/defaults.json:

{
"model": "claude-sonnet-4-6",
"reasoning": "high"
}

Agent-level defaults override the global defaults. Directive arguments in slash commands override agent-level defaults.

Priority (highest to lowest):

  1. Directive argument in comment (--model, --reasoning)
  2. Agent-level defaults.json
  3. Global .autoducks/autoducks.json