Skip to main content

Generic agent loop orchestration system with web dashboard

Project description

RalphX

Generic Agent Loop Orchestration System

RalphX is a domain-agnostic framework for building and running autonomous AI agent loops with a modern web dashboard. Define your agent workflows in YAML, run them with any LLM backend, and monitor everything in real-time.

Features

  • Declarative Loop Definitions - Define agent workflows in YAML, not code
  • Real-time Dashboard - Monitor loop progress, view logs, control execution
  • Multiple LLM Backends - Claude CLI, Anthropic API, OpenAI, Ollama
  • Work Item Management - Track generated/consumed items with categories and phases
  • Production Ready - Error handling, timeouts, graceful shutdown, persistence

Quick Start

# Install
pip install ralphx

# Create a loop configuration
cat > my_loop.yaml << 'EOF'
name: my_research
display_name: "My Research Loop"
type: generator

modes:
  default:
    timeout: 300
    model: sonnet
    tools: [WebSearch]
    prompt_template: prompts/research.md

mode_selection:
  strategy: fixed
  fixed_mode: default

output:
  format: jsonl
  path: data/items.jsonl
  schema:
    required: [id, content, status]

limits:
  max_iterations: 10
  max_consecutive_errors: 3
EOF

# Run the loop
ralphx run my_loop.yaml

# Or start the dashboard
ralphx serve

Architecture

┌─────────────────────────────────────────────┐
│           RalphX Dashboard (React)          │
├─────────────────────────────────────────────┤
│  Loop Control │ Work Items │ Live Logs      │
└─────────────────────────────────────────────┘
                    │ SSE
                    ▼
┌─────────────────────────────────────────────┐
│            RalphX API (FastAPI)             │
├─────────────────────────────────────────────┤
│  /loops  │  /items  │  /stream  │  /config  │
└─────────────────────────────────────────────┘
                    │
                    ▼
┌─────────────────────────────────────────────┐
│          RalphX Core (Python)               │
├─────────────────────────────────────────────┤
│  Loop Executor │ LLM Adapters │ Stores      │
└─────────────────────────────────────────────┘

Documentation

Example Use Cases

PRD Research (Ralph-style)

Generate user stories from design documents and web research.

Code Review Loop

Automatically review code changes for security and style issues.

Documentation Generator

Generate API docs from source code.

Content Pipeline

Research topics and generate content at scale.

Inspired By

RalphX is inspired by the Ralph system used in the HANK RCM project - an autonomous agent that continuously researches and implements features. RalphX generalizes these patterns into a reusable framework.

License

MIT

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

ralphx-0.1.0.tar.gz (153.1 kB view details)

Uploaded Source

Built Distribution

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

ralphx-0.1.0-py3-none-any.whl (182.2 kB view details)

Uploaded Python 3

File details

Details for the file ralphx-0.1.0.tar.gz.

File metadata

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

File hashes

Hashes for ralphx-0.1.0.tar.gz
Algorithm Hash digest
SHA256 f95fdae9fd5dad18eaddba346c464efa83dde12c96edf93c792b503297a9f54f
MD5 4d42165f681f8289cf6645b45d231e25
BLAKE2b-256 22fbe1c4e2e5b4ecf5565d8e4b27241e910c181d0c4efc449deff352125ec4c0

See more details on using hashes here.

Provenance

The following attestation bundles were made for ralphx-0.1.0.tar.gz:

Publisher: publish.yml on jackneil/ralphx

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

File details

Details for the file ralphx-0.1.0-py3-none-any.whl.

File metadata

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

File hashes

Hashes for ralphx-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 35581638ac5c8bff872afe0486e03bb132d8595a01986983878bf5231a5388e8
MD5 b288c1b813ed86dc8b7ea2f9d447fd27
BLAKE2b-256 12b5489bfd1a815baa969b7a5906310d97bfd06cc667aac083553b3049213782

See more details on using hashes here.

Provenance

The following attestation bundles were made for ralphx-0.1.0-py3-none-any.whl:

Publisher: publish.yml on jackneil/ralphx

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