opencode 1.18.21-lowmem.17
·
91 commits
to lowmem
since this release
Resource-bounded fork of anomalyco/opencode — full capability, bounded footprint.
Since lowmem.11: two behavioral hardening rounds, a child-session ordering rework, docs consolidation, and a passive-CPU port. Highlights:
Memory (long sessions)
- Streamed chunks coalesce in the UI before store writes (120 ms), replacing quadratic per-chunk concatenation for every session — including background subagents.
PartUpdatedpublishes shallow snapshots instead of deep clones; shell-tool state and plugin events get isolated copies, so delayed clients and plugins can't observe retro-edited parts.- Deleting a session now truly clears its UI store buckets: messages, parts, diffs, todos, status, permissions, questions, orphans, and eviction bookkeeping — with a tombstone that ignores late events instead of resurrecting them.
message.removeddrops its part bucket immediately.
Child session list (daily TUI)
- Children reorder only when they receive a message (delegation, task continuation, direct input) — tool rounds, permissions, and compaction never shuffle the list. Newest-50 window, roots excluded, viewed out-of-window children pin in; the run-UI footer reports an honest N of 50.
- Run-mode subagent tabs keep the newest 50 finished agents and revive an evicted one automatically if it asks again.
Passive CPU
- Idle-status dedupe (port of upstream #40984 by zcxGGmu): repeated "session is idle" writes no longer re-broadcast status events to every connected client.
Packaging / docs
- Build round now derives from the highest existing tag, not tag count.
- README is the single authoritative fork document (PORTS.md deleted); port table carries upstream author credit; deferred-ports section records anomalyco#43769/anomalyco#40698 with the tree-shape evidence.
Install:
curl -fsSL https://raw.githubusercontent.com/renekris/opencode-lowmem/lowmem/scripts/fork-install.sh | bashSee the README for the full feature, port, and backlog tables.