By AdityaMunot
Persistent backlog + per-project state localization. Two skills: `todo` (git-friendly task tracking with auto-close on commit and multi-machine sync) and `localize` (Windows junction / POSIX symlink for ~/.claude/projects/<slug>/{memory,todos}/ into a project repo).
Redirect Claude Code's per-project state from ~/.claude/projects/<slug>/<kind>/ into <project>/.claude/<kind>/ via a Windows junction or POSIX symlink. Triggers on requests to localize memory or todos into a project, undo such localization, or check whether memory/todos are localized. Pass memory or todos as the kind. Three actions - setup (auto-migrates existing files), status, cleanup (with --restore to move files back into the user-level folder).
Persistent, git-friendly todo backlog across Claude Code sessions. Triggers on requests to add, list, show, complete, reopen, remove, edit, prioritize, tag, set a due date for, or block/unblock tasks; or to check what's on the backlog. Three storage modes - per-project (default, ~/.claude/projects/<slug>/todos/), global (-g), explicit (--dir). Pairs with the localize skill to commit the per-project backlog into a repo. Never Read the underlying .md files; always invoke the dispatcher.
Personal Claude Code tooling I want across machines. One plugin (trove) bundling two skills:
todo — persistent, git-friendly backlog. Per-task markdown, auto-close on commit, multi-machine sync.localize — junction (Windows) / symlink (Unix) ~/.claude/projects/<slug>/{memory,todos}/ into a repo.Full usage: todo SKILL, localize SKILL.
Backlog as markdown. Each task is .claude/todos/<N>.md. Plain text, hand-editable, git diff-friendly, commitable.
Auto-close on commit. Reference a task in your commit message and the post-commit git hook closes it:
git commit -m "Refactor middleware; closes #4"
→ #4 done: Refactor auth middleware
The closing commit hash is recorded in the task's frontmatter (closed_by_commit:) so the post-rewrite hook can reopen it if the commit gets rebased away.
Conflict-safe multi-machine sync. When two laptops both add a task while offline, they both create #11.md. On todo sync, git produces an add/add conflict — most tools punt. Trove auto-renumbers: keeps upstream's #11, renames the local one to the next free id (e.g. #12), updates the id: field, continues the rebase. You see renumbered: #11 -> #12 (conflicted with upstream). Tested in tests/sync-smoke.sh.
Sessions know your state. A SessionStart hook surfaces:
So Claude gets full situational awareness at session start without you having to re-explain anything.
# Windows
irm https://raw.githubusercontent.com/AdityaMunot/trove/master/bootstrap.ps1 | iex
# macOS / Linux
curl -fsSL https://raw.githubusercontent.com/AdityaMunot/trove/master/bootstrap.sh | bash
Bootstrap auto-detects a local clone and uses it as the source, so ./bootstrap.sh works for dev sync without re-cloning. Copy-only and idempotent. After install it prints the per-project setup commands.
bootstrap.ps1 is a thin trampoline — it shells out to bash bootstrap.sh, so the install logic lives in one place. Windows users need Git Bash on PATH (Git for Windows installs it by default).
curl -fsSL .../bootstrap.sh | bash -s -- uninstall # remote
./bootstrap.sh uninstall [--dry-run] # local
Reverses what bootstrap copied. Does not touch state outside the plugin's domain — .git/hooks/post-commit per project, .claude/{memory,todos}/ symlinks (run localize <kind> cleanup first if you want those gone), or your actual .claude/todos/*.md files.
The repo is laid out as a Claude Code plugin marketplace (.claude-plugin/marketplace.json + plugins/<name>/.claude-plugin/plugin.json), so you can also install via /plugin marketplace add <path-to-local-clone> from inside Claude Code. Not currently submitted to any public marketplace.
Own this plugin?
Verify ownership to unlock analytics, metadata editing, and a verified badge. GitHub access is read-only (username + org membership).
Sign in to claimOwn this plugin?
Verify ownership to unlock analytics, metadata editing, and a verified badge. GitHub access is read-only (username + org membership).
Sign in to claimBased on adoption, maintenance, documentation, and repository signals. Not a security audit or endorsement.
npx claudepluginhub adityamunot/trove --plugin troveMemory compression system for Claude Code - persist context across sessions
Ultra-compressed communication mode. Cuts ~75% of tokens while keeping full technical accuracy by speaking like a caveman.
Multi-model consensus engine integrating OpenAI Codex CLI, Gemini CLI, and Claude CLI for collaborative code review and problem-solving.
Curate auto-memory, promote learnings to CLAUDE.md and rules, extract proven patterns into reusable skills.