All guides

Integrations

Get an issue when a workflow fails on your main branch

Glitchgrab opens one GitHub issue when a GitHub Actions workflow fails on a connected repo's default branch, adds later failures to it, and closes it when the workflow passes again

Steps checked October 26, 2026

When a GitHub Actions workflow fails on the default branch of a repo connected to Glitchgrab (a deploy, a release, CI on main), Glitchgrab opens a GitHub issue in that repo. Nobody has to check the Actions tab.

What you get

  • One issue per workflow, titled [Workflow failed] <workflow name>, with the ci-failure label.
  • It is assigned to the repo's default assignees, so they also get the usual "issue assigned" WhatsApp. See Assign new issues automatically.
  • The issue shows:
    • the run link, the commit and who triggered it;
    • the job and step that failed;
    • every error line the workflow printed;
    • the last 40 lines of the failed step's log. Passwords, tokens and keys in the log are masked.
  • It fails again: a Failed again. comment is added to the same issue. This happens at most once every 6 hours, so a workflow failing all day does not bury the issue.
  • It passes again: Glitchgrab comments passed in Run #N and closes the issue.

What does not open an issue

  • Runs from pull requests or other branches (the pull request already shows those).
  • Cancelled or skipped runs.
  • Repos the GitHub App can see but that are not tracked in Glitchgrab.

Turn it on

Nothing to switch on per repo. Every tracked repo with the GitHub App installed is covered, as long as the App's installation has accepted the Actions (read-only) permission and the Workflow run event. When GitHub asks you to review new permissions for the Glitchgrab app, accept them. Until then, no issues are opened.

Make the issue say what to do

GitHub does not let apps read a run's step summary. To put a plain-words instruction in the issue, print it as an error line in your workflow:

- name: Alert
  if: failure()
  run: echo "::error title=What to do::Network error. Re-run the job."

Every ::error:: line from the run appears under Errors in the issue.

Good to know

  • Renaming a workflow starts a new issue. Close the old one by hand.
  • Removing the ci-failure label from an open issue means the next failure opens a new one.
  • Closing the issue by hand while the workflow still fails means the next failure opens a new one.
Still stuck? Press ⌘⇧G on any Glitchgrab page to tell us — or see the SDK docs.