Skip to content

star-loop v2.0.1

Latest

Choose a tag to compare

@MrBeldum MrBeldum released this 01 Sep 18:16
· 2 commits to main since this release

An autonomous coding loop for Grok Build. Patrick does the work. Sandy checks it.

One fresh agent per iteration until the task is genuinely finished — and every claim of "done" is re-checked by a separate agent that re-runs your test suite from scratch and reads the actual diff before the loop is allowed to stop.

Pure Rhai. No bash, no jq, no perl, no Python, no Node.

grok plugin marketplace add MrBeldum/star-loop
grok plugin install star-loop --trust

What makes this different

Every other Ralph implementation lets the agent grade its own work. Anthropic's ships a paragraph asking the model not to lie — that is a request, not a control. star-loop adds an independent verifier that re-runs every gate itself, reads git show HEAD, and hunts the specific ways loops fake success: deleted or .skipped tests, loosened assertions, regenerated snapshots, stubs standing in for behaviour, gates that "passed" by matching no files. A rejected claim is fed back verbatim to the next iteration.

Also: gates discovered once by a read-only recon pass instead of re-guessed every iteration; objective stall detection keyed on whether a commit actually landed rather than on the agent's own prose; refuses to run on main or a dirty tree; distinct complete / stalled / blocked / budget outcomes; --dry-run; and --protect for off-limits paths.

This release

Fixes found by running the loop for real against a repository with a genuinely failing test suite.

  • A completed run could be discarded at the finish line. The Report phase called write_scratch_file unguarded; when the host scratch store was unavailable the runtime error killed the run after the work was done, committed and verified. Both scratch writes are now wrapped and the report is returned inline either way.
  • The documented launch shape was wrong. source is a tagged union — type is required — and the skill showed a bare source.script_path, which would have failed schema validation on every launch.
  • The dirty-tree gate no longer trips on untracked files. It hard-stops only on modified tracked files. Blanket staging (git add -A, git add ., git commit -a) is now banned outright, so stray files cannot be swept into a commit.
  • validate_only documented as a zero-agent smoke check that compiles the script and executes the path your args select.

Full notes in CHANGELOG.md.

Credits

Standing on Geoffrey Huntley's Ralph technique, snarktank/ralph, Anthropic's ralph-wiggum plugin, and ralph-orchestrator.