Agent-readable wiki

lossless-claw: Hidden Secrets & Paparazzi Files

A gossip-column deep-dive into the surprising, embarrassing, and carefully buried truths inside @martian-engineering/lossless-claw — the OpenClaw plugin that promises perfect memory but ships its own amnesia failsafe.

Pages

  1. The "Never Forgets" Plugin That Has an Amnesia Buttonlossless-claw markets itself as the agent that "never forgets" — but hidden inside the engine is an emergency truncation escape hatch that can silently throw away conversation history when summarization fails. This opening brief exposes what the README doesn't advertise.
  2. The Secret Amnesia Failsafe: Emergency TruncationDeep inside engine.ts, when all summarization attempts fail, the plugin logs "FALLING BACK TO EMERGENCY TRUNCATION" and calls createEmergencyFallbackSummarize() — silently discarding history in the very system designed to prevent that. The infinite-loop bail in compaction.ts and the hard sweep iteration cap (default 12) added in v0.11.2 are further evidence that the "nothing is lost" promise has real escape hatches baked in.
  3. The Name Change Cover-Up: From openclaw-lcm to lossless-clawThe package was originally published as @martian-engineering/openclaw-lcm before a deliberate rebranding to @martian-engineering/lossless-claw. A full rename spec (specs/lossless-claw-rename-spec.md) survives in the repo, listing every line-by-line change needed — including the missing repository metadata that was never present in the original package.json. The rename also gave the project its own website at losslesscontext.ai.
  4. Born In-Tree: The Great Extraction from OpenClaw Corelossless-claw was not built as a standalone plugin — it was extracted from OpenClaw's own in-tree src/plugins/lcm/ directory. The extraction-plan.md spec reveals the code was simply copied with all imports still pointing at OpenClaw core internals, and the entire extraction was a post-hoc dependency-injection refactor. The plugin also quietly depends on three @earendil-works/pi-* packages whose source is not public in this repo.
  5. The Bug Hall of Shame: Deadlocks, Bedrock Bombs & Discord DisastersThe CHANGELOG reads like a confessional: a sub-agent deadlock guard was needed in the expansion recursion guard; AWS Bedrock silently rejected messages with empty content arrays until a fix in v0.10.0; the /lossless native command description was too long and Discord was silently truncating it during slash-command registration; a stat-fail loop could get a conversation permanently stuck in transparent passthrough mode (no compaction ever ran); and bootstrap replay floods could inject thousands of duplicate messages. Each bug was quietly fixed in a patch release.
  6. Who Actually Built This: The Contributor DossierThe repo's CHANGELOG attribution tells a richer story than the README credits. Core author @jalehman (Josh Lehman, Martian Engineering) owns the majority of commits, but notable patches came from @100yenadmin (compaction bounds, image externalization, session deduplication), @0xopaque (bootstrap replay hardening), @jetd1 (live-input preservation, stat-fail placeholder seeding), @castaples (Bedrock empty-content fix), and @holgergruenhagen (Discord description truncation). The project also ships a TUI component written in Go (go.mod path github.com/Martian-Engineering/lossless-claw/tui) that is referenced in specs but not present in this repo.

Complete Markdown

The complete agent-readable Markdown files are published separately from this HTML page.