tracker configuration section defines how Symphony connects to your issue tracking system to poll for work and fetch issue details.
Configuration
WORKFLOW.md
Fields
Issue tracker type. Currently only
linear is supported.Required for dispatch. The orchestrator validates this field before starting the polling loop.Linear project identifier (the project’s
slugId value).Required when kind: linear. Used to filter issues during candidate polling.Example: "symphony-0c79b11b75ea"List of issue states that trigger agent dispatch.Issues in these states are eligible for orchestration. The orchestrator polls for issues matching these states on each tick.Can be specified as:
- YAML array:
["Todo", "In Progress"] - Comma-separated string:
"Todo, In Progress"
List of issue states considered complete.Issues that transition to these states:
- Are stopped if currently running
- Have their workspaces cleaned up on service startup
- Are excluded from retry scheduling
Authentication token for the issue tracker API.Supports environment variable indirection using
$VAR_NAME syntax:$LINEAR_API_KEYreads from theLINEAR_API_KEYenvironment variable- Literal token strings are also accepted (not recommended for production)
kind: linear. If the value resolves to an empty string, it’s treated as missing.The canonical environment variable for Linear is
LINEAR_API_KEY.GraphQL API endpoint for the Linear tracker.Automatically defaults to
https://api.linear.app/graphql when kind: linear.Filter issues by assignee (optional).Supports environment variable indirection using
$VAR_NAME syntax.
Canonical environment variable: LINEAR_ASSIGNEE.Validation
The orchestrator performs preflight validation before dispatch:- Startup validation: Checks configuration before starting the polling loop
- Per-tick validation: Re-validates before each dispatch cycle
- Block new dispatches (reconciliation continues)
- Emit operator-visible errors in logs
- Use the last known good configuration for running sessions
Configuration Reloading
Tracker configuration changes are applied dynamically:- Active/terminal state changes affect future dispatch and reconciliation decisions
- Running sessions continue with their original configuration
- No restart required for configuration updates
Examples
Basic Linear Integration
WORKFLOW.md
Custom State Workflow
WORKFLOW.md
With Assignee Filter
WORKFLOW.md