Skip to content

v0.2.0 — Phase 2: memory editor, reinject, hooks debugger, scheduler

Choose a tag to compare

@CreatmanCEO CreatmanCEO released this 09 May 11:06
· 16 commits to main since this release
522c2da

Summary

Phase 2 of the cc-janitor roadmap. 18 TDD tasks, 50+ new tests, 152 passing total. Cross-platform (Linux/macOS/Windows) on Python 3.11 + 3.12.

Modules added

  • Memorycc-janitor memory list/show/edit/archive/move-type/find-duplicates. Frontmatter parsing, type classification (user/feedback/project/reference/unknown), duplicate-line detection across files. TUI Memory tab.
  • Reinjectcc-janitor context reinject [--memory] [--claude-md] writes a marker; the PreToolUse hook (Phase 1 install-hooks) reads it and emits a <system-reminder> block to re-read CLAUDE.md / memory mid-session. install-hooks now generates a PowerShell branch on Windows alongside POSIX shell.
  • Hooks debuggercc-janitor hooks list/show/simulate/enable-logging/disable-logging/validate. Merged view across user/user-local/project/project-local settings layers, schema validation, simulate with realistic stdin payloads (9 events), reversible logging wrapper using a sentinel marker. TUI Hooks tab.
  • Schedulercc-janitor schedule list/add/remove/run/promote. Scheduler ABC with CronScheduler (Linux/macOS) and SchtasksScheduler (Windows). 5 templates: perms-prune, trash-cleanup, session-prune, context-audit, backup-rotate. First run after add is forced --dry-run; promote flips it live.
  • Safety hard cap — when CC_JANITOR_SCHEDULED=1, refuses to delete more than CC_JANITOR_HARD_CAP items per run (default 200), raising RunawayCapError.

Closes upstream Issues

  • #29746 (memory not re-read after context continuation) — via reinject hook
  • #11544 + #10401 + #16564 (hooks debugging broken) — via hooks debugger + simulate + Windows env-var fix
  • #2766 (large CLAUDE.md performance) — via memory editor with disable-toggle (groundwork)

Install

pip install cc-janitor==0.2.0

🤖 Generated with Claude Code