Reporting

Event-driven status updates for your GitHub Project board. Every meaningful repository event triggers an AI-generated summary.

Install in three steps

Add event-driven reporting to your repository in under five minutes. No code changes, no app installations.

1

Install the workflow

Use the gh-aw extension to add the reporting workflow to your repository.

gh aw add-wizard e-straight/heartbeat/reporting
2

Create and set your token

You need a personal access token so the workflow can post to your project board. Click the button below to create one with the correct scopes (project and read:org), copy it, then paste it into the command.

Create token (scopes pre-selected)
# Set the token you just created
gh aw secrets set GH_AW_PROJECT_GITHUB_TOKEN --value "ghp_your_token_here"
3

Select your project

Pick the GitHub project board you want the heartbeat posted to.

# Select your target project
data=$(gh api graphql \
  -f query='{ viewer { projectsV2(first: 20) { nodes { title number url } } } }' \
  --jq '.data.viewer.projectsV2.nodes[] | "\(.title)\t\(.url)"')
IFS=$'\n'
select label in $(echo "$data" | cut -f1); do
  url=$(echo "$data" | sed -n "${REPLY}p" | cut -f2)
  repo=$(gh repo view --json nameWithOwner -q .nameWithOwner)
  gh variable set GH_AW_TARGET_PROJECT -b "$url" -R "$repo"
  break
done

Every event that matters, captured

Each repository event triggers a concise, AI-generated status update posted directly to your GitHub Project board.

PR Merged

When a pull request merges, the workflow summarizes the change, author, reviewers, and target branch into a concise project update.

PR Closed

Pull requests closed without merge are noted with the author and reason for closing, clearly distinguished from merged PRs.

PR Opened

New pull requests trigger a status update with author, branch info, and a summary of the change from the PR body.

Ready for Review

When a draft PR transitions to ready for review, the workflow captures the status change with author context.

Review Requested

Tracks when a review is requested, noting who requested it and who was asked to review.

Review Submitted

Review submissions are posted as status updates capturing approvals, change requests, and review feedback.

Inline Comment

Line-level code review comments are captured with file path, line number, and a summary of the feedback.

Issue Closed

Closed issues trigger a status post with the resolution, who closed it, assignees, and a summary.

Issue Edited

When an issue is edited, the workflow reports what changed — title, body, or labels — with who made the edit.

Comments

New comments on issues and PRs are summarized and posted as status updates with direct links.

Release Published

When a release is published, the workflow posts a summary with the tag, author, and changelog highlights.