Event-driven status updates for your GitHub Project board. Every meaningful repository event triggers an AI-generated summary.
Get started
Add event-driven reporting to your repository in under five minutes. No code changes, no app installations.
Use the gh-aw extension to add the reporting workflow to your repository.
gh aw add-wizard e-straight/heartbeat/reporting
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"
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
Tracked events
Each repository event triggers a concise, AI-generated status update posted directly to your GitHub Project board.
When a pull request merges, the workflow summarizes the change, author, reviewers, and target branch into a concise project update.
Pull requests closed without merge are noted with the author and reason for closing, clearly distinguished from merged PRs.
New pull requests trigger a status update with author, branch info, and a summary of the change from the PR body.
When a draft PR transitions to ready for review, the workflow captures the status change with author context.
Tracks when a review is requested, noting who requested it and who was asked to review.
Review submissions are posted as status updates capturing approvals, change requests, and review feedback.
Line-level code review comments are captured with file path, line number, and a summary of the feedback.
Closed issues trigger a status post with the resolution, who closed it, assignees, and a summary.
When an issue is edited, the workflow reports what changed — title, body, or labels — with who made the edit.
New comments on issues and PRs are summarized and posted as status updates with direct links.
When a release is published, the workflow posts a summary with the tag, author, and changelog highlights.