Integrations
When a flow fails — a checkpoint disagrees, an assertion breaks, an API call returns a 500 — FlowGuard files a ticket on the right board, with the screenshot, the rationale, and a link back to the run. Two ticket providers are supported today: Azure DevOps and GitHub Issues.
Azure DevOps
Configure once per application under Settings → Tickets. FlowGuard creates Bug work items by default and Enhancement work items for AI-suggested improvements (e.g. selector drift fixes).
Required fields
| Field | Value |
|---|---|
| Organization | The dev.azure.com/{org} segment of your URL |
| Project | Name of the Azure DevOps project (case-sensitive) |
| Personal Access Token | PAT with Work Items: Read, write & manage scope |
| Default work item type | Bug (recommended) or User Story / Task |
| Area / Iteration path (optional) | Where new tickets land — defaults to project root |
Creating the PAT
- In Azure DevOps, click your profile → Personal Access Tokens.
- New Token → name it
flowguard-bot. - Scope: choose Custom defined → expand Work Items → check Read, write & manage.
- Set an expiration (max 1 year). FlowGuard will warn 14 days before it expires.
- Copy the token, paste it in FlowGuard's ticket settings, save. The PAT is encrypted at rest and only decrypted at ticket-creation time.
The PAT inherits the permissions of the user who issued it. Use a dedicated service account where possible, not a personal one.
GitHub Issues
FlowGuard creates issues in the repo of your choice. Failed flows are tagged with labels you configure (e.g. flowguard, bug).
Required fields
| Field | Value |
|---|---|
| Owner | GitHub user or organization (the {owner} in github.com/{owner}/{repo}) |
| Repository | Repo name where issues land |
| Personal Access Token | Fine-grained PAT with Issues: Read & write on the target repo |
| Labels (optional) | Comma-separated list applied to every new issue |
Fine-grained PAT scope
Use a fine-grained PAT (recommended) limited to the single repo FlowGuard files into. Required permission:
1Repository access: Only select repositories — pick your one repo23Repository permissions:4 Issues: Read and writeWhat lands in the ticket
Every auto-filed ticket includes:
- Title: [FlowGuard] {flow name} failed at step {n} — {short reason}
- Failing step number, type, and the selector or expectation that broke
- Claude's rationale (for checkpoint failures) or the assertion diff
- Embedded screenshot at the moment of failure
- Network log excerpt for any failed API call
- A deep link back to the full run timeline in the FlowGuard dashboard
FlowGuard de-duplicates: if the same flow fails the same step on a subsequent run, the existing ticket is updated with a new comment and screenshot — no duplicate noise on your board.
Pause ticketing
During noisy work (e.g. a major refactor), toggle the integration off in Settings. Failures still record in the run history — you just don't get tickets for them. Re-enable when the work is stable.