Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
/plugin marketplace add karanb192/claude-code-hooksnpx agentmods add plugins/karanb192/claude-code-hooks/protect-testsgit clone --depth 1 https://github.com/karanb192/claude-code-hooksGrade A, and why
protect-tests scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 2d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
What it actually says
{
"name": "protect-tests",
"description": "Stops the \"fake green\" failure mode for Claude Code. A PreToolUse guard on Bash|Edit|MultiEdit|Write that denies making a suite pass by deleting test files or directories (rm / git rm), renaming a test to a disabled name (.bak, .disabled, ...), or adding a skip/xfail/ignore marker to an existing test, across pytest, unittest, jest/mocha/vitest, Go, JUnit/TestNG, NUnit/MSTest, RSpec, and Rust. Never blocks writing new, real tests or editing test bodies. Three safety levels (critical/high/strict), tunable via HOOK_SAFETY_LEVEL.",
"version": "1.0.0",
"author": {
"name": "Karan Bansal",
"url": "https://github.com/karanb192"
},
"homepage": "https://github.com/karanb192/claude-code-hooks",
"license": "MIT",
"keywords": [
"claude-code",
"hooks",
"safety",
"tests",
"guardrails",
"pretooluse"
]
}
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 2d ago First seen · 20 lines scan A 55fae4568a9b
protect-tests is a plugin published in the GitHub repository karanb192/claude-code-hooks (491 stars, last pushed 9d ago), licensed MIT. Its token cost is not measured: this kind of file is read by the harness, not the model. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.
Other plugins, from other repositories
memory-kit
Memory for Claude Code agents that survives the session boundary — and the builder's layers distilled from a year of daily production use.
memory-kit
Persistent memory for Claude Code agents: a hot cache injected every session and held under three size caps, per-session handoffs, and agent-audited promotion into knowledge articles and rules. Carries the builder's layers too — executor/recon/idea-validator agents, session review, second opinion, agent QA and a…
promptly-prompt
Clarity gate: intercepts unclear prompts, forces restate-to-align, then diagnose root cause and reuse the domain's mature practices.
promptly-prompt
Clarity gate for prompts: intercepts unclear requests and forces AI to restate intent to align with the user, then diagnose the root cause and reuse the domain's mature, established practices before proceeding.
air
Plugin marketplace listing 2 plugins: voiceprint, time-sense.
time-sense
Claude always knows the real date and time. A tiny hook stamps every message with the current clock, so it stops guessing 'tonight' at noon.