ralph-two-pass-scan

Reduces GitHub API calls by separating lightweight issue list scanning from selective full hydration.

2|Updated Jul 24, 2026
One-click install
npx skills add https://github.com/elbruno/ElBruno.MagenticUI --skill ralph-two-pass-scan-elbruno
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: ralph-two-pass-scan
Source: https://github.com/elbruno/ElBruno.MagenticUI/tree/main/.squad/templates/skills/ralph-two-pass-scan
Command: npx skills add https://github.com/elbruno/ElBruno.MagenticUI --skill ralph-two-pass-scan-elbruno

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? Scanning open GitHub issues one-by-one wastes API calls when every issue is fully hydrated regardless of relevance. This Skill cuts GitHub API usage from N+1 calls to roughly 7 per round (about 72% fewer) by filtering issues with a cheap list query before fetching full details. ## Core Features & Use Cases - Lightweight Pass 1 Scan: Runs gh issue list with only number, title, labels, and assignees to cheaply survey up to 100 open issues. - Rule-Based Skip Filters: Skips issues that are already assigned, blocked, waiting externally, done, postponed, or match noisy title patterns like [chore] or [auto]. - Selective Pass 2 Hydration: Fully fetches body, comments, and state only for surviving issues, targeting hydration of 30% or fewer of the scanned list. - Use Case: An autonomous triage agent polling a busy repository each round can apply this pattern to avoid rate-limit exhaustion while still triaging every actionable issue. ## Quick Start Scan the open issues in this repository using the two-pass pattern and only fully hydrate the issues that pass the skip filters.

Frequently Asked Questions about ralph-two-pass-scan

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

FAQPage Schema
How do I reduce GitHub API calls when scanning issues?

Use a two-pass approach: first run gh issue list with only lightweight fields like number, title, labels, and assignees, then fully hydrate only issues that survive filtering. This cuts calls from N+1 to roughly 7 per round, about a 72% reduction.

How to filter GitHub issues before fetching full details?

Fetch the issue list with minimal JSON fields and apply skip rules: ignore issues with assignees and no needs-review label, issues labeled blocked, waiting-external, done, or postponed, and titles matching noisy patterns like [chore] or [auto].

What gh CLI fields should I use for lightweight issue scanning?

Use gh issue list --state open --json number,title,labels,assignees --limit 100. These four fields are enough to apply ownership, status, and noise filters without paying for full issue hydration.

When should I fully hydrate a GitHub issue during triage?

Hydrate only issues that survive the lightweight filter pass, using gh issue view with body, comments, labels, assignees, and state. As a rule of thumb, hydrate no more than 30% of the scanned list; tighten filters if more survive.

What are the limitations of two-pass issue scanning?

The skip rules depend on consistent label and title conventions, so repositories without status labels may over-hydrate. Filters based only on list metadata can also miss issues whose relevance is only visible in the body or comments.