410labs-herd-prs

Audits and maintains a GitHub Projects board by classifying PRs, fixing column placement, and finding untracked PRs.

Updated May 9, 2020
One-click install
npx skills add https://github.com/avdi/purse --skill 410labs-herd-prs-avdi
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: 410labs-herd-prs
Source: https://github.com/avdi/purse/tree/main/home/dot_agents/skills/410labs-herd-prs
Command: npx skills add https://github.com/avdi/purse --skill 410labs-herd-prs-avdi

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes scripts (resource) components.

What problem does it solve? Keeping a GitHub Projects board accurate is tedious: PRs sit in the wrong columns, merge conflicts and CI failures go unnoticed, and open PRs never make it onto the board at all. This Skill automates the upkeep pass over the 410Labs "Avdi's Desk" project so the board reflects reality and review-ready work surfaces immediately. ## Core Features & Use Cases - Board reporting and classification: Fetches every item in a board column via GraphQL, resolves issue-linked PRs, and classifies each PR as fresh, re_review, unaddressed_feedback, ready, ci_failing, conflicting, or draft. - Active column hygiene: Moves items to the correct column, adds missing assignees, comments on real CI failures, and resolves merge conflicts via GitHub's update-branch API or manual worktree merges. - Orphan PR detection: Sweeps the whole 410Labs org for open PRs authored by Avdi that are not tracked on the board, then adds them to the right column. - Use Case: Ask for a herd pass and receive board stats, a list of mutations performed, and a paste-ready "please review" list of PRs genuinely waiting on a reviewer. ## Quick Start Run a herd pass over my 410Labs board and give me the stats, actions taken, and the please-review list.

Frequently Asked Questions about 410labs-herd-prs

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I generate a review-ready PR list from a GitHub Projects board?

Run the herd_prs.rb report script against the Review column to classify each PR by CI state, review decision, and unresolved threads. PRs classified as fresh or re_review with green CI are ordered into a paste-ready please-review list.

How do I find open PRs not tracked on a GitHub Project board?

Search org-wide with gh search prs filtered by author and open state, then check each PR's projectItems and its linked issues' projectItems via gh pr view and gh issue view. Confirmed orphans are added to the board with herd_prs_apply.rb add, never earlier than the Working column.

Why does gh return empty projectItems for a PR that is on a project board?

The GH_TOKEN or GITHUB_TOKEN environment variable overrides gh's stored credential, and injected tokens often lack the read:project scope, so projectItems silently returns empty. Unset both variables and refresh the stored login with the read:project and project scopes.

Can this resolve merge conflicts on pull requests automatically?

It first tries GitHub's update-branch API via the sync-branch subcommand, which merges the base branch server-side when there is no real content conflict. Real conflicts require manual resolution in a git worktree, reading both sides before merging and pushing.

Why does the GitHub commit status endpoint show success when CI actually failed?

The legacy Statuses REST endpoint only sees commit-status contexts like CircleCI and is blind to GitHub Actions check-runs such as rubocop or eslint. Use the GraphQL statusCheckRollup state or gh pr checks, which aggregate both systems into one combined result.