Skip to content

feat: add ralph-loop plugin and update author info - #2

Merged
baleen37 merged 7 commits into
feat/boilerplate-implementationfrom
wip/update-author-info
Jan 9, 2026
Merged

feat: add ralph-loop plugin and update author info#2
baleen37 merged 7 commits into
feat/boilerplate-implementationfrom
wip/update-author-info

Conversation

@baleen37

@baleen37 baleen37 commented Jan 9, 2026

Copy link
Copy Markdown
Owner

Summary

  • Add ralph-loop plugin from anthropics/claude-plugins-official repository
  • Update author information to jito across plugin configuration
  • Improve validation scripts and documentation

Ralph Loop Plugin

The ralph-loop plugin implements the Ralph Wiggum technique for iterative, self-referential AI development:

  • /ralph-loop command to start iterative development loops with completion promises
  • /cancel-ralph command to cancel active loops
  • Stop hook that blocks session exit and feeds prompts back for continuous iteration
  • Support for max-iterations limit and completion promise detection
  • Comprehensive documentation with examples and best practices

Test plan

  • Plugin validation script passes (structure, JSON, YAML, naming)
  • Command syntax validated (ralph-loop.md, cancel-ralph.md, help.md)
  • Hooks configuration verified (hooks.json, stop-hook.sh)
  • Script functionality tested (setup-ralph-loop.sh with --help, error handling)
  • marketplace.json integration verified (2 plugins registered)
  • All shell scripts have executable permissions (755)

🤖 Generated with Claude Code

Co-Authored-By: Claude noreply@anthropic.com

Summary by CodeRabbit

Release Notes

  • New Features

    • Introduced Ralph Loop plugin—enables continuous self-referential AI iterations for interactive iterative development.
    • Added plugin structure validation for component verification.
  • Documentation

    • Updated project metadata and repository information.
    • Added comprehensive Ralph Loop usage guides, command documentation, and workflow best practices.
  • Chores

    • Updated test helper configuration.

✏️ Tip: You can customize this high-level summary in your review settings.

Jiho and others added 7 commits January 9, 2026 21:01
Update marketplace.json, example-plugin plugin.json, and README.md with jito's author information.

Co-Authored-By: Claude <noreply@anthropic.com>
Add the ralph-loop plugin from the official claude-plugins repository.
This plugin implements the Ralph Wiggum technique for iterative,
self-referential AI development loops.

Features:
- /ralph-loop command to start iterative development loops
- /cancel-ralph command to cancel active loops
- Stop hook that blocks session exit and feeds prompts back
- Support for completion promises and max iterations
- Comprehensive documentation and examples

Files:
- 8 plugin files copied from anthropics/claude-plugins-official
- Executable permissions set on shell scripts
- marketplace.json updated with plugin entry

Co-Authored-By: Claude <noreply@anthropic.com>
@coderabbitai

coderabbitai Bot commented Jan 9, 2026

Copy link
Copy Markdown

Caution

Review failed

The pull request is closed.

📝 Walkthrough

Walkthrough

The PR adds the "ralph-loop" plugin, enabling iterative self-referential AI loops for interactive development, while updating owner/author metadata from placeholders to production values and enhancing test infrastructure with helper library support.

Changes

Cohort / File(s) Summary
Configuration & Metadata
.claude-plugin/marketplace.json, plugins/example-plugin/.claude-plugin/plugin.json
Updates owner and author details from placeholder values to "jito"/"git@baleen.me"; adds new "ralph-loop" plugin entry with Anthropic as author
Ralph Loop Plugin Manifest
plugins/ralph-loop/.claude-plugin/plugin.json
New plugin manifest for ralph-loop with name, description, author metadata
Ralph Loop Documentation
plugins/ralph-loop/README.md, plugins/ralph-loop/commands/help.md, plugins/ralph-loop/commands/ralph-loop.md, plugins/ralph-loop/commands/cancel-ralph.md
Comprehensive plugin documentation covering workflow, commands, usage patterns, and state management via YAML frontmatter and local state file
Ralph Loop Scripts
plugins/ralph-loop/scripts/setup-ralph-loop.sh, plugins/ralph-loop/hooks/stop-hook.sh
Implementation scripts: setup script initializes loop state with argument validation; stop-hook enforces loop continuation and manages iterative prompt refeeding with completion-promise verification
Ralph Loop Configuration
plugins/ralph-loop/hooks/hooks.json
Hook configuration specifying stop-hook.sh execution trigger
Repository & Documentation
README.md, .github/workflows/test.yml
Updates repository clone URL to "jito" reference; renames test setup step and removes BATS test references; updates project structure documentation
Test Infrastructure
tests/helpers/bats-assert, tests/helpers/bats-support
Removes submodule commit references, transitioning test helper approach

Sequence Diagram(s)

sequenceDiagram
    participant User as User/Claude
    participant Setup as setup-ralph-loop.sh
    participant State as .claude/ralph-loop.local.md
    participant Stop as stop-hook.sh
    participant Transcript as JSONL Transcript

    User->>Setup: Run /ralph-loop with prompt & options
    Setup->>Setup: Parse & validate arguments
    Setup->>State: Create state file (iteration=0)
    Setup->>User: Report loop configuration

    loop Iteration Loop
        User->>User: Execute prompt
        User->>Transcript: Save assistant response
        User->>Stop: Attempt to exit/stop
        
        Stop->>State: Read state file
        Stop->>Transcript: Extract last assistant message
        
        alt Completion Promise Set & Matched
            Stop->>User: Clean exit
            Note over User: Loop terminates
        else Max Iterations Reached
            Stop->>User: Exit loop
            Note over User: Loop terminates
        else Continue Loop
            Stop->>State: Increment iteration counter
            Stop->>State: Extract next prompt
            Stop->>User: Block exit, reissue prompt
            Note over User: Feed prompt back for next iteration
        end
    end
Loading

Estimated Code Review Effort

🎯 3 (Moderate) | ⏱️ ~20 minutes

Poem

🐰✨ A loop that circles back with grace,
Ralph Wiggum's wisdom finds its place!
Iterate, refine, and start anew—
Until the promise rings perfectly true.
Self-referential dreams take flight! 🎢

✨ Finishing touches
  • 📝 Generate docstrings

📜 Recent review details

Configuration used: defaults

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 6e2c75c and 68289bd.

📒 Files selected for processing (14)
  • .claude-plugin/marketplace.json
  • .github/workflows/test.yml
  • README.md
  • plugins/example-plugin/.claude-plugin/plugin.json
  • plugins/ralph-loop/.claude-plugin/plugin.json
  • plugins/ralph-loop/README.md
  • plugins/ralph-loop/commands/cancel-ralph.md
  • plugins/ralph-loop/commands/help.md
  • plugins/ralph-loop/commands/ralph-loop.md
  • plugins/ralph-loop/hooks/hooks.json
  • plugins/ralph-loop/hooks/stop-hook.sh
  • plugins/ralph-loop/scripts/setup-ralph-loop.sh
  • tests/helpers/bats-assert
  • tests/helpers/bats-support

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@baleen37
baleen37 merged commit 0656362 into feat/boilerplate-implementation Jan 9, 2026
1 check was pending
baleen37 added a commit that referenced this pull request Jan 9, 2026
… BATS replacement (#3)

* chore: update author info to jito (#1)

* chore: initial placeholder

* chore: remove temporary file

* fix: enable submodules in CI for BATS helpers

* fix: install BATS helpers in CI, remove submodules

* chore: update author info to jito

Update marketplace.json, example-plugin plugin.json, and README.md with jito's author information.

Co-Authored-By: Claude <noreply@anthropic.com>

---------

Co-authored-by: Jiho <jito.hello@gmail.com>
Co-authored-by: Claude <noreply@anthropic.com>

* feat: add ralph-loop plugin and update author info (#2)

* chore: initial placeholder

* chore: remove temporary file

* fix: enable submodules in CI for BATS helpers

* fix: install BATS helpers in CI, remove submodules

* chore: update author info to jito

Update marketplace.json, example-plugin plugin.json, and README.md with jito's author information.

Co-Authored-By: Claude <noreply@anthropic.com>

* feat: add ralph-loop plugin

Add the ralph-loop plugin from the official claude-plugins repository.
This plugin implements the Ralph Wiggum technique for iterative,
self-referential AI development loops.

Features:
- /ralph-loop command to start iterative development loops
- /cancel-ralph command to cancel active loops
- Stop hook that blocks session exit and feeds prompts back
- Support for completion promises and max iterations
- Comprehensive documentation and examples

Files:
- 8 plugin files copied from anthropics/claude-plugins-official
- Executable permissions set on shell scripts
- marketplace.json updated with plugin entry

Co-Authored-By: Claude <noreply@anthropic.com>

---------

Co-authored-by: Jiho <jito.hello@gmail.com>
Co-authored-by: Claude <noreply@anthropic.com>

* fix: resolve merge conflict in test workflow - include both BATS and dependencies

* test: add comprehensive test suite and improve CI

Add new test infrastructure and improve CI workflow:

- Add tests/run-tests.sh: Comprehensive test suite with 8 test cases
  - Required directories existence
  - plugin.json validation (JSON, required fields, naming)
  - marketplace.json validation (JSON, required fields)
  - SKILL.md frontmatter validation
  - Command/Agent file frontmatter validation
  - Colored output and test summary

- Add scripts/validate-structure.sh: Plugin structure validation
  - Validates all required directories exist
  - Validates required files exist and have valid JSON

- Update CI workflow:
  - Remove BATS installation (using custom test runner instead)
  - Add new test step to run tests/run-tests.sh
  - Keep validation script step

- Update documentation:
  - README.md: Add test instructions, update project structure
  - docs/TESTING.md: Add "Running Tests" section with example

All tests pass with clear pass/fail reporting.

Co-Authored-By: Claude <noreply@anthropic.com>

* feat: add dotfiles-plugin with commands, skills, agents, and hooks

Migrate all Claude Code configuration from dotfiles repository into
a single plugin. This includes 12 commands, 7 skills, 1 agent, and 1 hook.

Components:
- Commands: clean-worktree, create-command, create-hook, create-skill,
  debug, fix-ci, git-exclude, handoff, make-local-issues, pickup,
  research, sdd
- Skills: ci-troubleshooting, commit-push-pr, nix-direnv-setup,
  setup-precommit-and-ci, using-git-worktrees, web-browser,
  writing-claude-commands
- Agents: code-reviewer
- Hooks: git-command-validator (prevents --no-verify usage)

Co-Authored-By: Claude <noreply@anthropic.com>

* fix: remove BATS and replace with bash test suite

BATS (Bash Automated Testing System) has been completely removed and replaced with a native bash test suite. All validation functionality is preserved.

Changes:
- Replace BATS tests with bash-based test suite in tests/run-tests.sh
- Tests cover: directory structure, JSON validity, required fields, and frontmatter validation
- All 8 tests passing successfully

Co-Authored-By: Claude <noreply@anthropic.com>

---------

Co-authored-by: Jiho <jito.hello@gmail.com>
Co-authored-by: Claude <noreply@anthropic.com>
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.

1 participant