Documentation
Configuration
Quick Setup
Use a preset to get started fast:
# CorvidLabs preset - sets author, org, license, template repo
fledge config init --preset corvidlabs
# Default config
fledge config init
Config File
Lives under the platform config directory:
| Platform | Path |
|---|---|
| macOS | ~/Library/Application Support/fledge/config.toml |
| Linux | ~/.config/fledge/config.toml |
| Windows | %APPDATA%\fledge\config.toml |
Sections
[defaults]
Default values for new projects:
[defaults]
author = "Your Name"
github_org = "YourOrg"
license = "MIT"
| Key | What it does | Fallback |
|---|---|---|
author | Default author name | git config user.name |
github_org | Default GitHub org | Prompted |
license | Default license | MIT |
[templates]
Where to find templates:
[templates]
paths = ["~/my-templates", "~/work/templates"]
repos = ["CorvidLabs/fledge-templates", "myorg/templates"]
| Key | What it does |
|---|---|
paths | Local directories with templates |
repos | GitHub repos to pull templates from (owner/repo) |
[ai]
AI provider and model settings. Written by fledge ai use or fledge config set/edit:
All providers are reached over plain HTTP (no CLI). provider is one of ollama, anthropic, openai, openrouter, gemini, deepseek, groq, mistral, xai, together (claude is a deprecated alias of anthropic). When unset, fledge auto-detects the first provider with a key, falling back to keyless local Ollama.
[ai]
provider = "anthropic" # ollama | anthropic | openai | openrouter | gemini | deepseek | groq | mistral | xai | together
[ai.anthropic]
model = "claude-sonnet-4-6" # default if unset
api_key = "sk-ant-..." # or export ANTHROPIC_API_KEY
# base_url = "..." # optional override
[ai.openai] # any OpenAI-compatible gateway
base_url = "https://openrouter.ai/api/v1"
api_key = "sk-..." # or export OPENAI_API_KEY
model = "anthropic/claude-sonnet-4-6" # required (no default)
[ai.ollama]
host = "http://localhost:11434" # Ollama API endpoint (always normalized to include scheme)
model = "llama3.3" # use `fledge ai models --provider ollama` to list available models
api_key = "sk-..." # for Ollama Cloud / authenticated endpoints
timeout_seconds = 600 # request timeout (default: 600)
The OpenAI-compatible gateways (
openrouter,groq,deepseek,mistral,xai,together,gemini) are key-driven: set<PROVIDER>_API_KEY(e.g.GROQ_API_KEY); their endpoint and default model come from the corvid-ai registry.
Tip: Run
fledge ai models --provider ollama(live) or--provider anthropic(curated) to see models. Usefledge ai usefor an interactive picker.
| Key | What it does | Default |
|---|---|---|
ai.provider | Active LLM backend | auto-detect → keyless local Ollama |
ai.anthropic.model | Anthropic model id | claude-sonnet-4-6 |
ai.anthropic.api_key | Anthropic key (or ANTHROPIC_API_KEY) | (none) |
ai.anthropic.base_url | Anthropic endpoint override | https://api.anthropic.com |
ai.openai.base_url | OpenAI-compatible gateway URL | OpenAI |
ai.openai.api_key | OpenAI-compatible key (or OPENAI_API_KEY) | (none) |
ai.openai.model | Model id (required: no default) | (none) |
ai.ollama.host | Ollama API endpoint URL | http://localhost:11434 |
ai.ollama.model | Ollama model name | llama3.3 |
ai.ollama.api_key | Bearer token for authenticated endpoints | (none) |
ai.ollama.timeout_seconds | Request timeout in seconds | 600 |
[trust]
Extend the plugin/lane trust system without recompiling. Entries here classify as team tier, granting access to exec and network capabilities:
[trust]
orgs = ["my-company", "my-other-org"]
users = ["my-friend", "trusted-bot"]
| Key | What it does |
|---|---|
orgs | GitHub orgs to trust at team tier |
users | GitHub users to trust at team tier |
Manage via CLI:
fledge config add trust.orgs my-company
fledge config add trust.users 0xLeif
fledge config remove trust.orgs my-company
Compared case-insensitively. The hardcoded official org (CorvidLabs) and built-in team members are always trusted regardless of config.
[github]
[github]
token = "ghp_..."
Token priority:
FLEDGE_GITHUB_TOKENenv varGITHUB_TOKENenv var- Config file
gh auth token(GitHub CLI fallback)
Required token scopes:
| Feature | Scopes needed |
|---|---|
| Issues, PRs, CI checks | repo (or public_repo for public repos only) |
| Create PRs, push branches | repo |
| Search templates/plugins | public_repo |
| Publish templates | repo, delete_repo (if republishing) |
A classic token with repo covers everything. For fine-grained tokens, grant Read/Write on Contents, Pull Requests, and Issues for each repo you work with.
Full Example
[defaults]
author = "Leif"
github_org = "CorvidLabs"
license = "MIT"
[templates]
paths = ["~/.fledge/templates", "~/projects/templates"]
repos = ["CorvidLabs/fledge-templates", "my-org/my-templates"]
[trust]
orgs = ["my-company"]
users = ["0xLeif"]
[github]
token = "ghp_..."
[ai]
provider = "anthropic"
[ai.anthropic]
model = "claude-sonnet-4-6"
[ai.ollama]
host = "http://localhost:11434"
model = "llama3.3"
timeout_seconds = 600
Environment Variables
| Variable | What it does |
|---|---|
FLEDGE_NON_INTERACTIVE | Truthy (1, true, yes, y, on) silences prompts. Same effect as passing --non-interactive (alias --ni) per invocation. Confirmation prompts behave as --yes; prompts with no default bail with a clear error instead of hanging. Hook exception: for ad-hoc remote templates passed to templates init (--template owner/repo not in config), post_create hooks are skipped unless trust is granted explicitly via --trust-hooks or FLEDGE_TRUST_HOOKS. Built-in templates, anything under templates.paths, and anything reachable through your configured templates.repos still follow the --yes consent path. |
FLEDGE_TRUST_HOOKS | Truthy authorizes post_create hook execution for ad-hoc remote templates passed to fledge templates init. Same as passing --trust-hooks. Has no effect on templates reached through templates.paths or templates.repos (those already follow the --yes consent path). Hooks run arbitrary shell commands; only set this for sources you trust. |
FLEDGE_GITHUB_TOKEN | GitHub token (highest priority) |
GITHUB_TOKEN | GitHub token (fallback after FLEDGE_GITHUB_TOKEN) |
FLEDGE_AI_PROVIDER | AI provider override (ollama, anthropic, openai, openrouter, gemini, deepseek, groq, mistral, xai, together) |
FLEDGE_AI_MODEL | AI model override |
FLEDGE_AI_TIMEOUT | Request timeout in seconds |
ANTHROPIC_API_KEY | Anthropic API key |
OPENAI_API_KEY | OpenAI-compatible API key |
<PROVIDER>_API_KEY | Gateway key, e.g. GROQ_API_KEY, GEMINI_API_KEY, OPENROUTER_API_KEY |
OLLAMA_HOST | Ollama API endpoint URL |
OLLAMA_API_KEY | Ollama Bearer token |
If neither env var nor config is set, fledge falls back to gh auth token (GitHub CLI) automatically for GitHub operations.
Project Configuration (fledge.toml)
Per-project settings live in fledge.toml in your project root. This file defines tasks, lanes, and release behavior. It's created by fledge run --init, fledge lanes init, or fledge templates init.
For the full schema (every section, every key, every default), see the fledge.toml Reference.
Topical guides:
- Run: Tasks and Lanes. Defining tasks/lanes, step types, parallel groups, importing community lanes
- Extend: Plugins.
plugin.tomland the plugin ecosystem
Priority Order
When creating a project, values come from (highest to lowest):
- Command-line arguments
- Config file
- Git config (author only)
- Built-in defaults