Skip to main content

An opinionated orchestrator for Ralph Wiggum loops

Project description

Ralph Wiggum Orchestrator

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

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. To run ralph using opencode, run the following command:
    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
    

What does this do?

  • 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:

.\run_tests.bat

All tests must pass before building.

Building the Package

To build the package with mandatory tests:

.\build.bat

This will:

  1. Run all tests (build fails if any test fails)
  2. Build the package using Python's build module
  3. Create distribution files in the dist\ directory

The build process ensures code quality by enforcing test success before creating distribution packages.

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.1.6.tar.gz (11.9 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.1.6-py3-none-any.whl (12.1 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: oh_my_ralph-0.1.6.tar.gz
  • Upload date:
  • Size: 11.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.7

File hashes

Hashes for oh_my_ralph-0.1.6.tar.gz
Algorithm Hash digest
SHA256 51021fde307bc83db2bfe1ef48b0d25bbd4181d78ceec34bb8e89f17460e5a37
MD5 b545dcbd9f66c9e09100d241bb8d84ab
BLAKE2b-256 460c912fa08c0cbab7ef105a0a9c1fa29b42ddc3cb239e80a0204ed88a4d7b9b

See more details on using hashes here.

File details

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

File metadata

  • Download URL: oh_my_ralph-0.1.6-py3-none-any.whl
  • Upload date:
  • Size: 12.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.7

File hashes

Hashes for oh_my_ralph-0.1.6-py3-none-any.whl
Algorithm Hash digest
SHA256 4d210fe7a539e8349fde890b6df80bdf0b0792abd09c57c249e8b9bdf4899ddb
MD5 176678e6ace639d6e4560790a3913ba7
BLAKE2b-256 9cf35b0c9c1968551892405add3844ea8d6143182f01e9e7a0e2b0103f742636

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