Skip to content

Conversation

@blooop
Copy link
Owner

@blooop blooop commented Jan 29, 2026

Summary

  • Add ralph-orchestrator as a pixi dependency from the blooop conda channel
  • Add ralph pixi task for convenience (pixi run ralph)
  • Create ralph.yml configuration and PROMPT.md template
  • Add ralph-orchestrator documentation to .claude/README.md

Test plan

  • Verify pixi install succeeds
  • Verify pixi run ralph --version returns version 2.3.1
  • Test pixi run ralph init and pixi run ralph run commands

🤖 Generated with Claude Code

Summary by Sourcery

Add Ralph Orchestrator as a Pixi-managed tool and document how to use it in the project.

New Features:

  • Introduce Ralph Orchestrator as a Pixi dependency for autonomous task orchestration.
  • Add a convenient pixi run ralph task for invoking the Ralph CLI.
  • Include default ralph.yml configuration and PROMPT.md template for Ralph workflows.

Documentation:

  • Expand .claude/README.md with installation, usage, configuration, and reference links for Ralph Orchestrator.

blooop and others added 3 commits January 16, 2026 10:38
Replace previous ralph implementation with ralph-orchestrator from
the blooop conda channel. Adds configuration files and documentation.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
@sourcery-ai
Copy link

sourcery-ai bot commented Jan 29, 2026

Reviewer's Guide

Adds ralph-orchestrator as a Pixi-managed dependency, wires it into the project as a convenient pixi task, and introduces default configuration, prompt templates, and documentation for using Ralph within the Claude/Pixi workflow.

Sequence diagram for running Ralph via Pixi

sequenceDiagram
  actor Dev
  participant Shell
  participant Pixi as Pixi_environment
  participant Ralph as Ralph_orchestrator_CLI
  participant Files as Filesystem

  Dev->>Shell: execute_pixi_run_ralph_plan_"Implement_feature_X"
  Shell->>Pixi: invoke_task_ralph
  Pixi->>Ralph: run_ralph_plan_with_argument_Implement_feature_X
  Ralph->>Files: read_ralph.yml
  Ralph->>Files: read_PROMPT.md_if_needed
  Ralph->>Files: create_or_update_spec_in_specs_directory
  Ralph-->>Pixi: exit_status_and_output
  Pixi-->>Shell: command_result
  Shell-->>Dev: show_plan_output_and_spec_location
Loading

File-Level Changes

Change Details Files
Add ralph-orchestrator as a Pixi dependency and expose it via a pixi task.
  • Declare ralph-orchestrator as a dependency in the Pixi project configuration so it is installed with pixi install.
  • Define a new pixi task named ralph that runs the ralph CLI in the project environment.
  • Update the Pixi lockfile to capture the new dependency resolution.
pyproject.toml
pixi.lock
Document how to use Ralph Orchestrator within the project.
  • Add a new Ralph Orchestrator section describing installation, basic commands, configuration files, and customization options.
  • Link to the upstream ralph-orchestrator repository in the "Learn More" section.
.claude/README.md
Provide default Ralph configuration and prompt template for project-local workflows.
  • Introduce a default Ralph configuration file specifying the Claude backend, event loop settings, and commented-out sections for advanced customization such as scratchpad, specs directory, and hats.
  • Add a PROMPT.md template with sections for project overview, dev commands, quality standards, and current objectives to guide Ralph runs.
ralph.yml
PROMPT.md

Tips and commands

Interacting with Sourcery

  • Trigger a new review: Comment @sourcery-ai review on the pull request.
  • Continue discussions: Reply directly to Sourcery's review comments.
  • Generate a GitHub issue from a review comment: Ask Sourcery to create an
    issue from a review comment by replying to it. You can also reply to a
    review comment with @sourcery-ai issue to create an issue from it.
  • Generate a pull request title: Write @sourcery-ai anywhere in the pull
    request title to generate a title at any time. You can also comment
    @sourcery-ai title on the pull request to (re-)generate the title at any time.
  • Generate a pull request summary: Write @sourcery-ai summary anywhere in
    the pull request body to generate a PR summary at any time exactly where you
    want it. You can also comment @sourcery-ai summary on the pull request to
    (re-)generate the summary at any time.
  • Generate reviewer's guide: Comment @sourcery-ai guide on the pull
    request to (re-)generate the reviewer's guide at any time.
  • Resolve all Sourcery comments: Comment @sourcery-ai resolve on the
    pull request to resolve all Sourcery comments. Useful if you've already
    addressed all the comments and don't want to see them anymore.
  • Dismiss all Sourcery reviews: Comment @sourcery-ai dismiss on the pull
    request to dismiss all existing Sourcery reviews. Especially useful if you
    want to start fresh with a new review - don't forget to comment
    @sourcery-ai review to trigger a new review!

Customizing Your Experience

Access your dashboard to:

  • Enable or disable review features such as the Sourcery-generated pull request
    summary, the reviewer's guide, and others.
  • Change the review language.
  • Add, remove or edit custom review instructions.
  • Adjust other review settings.

Getting Help

Copy link

@sourcery-ai sourcery-ai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hey - I've found 1 issue, and left some high level feedback:

  • In pyproject.toml, consider pinning ralph-orchestrator to a specific version or constrained range instead of * to avoid unexpected breaking changes from future releases.
  • The README describes specs living under specs/ while the commented-out core.specs_dir example in ralph.yml uses .ralph/specs/; it would be good to align these paths or clarify the intended directory structure.
Prompt for AI Agents
Please address the comments from this code review:

## Overall Comments
- In `pyproject.toml`, consider pinning `ralph-orchestrator` to a specific version or constrained range instead of `*` to avoid unexpected breaking changes from future releases.
- The README describes specs living under `specs/` while the commented-out `core.specs_dir` example in `ralph.yml` uses `.ralph/specs/`; it would be good to align these paths or clarify the intended directory structure.

## Individual Comments

### Comment 1
<location> `pyproject.toml:23` </location>
<code_context>
 python = ">=3.10"
 shellcheck = ">=0.10.0,<0.11"
 devpod = ">=0.8.0,<0.9"
+ralph-orchestrator = "*"

 [tool.pixi.feature.py310.dependencies]
</code_context>

<issue_to_address>
**suggestion (bug_risk):** Consider constraining the ralph-orchestrator version instead of using a wildcard.

Using `*` means any future major version could be installed, potentially breaking reproducible environments (CI, dev machines). Prefer a validated compatible range (e.g. `>=x.y,<x+1.0`), especially for tooling that affects workflows.

Suggested implementation:

```
ralph-orchestrator = ">=0.1.0,<1.0.0"

```

You should adjust the specific version range (`>=0.1.0,<1.0.0`) to match the currently validated/known-compatible versions of `ralph-orchestrator` in your project (for example, `>=0.3.2,<0.4.0` if you only support a specific minor line).
</issue_to_address>

Sourcery is free for open source - if you like our reviews please consider sharing them ✨
Help me be more useful! Please click 👍 or 👎 on each comment and I'll use the feedback to improve your reviews.

python = ">=3.10"
shellcheck = ">=0.10.0,<0.11"
devpod = ">=0.8.0,<0.9"
ralph-orchestrator = "*"
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

suggestion (bug_risk): Consider constraining the ralph-orchestrator version instead of using a wildcard.

Using * means any future major version could be installed, potentially breaking reproducible environments (CI, dev machines). Prefer a validated compatible range (e.g. >=x.y,<x+1.0), especially for tooling that affects workflows.

Suggested implementation:

ralph-orchestrator = ">=0.1.0,<1.0.0"

You should adjust the specific version range (>=0.1.0,<1.0.0) to match the currently validated/known-compatible versions of ralph-orchestrator in your project (for example, >=0.3.2,<0.4.0 if you only support a specific minor line).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants