Skip to content
PluginStats

block-no-verify weekly downloads statistics

By tupe12334 · npm · Claude Code

Blocks AI agents from bypassing git hooks: --no-verify, core.hooksPath overrides, hook-manager disable env vars, and the same hidden in git aliases or shell wrappers.

View on npm Fresh · Oct 18, 2026

block-no-verify has 10,371 recorded weekly downloads on npm, a decrease of 63.0% over the past 30 days, ranking #954 of 2,322 tracked listings.

Weekly downloads
10,371
Official API · Oct 18, 2026
7-day growth
-62.5%
-17.3K weekly downloads
30-day growth
-63.0%
-17.6K weekly downloads
90-day growth
-34.1%
-5.4K weekly downloads
Rank
#954
Among tracked npm listings

About block-no-verify

block-no-verify

A security tool that blocks ways AI agents can bypass local git hooks. It flags the --no-verify flag, core.hooksPath overrides, GitHub MCP tool calls that write through the GitHub API, and hook-manager disable env vars (Husky, Lefthook, Overcommit, pre-commit).

Powered by @polyhook/sdk — write the hook once, run it everywhere.

Why?

When using AI coding assistants like Claude Code, Cursor, Windsurf, Cline, or Amp, you might have git hooks (pre-commit, pre-push) that enforce code quality, run tests, or perform security checks. Agents can side-step those hooks in several common ways:

  • passing --no-verify to a git command,
  • overriding core.hooksPath in any letter case (e.g. git -c core.hookspath=/dev/null ...),
  • calling GitHub MCP tools such as mcp__github__push_files that commit or merge directly through the GitHub API, skipping the local hook chain entirely,
  • setting a hook manager's own disable environment variable, e.g. HUSKY=0, LEFTHOOK=0, OVERCOMMIT_DISABLE=1, or a non-empty SKIP= (pre-commit framework),
  • hiding any of the above in a git alias (git -c alias.ci="commit --no-verify" ci),
  • wrapping any of the above in a shell command string (bash -c "...", sh -c '...'),
  • running any of the above from a string in code passed to an interpreter (python3 -c, node -e, perl -e, an awk program) or fed to one on stdin, from an echo/printf script piped into a shell, or from a pwsh -EncodedCommand value.

This package provides a CLI that blocks all of these, working with any AI tool that supports command / tool-use hooks. Text that only mentions a bypass inside a commit or PR message is allowed. A command it cannot parse (for example an unterminated ${) is blocked, because it cannot confirm that the command is safe.

Used By

<a href="https://github.com/langgenius/dify"> <img src="https://github.com/langgenius.png" width="50" height="50" alt="Dify" title="Dify - Open-source LLM app development platform (133k★)"> </a> <a href="https://github.com/nicolargo/glances"> <img src="https://raw.githubusercontent.com/nicolargo/glances/develop/docs/_static/Glances%20Text%20Logo.svg" width="50" height="50" alt="Glances" title="Glances - Cross-platform system monitoring tool (32k★)"> </a> <a href="https://github.com/pubkey/rxdb"> <img src="https://raw.githubusercontent.com/pubkey/rxdb/master/docs-src/static/files/logo/rxdb_mini.svg" width="50" height="50" alt="RxDB" title="RxDB - Local-first database for JavaScript applications (23k★)"> </a> <a href="https://github.com/promptfoo/promptfoo"> <img src="https://github.com/promptfoo.png" width="50" height="50" alt="Promptfoo" title="Promptfoo - LLM testing and evaluation framework (18k★)"> </a> <a href="https://github.com/YFGaia/dify-plus"> <img src="https://github.com/YFGaia.png" width="50" height="50" alt="Dify Plus" title="Dify Plus - Enhanced Dify distribution (2k★)"> </a> <a href="https://github.com/forcedotcom/salesforcedx-vscode"> <img src="https://github.com/forcedotcom.png" width="50" height="50" alt="Salesforce Extensions for VS Code" title="Salesforce Extensions for VS Code (1k★)"> </a> <a href="https://centy.io"> <img src="https://github.com/centy-io.png" width="50" height="50" alt="Centy" title="Centy"> </a> <a href="https://worktree.io"> <img src="https://github.com/worktree-io.png" width="50" height="50" alt="Worktree" title="Worktree"> </a>

Supported Agents

See polyhook's supported tools list.

Installation

Add as a dev dependency to ensure a consistent, pinned version:

pnpm add -D block-no-verify
# or
npm install --save-dev block-no-verify

Then use it with pnpm exec block-no-verify or npm exec block-no-verify.

Platform Integration

Claude Code

Add to your .claude/settings.json. The first matcher handles shell commands (--no-verify, core.hooksPath); the second matches any GitHub MCP tool so direct-to-API writes are also blocked:

{
  "hooks": {
    "PreToolUse": [
      {
        "matcher": "Bash",
        "hooks": [
          {
            "type": "command",
            "command": "pnpm exec block-no-verify"
          }
        ]
      },
      {
        "matcher": "mcp__github__.*",
        "hooks": [
          {
            "type": "command",
            "command": "pnpm exec block-no-verify"
          }
        ]
      }
    ]
  }
}
Cursor

Cursor 1.7+ supports hooks via .cursor/hooks.json. The beforeShellExecution hook runs before any shell command.

Create .cursor/hooks.json in your project root:

{
  "version": 1,
  "hooks": {
    "beforeShellExecution": [
      {
        "command": "pnpm exec block-no-verify"
      }
    ]
  }
}

Note: Cursor hooks are in beta. See Cursor Hooks Documentation for the latest information.

Windsurf

Add to your .windsurf/settings.json:

{
  "hooks": {
    "PreToolUse": [
      {
        "matcher": ".*",
        "hooks": [
          {
            "type": "command",
            "command": "pnpm exec block-no-verify"
          }
        ]
      }
    ]
  }
}
Gemini CLI

Add to your .gemini/settings.json:

{
  "hooks": {
    "BeforeTool": [
      {
        "matcher": "run_shell_command",
        "hooks": [
          {
            "name": "block-no-verify",
            "type": "command",
            "command": "pnpm exec block-no-verify",
            "timeout": 5000
          }
        ]
      }
    ]
  }
}

Note: Hooks are disabled by default in Gemini CLI. See Gemini CLI Hooks Documentation for details.

Supported Git Commands

The following git commands are monitored for --no-verify:

  • git commit
  • git push
  • git merge
  • git cherry-pick
  • git rebase
  • git am

Blocked GitHub MCP Tools…

Description from the npm listing.

  • git
  • no-verify
  • hooks
  • cli
  • security
  • ai-safety
  • claude-code
  • agent-governance
  • pre-commit
  • husky
  • lefthook

README badge

Show your rank in a README or on your website. The badge updates automatically.

Charts

Images: 30d · 1y · all time · 1600×900 dark

Adoption over time

block-no-verify weekly downloads on npm, last 90 days: 10,371 weekly downloads as of Oct 18, 2026, -34.1% over 90 days.block-no-verifyWeekly downloads on npm · Last 90 days10,371downloads / week-34.1% over 90 days010K20K30K40K50KJul 20Aug 4Aug 19Sep 3Sep 18Oct 3Oct 18downloads / weekobservedarchived (Internet Archive)no observationsJul 22, 2026 – Oct 18, 2026 · 89 observations · Updated Oc…pluginstats.com
block-no-verify weekly downloads on npm, last 90 days: 10,371 weekly downloads as of Oct 18, 2026, -34.1% over 90 days.

7/30/90-day growth

block-no-verify weekly downloads growth on npm: -62.5% over 7 days, -63.0% over 30 days, -34.1% over 90 days.block-no-verifyWeekly downloads growth on npm10,371downloads / week now7-day growth-17,308 weekly downloads-62.5%30-day growth-17,643 weekly downloads-63.0%90-day growth-5,375 weekly downloads-34.1%Growth vs. nearest observation to each baseline date · Updated Oct 18, 2026pluginstats.com
block-no-verify weekly downloads growth on npm: -62.5% over 7 days, -63.0% over 30 days, -34.1% over 90 days.

Ranking history

block-no-verify npm ranking history: currently #954 (by weekly downloads).block-no-verifynpm ranking · by weekly downloads · Last 90 days#954current rank#200#300#400#500#600#700#800#900#1000Jul 22Aug 6Aug 21Sep 5Sep 20Oct 5Oct 20rankOct 17, 2026 – Oct 20, 2026 · 4 observations · Updated Oct 18, 2026pluginstats.com
block-no-verify npm ranking history: currently #954 (by weekly downloads).

Listing placement

All npm2,320 listings · 116 pages · 1,161 shown · page 48, #15 (overall #955)
All npm: every listing in weekly downloads order

Listing placement

Claude Code255 listings · 13 pages · page 2, #20 (overall #40)
Claude Code: every listing in weekly downloads order

Filled points are observed values; hollow points come from Internet Archive snapshots of the listing page. Dashed segments span periods with no observations — values between points are not interpolated.

Each band is one page of 20. Weekly downloads on a linear scale. Placement is projected from weekly downloads, so it can differ from the marketplace's own sort order. Hover a dot to see the listing.

Recent observations

Full history (544)
Recent weekly downloads observations for block-no-verify
Date (UTC)Weekly downloadsChange vs. previous
10,371-1.7K
12,058-3.2K
15,252-3.2K
18,446-5K
23,444-3K
26,4670
26,467-1.2K
27,679+1.1K
26,612+535
26,077+3.8K
22,241+69
22,172-5.1K
27,293-9.3K
36,552—

Similar npm Claude Code plugins

All 20 block-no-verify alternatives

Data source

Weekly downloads (trailing 7 complete days) come from the official npm downloads API. Downloads include CI and mirrors and are not equivalent to installs or users. npm publishes no ratings.

Listing: https://www.npmjs.com/package/block-no-verify. First seen Oct 16, 2026; last successful collection Oct 20, 2026. See the methodology.