Skip to content

v1.0.6

Choose a tag to compare

@edxeth edxeth released this 02 Jun 18:44

Install:

pi install git:github.com/edxeth/pi-ralph-loop@v1.0.6

Or latest:

pi install git:github.com/edxeth/pi-ralph-loop

🐛 Bug Fixes

Ralph loop session handoffs are more reliable

Refs: 3cd1444, d45d84f

Ralph now seeds replacement sessions from Pi’s ctx.newSession({ withSession }) handoff instead of splitting startup across delayed timers, session_start, and global transition state. This keeps iteration startup bound to the fresh replacement-session context and avoids stale command-context failures after session replacement.

If Pi is quit or reloaded during a Ralph-managed session transition, Ralph now finalizes the loop as an error instead of leaving .ralph/loop.md stuck in a running transition state. Normal Ralph-created /new transitions are preserved.

/ralph-loop starts faster in empty sessions

Refs: d45d84f

When /ralph-loop is started from a session with no user or assistant turns, Ralph now starts the first iteration directly in the current session. This avoids the unnecessary first-session replacement that made the submitted prompt feel delayed.

Sessions with existing history still start the loop in a fresh session, and /ralph-resume and /ralph-restart continue to force fresh-session startup for safer recovery behavior.

Fresh-session prompts no longer flash through the old chat

Refs: 3cd1444, d45d84f

For replacement-session iterations, Ralph still starts each automated iteration in a clean session, but now schedules the prompt after Pi has rendered the replacement session. This avoids the old-chat flash while preserving one fresh session per automated iteration.

Ralph lifecycle notices are less noisy

Refs: d45d84f

Ralph lifecycle feedback now appears as a muted above-editor notice widget when supported by Pi, with transient notices auto-clearing after a short delay. Terminal and error messages remain visible, duplicate notification/widget output is avoided, and redundant iteration-start notices have been removed.

RPC and subprocess launch behavior is documented

Refs: 3cd1444

The README now documents that RPC clients, API wrappers, and subprocess launchers must keep the Pi process and stdin open for the duration of a Ralph run. A one-shot wrapper that sends /ralph-loop and then closes stdin can cause Pi to quit before Ralph’s fresh-session handoff runs.

If that happens, start a long-lived Pi session and run /ralph-resume.