Skip to main content

Ralph Wiggum Loop engine for Claude Code

Project description

Ralpher

A CLI tool that orchestrates Claude Code for autonomous software development. Give it a prompt, and it generates a Project Plan, breaks it into tasks, then runs iterative Claude development loops to implement each one.

Workflow: User PromptProject PlanRalph Wiggum Loop⁠

Install

pipx install ralpher

Usage

# 1. Generate a Project Plan
ralpher plan "Create a TODO app" --name todo-app

# (Optional) Refine the plan
ralpher refine "Use MySQL"

# 2. Run the Ralph-loop on an existing plan
ralpher loop

How it works

  1. Plan generation -- Sends your prompt to Claude to produce a structured Project Plan with tasks, saved to .claude/ralpher/projects/{project_id}/PLAN.md.
  2. Run Ralph-loop
    1. Parses the plan into a structured JSON model (project, tasks with acceptance criteria and priorities).
    2. Iteratively invokes claude to implement each task on a dedicated git branch (ralph/{project_id}), tracking progress and detecting completion.

Notion integration

Ralpher supports optional Notion integration for syncing task status. Set these in a .env file:

  • RALPHER_NOTION_TOKEN -- Notion API token
  • RALPHER_NOTION_PARENT_PAGE_ID -- Parent page for task pages

Development

# Run tests
uv run pytest

TODO

  • Add git worktree support
  • Create PRs automatically
  • Run repeating tasks in a loop (useful for continuous optimization, refactoring, or research)
  • Implement a standalone reviewer agent (or subagent) in both the planning and loop stages
  • Support Gemini-CLI
  • Support Codex CLI

Acknowledgements

This project draws its design and some of its prompts from snarktank/ralph.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

ralpher-0.1.6.tar.gz (59.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

ralpher-0.1.6-py3-none-any.whl (39.4 kB view details)

Uploaded Python 3

File details

Details for the file ralpher-0.1.6.tar.gz.

File metadata

  • Download URL: ralpher-0.1.6.tar.gz
  • Upload date:
  • Size: 59.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.3 {"installer":{"name":"uv","version":"0.11.3","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for ralpher-0.1.6.tar.gz
Algorithm Hash digest
SHA256 3559113db475d2f98851e94e3dec9efc9de63d214c07b260d95fbdfa3207f18c
MD5 4f87726b3f4da0375d83f2ba554f1159
BLAKE2b-256 5a7961163604b4b861be2a8f9f21d5f559954759fbd7f266bc2db67a8123fc63

See more details on using hashes here.

File details

Details for the file ralpher-0.1.6-py3-none-any.whl.

File metadata

  • Download URL: ralpher-0.1.6-py3-none-any.whl
  • Upload date:
  • Size: 39.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.3 {"installer":{"name":"uv","version":"0.11.3","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for ralpher-0.1.6-py3-none-any.whl
Algorithm Hash digest
SHA256 425a3eacfb084744da2ca993de4f5bc467af9ac5f6b585f0c5d0d18484fc68c3
MD5 cca3ce4c12dcb00e395c07c6114a661f
BLAKE2b-256 e811f56fba62f58f59b4116f81f2b9075dbb33f4b544668f1b324f7333360fb7

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page