Skip to content

0.8.1

Choose a tag to compare

@jonaslsaa jonaslsaa released this 09 Oct 00:14
· 13 commits to main since this release
2c7346d

A small release on top of 0.8.0: summaries with less filler, subagents that survive a Pi restart, and two delivery bugs fixed.

Less filler in summaries (#129)

The compaction prompt now says the size limit is a ceiling, not a target. Before, summaries padded short tool steps up to the limit and quoted bare "sure" / "done" replies word for word. Blind A/B over four prompt variants on frozen copies of real profiles ($25): this one wins on recall (+0.8 personal, +2.5 work) while cutting filler by about a quarter on the personal profile. Two variants that rewrote the prompt more aggressively lost recall and were dropped.

Along with it (#130): a summary now describes a tool result by what its output shows, not by a cause guessed from an exit code or an empty match. An audit of 42 recent memory lines found 4 invented causes of that kind.

Subagents survive a Pi restart (#126)

/reload or a Pi restart used to kill every running subagent, leaving them interrupted forever. Now their transcripts are kept, and when the profile comes back the cut-off subagents are resumed from where they were, with a short note to the main agent about who was restarted. Headless pi -p sessions don't resume anything.

Reports that Esc threw away (#127)

A subagent report arriving while the main agent was busy went into Pi's steer queue; pressing Esc cleared that queue and the report was lost until the next /reload, where it showed up hours late as a stale message. Reports are now re-sent as soon as the agent settles.

Import concurrency is a setting (#125)

"Import: summaries at once" (default 8, 1–64) controls how many summaries an import runs in parallel. Higher is faster; each extra one means summaries are written with one more unsummarized neighbour, about 0.8 points of recall per step in our measurements, so leave it unless an import is painfully slow.

For contributors (#130)

Every prompt sent to a model now lives in src/prompts.ts as readable multi-line text with a comment saying where it's used; the recipe's four prompts are byte-identical to before. The main and subagent prompts gained a note about not polling slow things (CI, deploys) yourself.