Configuration
Fleet uses two configuration tiers: project config for repo-scoped agents and org config for organization-wide orchestration.
Project Config
Located at .fleet/config.yaml in your repository root. Defines agents, teams, pipelines, and product metadata for a single repo.
# .fleet/config.yaml
product:
name: my-app
description: "A web application for task management"
owner: jasonehm-ke
agents:
- name: frontend-dev
role: developer
department: engineering
reports_to: tech-lead
enabled: true
prompt: |
You are a frontend developer specializing in React and TypeScript.
Focus on UI components, accessibility, and performance.
subscriptions:
- ticket_ready
schedule: ""
budget_minutes: 120
- name: backend-dev
role: developer
department: engineering
reports_to: tech-lead
enabled: true
prompt: |
You are a backend developer specializing in Go APIs.
Focus on correctness, testing, and performance.
subscriptions:
- ticket_ready
- name: tech-lead
role: tech-lead
department: engineering
reports_to: cto
enabled: true
prompt: |
You are the tech lead. Review PRs, enforce standards,
and unblock developers.
subscriptions:
- pr_needs_review
- name: qa-lead
role: qa-lead
department: quality
reports_to: tech-lead
enabled: true
prompt: |
You are the QA lead. Review PRs for test coverage,
edge cases, and quality standards.
subscriptions:
- pr_needs_review
- name: release-manager
role: release-manager
department: engineering
reports_to: tech-lead
enabled: true
prompt: |
You are the release manager. Merge approved PRs,
tag releases, and update changelogs.
subscriptions:
- pr_approved
teams:
- name: engineering
agents:
- frontend-dev
- backend-dev
- tech-lead
- name: quality
agents:
- qa-lead
pipelines:
- name: deploy
description: "Standard deployment pipeline"
stages:
- name: develop
agents: [frontend-dev, backend-dev]
parallel: true
- name: review
agents: [tech-lead, qa-lead]
parallel: true
approval_required: true
- name: ship
agents: [release-manager]Org Config
Located at ~/.team-dashboard/org.yaml. Defines org-level agents (CEO, CPO, CTO, CMO) that see events from all repos. Users project = "__org__" as the sentinel value.
# ~/.team-dashboard/org.yaml
product:
name: my-company
description: "Organization-wide fleet management"
owner: jasonehm-ke
repos:
- org/frontend
- org/backend
- org/infra
agents:
- name: ceo
role: ceo
department: executive
prompt: |
You are the CEO. Monitor fleet-wide metrics,
review strategic decisions, and set priorities.
subscriptions:
- ticket_shipped
- pipeline_complete
- name: cpo
role: cpo
department: product
reports_to: ceo
prompt: |
You are the CPO. Define product strategy,
prioritize features, and review product decisions.
subscriptions:
- ticket_created
- name: cto
role: cto
department: engineering
reports_to: ceo
prompt: |
You are the CTO. Set technical direction,
review architecture decisions, and manage tech debt.
subscriptions:
- pr_approved
- pipeline_failedOrg vs. Project agents
| Aspect | Project Agent | Org Agent |
|---|---|---|
| Config file | .fleet/config.yaml | ~/.team-dashboard/org.yaml |
| Scope | Single repository | All repos in repos list |
| Project sentinel | Repo path | __org__ |
| Watcher | fleet watcher start | fleet watcher start --org |
| Typical roles | Developers, QA, release-manager | CEO, CPO, CTO, CMO, PMs |
| Event visibility | Own repo only | All repos |
Agent Field Reference
| Field | Type | Required | Description |
|---|---|---|---|
| name | string | Yes | Unique agent identifier (unique per project) |
| role | string | Yes | Agent role (developer, tech-lead, qa-lead, release-manager, ceo, cpo, cto, cmo, pm, po) |
| department | string | No | Organizational department |
| reports_to | string | No | Manager agent name |
| enabled | bool | No | Whether the agent is active (default: true) |
| prompt | string | Yes | System prompt for the agent. Can reference prompt files. |
| subscriptions | []string | No | Fabric event types that trigger this agent |
| schedule | string | No | Cron expression for scheduled runs |
| budget_minutes | int | No | Maximum cumulative run time in minutes |
Environment Variables
Override default behavior with these environment variables:
| Variable | Description |
|---|---|
| TEAM_DASHBOARD_DB_PATH | Override the default SQLite database path (~/.team-dashboard/fleet.db) |
Prompt Management
Prompts can be defined inline in config or as separate files. File-based prompts support YAML-like frontmatter and are managed by the prompt manager.
Org prompts
Stored at ~/.team-dashboard/prompts/
Shared across all repos. Used by org-level agents.
Project prompts
Stored at .fleet/prompts/
Repo-scoped overlays. Override org prompts for specific projects.