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.