Skip to content

Releases: LxveAce/claude-compact-controller

v1.0.1

Choose a tag to compare

@LxveAce LxveAce released this 01 Jul 16:56

Fixed

  • Token tracking read 0/0 (the headline v1.0.0 bug). Usage is now derived from the session transcript
    JSONL — the Stop hook payload carries no token fields — so context/output tokens and the turn counter are
    real values, not zeros.
  • The post-compact recovery pointer never reached the model. It was injected on the PostCompact event,
    which has no decision control and cannot return additionalContext (verified against the Claude Code hook
    docs). It now uses the SessionStart compact hook, which fires after auto/manual compaction and supports
    additionalContext, so the pointer to the pre-compact vault actually lands.
  • Session-scoped state resets consistently; the real PreCompact trigger (auto/manual) is recorded.

Added

  • A dependency-free test suite (npm test) covering the hooks, the token parser, install/uninstall path-dedupe,
    and the status.js --json contract; plus push/PR CI (Ubuntu + Windows).
  • Canonical DISCLAIMER + acceptable-use terms, linked from the README.

Changed

  • README corrected to shipped reality (+ a vault-privacy note); FORWARD-PLAN refreshed.

claude-compact-controller v1.0.0

Choose a tag to compare

@LxveAce LxveAce released this 27 Jun 18:36

claude-compact-controller v1.0.0

First tagged release of the zero-dependency Node.js Claude Code hook bundle that guards against
context loss across auto-compaction (Stop / PreCompact / PostCompact hooks + install/uninstall/status).

Hardened in this release:

  • Atomic writes (tmp + rename, 0600) for the shared state/config/vault files, matching the catalyst-ui
    consumer; robust stdin parsing (BOM / CRLF / empty); vault-prune off-by-one fixed.
  • status.js --json for machine-readable state; configurable install path
    (CLAUDE_COMPACT_CONTROLLER_HOME) with catalyst-ui-aligned dedupe so the two installers never clash.
  • hookEventName added to hook output; new docs/DATA-CONTRACT.md freezing the on-disk contract.

Install: npm run install-hooks (needs node on PATH; restart Claude Code after).