Help us improve
Share bugs, ideas, or general feedback.
From todo-sync
Automatically syncs todos and plans from ~/.claude/ to the current project. Use this skill when asking about todo sync behavior, troubleshooting sync issues, or understanding where todos are stored.
npx claudepluginhub nsheaps/ai-mktpl --plugin todo-syncHow this skill is triggered — by the user, by Claude, or both
Slash command
/todo-sync:todo-syncThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
This plugin automatically synchronizes your todos and plans from the global Claude directory (`~/.claude/`) to your current project's `.claude/` directory.
Guides technical evaluation of code review feedback: read fully, restate for understanding, verify against codebase, respond with reasoning or pushback before implementing.
Share bugs, ideas, or general feedback.
This plugin automatically synchronizes your todos and plans from the global Claude directory (~/.claude/) to your current project's .claude/ directory.
The plugin uses a PostToolUse hook that triggers after every TodoWrite tool call:
~/.claude/todos/.claude/todos/ in your project~/.claude/plans/ to .claude/plans/~/.claude/todos/{session-id}.json~/.claude/plans/{plan-name}.md.claude/todos/{session-id}.json.claude/plans/{plan-name}.mdTodos: When both source and destination files exist, todos are merged by deduplicating on the content field. This prevents duplicate todo entries.
Plans: Plans are copied if the source is newer than the destination or if the destination doesn't exist.
~/.claude/todos/ contains files for your session/plugins command outputclaude --debugThe script creates directories automatically. If you see permission errors:
.claude/ isn't gitignored with restrictive permissionsFiles containing only [] (empty arrays) are skipped during sync to avoid cluttering the project.
The plugin automatically adds patterns to ~/.config/git/ignore (the global gitignore) for .claude/todos/ and .claude/plans/ directories. This prevents synced files from being committed in any project by default.
If you want to track todos in version control for a specific project, add explicit !.claude/todos/ pattern to that project's .gitignore.
The sync happens automatically on TodoWrite. If you need to manually trigger it, simply update your todos:
TodoWrite: [your todos here]
The hook will fire and sync will occur.