Skip to main content

ralph-loop

Self-improving iteration loop: the same task comes back at every end of turn, so the agent keeps refining its own work until an honest completion promise or an iteration cap.

Reference​

FieldValue
Nameralph-loop
Version1.0.0
CategoryProductivity
LicenceNot declared
Sourcecatalog/navin/builtin_plugins/ralph-loop/plugin.json
READMEcatalog/navin/builtin_plugins/ralph-loop/README.md
Digestsha256:f922296c286c4f3c12d8d7a30485d8672b45ac45043dcf277c57269bdceabf81
plugin.jsonagents, category, commands, description, name, skills, steps, version

Commands​

NameArgumentsDescription
/ralph-loop"PROMPT" [--max-iterations N] [--completion-promise "TEXT"]Start a Ralph loop - the same task comes back at every end of turn until a promise or an iteration cap
/cancel-ralph-Cancel the active Ralph loop of this project
/ralph-help-Explain the Ralph loop technique and the /ralph-loop and /cancel-ralph commands

Agents​

The plugin declares no agent.

Skills​

The plugin declares no skill.

Hooks, MCP servers and settings​

plugin.json declares no hook, no MCP server and no setting: the plugin is made of the components above only.

Workflow​

StepUse
learn the technique and how to write the prompt/ralph-help
start the loop with a cap and a completion promise/ralph-loop
stop the loop early/cancel-ralph

Enable it in a project​

Activating ralph-loop creates 4 activations in the project: the plugin itself and 3 commands. Removing the plugin activation removes them all.

curl -X POST <control-plane-url>/v1/projects/<project>/navin-library/activations \
-H "Authorization: Bearer <token>" -H "Content-Type: application/json" \
-d '{"kind": "plugin", "name": "ralph-loop"}'

<project>: id or slug of the project. <token>: API key with the editor role on the project.

client.navin_library.activate("<project>", "plugin", "ralph-loop")