ralph

Fetch and execute one GitHub kind:task via test-driven development.

Updated Aug 23, 2026
One-click install
npx skills add https://github.com/thesobercoder/skills --skill ralph-thesobercoder
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: ralph
Source: https://github.com/thesobercoder/skills/tree/main/ralph
Command: npx skills add https://github.com/thesobercoder/skills --skill ralph-thesobercoder

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Work one GitHub backlog task deterministically by selecting a single kind:task under native PRD/epic/task hierarchy, implementing the smallest useful change, and stopping for human review.

Core Features & Use Cases

  • Deterministic task selection using native GitHub hierarchy (PRD -> epic -> task) and blocker-awareness to ensure only ready work is picked.
  • Slice-by-slice execution: reduce work to the smallest releasable unit, with one complete pass per invocation.
  • Tight integration with the repository's feedback loops: run tests, update issues, commit with RALPH: prefix, and stop after one task.

Quick Start

Run Ralph to work one task from the backlog, implementing the smallest usable slice via test-driven development, then stop for review.

Frequently Asked Questions about ralph

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

FAQPage Schema
How do I automate a single GitHub backlog task using test-driven development?

This Skill fetches one ready kind:task from the PRD/epic/task hierarchy, implements the smallest verifiable slice via TDD, pushes a RALPH: prefixed commit, and stops for review.

How does backlog issue management handle PRD, epic, and task hierarchies?

It uses the native GitHub PRD/epic/task graph to deterministically select the smallest available work slice. It respects blockers to ensure only ready tasks are picked for implementation.

Do I need authenticated gh access to manage and update GitHub issues?

Yes, authenticated gh access is required to view and modify issues. The Skill updates issue states and checks off acceptance criteria within the native GitHub hierarchy during task execution.

What is the best way to ensure only one backlog task is executed at a time?

Slice-by-slice execution completes one full pass per invocation. It selects a single kind:task, implements the change, updates the issue, and stops for human review.

Can I use test-driven development for backlog tasks with existing blockers?

Yes, TDD is used for implementation, but the Skill respects existing blockers within the GitHub hierarchy. It only picks tasks that are ready, ensuring blocked work is skipped until resolved.

Why does the automated issue management process stop after one task?

The process stops after one task to enforce slice-by-slice execution and human review. This deterministic approach ensures only the smallest releasable unit is implemented per invocation.