gitmyhub

pi-grow-loop

TypeScript ★ 2 updated 5d ago

Small continuation layer for Pi

A small extension for the Pi coding assistant that makes it work through big tasks in small, visible steps, looping automatically while you stay in control and can interrupt or redirect at any time.

TypeScriptsetup: moderatecomplexity 3/5

pi-grow-loop is a small extension for Pi, a coding assistant. It adds a looping behavior so the assistant can keep working through a task in small, visible steps instead of doing everything at once or stopping after a single reply. The person using the assistant stays in charge and can interrupt or redirect at any point. The extension does not create a hidden queue or impose a fixed workflow. The assistant decides what matters, and the runtime only schedules the next turn.

You use it when a task has a clear scope and can be broken into multiple useful pieces, each with its own validation. If the work is just one coherent change, the extension is not needed and ordinary one-shot execution is fine. The extension is for situations where an explicit outcome needs several bounded slices, each producing evidence and a natural point to stop or redirect. It is not triggered by keywords or task size alone.

The system has three parts. A while-true skill acts as the worker. It looks at the current state, picks one actionable slice, executes it, validates the result, and hands off what it found. A grow-loop skill acts as the continuation layer. It locks the relevant scope, reads the worker's handoff, and decides exactly once whether another turn should run. A grow_loop tool handles the scheduling. It waits for the assistant to be idle, shows a three-second countdown, and sends a short prompt only if nothing else is pending.

Each iteration has one checkpoint boundary. The worker reports what changed, what was proven, what remains, and any blockers. The continuation layer compares this checkpoint against the previous one to avoid repeated no-ops. If continuation is still safe and valuable, it schedules one more turn and ends. If not, it returns a stop proof. The runtime never blocks future calls, and the decision to continue belongs to the agent, not to a hidden state machine.

The README is dense and written for people already familiar with Pi's extension model. It does not include much introductory material for newcomers. The full README is longer than what was shown.

Where it fits