A collection of Claude Code plugins for enhanced development workflows.
Lightweight, native knowledge management for Claude Code projects. Three layers of persistent knowledge: Rules (always active), Knowledge (on demand), and Memory (automatic).
Commands: /init, /query, /prime, /curate, /reindex, /backfill-knowledge, /migrate, /statusline
Generic task and worktree workflow system. Keep the backlog in GitHub Issues (default for a GitHub repo; a repo that still has tasks/*.md files stays local until it migrates, and tasks.backend in .work-system.toml pins either) or as local markdown files, work in isolated git worktrees, and track progress through the full lifecycle. /kickoff runs the repo's default worker agent (Claude, codex, grok, kimi, or a PATH-detected cc-harness foreign agent — a single committed per-project default), or, when none is set, shows a picker and offers to save your choice; override per run with flags like --opus/--sol or --pick. Inside a herdr session it auto-opens a tab (named after the task, shortened for the sidebar and prefixed with the task's state glyph — ● active, ◇ in review, ◆ approved, ✓ merged) with the worktree as cwd, starts the chosen worker, and — for a Claude worker — runs /work-system:continue for you (plugin-qualified, since a Claude Code built-in /continue shadows the bare skill); /adopt auto-opens the same tab once it has built the worktree from an existing branch; /work-system:continue <task> from the main session reopens that tab and resumes it if a stray /exit closed it (for a non-Claude worker that resume is a new Claude session, and for a cc-harness worker it silently drops the foreign-model routing — /continue says so inline); and /close tears the tab down again when the task is merged — from inside a worktree it first offers to hand that whole close to the Manager session at the repo root, which then verifies the merge itself and closes the tab from the outside. For interactive programs an agent cannot drive from its own shell, scripts/herdr-shell.sh runs them in temporary herdr tabs and hands logins over to the user (when to use it). /land does both ends in one command from the worker tab: handoff report, /pr-flow:merge, a confirmed merge, then /close --delegate (delegated unasked when the Manager is clear — the session that kicked the task off, or the only agent at the repo root of a lane without a kicker record; otherwise it asks or closes here). If the lane is torn down under it (a merge with --delete-branch from the main checkout), the landing marker it leaves outside the worktree still lets it hand the close over, and lets the Manager close the task and the tab. /kickoff and /adopt also leave the kicking session's address in the worktree (the Manager backfills it for older lanes on /list and /kickoff), so the worker pings that Manager when the PR opens, a review starts and the terminal gate is reached — scripts/manager.sh resolves it live, falling back to the repo-root agents with a stated leftmost-tab tie-break. /kickoff also records the lane's autonomy mandate (MANDATE.md: what the worker may do unasked, where it must stop, how many review rounds it gets — per repo via [mandate] review_budget in .work-system.toml), so /work-system:continue starts on the next unmet requirement instead of asking what to work on — and so does pr-flow when it opens the PR. With the optional insights plugin installed, /continue records a short retrospective when it reaches its terminal gate or hands work back, and /close records one before teardown (/land adds a handoff report ending in an explicit follow-up list) — linked, never merged, and never a gate on cleanup. Every delegated close hands the lane's open next steps to the Manager as an ordered Follow-ups: list; the Manager runs the mechanical ones itself, asks about the rest, and records whatever stays open in tasks/ROADMAP.md until it is resolved. Deploys belong to the Manager (per repo: [deploy] by / confirm in .work-system.toml): a lane stops at the merge, and the Manager deploys from the main checkout after the close. /land and /pr-flow:merge refuse to merge a lane head that no recorded local review covers (/swarm:review and /cycle record theirs) — a rebase that only renumbers manifest versions stays covered, and a small change since the review can be acknowledged by you after it is shown. After a plugin update, /sessions shows which running herdr sessions still run old plugin code (and which project installs lag) and reloads the idle ones with /reload-plugins.
Commands: /define, /kickoff, /adopt, /continue, /status, /close, /land, /list, /sessions, /statusline
PR review feedback loop. Create PRs with readiness checks, commit + push + trigger @claude review, inspect status, work through review issues interactively, and merge safely with pre-merge documentation checks. Reads a work-system mandate when there is one (no second confirmation for an already-authorized step), and probes whether the repo has an @claude review bot at all. The probe can prove a bot but never its absence (the GitHub App needs no workflow file), so it answers yes / no / cannot-tell; /cycle tries the bot once and remembers a no-answer per repo, so later rounds and lanes go straight to the local /swarm:review (or pin it with review.route in .pr-flow.toml). Inside a work-system lane /merge does not run a project's post-merge deploy when work-system says the Manager owns it.
Commands: /open, /cycle, /check, /fix, /rebase, /merge
Local mixture-of-agents code review. Fans out one review across Claude lens subagents (11 lenses in 5 clusters — breakage, reach, threat, design, consistency) plus the codex and grok CLIs, and kimi on request (--kimi / SWARM_KIMI=1) — up to four independent model families (claude, openai, grok, moonshot). Quick/default run one call per gated cluster; --max splits to lenses. One central profile map controls models, effort and tool budgets, with diff-only Kimi under --quick (Kimi only on the breakage and threat clusters — Moonshot meters it on 5-hour/7-day quotas, which is why it is opt-in), so the gate prunes work for all of them and each finding's lens tag is authoritative. The pipeline merges and verifies their findings, then presents one ranked report — defects and design suggestions kept apart — before anything is pushed. External voices read project files and research online under an OS secret-deny plus repository-write-deny sandbox with a hardened egress policy. Kimi uses ACP over stdio with a read-only shell command allowlist (anything else is rejected) and validates its prompt-obeyed JSON locally and fail-closed; tool-enabled external voices keep a shell for git history and grep under a jail that denies every write except to the scratch and per-user temp/cache dirs, /dev and the backend's own auth state. With --fix / --loop, only Claude applies agreed findings; external agents stay review-only. --pr [<number>] reviews a GitHub PR diff and posts the gated result after one confirmation. Inside a work-system lane a finished review of the whole lane (the branch delta of a committed, clean tree, or --pr against the default branch) records the commit it reviewed, which is what lets /land merge the lane. Complementary to PR Flow's GitHub-side loop. (0.16.x records grok turns, tools and per-turn latency from its streaming-json output and runs grok at low effort for breakage and threat. 0.15.x records finished reviews for work-system's merge gate. 0.14.x resolves each Codex profile family — Astra/Sol/Terra/Luna — to its newest listed model once per run, so GPT-6 and later need no edit. 0.13.x adds central quick/default/max profiles and observed Kimi tool-call telemetry; it does not lift the Grok timeout ceiling or claim measured quota savings. 0.12.x selects the newest canonical Grok once per run, gated by a measured and cached schema probe. 0.11.x adds Kimi as an opt-in fourth family, gives every external voice a shell under an inverted write-deny jail, and retunes the effort profiles; 0.10.x added adapter-owned numeric config; 0.9.x added the reach cluster and grok discovery; 0.8.x added out-of-band prompts and telemetry.)
Commands: /swarm:review [--fix | --loop[=N]] [--quick | --max] [--kimi], /swarm:review --pr [<number>], /swarm:agents (planned: /swarm:adversarial, /swarm:style, /swarm:security — thin subset presets of the default lens set)
Plugin settings system: per-plugin TOML config resolved over schema defaults. Each plugin owns its config file (.work-system.toml, .knowledge-system.toml, .pr-flow.toml), defaults, and validation schema; users override only what they need. list, show, get, set, validate via one script and skill. Includes a [related_projects] sibling-project address book for cross-project orchestration. (Runtime consumers: pr-flow's review.route, work-system's mandate.review_budget, mandate.version_paths, deploy.by/deploy.confirm and tasks.backend.)
Commands: /settings (subcommands: list, show, get, set, unset, validate, defaults)
Private, local reports on how work went, for process and plugin learning (not worker ranking). /insights:report [free text] records one mid-task, when blocked, after finishing, or with no task at all: the project (grouped by main checkout across worktrees), the models and evidenced plugin versions that actually ran, a standalone work summary, friction, what worked, and the reporting model's improvement suggestions. Unknown metadata stays explicitly unknown with a reason. Reports are validated JSON files under ~/.gering-plugins/insights/, published atomically and never overwritten. Nothing is uploaded. Lifecycle reporting is produced by work-system's /continue, /close and /land through this contract; /insights:report stays the manual entry point.
Commands: /insights:report [free text]
/plugin marketplace add gering/claude-plugins
/plugin install knowledge-system
/plugin install work-system
/plugin install pr-flow
/plugin install swarm
/plugin install settings
/plugin install insights
/reload-plugins
Plugins update automatically when the marketplace is refreshed. To manually update:
/plugin marketplace update gering-plugins
/reload-plugins
Structure invariants (JSON validity, version sync, skill frontmatter, no $<digit>
in skill bodies, internal references, shell syntax, plugin tests) are enforced by CI on every PR. Run the same checks
locally before pushing:
python3 scripts/check-structure.py
Requires python3 and node. Node is needed by one plugin test
(plugins/swarm/scripts/test_voice_accounting.py) that executes the swarm
review workflow — the repository's only JavaScript — against synthetic inputs.
That test fails loudly rather than skipping when node is missing, because a test
guarding against silently lost review voices must not silently skip itself.
MIT