Marketplaces / vanillagreencom/kendex / commit-guards
commit-guards
Hooks and skills that guard what gets committed
11 packages
| Package | Kind |
|---|---|
| commit-guards Load to add, tune, or debug a commit guard lane, its git hooks, or COMMIT_GUARDS_* settings. | skill |
| doc-limits Load to add, tune, or debug document byte ceilings and DOC_LIMITS_* settings. | skill |
| preflight Load to run, tune, or debug preflight. | skill |
| block-bare-cd Refuse a command with a line that is only a `cd`. A here-document body is not judged because it is input to a command, not a line the shell runs. Where the shell persists across tool calls (Claude Code) a bare cd re-roots every later command and every hook that judges the working directory, while instruction files and hook paths stay with the launch directory; a cd into a worktree inside the repos | hook |
| block-repo-copy Block a copy (cp, rsync, tar, git clone) whose source names a `.git` or `target` path component and whose destination is under /tmp, /var/tmp or $TMPDIR. Suggests reading the source in place or building a minimal fixture. | hook |
| block-unsafe-rm Block rm on shared directory roots, globs directly under them, child paths with . or .. segments, and paths that start with a variable that may expand empty. Keep a private mktemp directory and remove it in the same shell call. Not run on antigravity: its required command-safety companion does not name antigravity, whose payload is toolCall.args. | hook |
| block-argv-kill Refuse a command that kills processes by name or by argv pattern (`pkill`, `killall`), whatever flags follow. On a machine where several agents share one checkout and its worktrees, a pattern that matches a tool's name matches every lane running that tool, the caller's own shell included when its command line holds the pattern. Names the accepted forms: `kill <pid>` on a PID the caller recorded wh | hook |
| block-worktree-refresh Report an early advisory for one plain bare project-writing kendex call from a linked git worktree only after the installed executable on the hook's PATH confirms its parsed project-write guard. Other plain writer-word matches retain baseline refusals, including compound commands, prefixes and executable paths. Global, read and preview commands retain their plain classification. Non-plain text nam | hook |
| pre-commit-check Defers commits to executable, marked pre-commit and commit-msg hooks in the working repository. Refuses a literal bypass option or core.hooksPath override on a direct git commit call. Also refuses the commit's own literal bypass flag after a core.hooksPath write or unset in the same command, and names the separate-command remedy. Reads quoted words, comments, command boundaries and option values w | hook |
| session-drift-check On a fresh session start (not resume or compact), runs `kendex check --quiet --report-only` and surfaces kendex drift to the agent — outdated items (`kendex refresh`), items removed upstream (`kendex remove --kind <kind> <name>`, `--global` in a global section), unreachable sources, and packages not yet evaluated against their sources (a background refresh settles them). Outside a lane, prints not | hook |
| task-completed-check Before a task is marked complete, runs `cargo clippy --all-targets` once for the workspace members that own the changed Rust files and every member depending on one of them, however indirectly, through a path dependency whose directory is that member's, `-p` per member as the one `cargo metadata --no-deps` read names them, against the repository's Cargo.toml, or the nearest one above a changed fil | hook |