Metadata-Version: 2.4
Name: ralph-workflow
Version: 0.8.7
Summary: Vendor-neutral AI coding workflow orchestration with unattended execution, recovery, and verification.
Project-URL: Homepage, https://ralphworkflow.com
Project-URL: Documentation, https://ralphworkflow.com/docs
Project-URL: Repository, https://codeberg.org/RalphWorkflow/Ralph-Workflow
Project-URL: Issues, https://codeberg.org/RalphWorkflow/Ralph-Workflow/issues/new
Author: Mistlight
License: AGPL-3.0-or-later
License-File: LICENSE
Keywords: agent,ai,multi-agent,orchestration,pipeline
Classifier: Development Status :: 5 - Production/Stable
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: GNU Affero General Public License v3
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Programming Language :: Python :: 3.14
Requires-Python: >=3.12
Requires-Dist: ddgs>=9.14.0
Requires-Dist: gitpython>=3.1
Requires-Dist: httpx>=0.27
Requires-Dist: jinja2>=3.1
Requires-Dist: loguru>=0.7
Requires-Dist: mcp>=1.27.0
Requires-Dist: psutil>=5.9
Requires-Dist: pydantic>=2.7
Requires-Dist: rich-click>=1.8
Requires-Dist: rich>=13.0
Requires-Dist: tqdm>=4.66
Requires-Dist: typer>=0.12
Requires-Dist: watchdog>=4.0
Provides-Extra: bundle
Requires-Dist: pyinstaller>=6.0; extra == 'bundle'
Provides-Extra: dev
Requires-Dist: hatch; extra == 'dev'
Requires-Dist: hypothesis>=6.100; extra == 'dev'
Requires-Dist: mypy; extra == 'dev'
Requires-Dist: pydantic>=2.7; extra == 'dev'
Requires-Dist: pytest-asyncio>=0.23; extra == 'dev'
Requires-Dist: pytest-cov>=4.0; extra == 'dev'
Requires-Dist: pytest-xdist>=3.6; extra == 'dev'
Requires-Dist: pytest>=8.0; extra == 'dev'
Requires-Dist: readability-lxml>=0.8.1; extra == 'dev'
Requires-Dist: ruff; extra == 'dev'
Requires-Dist: selectolax>=0.3.21; extra == 'dev'
Requires-Dist: types-psutil>=5.9; extra == 'dev'
Requires-Dist: vulture>=2.16; extra == 'dev'
Provides-Extra: docs
Requires-Dist: furo>=2024.8.6; extra == 'docs'
Requires-Dist: linkify-it-py>=2; extra == 'docs'
Requires-Dist: myst-parser; extra == 'docs'
Requires-Dist: sphinx-copybutton>=0.5; extra == 'docs'
Requires-Dist: sphinx-design>=0.5; extra == 'docs'
Requires-Dist: sphinx>=7; extra == 'docs'
Provides-Extra: web-search
Requires-Dist: brave-search-python-client>=0.4.27; extra == 'web-search'
Requires-Dist: exa-py>=2.12.0; extra == 'web-search'
Requires-Dist: tavily-python>=0.7.23; extra == 'web-search'
Provides-Extra: web-visit
Requires-Dist: readability-lxml>=0.8.1; extra == 'web-visit'
Requires-Dist: selectolax>=0.3.21; extra == 'web-visit'
Description-Content-Type: text/markdown

# Ralph Workflow (Python)

Ralph Workflow is a **free and open-source** Python 3.12+ CLI for **AI agent orchestration** on your own machine.
It extends the simple Ralph loop into a **composable loop framework** for real software engineering, and the default workflow is already strong enough to start with before you customize anything.

This README is the **install + operator entrypoint**. It intentionally leaves out deeper material so the first screen stays onboarding-focused.

## Use this route

1. [START_HERE.md](../START_HERE.md)
2. [docs/README.md](../docs/README.md)
3. [docs/sphinx/index.rst](docs/sphinx/index.rst)

## Install

```bash
pipx install ralph-workflow
ralph --help
```

## Operator docs

- [Getting Started](docs/sphinx/getting-started.md)
- [Quickstart](docs/sphinx/quickstart.md)
- [Configuration](docs/sphinx/configuration.md)
- [Reference](docs/sphinx/reference.md)
- [User stories](docs/sphinx/user-stories.md)

## Deeper material

If you need the fuller manual, configuration detail, or maintainer-facing internals, go to `docs/sphinx/`.
In particular:

- `docs/sphinx/quickstart.md`
- `docs/sphinx/developer-reference.md`
- `docs/sphinx/modules.rst`

## Prompt Helper: interactive PROMPT.md authoring

Ralph Workflow includes an interactive prompt-helper mode for users who know what they want to build but do not want to hand-write a `PROMPT.md` from scratch.

Unlike the normal pipeline workflow, which runs a multi-stage build/verify/review loop, the prompt helper starts as a simple conversational intake: it asks what kind of product, feature, or change you want to build, then guides you through a review loop to refine a structured product-specification artifact. It only writes `PROMPT.md` when you decide to finish.

**Two ways to start the prompt helper:**

```bash
# Via the main ralph command
ralph --prompt-helper

# Via the dedicated ralph-prompt entrypoint (installed automatically with pip)
ralph-prompt
```

Both launch the same interactive experience. The `ralph-prompt` executable is installed automatically when you install `ralph-workflow` via pip.

The prompt helper:
- Begins with conversational intake, not a pipeline
- Organizes your input into a structured product-specification artifact
- Shows you a polished, readable draft and asks for feedback
- Lets you update, replace, continue refining, or finish
- Handles both small feature requests and large PRD-style product definitions
- Writes `PROMPT.md` only when you choose to finalize

To configure a dedicated agent for prompt-helper mode, add a `[prompt_helper]` section to `ralph-workflow.toml` with `agent = "your-agent"`. If omitted, it falls back to the first configured agent or the built-in `opencode` agent if no agents are configured.

## Verification

Use the canonical verification workflow:

```bash
make verify
```
