small gleam coding and (not yet) persistent agent daemon with a detachable cli forked from okami.mom/albedo

compaction strategies share stored folds through the context compaction-prior

strategies no longer import each other to see stored summaries. a FoldPlugin supplies them, and the runtime hands every strategy context.prior, which splits history into stored folds and the rest they don't cover, leaving out the active strategy's own provider. lcm-memory provides lcm's folds; rolling and snapcompact read them from the context, and snapcompact keeps them as text ahead of its frames. a compaction strategy enabled by name, for a session or globally, now displaces one that only the defaults enable, so a new default strategy cannot break an older choice. snapcompact-memory hands the snapcompact archive to other strategies as text folds and adds transcript_grep and transcript_read over the durable transcript. snapcompact's frame cap follows oh-my-pi's per-provider image budgets and a 3 MB inline budget (claude uploads through the files api). it reports its window and trigger to /context, and a forced compaction keeps a tail sized to the request, so /compact archives under a large window. a model id several catalog providers publish, served through a gateway the catalog does not list, answers with the input kinds they agree on and the smallest limits instead of nothing. the compaction notice says what the strategy did: archived as frames, folded, or summarized.


Author
Date Commit Parent a383301a