Ralph LoopSAFE
Cursor plugin specification and official plugins
Overview
Cursor plugin specification and official plugins
890eaf6b2dddOBSERVED · 2026-10-12Host compatibility
What the documentation claims. We have not run a compatibility test.
| Host | Status | Notes |
|---|---|---|
| cursor | mentioned |
What it tells the agent
The instruction file, verbatim from the audited commit — this is the text the model reads, and the surface the audit's instruction layer examines. Quoted here so you can judge it without cloning anything.
--- name: ralph-loop description: Start a Ralph Loop for iterative self-referential development. Use when the user asks to run a ralph loop, start an iterative loop, or wants repeated autonomous iteration on a task until completion. --- # Ralph Loop ## Trigger The user wants to start a Ralph loop. An iterative development loop where the same prompt is fed back after every turn, and the agent sees its own previous work each iteration. ## Workflow 1. Gather the user's task prompt and optional parameters: - `max_iterations` (number, default 0 for unlimited) - `completion_promise` (text, or "null" if not set) 2. Create the directory `.cursor/ralph/` if it doesn't exist, then write the state file at `.cursor/ralph/scratchpad.md` with this exact format: ```markdown --- iteration: 1 max_iterations: <N or 0> completion_promise: "<TEXT>" or null --- <the user's task prompt goes here> ``` Example: ```markdown --- iteration: 1 max_iterations: 20 completion_promise: "COMPLETE" --- Build a REST API for todos with CRUD operations, input validation, and tests. ``` 3. Confirm to the user that the Ralph loop is active, then begin working on the task. 4. The stop hook automatically intercepts each turn end and feeds the same prompt back as a followup message. You will see it prefixed with `[Ralph loop iteration N.]`. ## Guardrails - If a completion promise is set, you may ONLY output `<promise>TEXT</promise>` when the statement is completely and genuinely true. - Do not output false promises to escape the loop. - Always recommend setting `max_iterations` as a safety net. - Quote the `completion_promise` value in the YAML frontmatter if it contains special characters. ## Output Confirm the loop is active (prompt, iteration limit, promise if set), then start working on the task immediately.
Trust audit
SAFEgrade B · trust 89/100 Nothing in the source contradicts what it says it does. Grade A is reserved for packages that have also passed the behavioural sandbox.
| Layer | What it checks | Result |
|---|---|---|
| L0 | Provenance & inventory | PASS |
| L1 | Static analysis of the code | NA |
| L2 | Instruction surface (what it tells the agent) | PASS |
| L3 | Class-specific surface | PASS |
| L4 | Behavioural (sandbox) | SKIPPED |
What the source does
- Filesystem
- none-observed
- Network
- none-observed
- Shell
- none-observed
- Dependencies
- pinned
- Secrets in source
- none-found
Findings (0)
No findings outside the package's declared scope.
Gates applied: no_behavioural_pass.
890eaf6b2dddfull audit observations/trust-audit/skill/cursor__ralph-loop.json · Report an issue / request a re-scanAudit history
Every audit this skill has had.
| Date | Source | Verdict | Grade | Score | Change |
|---|---|---|---|---|---|
| 2026-10-12 | 890eaf6b2ddd | SAFE | B | 89 | first audit |
Questions
What does the Ralph Loop skill do?
Cursor plugin specification and official plugins
Is Ralph Loop safe to install?
The audit found nothing in the source that contradicts what it says it does, and graded it B (89/100). Grade A is held back for packages that have also passed a sandboxed behavioural run, which is why a clean skill reads B.
What can Ralph Loop access on my machine?
The audit observed no filesystem, network or shell use at all in its source.
Which assistants does Ralph Loop work with?
Its documentation mentions cursor. That is what the text claims, not a compatibility test we ran.
How current is this page?
The grade is for one exact copy of the source (890eaf6b2ddd), read on 2026-10-12. The repository is watched, and a new audit runs when it changes — this is the first audit.