Summary
The task orchestrator and morning briefing currently support Linear. Many teams use Jira, Asana, GitHub Issues, or other project management tools.
What needs to change
task_orchestrator.py — currently queries Linear GraphQL API. Abstract ticket fetching behind an interface.
morning_briefing.py — get_linear() function fetches assigned tickets. Need get_tickets() that routes to configured provider.
setup_crons.sh — linear-pr-cycle cron is Linear-specific. Should be ticket-cycle with provider-agnostic messaging.
setup.sh — ask "Project management tool? (1) Linear (2) Jira (3) Asana (4) GitHub Issues (5) None"
- For GitHub Issues: reuse
gh CLI (already installed)
- For Jira: REST API with API token
- For Asana: REST API with personal access token
Approach
A tickets.py module with fetch_assigned(), fetch_urgent(), get_ticket_details() functions that delegate to the configured provider.
Summary
The task orchestrator and morning briefing currently support Linear. Many teams use Jira, Asana, GitHub Issues, or other project management tools.
What needs to change
task_orchestrator.py— currently queries Linear GraphQL API. Abstract ticket fetching behind an interface.morning_briefing.py—get_linear()function fetches assigned tickets. Needget_tickets()that routes to configured provider.setup_crons.sh—linear-pr-cyclecron is Linear-specific. Should beticket-cyclewith provider-agnostic messaging.setup.sh— ask "Project management tool? (1) Linear (2) Jira (3) Asana (4) GitHub Issues (5) None"ghCLI (already installed)Approach
A
tickets.pymodule withfetch_assigned(),fetch_urgent(),get_ticket_details()functions that delegate to the configured provider.