Skip to main content

An opinionated orchestrator for Ralph Wiggum loops

Project description

oh-my-ralph: Ralph Wiggum Loop Orchestrator

PyPI Downloads Python License

      ⠀⠀⠀⠀⠀⠀⣀⣤⣶⡶⢛⠟⡿⠻⢻⢿⢶⢦⣄⡀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
⠀⠀⠀⢀⣠⡾⡫⢊⠌⡐⢡⠊⢰⠁⡎⠘⡄⢢⠙⡛⡷⢤⡀⠀⠀⠀⠀⠀⠀⠀
⠀⠀⢠⢪⢋⡞⢠⠃⡜⠀⠎⠀⠉⠀⠃⠀⠃⠀⠃⠙⠘⠊⢻⠦⠀⠀⠀⠀⠀⠀
⠀⠀⢇⡇⡜⠀⠜⠀⠁⠀⢀⠔⠉⠉⠑⠄⠀⠀⡰⠊⠉⠑⡄⡇⠀⠀⠀⠀⠀⠀
⠀⠀⡸⠧⠄⠀⠀⠀⠀⠀⠘⡀⠾⠀⠀⣸⠀⠀⢧⠀⠛⠀⠌⡇⠀⠀⠀⠀⠀⠀
⠀⠘⡇⠀⠀⠀⠀⠀⠀⠀⠀⠙⠒⠒⠚⠁⠈⠉⠲⡍⠒⠈⠀⡇⠀⠀⠀⠀⠀⠀
⠀⠀⠈⠲⣆⠀⠀⠀⠀⠀⠀⠀⠀⣠⠖⠉⡹⠤⠶⠁⠀⠀⠀⠈⢦⠀⠀⠀⠀⠀
⠀⠀⠀⠀⠈⣦⡀⠀⠀⠀⠀⠧⣴⠁⠀⠘⠓⢲⣄⣀⣀⣀⡤⠔⠃⠀⠀⠀⠀⠀
⠀⠀⠀⠀⣜⠀⠈⠓⠦⢄⣀⣀⣸⠀⠀⠀⠀⠁⢈⢇⣼⡁⠀⠀⠀⠀⠀⠀⠀⠀
⠀⠀⢠⠒⠛⠲⣄⠀⠀⠀⣠⠏⠀⠉⠲⣤⠀⢸⠋⢻⣤⡛⣄⠀⠀⠀⠀⠀⠀⠀
⠀⠀⢡⠀⠀⠀⠀⠉⢲⠾⠁⠀⠀⠀⠀⠈⢳⡾⣤⠟⠁⠹⣿⢆⠀⠀⠀⠀⠀⠀
⠀⢀⠼⣆⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣼⠃⠀⠀⠀⠀⠀⠈⣧⠀⠀⠀⠀⠀
⠀⡏⠀⠘⢦⡀⠀⠀⠀⠀⠀⠀⠀⠀⣠⠞⠁⠀⠀⠀⠀⠀⠀⠀⢸⣧⠀⠀⠀⠀
⢰⣄⠀⠀⠀⠉⠳⠦⣤⣤⡤⠴⠖⠋⠁⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢯⣆⠀⠀⠀
⢸⣉⠉⠓⠲⢦⣤⣄⣀⣀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⣀⣀⣀⣠⣼⢹⡄⠀⠀
⠘⡍⠙⠒⠶⢤⣄⣈⣉⡉⠉⠙⠛⠛⠛⠛⠛⠛⢻⠉⠉⠉⢙⣏⣁⣸⠇⡇⠀⠀
⠀⢣⠀⠀⠀⠀⠀⠀⠉⠉⠉⠙⠛⠛⠛⠛⠛⠛⠛⠒⠒⠒⠋⠉⠀⠸⠚⢇⠀⠀
⠀⠀⢧⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢠⠇⢤⣨⠇⠀
⠀⠀⠀⢧⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣤⢻⡀⣸⠀⠀⠀
⠀⠀⠀⢸⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢹⠛⠉⠁⠀⠀⠀
⠀⠀⠀⢸⠀⠀⠀⠀⠀⠀⠀⠀⢠⢄⣀⣤⠤⠴⠒⠀⠀⠀⠀⢸⠀⠀⠀⠀⠀⠀
⠀⠀⠀⢸⠀⠀⠀⠀⠀⠀⠀⠀⡇⠀⠀⢸⠀⠀⠀⠀⠀⠀⠀⠘⡆⠀⠀⠀⠀⠀
⠀⠀⠀⡎⠀⠀⠀⠀⠀⠀⠀⠀⢷⠀⠀⢸⠀⠀⠀⠀⠀⠀⠀⠀⡇⠀⠀⠀⠀⠀
⠀⠀⢀⡷⢤⣤⣀⣀⣀⣀⣠⠤⠾⣤⣀⡘⠛⠶⠶⠶⠶⠖⠒⠋⠙⠓⠲⢤⣀⠀
⠀⠀⠘⠧⣀⡀⠈⠉⠉⠁⠀⠀⠀⠀⠈⠙⠳⣤⣄⣀⣀⣀⠀⠀⠀⠀⠀⢀⣈⡇
⠀⠀⠀⠀⠀⠉⠛⠲⠤⠤⢤⣤⣄⣀⣀⣀⣀⡸⠇⠀⠀⠀⠉⠉⠉⠉⠉⠉⠁⠀
  Credit: https://emojicombos.com/ralph-wiggum-ascii-art
  

Ralph Wiggum Orchestrator

This is a simple orchestrator for Ralph Wiggum loop invented by Geoffrey Huntley.

Supports

  1. Claude Code
  2. Github Copilot
  3. Opencode
  4. Amp
  5. Any other tool that you can call from CLI (Experimental)

Requirements

Python 3.10+

How to run?

  1. Install the package
    pip install oh-my-ralph
    
  2. Place a requirements.md file with your detailed requirements in your working directory (where you want the software to be built)
  3. Choose an AI agent and run the Ralph Loop with the appropriate command below.

Using with Claude Code

Claude Code offers Anthropic's Claude models with advanced coding capabilities.

Prerequisites:

oh-my-ralph --agent "claude -p" --model sonnet --working-dir /path/to/dir/with/requirements

Note: The --dangerously-skip-permissions flag is automatically added to enable all permissions for seamless operation.

Using with AMP (Sourcegraph)

AMP provides powerful AI assistance with multi-model support and advanced coding capabilities.

Prerequisites:

  • Install AMP: npm install -g @sourcegraph/amp@latest or use npx --yes @sourcegraph/amp
oh-my-ralph --agent "npx --yes @sourcegraph/amp" --model smart --working-dir /path/to/dir/with/requirements

Note: The --dangerously-allow-all flag is automatically added to enable all permissions for seamless operation.

Features:

  • Multi-model support (Claude Opus 4.6, GPT-5.2, fast models)
  • Advanced coding capabilities with subagents and oracle mode
  • Seamless integration with development workflows
  • Automatic permission handling with --dangerously-allow-all flag for uninterrupted operation

Using with OpenCode

OpenCode is the default agent and provides a web interface for monitoring progress.

oh-my-ralph --agent "opencode run" --model opencode/glm-4.7-free --start-opencode-web-at-port 8089 --working-dir /path/to/dir/with/requirements

Features:

  • Web dashboard at http://localhost:8089
  • Supports various OpenCode models
  • Real-time progress monitoring
  • Automated permission handling for seamless operation

Using with GitHub Copilot CLI

GitHub Copilot CLI provides powerful AI assistance with access to GitHub's Copilot models.

Prerequisites:

oh-my-ralph --agent "copilot -p" --model gpt-4 --working-dir /path/to/dir/with/requirements

Note: The --yolo flag is automatically added to enable all permissions for seamless operation.

Features:

  • Access to GPT-4 and other Copilot models
  • Non-interactive execution per iteration
  • Seamless integration with GitHub ecosystem
  • Automatic permission skipping with --yolo flag for uninterrupted automation
  • Runs your specified agent command in a loop.
  • The loop exits when any of the following occur:
    • The command prints <PROMPT>DONE</PROMPT>.
    • The maximum number of iterations is reached, configurable via --max-iterations.
    • Error occurs for 5 consecutive runs of the loop.
    • You manually stop the process by pressing Ctrl+C.

Development

Running Tests

Tests are automatically run during the build process. To run tests manually:

If you have pytest installed

pytest

If you don't have pytest installed

python test_ralph.py -v
python test_cli_model_required.py -v

All tests must pass before building.

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

oh_my_ralph-0.5.0.tar.gz (15.1 kB view details)

Uploaded Source

Built Distribution

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

oh_my_ralph-0.5.0-py3-none-any.whl (14.2 kB view details)

Uploaded Python 3

File details

Details for the file oh_my_ralph-0.5.0.tar.gz.

File metadata

  • Download URL: oh_my_ralph-0.5.0.tar.gz
  • Upload date:
  • Size: 15.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for oh_my_ralph-0.5.0.tar.gz
Algorithm Hash digest
SHA256 0b478f13ad1db82115bab2de1da1ce65f33dcda05fa81385535dd0b408184ecc
MD5 a315b1cb178c423309aea9917df89762
BLAKE2b-256 97a55911f9bcc2d33485f5d5363bd01425e6546ad7f1170f708c972adce8def6

See more details on using hashes here.

Provenance

The following attestation bundles were made for oh_my_ralph-0.5.0.tar.gz:

Publisher: publish-to-pypi.yml on vivganes/oh-my-ralph

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file oh_my_ralph-0.5.0-py3-none-any.whl.

File metadata

  • Download URL: oh_my_ralph-0.5.0-py3-none-any.whl
  • Upload date:
  • Size: 14.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for oh_my_ralph-0.5.0-py3-none-any.whl
Algorithm Hash digest
SHA256 cc846db701578617d41db8ab40c4f220882940863aee89b1ff2f1795bacb2c1b
MD5 abfc383ca178375e0ccd2a8de054d34a
BLAKE2b-256 69a49bec18cab44dbc909070c12201df37fc15eec2865fc933c481e2bb3aa1a8

See more details on using hashes here.

Provenance

The following attestation bundles were made for oh_my_ralph-0.5.0-py3-none-any.whl:

Publisher: publish-to-pypi.yml on vivganes/oh-my-ralph

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

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