npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

ralph-starter

v0.1.1-beta.6

Published

Ralph Wiggum made easy. One command to run autonomous AI coding loops with auto-commit, PRs, and Docker sandbox.

Readme


Why ralph-starter?

Most AI coding tools work in isolation. You describe a task, AI builds it, done.

ralph-starter is different. It connects to your existing workflow — pulling specs from GitHub issues, Linear tickets, Notion docs, or any URL — then runs autonomous AI loops until the task is complete.

# Build from a GitHub issue
ralph-starter run --from github --project myorg/myrepo --label "ready"

# Build from a Linear ticket
ralph-starter run --from linear --project "Mobile App" --label "sprint-1"

# Build from a Notion spec
ralph-starter run --from notion --project "https://notion.so/Product-Spec-abc123"

# Or just describe what you want
ralph-starter run "build a todo app with React" --commit

Integrations

ralph-starter integrates with your favorite tools out of the box:

| Integration | Auth Method | What It Fetches | |-------------|-------------|-----------------| | GitHub | gh CLI (recommended) or API token | Issues, PRs, files | | Linear | linear CLI or API key | Issues by team/project | | Notion | None (public) or API token (private) | Pages, databases | | URLs | None | Any public markdown/HTML | | Files | None | Local markdown, PDF |

# Check available integrations
ralph-starter integrations list

# Test connectivity
ralph-starter integrations test github
ralph-starter integrations test linear

# Preview data before running
ralph-starter integrations fetch github owner/repo

Want more integrations? Check the Roadmap for upcoming integrations like Figma, Jira, GitLab, and more. PRs welcome!


Table of Contents


Summary

ralph-starter is a production-ready CLI for running autonomous AI coding loops using the Ralph Wiggum technique. It makes autonomous coding accessible to everyone.

Key Features

| Feature | Description | |---------|-------------| | 🔗 Integrations | Pull specs from GitHub, Linear, Notion, URLs, files | | 🔄 Multi-Agent Support | Works with Claude Code, Cursor, Codex, OpenCode | | 🧙 Interactive Wizard | Guided project creation with AI-refined specifications | | 🎯 16+ Workflow Presets | Pre-configured modes: feature, tdd, debug, review, and more | | 🔌 Circuit Breaker | Auto-stops stuck loops after repeated failures | | 💰 Cost Tracking | Estimates token usage and cost per iteration | | 🔧 Git Automation | Auto-commit, push, and PR creation | | ✅ Backpressure Validation | Run tests/lint/build after each iteration | | 🖥️ MCP Server | Use from Claude Desktop or any MCP client |

Quick Example

# Simple task
ralph-starter run "build a todo app" --commit --validate

# With preset
ralph-starter run --preset tdd-red-green "add user authentication"

# With safety controls
ralph-starter run --rate-limit 50 --circuit-breaker-failures 3 "build X"

# Interactive wizard
ralph-starter

What is Ralph Wiggum?

Ralph Wiggum is a technique for running AI coding agents in autonomous loops until tasks are completed. Instead of prompting back and forth, you give the AI a task and let it iterate until done.

ralph-starter makes this dead simple - for developers and non-developers alike.

Installation

npm install -g ralph-starter
# or
npx ralph-starter

Quick Start

For Everyone (Non-Developers Welcome!)

Just run ralph-starter with no arguments to launch the interactive wizard:

ralph-starter

The wizard will:

  1. Ask if you have a project idea (or help you brainstorm one)
  2. Refine your idea with AI
  3. Let you customize the tech stack
  4. Build your project automatically

Don't Know What to Build?

ralph-starter ideas

This launches Idea Mode - a brainstorming session to help you discover project ideas:

  • Brainstorm with AI - Get creative suggestions
  • See trending ideas - Based on 2025-2026 tech trends
  • Based on my skills - Personalized to technologies you know
  • Solve a problem - Help fix something that frustrates you

For Developers

# Run a single task
ralph-starter run "build a todo app with React"

# With git automation
ralph-starter run "add user authentication" --commit --pr

# With validation (backpressure)
ralph-starter run "refactor auth" --commit --validate

# Fetch specs from external sources
ralph-starter run --from https://example.com/spec.md
ralph-starter run --from github --project myorg/myrepo --label "ready"
ralph-starter run --from linear --project "Mobile App"

# Fetch a specific GitHub issue
ralph-starter run --from github --project owner/repo --issue 123

# Specify output directory (skips "where to run?" prompt)
ralph-starter run --from github --project owner/repo --issue 42 --output-dir ~/projects/new-app

Working with Existing Projects

ralph-starter automatically detects existing projects when you run the wizard:

Ralph Playbook Project (has AGENTS.md, IMPLEMENTATION_PLAN.md, etc.):

cd my-ralph-project
ralph-starter

The wizard will detect the Ralph Playbook files and let you:

  • Continue working (run the build loop)
  • Regenerate the implementation plan
  • Add new specs

Language Project (has package.json, pyproject.toml, Cargo.toml, go.mod):

cd my-existing-app
ralph-starter

The wizard will detect the project type and let you:

  • Add features to the existing project
  • Create a new project in a subfolder

This makes ralph-starter compatible with other Ralph Wiggum tools like ralph-cli, ralph-tui, oh-my-claudecode, and more.

Features

Interactive Wizard

Launch with ralph-starter (no args) for a guided experience:

  • Describe your idea in plain English
  • AI refines and suggests features
  • Choose your tech stack
  • Auto-runs init → plan → build

Idea Mode

For users who don't know what to build yet:

ralph-starter ideas

Integrations & Input Sources

ralph-starter's superpower is pulling specs from anywhere — then building autonomously.

# From GitHub issues
ralph-starter run --from github --project owner/repo --label "ready"

# From Linear tickets
ralph-starter run --from linear --project "Mobile App"

# From Notion pages (public pages work without auth!)
ralph-starter run --from notion --project "https://notion.so/My-Spec-abc123"

# From URLs
ralph-starter run --from https://example.com/spec.md

# From local files
ralph-starter run --from ./specs/feature.md

Quick Setup

| Integration | Setup Command | Notes | |-------------|---------------|-------| | GitHub | gh auth login | Uses GitHub CLI (no API key needed) | | Linear | linear auth login or ralph-starter config set linear.apiKey <key> | CLI or API key | | Notion | None for public pages | Private pages need token |

Managing Integrations

# List all integrations with status
ralph-starter integrations list

# Test connectivity
ralph-starter integrations test github
ralph-starter integrations test linear

# Get help for specific integration
ralph-starter integrations help notion

# Preview data before running
ralph-starter integrations fetch github owner/repo --limit 5

See the full Integrations Guide for detailed setup instructions.

MCP Server

Use ralph-starter from Claude Desktop or any MCP client:

ralph-starter mcp

Add to Claude Desktop config:

{
  "mcpServers": {
    "ralph-starter": {
      "command": "ralph-starter",
      "args": ["mcp"]
    }
  }
}

Available MCP Tools:

  • ralph_init - Initialize Ralph Playbook
  • ralph_plan - Create implementation plan
  • ralph_run - Execute coding loop
  • ralph_status - Check progress
  • ralph_validate - Run tests/lint/build

Multi-Agent Support

Works with your favorite coding agents:

  • Claude Code (recommended)
  • Cursor
  • Codex
  • OpenCode

Git Automation

ralph-starter run "your task" --commit      # Auto-commit after tasks
ralph-starter run "your task" --push        # Push to remote
ralph-starter run "your task" --pr          # Create PR when done

Backpressure Validation

ralph-starter run "your task" --validate    # Run tests/lint/build after each iteration

The --validate flag runs test, lint, and build commands (from AGENTS.md or package.json) after each iteration. If validation fails, the agent gets feedback to fix the issues.

Workflow Presets

Pre-configured settings for common development scenarios:

# List all 16+ presets
ralph-starter presets

# Use a preset
ralph-starter run --preset feature "build login"
ralph-starter run --preset tdd-red-green "add tests"
ralph-starter run --preset debug "fix the bug"
ralph-starter run --preset refactor "clean up auth module"
ralph-starter run --preset pr-review "review changes"

Available Presets: | Category | Presets | |----------|---------| | Development | feature, feature-minimal, tdd-red-green, spec-driven, refactor | | Debugging | debug, incident-response, code-archaeology | | Review | review, pr-review, adversarial-review | | Documentation | docs, documentation-first | | Specialized | api-design, migration-safety, performance-optimization, scientific-method, research, gap-analysis |

Circuit Breaker

Automatically stops loops that are stuck:

# Stop after 3 consecutive failures (default)
ralph-starter run "build X" --validate

# Custom thresholds
ralph-starter run "build X" --circuit-breaker-failures 2 --circuit-breaker-errors 3

The circuit breaker monitors:

  • Consecutive failures: Stops after N validation failures in a row
  • Same error count: Stops if the same error repeats N times

Progress Tracking

Writes iteration logs to activity.md:

# Enabled by default
ralph-starter run "build X"

# Disable if not needed
ralph-starter run "build X" --no-track-progress

Each iteration records:

  • Timestamp and duration
  • Status (completed, failed, blocked)
  • Validation results
  • Commit info

File-Based Completion

The loop automatically checks for completion signals:

  • RALPH_COMPLETE file in project root
  • .ralph-done marker file
  • All tasks marked [x] in IMPLEMENTATION_PLAN.md

Rate Limiting

Control API call frequency to manage costs:

# Limit to 50 calls per hour
ralph-starter run --rate-limit 50 "build X"

Cost Tracking

Track estimated token usage and costs during loops:

# Cost tracking is enabled by default
ralph-starter run "build X"

# Disable cost tracking
ralph-starter run "build X" --no-track-cost

Cost tracking provides:

  • Per-iteration cost displayed during the loop
  • Running total of tokens and cost
  • Cost summary at the end of the loop
  • Cost logged in activity.md for each iteration
  • Projected cost for remaining iterations (after 3+ iterations)

Supported models for cost estimation:

  • Claude 3 Opus ($15/$75 per 1M tokens)
  • Claude 3.5 Sonnet ($3/$15 per 1M tokens)
  • Claude 3.5 Haiku ($0.25/$1.25 per 1M tokens)
  • GPT-4 ($30/$60 per 1M tokens)
  • GPT-4 Turbo ($10/$30 per 1M tokens)

Ralph Playbook Workflow

ralph-starter follows the Ralph Playbook methodology:

# 1. Initialize Ralph Playbook files
ralph-starter init

# 2. Write specs in specs/ folder

# 3. Create implementation plan
ralph-starter plan

# 4. Execute the plan
ralph-starter run --commit --validate

This creates:

  • AGENTS.md - Agent instructions and validation commands
  • PROMPT_plan.md - Planning prompt template
  • PROMPT_build.md - Building prompt template
  • IMPLEMENTATION_PLAN.md - Prioritized task list
  • specs/ - Specification files

Commands

| Command | Description | |---------|-------------| | ralph-starter | Launch interactive wizard | | ralph-starter run [task] | Run an autonomous coding loop | | ralph-starter integrations <action> | Manage integrations (list, help, test, fetch) | | ralph-starter plan | Create implementation plan from specs | | ralph-starter init | Initialize Ralph Playbook in a project | | ralph-starter ideas | Brainstorm project ideas | | ralph-starter presets | List available workflow presets | | ralph-starter mcp | Start as MCP server | | ralph-starter config <action> | Manage credentials | | ralph-starter source <action> | Manage input sources (legacy) | | ralph-starter skill add <repo> | Install agent skills |

Options for run

Core Options

| Flag | Description | |------|-------------| | --auto | Skip permission prompts (default: true) | | --no-auto | Require manual permission approval | | --commit | Auto-commit after tasks | | --push | Push commits to remote | | --pr | Create pull request | | --validate | Run tests/lint/build (backpressure) | | --agent <name> | Specify agent to use | | --max-iterations <n> | Max loop iterations (default: 50) |

Debug Mode

Use RALPH_DEBUG=1 to see detailed output during execution:

# See detailed agent output, timing, and prompts
RALPH_DEBUG=1 ralph-starter run "build a todo app"

# Debug with GitHub issue
RALPH_DEBUG=1 ralph-starter run --from github --issue 42

Debug mode shows:

  • Exact commands being run
  • Agent output in real-time
  • Timing information
  • Error details

Workflow Presets

| Flag | Description | |------|-------------| | --preset <name> | Use a workflow preset (feature, tdd-red-green, debug, etc.) |

# List all available presets
ralph-starter presets

# Use a preset
ralph-starter run --preset feature "build login page"
ralph-starter run --preset tdd-red-green "add user validation"
ralph-starter run --preset debug "fix the auth bug"

Exit Detection

| Flag | Description | |------|-------------| | --completion-promise <string> | Custom string to detect task completion | | --require-exit-signal | Require explicit EXIT_SIGNAL: true for completion |

# Stop when agent outputs "FEATURE_DONE"
ralph-starter run --completion-promise "FEATURE_DONE" "build X"

# Require explicit exit signal
ralph-starter run --require-exit-signal "build Y"

Safety Controls

| Flag | Description | |------|-------------| | --rate-limit <n> | Max API calls per hour (default: unlimited) | | --circuit-breaker-failures <n> | Max consecutive failures before stopping (default: 3) | | --circuit-breaker-errors <n> | Max same error occurrences before stopping (default: 5) | | --track-progress | Write progress to activity.md (default: true) | | --no-track-progress | Disable progress tracking | | --track-cost | Track token usage and estimated cost (default: true) | | --no-track-cost | Disable cost tracking |

# Limit to 50 API calls per hour
ralph-starter run --rate-limit 50 "build X"

# Stop after 2 consecutive failures
ralph-starter run --circuit-breaker-failures 2 "build Y"

Source Options

| Flag | Description | |------|-------------| | --from <source> | Fetch spec from source | | --project <name> | Project filter for sources | | --label <name> | Label filter for sources | | --status <status> | Status filter for sources | | --limit <n> | Max items from source | | --issue <n> | Specific issue number (GitHub) | | --output-dir <path> | Directory to run task in (skips prompt) | | --prd <file> | Read tasks from markdown |

Config Commands

# Set credentials
ralph-starter config set linear.apiKey <key>
ralph-starter config set notion.token <token>
ralph-starter config set github.token <token>

# View config
ralph-starter config list
ralph-starter config get linear.apiKey

# Remove
ralph-starter config delete linear.apiKey

Integration Commands

# List all integrations with auth status
ralph-starter integrations list

# Get help for a specific integration
ralph-starter integrations help github
ralph-starter integrations help linear
ralph-starter integrations help notion

# Test connectivity
ralph-starter integrations test github
ralph-starter integrations test linear

# Fetch and preview data
ralph-starter integrations fetch github owner/repo
ralph-starter integrations fetch linear "Mobile App" --limit 10
ralph-starter integrations fetch notion "https://notion.so/Page-abc123"

Source Commands (Legacy)

# List available sources
ralph-starter source list

# Get help for a source
ralph-starter source help github

# Test source connectivity
ralph-starter source test linear

# Preview items from source
ralph-starter source preview github --project owner/repo

Example: Build a SaaS Dashboard

mkdir my-saas && cd my-saas
git init

ralph-starter run "Create a SaaS dashboard with:
- User authentication (email/password)
- Stripe subscription billing
- Dashboard with usage metrics
- Dark mode support" --commit --pr --validate

# Watch the magic happen...
# 🔄 Loop 1: Setting up Next.js project...
# ✓ Validation passed
# ✓ Committed: chore: initialize Next.js with TypeScript
# 🔄 Loop 2: Adding authentication...
# ✓ Validation passed
# ✓ Committed: feat(auth): add NextAuth with email provider
# ...
# ✓ Created PR #1: "Build SaaS dashboard"

Testing ralph-starter

Quick Test (No API Keys)

You can test ralph-starter with public URLs - no API keys required:

# Test with a public GitHub gist or raw markdown
ralph-starter run --from https://raw.githubusercontent.com/rubenmarcus/ralph-starter/main/README.md

# Test with GitHub issues (requires gh CLI login)
gh auth login
ralph-starter run --from github --project rubenmarcus/ralph-starter --label "enhancement"

Testing the Wizard

# Launch the interactive wizard
ralph-starter

# Or test idea mode
ralph-starter ideas

Testing with Your Own Specs

# Create a simple spec file
echo "Build a simple counter app with React" > my-spec.md

# Run with local file
ralph-starter run --from ./my-spec.md

Verifying Source Connectivity

Before using an integration, verify it's working:

# Check what integrations are available
ralph-starter integrations list

# Test each integration
ralph-starter integrations test github
ralph-starter integrations test linear
ralph-starter integrations test notion

# Preview items (dry run)
ralph-starter integrations fetch linear "My Project" --limit 3

API Key Configuration

Option 1: Environment Variables (Recommended for Developers)

Set environment variables in your shell profile or .env file:

# Add to ~/.bashrc, ~/.zshrc, or .env file
export LINEAR_API_KEY=lin_api_xxxxx
export NOTION_API_KEY=secret_xxxxx
export GITHUB_TOKEN=ghp_xxxxx

Environment variables take precedence over the config file.

Option 2: Config Command

Use the CLI to store credentials:

ralph-starter config set linear.apiKey lin_api_xxxxx
ralph-starter config set notion.token secret_xxxxx
ralph-starter config set github.token ghp_xxxxx

Credentials are stored in ~/.ralph-starter/sources.json.

Environment Variable Reference

| Source | Environment Variable | Config Key | |--------|---------------------|------------| | Linear | LINEAR_API_KEY | linear.apiKey | | Notion | NOTION_API_KEY | notion.token | | GitHub | GITHUB_TOKEN | github.token |

Managing Config

ralph-starter config list           # View all config
ralph-starter config get linear     # View specific source
ralph-starter config delete linear.apiKey  # Remove a key

Requirements

  • Node.js 18+
  • At least one coding agent installed (Claude Code, Cursor, etc.)
  • Git (for automation features)
  • GitHub CLI gh (for PR creation and GitHub source)

Documentation

Full documentation available at: https://ralphstarter.ai

Contributing

Contributions welcome! See CONTRIBUTING.md for guidelines.

For creating custom integrations, agents, or using the programmatic API, see the Developer Extension Guide.

License

MIT