{
  "schemaVersion": "1.0",
  "item": {
    "slug": "monitored-ralph-loop",
    "name": "Monitored Ralph Loop",
    "source": "tencent",
    "type": "skill",
    "category": "开发工具",
    "sourceUrl": "https://clawhub.ai/Endogen/monitored-ralph-loop",
    "canonicalUrl": "https://clawhub.ai/Endogen/monitored-ralph-loop",
    "targetPlatform": "OpenClaw"
  },
  "install": {
    "downloadMode": "redirect",
    "downloadUrl": "/downloads/monitored-ralph-loop",
    "sourceDownloadUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=monitored-ralph-loop",
    "sourcePlatform": "tencent",
    "targetPlatform": "OpenClaw",
    "installMethod": "Manual import",
    "extraction": "Extract archive",
    "prerequisites": [
      "OpenClaw"
    ],
    "packageFormat": "ZIP package",
    "includedAssets": [
      "README.md",
      "SKILL.md",
      "templates/PROMPT-BUILDING.md",
      "templates/PROMPT-PLANNING.md",
      "templates/AGENTS.md",
      "scripts/ralph.sh"
    ],
    "primaryDoc": "SKILL.md",
    "quickSetup": [
      "Download the package from Yavira.",
      "Extract the archive and review SKILL.md first.",
      "Import or place the package into your OpenClaw setup."
    ],
    "agentAssist": {
      "summary": "Hand the extracted package to your coding agent with a concrete install brief instead of figuring it out manually.",
      "steps": [
        "Download the package from Yavira.",
        "Extract it into a folder your agent can access.",
        "Paste one of the prompts below and point your agent at the extracted folder."
      ],
      "prompts": [
        {
          "label": "New install",
          "body": "I downloaded a skill package from Yavira. Read SKILL.md from the extracted folder and install it by following the included instructions. Then review README.md for any prerequisites, environment setup, or post-install checks. Tell me what you changed and call out any manual steps you could not complete."
        },
        {
          "label": "Upgrade existing",
          "body": "I downloaded an updated skill package from Yavira. Read SKILL.md from the extracted folder, compare it with my current installation, and upgrade it while preserving any custom configuration unless the package docs explicitly say otherwise. Then review README.md for any prerequisites, environment setup, or post-install checks. Summarize what changed and any follow-up checks I should run."
        }
      ]
    },
    "sourceHealth": {
      "source": "tencent",
      "status": "healthy",
      "reason": "direct_download_ok",
      "recommendedAction": "download",
      "checkedAt": "2026-04-30T16:55:25.780Z",
      "expiresAt": "2026-05-07T16:55:25.780Z",
      "httpStatus": 200,
      "finalUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=network",
      "contentType": "application/zip",
      "probeMethod": "head",
      "details": {
        "probeUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=network",
        "contentDisposition": "attachment; filename=\"network-1.0.0.zip\"",
        "redirectLocation": null,
        "bodySnippet": null
      },
      "scope": "source",
      "summary": "Source download looks usable.",
      "detail": "Yavira can redirect you to the upstream package for this source.",
      "primaryActionLabel": "Download for OpenClaw",
      "primaryActionHref": "/downloads/monitored-ralph-loop"
    },
    "validation": {
      "installChecklist": [
        "Use the Yavira download entry.",
        "Review SKILL.md after the package is downloaded.",
        "Confirm the extracted package contains the expected setup assets."
      ],
      "postInstallChecks": [
        "Confirm the extracted package includes the expected docs or setup files.",
        "Validate the skill or prompts are available in your target agent workspace.",
        "Capture any manual follow-up steps the agent could not complete."
      ]
    },
    "downloadPageUrl": "https://openagent3.xyz/downloads/monitored-ralph-loop",
    "agentPageUrl": "https://openagent3.xyz/skills/monitored-ralph-loop/agent",
    "manifestUrl": "https://openagent3.xyz/skills/monitored-ralph-loop/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/monitored-ralph-loop/agent.md"
  },
  "agentAssist": {
    "summary": "Hand the extracted package to your coding agent with a concrete install brief instead of figuring it out manually.",
    "steps": [
      "Download the package from Yavira.",
      "Extract it into a folder your agent can access.",
      "Paste one of the prompts below and point your agent at the extracted folder."
    ],
    "prompts": [
      {
        "label": "New install",
        "body": "I downloaded a skill package from Yavira. Read SKILL.md from the extracted folder and install it by following the included instructions. Then review README.md for any prerequisites, environment setup, or post-install checks. Tell me what you changed and call out any manual steps you could not complete."
      },
      {
        "label": "Upgrade existing",
        "body": "I downloaded an updated skill package from Yavira. Read SKILL.md from the extracted folder, compare it with my current installation, and upgrade it while preserving any custom configuration unless the package docs explicitly say otherwise. Then review README.md for any prerequisites, environment setup, or post-install checks. Summarize what changed and any follow-up checks I should run."
      }
    ]
  },
  "documentation": {
    "source": "clawhub",
    "primaryDoc": "SKILL.md",
    "sections": [
      {
        "title": "Ralph Loop (Event-Driven)",
        "body": "Enhanced Ralph pattern with event-driven notifications — Codex/Claude calls OpenClaw when it needs attention instead of polling."
      },
      {
        "title": "Clean Sessions",
        "body": "Each iteration spawns a fresh agent session with clean context. This is intentional:\n\nAvoids context window limits\nEach codex exec is a new process with no memory of previous runs\nMemory persists via files: IMPLEMENTATION_PLAN.md, AGENTS.md, git history"
      },
      {
        "title": "File-Based Notification Fallback",
        "body": "If OpenClaw is rate-limited when Codex sends a wake notification:\n\nThe notification is written to .ralph/pending-notification.txt\nWake is attempted (may fail)\nWhen OpenClaw recovers, it checks for pending notifications\nWork is never lost — it's all in git/files"
      },
      {
        "title": "File Structure",
        "body": "project/\n├── PROMPT.md                      # Loaded each iteration (mode-specific)\n├── AGENTS.md                      # Project context, test commands, learnings\n├── IMPLEMENTATION_PLAN.md         # Task list with status\n├── specs/                         # Requirements specs\n│   ├── overview.md\n│   └── <feature>.md\n└── .ralph/\n    ├── ralph.log                  # Execution log\n    ├── pending-notification.txt   # Current pending notification (if any)\n    └── last-notification.txt      # Previous notification (for reference)"
      },
      {
        "title": "Notification Format",
        "body": ".ralph/pending-notification.txt:\n\n{\n  \"timestamp\": \"2026-02-07T02:30:00+01:00\",\n  \"project\": \"/home/user/my-project\",\n  \"message\": \"DONE: All tasks complete.\",\n  \"iteration\": 15,\n  \"max_iterations\": 20,\n  \"cli\": \"codex\",\n  \"status\": \"pending\"\n}\n\nStatus values:\n\npending — Wake failed or not attempted\ndelivered — Wake succeeded"
      },
      {
        "title": "OpenClaw Recovery Procedure",
        "body": "When coming back online after rate limit or downtime, check for pending notifications:\n\n# Find all pending notifications across projects\nfind ~/projects -name \"pending-notification.txt\" -path \"*/.ralph/*\" 2>/dev/null\n\n# Or check a specific project\ncat /path/to/project/.ralph/pending-notification.txt"
      },
      {
        "title": "Recovery Actions by Message Prefix",
        "body": "PrefixActionDONE:Report completion to user, summarize what was builtPLANNING_COMPLETE:Inform user, ask if ready for BUILDING modePROGRESS:Log it, update user if significantDECISION:Present options to user, wait for answer, inject into AGENTS.mdERROR:Check logs (.ralph/ralph.log), analyze, help or escalateBLOCKED:Escalate to user immediately with full contextQUESTION:Present to user, get clarification, inject into AGENTS.md"
      },
      {
        "title": "Injecting Responses",
        "body": "To answer a decision/question for the next iteration:\n\necho \"## Human Decisions\n- [$(date '+%Y-%m-%d %H:%M')] Q: <question>? A: <answer>\" >> AGENTS.md\n\nThe next Codex session will read AGENTS.md and see the answer."
      },
      {
        "title": "Clearing Notifications",
        "body": "After processing a notification, clear it:\n\nmv .ralph/pending-notification.txt .ralph/last-notification.txt"
      },
      {
        "title": "1. Collect Requirements",
        "body": "Ask for (if not provided):\n\nGoal/JTBD: What outcome is needed?\nCLI: codex, claude, opencode, goose\nMode: PLANNING, BUILDING, or BOTH\nTech stack: Language, framework, database\nTest command: How to verify correctness\nMax iterations: Default 20"
      },
      {
        "title": "2. Generate Specs",
        "body": "Break the goal into topics of concern → specs/*.md:\n\n# specs/overview.md\n## Goal\n<one-sentence JTBD>\n\n## Tech Stack\n- Language: Python 3.11\n- Framework: FastAPI\n- Database: SQLite\n- Frontend: HTMX + Tailwind\n\n## Success Criteria\n- [ ] Criterion 1\n- [ ] Criterion 2"
      },
      {
        "title": "3. Generate AGENTS.md",
        "body": "# AGENTS.md\n\n## Project\n<brief description>\n\n## Commands\n- **Install**: `pip install -e .`\n- **Test**: `pytest`\n- **Lint**: `ruff check .`\n- **Run**: `python -m app`\n\n## Backpressure\nRun after each implementation:\n1. `ruff check . --fix`\n2. `pytest`\n\n## Human Decisions\n<!-- Decisions made by humans are recorded here -->\n\n## Learnings\n<!-- Agent appends operational notes here -->"
      },
      {
        "title": "4. Generate PROMPT.md (Mode-Specific)",
        "body": "PLANNING Mode\n\n# Ralph PLANNING Loop\n\n## Goal\n<JTBD>\n\n## Context\n- Read: specs/*.md\n- Read: Current codebase structure\n- Update: IMPLEMENTATION_PLAN.md\n\n## Rules\n1. Do NOT implement code\n2. Do NOT commit\n3. Analyze gaps between specs and current state\n4. Create/update IMPLEMENTATION_PLAN.md with prioritized tasks\n5. Each task should be small (< 1 hour of work)\n6. If requirements are unclear, list questions\n\n## Notifications\nWhen you need input or finish planning:\n```bash\nopenclaw gateway wake --text \"PLANNING: <your message>\" --mode now\n\nUse prefixes:\n\nDECISION: — Need human input on a choice\nQUESTION: — Requirements unclear\nDONE: — Planning complete"
      },
      {
        "title": "Completion",
        "body": "When plan is complete and ready for building, add to IMPLEMENTATION_PLAN.md:\n\nSTATUS: PLANNING_COMPLETE\n\nThen notify:\n\nopenclaw gateway wake --text \"DONE: Planning complete. X tasks identified.\" --mode now\n\n#### BUILDING Mode\n\n```markdown\n# Ralph BUILDING Loop\n\n## Goal\n<JTBD>\n\n## Context\n- Read: specs/*.md, IMPLEMENTATION_PLAN.md, AGENTS.md\n- Implement: One task per iteration\n- Test: Run backpressure commands from AGENTS.md\n\n## Rules\n1. Pick the highest priority incomplete task from IMPLEMENTATION_PLAN.md\n2. Investigate relevant code before changing\n3. Implement the task\n4. Run backpressure commands (lint, test)\n5. If tests pass: commit with clear message, mark task done\n6. If tests fail: try to fix (max 3 attempts), then notify\n7. Update AGENTS.md with any operational learnings\n8. Update IMPLEMENTATION_PLAN.md with progress\n\n## Notifications\nCall OpenClaw when needed:\n```bash\nopenclaw gateway wake --text \"<PREFIX>: <message>\" --mode now\n\nPrefixes:\n\nDECISION: — Need human input (e.g., \"SQLite vs PostgreSQL?\")\nERROR: — Tests failing after 3 attempts\nBLOCKED: — Missing dependency, credentials, or unclear spec\nPROGRESS: — Major milestone complete (optional)\nDONE: — All tasks complete"
      },
      {
        "title": "Completion",
        "body": "When all tasks are done:\n\nAdd to IMPLEMENTATION_PLAN.md: STATUS: COMPLETE\nNotify:\n\nopenclaw gateway wake --text \"DONE: All tasks complete. Summary: <what was built>\" --mode now\n\n### 5. Run the Loop\n\nUse the provided `scripts/ralph.sh`:\n\n```bash\n# Default: 20 iterations with Codex\n./scripts/ralph.sh 20\n\n# With Claude Code\nRALPH_CLI=claude ./scripts/ralph.sh 10\n\n# With tests\nRALPH_TEST=\"pytest\" ./scripts/ralph.sh"
      },
      {
        "title": "Parallel Execution",
        "body": "For independent tasks, use git worktrees:\n\n# Create worktrees for parallel work\ngit worktree add /tmp/task-auth main\ngit worktree add /tmp/task-upload main\n\n# Spawn parallel sessions (each is clean/fresh)\nexec pty:true background:true workdir:/tmp/task-auth command:\"codex exec --full-auto 'Implement user authentication...'\"\nexec pty:true background:true workdir:/tmp/task-upload command:\"codex exec --full-auto 'Implement image upload...'\"\n\nTrack sessions:\n\nSession IDWorktreeTaskStatusabc123/tmp/task-authAuth modulerunningdef456/tmp/task-uploadImage uploadrunning\n\nEach Codex notifies independently. Check .ralph/pending-notification.txt in each worktree."
      },
      {
        "title": "Codex",
        "body": "Requires git repository\nEach codex exec is a fresh session — no memory between calls\n--full-auto: Auto-approve in workspace (sandboxed)\n--yolo: No sandbox, no approvals (dangerous but fast)\nDefault model: gpt-5.2-codex"
      },
      {
        "title": "Claude Code",
        "body": "--dangerously-skip-permissions: Auto-approve (use in sandbox)\nNo git requirement\nEach invocation is fresh"
      },
      {
        "title": "OpenCode",
        "body": "opencode run \"$(cat PROMPT.md)\""
      },
      {
        "title": "Goose",
        "body": "goose run \"$(cat PROMPT.md)\""
      },
      {
        "title": "Safety",
        "body": "⚠️ Auto-approve flags are dangerous. Always:\n\nRun in a dedicated directory/branch\nUse a sandbox (Docker/VM) for untrusted projects\nHave git reset --hard ready as escape hatch\nReview commits before pushing"
      },
      {
        "title": "Quick Start",
        "body": "# 1. Create project directory\nmkdir my-project && cd my-project && git init\n\n# 2. Copy templates from skill\ncp /path/to/ralph-loop/templates/* .\nmv PROMPT-PLANNING.md PROMPT.md\n\n# 3. Create specs\nmkdir specs\ncat > specs/overview.md << 'EOF'\n## Goal\nBuild a web app that...\n\n## Tech Stack\n- Python 3.11 + FastAPI\n- SQLite\n- HTMX + Tailwind\n\n## Features\n1. Feature one\n2. Feature two\nEOF\n\n# 4. Edit PROMPT.md with your goal\n\n# 5. Run the loop\n./ralph.sh 20"
      },
      {
        "title": "Example: Antique Catalogue",
        "body": "# specs/overview.md\n## Goal\nWeb app for cataloguing antique items with metadata, images, and categories.\n\n## Tech Stack\n- Python 3.11 + FastAPI\n- SQLite + SQLAlchemy\n- HTMX + Tailwind CSS\n- Local file storage for images\n\n## Features\n1. CRUD for items (name, description, age, purchase info, dimensions)\n2. Image upload (multiple per item)\n3. Tags and categories\n4. Search and filter\n5. Multiple view modes (grid, list, detail)\n\nThe agent will:\n\n(PLANNING) Break this into 10-15 tasks\n(BUILDING) Implement each task, one per iteration\nCommit after each successful implementation\nNotify on completion or if blocked"
      }
    ],
    "body": "Ralph Loop (Event-Driven)\n\nEnhanced Ralph pattern with event-driven notifications — Codex/Claude calls OpenClaw when it needs attention instead of polling.\n\nKey Concepts\nClean Sessions\n\nEach iteration spawns a fresh agent session with clean context. This is intentional:\n\nAvoids context window limits\nEach codex exec is a new process with no memory of previous runs\nMemory persists via files: IMPLEMENTATION_PLAN.md, AGENTS.md, git history\nFile-Based Notification Fallback\n\nIf OpenClaw is rate-limited when Codex sends a wake notification:\n\nThe notification is written to .ralph/pending-notification.txt\nWake is attempted (may fail)\nWhen OpenClaw recovers, it checks for pending notifications\nWork is never lost — it's all in git/files\nFile Structure\nproject/\n├── PROMPT.md                      # Loaded each iteration (mode-specific)\n├── AGENTS.md                      # Project context, test commands, learnings\n├── IMPLEMENTATION_PLAN.md         # Task list with status\n├── specs/                         # Requirements specs\n│   ├── overview.md\n│   └── <feature>.md\n└── .ralph/\n    ├── ralph.log                  # Execution log\n    ├── pending-notification.txt   # Current pending notification (if any)\n    └── last-notification.txt      # Previous notification (for reference)\n\nNotification Format\n\n.ralph/pending-notification.txt:\n\n{\n  \"timestamp\": \"2026-02-07T02:30:00+01:00\",\n  \"project\": \"/home/user/my-project\",\n  \"message\": \"DONE: All tasks complete.\",\n  \"iteration\": 15,\n  \"max_iterations\": 20,\n  \"cli\": \"codex\",\n  \"status\": \"pending\"\n}\n\n\nStatus values:\n\npending — Wake failed or not attempted\ndelivered — Wake succeeded\nOpenClaw Recovery Procedure\n\nWhen coming back online after rate limit or downtime, check for pending notifications:\n\n# Find all pending notifications across projects\nfind ~/projects -name \"pending-notification.txt\" -path \"*/.ralph/*\" 2>/dev/null\n\n# Or check a specific project\ncat /path/to/project/.ralph/pending-notification.txt\n\nRecovery Actions by Message Prefix\nPrefix\tAction\nDONE:\tReport completion to user, summarize what was built\nPLANNING_COMPLETE:\tInform user, ask if ready for BUILDING mode\nPROGRESS:\tLog it, update user if significant\nDECISION:\tPresent options to user, wait for answer, inject into AGENTS.md\nERROR:\tCheck logs (.ralph/ralph.log), analyze, help or escalate\nBLOCKED:\tEscalate to user immediately with full context\nQUESTION:\tPresent to user, get clarification, inject into AGENTS.md\nInjecting Responses\n\nTo answer a decision/question for the next iteration:\n\necho \"## Human Decisions\n- [$(date '+%Y-%m-%d %H:%M')] Q: <question>? A: <answer>\" >> AGENTS.md\n\n\nThe next Codex session will read AGENTS.md and see the answer.\n\nClearing Notifications\n\nAfter processing a notification, clear it:\n\nmv .ralph/pending-notification.txt .ralph/last-notification.txt\n\nWorkflow\n1. Collect Requirements\n\nAsk for (if not provided):\n\nGoal/JTBD: What outcome is needed?\nCLI: codex, claude, opencode, goose\nMode: PLANNING, BUILDING, or BOTH\nTech stack: Language, framework, database\nTest command: How to verify correctness\nMax iterations: Default 20\n2. Generate Specs\n\nBreak the goal into topics of concern → specs/*.md:\n\n# specs/overview.md\n## Goal\n<one-sentence JTBD>\n\n## Tech Stack\n- Language: Python 3.11\n- Framework: FastAPI\n- Database: SQLite\n- Frontend: HTMX + Tailwind\n\n## Success Criteria\n- [ ] Criterion 1\n- [ ] Criterion 2\n\n3. Generate AGENTS.md\n# AGENTS.md\n\n## Project\n<brief description>\n\n## Commands\n- **Install**: `pip install -e .`\n- **Test**: `pytest`\n- **Lint**: `ruff check .`\n- **Run**: `python -m app`\n\n## Backpressure\nRun after each implementation:\n1. `ruff check . --fix`\n2. `pytest`\n\n## Human Decisions\n<!-- Decisions made by humans are recorded here -->\n\n## Learnings\n<!-- Agent appends operational notes here -->\n\n4. Generate PROMPT.md (Mode-Specific)\nPLANNING Mode\n# Ralph PLANNING Loop\n\n## Goal\n<JTBD>\n\n## Context\n- Read: specs/*.md\n- Read: Current codebase structure\n- Update: IMPLEMENTATION_PLAN.md\n\n## Rules\n1. Do NOT implement code\n2. Do NOT commit\n3. Analyze gaps between specs and current state\n4. Create/update IMPLEMENTATION_PLAN.md with prioritized tasks\n5. Each task should be small (< 1 hour of work)\n6. If requirements are unclear, list questions\n\n## Notifications\nWhen you need input or finish planning:\n```bash\nopenclaw gateway wake --text \"PLANNING: <your message>\" --mode now\n\n\nUse prefixes:\n\nDECISION: — Need human input on a choice\nQUESTION: — Requirements unclear\nDONE: — Planning complete\nCompletion\n\nWhen plan is complete and ready for building, add to IMPLEMENTATION_PLAN.md:\n\nSTATUS: PLANNING_COMPLETE\n\n\nThen notify:\n\nopenclaw gateway wake --text \"DONE: Planning complete. X tasks identified.\" --mode now\n\n\n#### BUILDING Mode\n\n```markdown\n# Ralph BUILDING Loop\n\n## Goal\n<JTBD>\n\n## Context\n- Read: specs/*.md, IMPLEMENTATION_PLAN.md, AGENTS.md\n- Implement: One task per iteration\n- Test: Run backpressure commands from AGENTS.md\n\n## Rules\n1. Pick the highest priority incomplete task from IMPLEMENTATION_PLAN.md\n2. Investigate relevant code before changing\n3. Implement the task\n4. Run backpressure commands (lint, test)\n5. If tests pass: commit with clear message, mark task done\n6. If tests fail: try to fix (max 3 attempts), then notify\n7. Update AGENTS.md with any operational learnings\n8. Update IMPLEMENTATION_PLAN.md with progress\n\n## Notifications\nCall OpenClaw when needed:\n```bash\nopenclaw gateway wake --text \"<PREFIX>: <message>\" --mode now\n\n\nPrefixes:\n\nDECISION: — Need human input (e.g., \"SQLite vs PostgreSQL?\")\nERROR: — Tests failing after 3 attempts\nBLOCKED: — Missing dependency, credentials, or unclear spec\nPROGRESS: — Major milestone complete (optional)\nDONE: — All tasks complete\nCompletion\n\nWhen all tasks are done:\n\nAdd to IMPLEMENTATION_PLAN.md: STATUS: COMPLETE\nNotify:\nopenclaw gateway wake --text \"DONE: All tasks complete. Summary: <what was built>\" --mode now\n\n\n### 5. Run the Loop\n\nUse the provided `scripts/ralph.sh`:\n\n```bash\n# Default: 20 iterations with Codex\n./scripts/ralph.sh 20\n\n# With Claude Code\nRALPH_CLI=claude ./scripts/ralph.sh 10\n\n# With tests\nRALPH_TEST=\"pytest\" ./scripts/ralph.sh\n\nParallel Execution\n\nFor independent tasks, use git worktrees:\n\n# Create worktrees for parallel work\ngit worktree add /tmp/task-auth main\ngit worktree add /tmp/task-upload main\n\n# Spawn parallel sessions (each is clean/fresh)\nexec pty:true background:true workdir:/tmp/task-auth command:\"codex exec --full-auto 'Implement user authentication...'\"\nexec pty:true background:true workdir:/tmp/task-upload command:\"codex exec --full-auto 'Implement image upload...'\"\n\n\nTrack sessions:\n\nSession ID\tWorktree\tTask\tStatus\nabc123\t/tmp/task-auth\tAuth module\trunning\ndef456\t/tmp/task-upload\tImage upload\trunning\n\nEach Codex notifies independently. Check .ralph/pending-notification.txt in each worktree.\n\nCLI-Specific Notes\nCodex\nRequires git repository\nEach codex exec is a fresh session — no memory between calls\n--full-auto: Auto-approve in workspace (sandboxed)\n--yolo: No sandbox, no approvals (dangerous but fast)\nDefault model: gpt-5.2-codex\nClaude Code\n--dangerously-skip-permissions: Auto-approve (use in sandbox)\nNo git requirement\nEach invocation is fresh\nOpenCode\nopencode run \"$(cat PROMPT.md)\"\nGoose\ngoose run \"$(cat PROMPT.md)\"\nSafety\n\n⚠️ Auto-approve flags are dangerous. Always:\n\nRun in a dedicated directory/branch\nUse a sandbox (Docker/VM) for untrusted projects\nHave git reset --hard ready as escape hatch\nReview commits before pushing\nQuick Start\n# 1. Create project directory\nmkdir my-project && cd my-project && git init\n\n# 2. Copy templates from skill\ncp /path/to/ralph-loop/templates/* .\nmv PROMPT-PLANNING.md PROMPT.md\n\n# 3. Create specs\nmkdir specs\ncat > specs/overview.md << 'EOF'\n## Goal\nBuild a web app that...\n\n## Tech Stack\n- Python 3.11 + FastAPI\n- SQLite\n- HTMX + Tailwind\n\n## Features\n1. Feature one\n2. Feature two\nEOF\n\n# 4. Edit PROMPT.md with your goal\n\n# 5. Run the loop\n./ralph.sh 20\n\nExample: Antique Catalogue\n# specs/overview.md\n## Goal\nWeb app for cataloguing antique items with metadata, images, and categories.\n\n## Tech Stack\n- Python 3.11 + FastAPI\n- SQLite + SQLAlchemy\n- HTMX + Tailwind CSS\n- Local file storage for images\n\n## Features\n1. CRUD for items (name, description, age, purchase info, dimensions)\n2. Image upload (multiple per item)\n3. Tags and categories\n4. Search and filter\n5. Multiple view modes (grid, list, detail)\n\n\nThe agent will:\n\n(PLANNING) Break this into 10-15 tasks\n(BUILDING) Implement each task, one per iteration\nCommit after each successful implementation\nNotify on completion or if blocked"
  },
  "trust": {
    "sourceLabel": "tencent",
    "provenanceUrl": "https://clawhub.ai/Endogen/monitored-ralph-loop",
    "publisherUrl": "https://clawhub.ai/Endogen/monitored-ralph-loop",
    "owner": "Endogen",
    "version": "0.1.1",
    "license": null,
    "verificationStatus": "Indexed source record"
  },
  "links": {
    "detailUrl": "https://openagent3.xyz/skills/monitored-ralph-loop",
    "downloadUrl": "https://openagent3.xyz/downloads/monitored-ralph-loop",
    "agentUrl": "https://openagent3.xyz/skills/monitored-ralph-loop/agent",
    "manifestUrl": "https://openagent3.xyz/skills/monitored-ralph-loop/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/monitored-ralph-loop/agent.md"
  }
}