Bug fixes from a single Linear board
A workflow that watches one Linear team, filters by label, and auto-spawns agents for bug triage.
This example shows a complete, working workflow configuration. Adapt the team key, labels, and workspace name to your setup.
What it does
- Watches the
ENGteam on Linear - Only acts on issues with the
buglabel - Triggers when an issue enters
Triagestatus - Spawns an agent using a dedicated
bugfix-workspace - Moves the issue to
In Reviewwhen the agent sends[DONE]
Issue tracker
text
Settings -> Workspaces -> bugfix-workspace -> Issue Trackers
Add Linear:
workspace: acme
token: ${LINEAR_API_TOKEN}
webhook secret: ${LINEAR_WEBHOOK_SECRET}Workflow: eng-bugfix
yaml
# .elasticclaw/workflows/eng-bugfix.yaml
schema_version: v1
name: eng-bugfix
trigger:
linear:
event: status_changed
team: ENG
states:
- Triage
labels:
- bug
tags: [bugfix]
color: red
stages:
- id: working
label: Working
entry: true
on_enter:
move_issue: "In Progress"
inject: |
Read CONTEXT.md, reproduce the bug, and open a PR.
- id: pr_opened
label: PR Opened
triggers:
- message_contains: "[DONE]"
on_enter:
move_issue: "In Review"Workspace: bugfix-workspace
A dedicated workspace with extra logging, test tooling, and a conservative model for debugging work.
yaml
# .elasticclaw/workspaces/bugfix-workspace/elasticclaw-config.yaml
name: bugfix-workspace
provider: daytona
llm_key: anthropic-prod
default_model: anthropic/claude-sonnet-4-6
repositories:
- repo: acme/app
permissions: write
tags: [bugfix]
color: redmarkdown
# .elasticclaw/workspaces/bugfix-workspace/AGENTS.md
You are a bug-fix agent. Read CONTEXT.md carefully, reproduce the bug,
write a minimal fix, and open a PR. Send [DONE] <pr-url> when ready.Linear webhook setup
- Go to Linear → Settings → API → Webhooks
- Payload URL:
https://server.example.com/api/workspaces/bugfix-workspace/webhooks/linear - Events: Issues
- Use the signing secret from the workspace issue tracker settings