Ten focused Claude Code plugins for everyday developer productivity.
Ten tiny, deterministic Python helpers wrapped as Claude Code slash commands. Each one tackles a single real-world productivity pain. No magic. No
pip install. Hermetic tests. MIT.
| # | Plugin | What it does | Tests |
|---|---|---|---|
| 1 | commit-narrator |
Semantic commit message from git diff --cached, including the why |
8 |
| 2 | pr-storyteller |
PR title + body + test plan from commits and diff vs base branch | 6 |
| 3 | test-gap |
Lines in your diff lacking test coverage (Cobertura / lcov / coverage.json) | 9 |
| 4 | deps-doctor |
Multi-ecosystem dependency audit (npm, pip, cargo, go) — one report | 8 |
| 5 | env-lint |
.env vs .env.example key parity — never prints values |
7 |
| 6 | secret-guard |
Pre-commit secret scanner: pattern + entropy, redacted output | 10 |
| 7 | standup-gen |
Daily standup notes from git activity across one or many repos | 8 |
| 8 | todo-harvest |
TODO/FIXME/HACK scan with git blame author + age |
9 |
| 9 | flaky-detector |
Run a test command N times, report per-test flakiness % | 11 |
| 10 | changelog-forge |
Conventional commits → CHANGELOG section + semver bump suggestion | 13 |
89 hermetic tests across the suite. All green.
Most "developer productivity" tooling sells you on a magic black box and asks you to trust the output. That's the wrong shape for tools you run dozens of times a day. These plugins are the opposite:
- Deterministic helpers. Each plugin's core is a small Python script that does exactly one thing and emits structured output you can audit.
- Claude Code is the runtime, not the brain. The slash command makes the helper easy to invoke; Claude reasons over the output. You can always run the helper without Claude and get the same data.
- No
pip installto use a plugin. Python 3 standard library only at runtime. - Hermetic tests. Every test that touches git builds its own temp repo with explicit identity. No network. No leakage.
- Each plugin is its own repo. Install one. Install all. Vendor what you want.
git clone https://github.com/mturac/pluginpool-<plugin-name> ~/.claude/plugins/<plugin-name>Restart Claude Code; the slash command /<plugin-name> appears under /help.
for p in commit-narrator pr-storyteller test-gap deps-doctor env-lint \
secret-guard standup-gen todo-harvest flaky-detector changelog-forge; do
git clone "https://github.com/mturac/pluginpool-$p" "$HOME/.claude/plugins/$p"
doneEvery helper has a plain CLI. For example:
cd ~/.claude/plugins/commit-narrator
git -C ~/your/repo diff --staged | python3 scripts/narrate.py --diff - --format jsonThis is how the test suites exercise the helpers — and how you can wire any of them into CI.
<plugin>/
├── .claude-plugin/
│ └── plugin.json # name, version, description, author
├── commands/
│ └── <plugin>.md # slash command (YAML frontmatter + body)
├── scripts/
│ └── <helper>.py # Python 3 stdlib-only CLI
├── tests/
│ ├── test_<helper>.py # hermetic pytest suite
│ └── fixtures/ # synthetic fixtures (where applicable)
├── examples/
│ └── README.md # copy-pasteable input → output simulations
├── Makefile # `make test`
├── LICENSE # MIT
├── .gitignore
└── README.md
Everything is intentionally small. The biggest helper (flaky.py) is ~240 lines. The smallest (envlint.py) is ~70.
Per-plugin:
cd <plugin>
make test
# or
python3 -m pytest tests/ -vFull sweep across all 10 plugins (run from a directory that contains all of them as siblings):
for p in commit-narrator pr-storyteller test-gap deps-doctor env-lint \
secret-guard standup-gen todo-harvest flaky-detector changelog-forge; do
(cd "$p" && python3 -m pytest tests/ -q --no-header)
doneYou should see ten lines like 8 passed in 1.45s summing to 89.
Each plugin had a multi-pass code review with regression tests for every issue found. Notable invariants enforced by the suite:
- No
shell=True, noeval, noexecin any helper (grep -rclean). - env-lint writes a fake value
SUPERSECRETVALUE123into a temp.envduring its tests and asserts that string never appears in JSON or markdown output. Redaction is a tested property, not a comment. - secret-guard asserts that every finding's raw matched string is absent from output — the redaction (
rule + first 4 chars + …) is verified per pattern. - test-gap explicitly distinguishes "no coverage report present" from "100% covered" — a missing report yields a non-zero exit and a clear warning, never a silent green.
- deps-doctor treats missing audit tools as
"skipped: tool not installed"— never silently green. - flaky-detector parses both
pytest -vper-test lines andpytest -qtail-summary lines, and exits non-zero with a warning if neither produced parseable output.
Each plugin ships under MIT. See the LICENSE file inside each plugin directory.
- https://github.com/mturac/pluginpool-commit-narrator
- https://github.com/mturac/pluginpool-pr-storyteller
- https://github.com/mturac/pluginpool-test-gap
- https://github.com/mturac/pluginpool-deps-doctor
- https://github.com/mturac/pluginpool-env-lint
- https://github.com/mturac/pluginpool-secret-guard
- https://github.com/mturac/pluginpool-standup-gen
- https://github.com/mturac/pluginpool-todo-harvest
- https://github.com/mturac/pluginpool-flaky-detector
- https://github.com/mturac/pluginpool-changelog-forge