ralph

Runs autonomous iteration loops against a plan file with quality gates and stop conditions.

13|1|Updated Feb 9, 2026
One-click install
npx skills add https://github.com/vedang/dotagents --skill ralph-vedang
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: ralph
Source: https://github.com/vedang/dotagents/tree/main/claude/skills/ralph
Command: npx skills add https://github.com/vedang/dotagents --skill ralph-vedang

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? Long multi-step coding tasks lose focus when handled in one pass: items get skipped, quality checks are forgotten, and failures cause thrashing. This Skill enforces a disciplined loop where each iteration completes exactly one plan item, runs quality gates, and records progress. ## Core Features & Use Cases - Scoped Iterations: Picks the first unchecked item from plan.md and works on only that item per iteration, keeping context small and changes reviewable. - Quality Gates Every Pass: Runs repo-native checks (make format, make check, make test) after each item and commits the iteration via jj. - Explicit Stop Conditions: Halts when the plan is complete, when an item fails twice consecutively, or when a user decision is required. - Use Case: Point it at a failing test suite with the unit-tests mode; it creates a task directory, lists every failure as a checklist item, and fixes one per iteration until the suite is green. ## Quick Start Run /loop /ralph with the path to your plan file or task directory to start unattended iterations, for example by asking the agent to run ralph against .agents/plans/my-task__inprogress.

Frequently Asked Questions about ralph

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

FAQPage Schema
How do I run an autonomous coding loop on a task plan?

Invoke the skill with a plan file or task directory path, optionally under /loop for unattended runs. Each loop firing executes one iteration: pick the first unchecked item, implement it, run quality gates, and commit.

How do I fix a failing test suite one item at a time?

Pass the unit-tests argument to create a task directory whose plan lists every failing or missing-coverage area as a checklist item. The loop then fixes one item per iteration until the suite is green.

What happens when an iteration keeps failing?

If the same item fails in two consecutive iterations, the loop stops instead of thrashing. The blocker is recorded in progress.md so you can intervene and decide how to proceed.

Can I use this with a spec instead of an existing plan?

Yes, the clean-room mode takes a spec, stores it as spec.md in a new task directory, and decomposes it into ordered, independently verifiable plan items. Any other free-text task description is decomposed the same way.

What are the limitations of autonomous iteration loops?

The loop stops when an item requires a decision only the user can make, so ambiguous requirements still need human input. It also depends on repo-native quality gates like make format, check, and test being configured.