Skip to content
Development
Skill

/plugin-review

Review plugin quality with tiered checks and dependency scoping. Use for PR and pre-release audits.

From plugin
claude-night-market
343200 skills60 agents162 commands1 MCP

Claude Code

$ npx -y skills add athola/claude-night-market --skill plugin-review --agent claude-code

SKILL.md

plugin-review.SKILL.md
name: plugin-review
description: 'Review plugin quality with tiered checks and dependency scoping. Use for PR and pre-release audits.'
alwaysApply: false
category: plugin-management
tags:
- review
- quality
- validation
- testing
- architecture
dependencies:
- skills-eval
- hooks-eval
- rules-eval
tools:
- validate_plugin.py
- skill_analyzer.py
progressive_loading: true

Plugin Review

Overview

Tiered quality review of plugins with dependency-aware scoping.

When NOT To Use

  • Reviewing one skill rather than a plugin (use `abstract:skills-eval`)
  • Reviewing hooks (use `abstract:hooks-eval`)
  • Tracing `Skill()` references across plugins (use

`abstract:skill-graph-audit`)

Tiers

| Tier | Trigger | Scope | Depth | Duration | |------|---------|-------|-------|----------| | branch | Default | Affected and related | Quick gates | ~2 min | | pr | Before merge | Affected and related | Standard | ~5 min | | release | Before version bump | Every plugin | Full | ~15 min |

Orchestration

1. **Detect scope**: parse `--tier` flag, find affected plugins from git diff, resolve related plugins from `docs/plugin-dependencies.json` 2. **Plan**: build check matrix (tier x plugin x role) 3. **Execute**: run checks per tier definition 4. **Report**: per-plugin table, aggregate verdict

Scope Detection

Affected plugins: `git diff main --name-only` filtered to `plugins/*/`.

Related plugins: load `docs/plugin-dependencies.json`, look up each affected plugin's reverse index to find dependents. Mark as "related" (lighter checks).

If `--tier release` or no git diff available, scope to all plugins.

Module Loading

  • **Always**: this SKILL.md (orchestration logic)
  • **branch tier**: load `modules/tier-branch.md`
  • **pr tier**: load `modules/tier-branch.md` then

`modules/tier-pr.md`

  • **release tier**: load all tier modules plus

`modules/tier-release.md`

  • **When resolving deps**: load

`modules/dependency-detection.md`

Verdict

| Result | Meaning | |--------|---------| | PASS | All checks green | | PASS-WITH-WARNINGS | Non-blocking issues | | FAIL | Blocking issues found |

Output Format

Plugin Review (<tier> tier)
Affected: <list>
Related:  <list> (<reason>)

Plugin          test  lint  type  reg   verdict
<name>          PASS  PASS  PASS  PASS  PASS
...

Verdict: <PASS|PASS-WITH-WARNINGS|FAIL> (N/N plugins healthy)

PR and release tiers add scorecard sections.

Quality Gate Mode

The `--quality-gate` flag enables CI/CD integration with exit codes that distinguish warnings from failures:

  • `0`: all quality gates passed
  • `1`: warnings present but gates passed (non-blocking)
  • `2`: quality gate failures (blocking)
  • `3`: critical issues found (blocking)

Use `--fail-on warning` to treat warnings as blocking.

Configuration

Place a `.plugin-review.yaml` file in the plugin root to customize thresholds and focus areas:

plugin_review:
  quality_gates:
    structure_min: 80
    skills_min: 75
    hooks_min: 70
    tokens_max_total: 50000
    bloat_max_percentage: 15
  focus_areas:
    - skills
    - hooks
    - tokens
  exclude_patterns:
    - "*/legacy/*"
    - "*/deprecated/*"
  severity_overrides:
    missing_description: warning
    large_file: info

See the `/plugin-review` command reference for full usage examples.

Exit Criteria

  • [ ] The output includes a per-plugin table with columns: test, lint, type, reg, verdict, and

an aggregate PASS / PASS-WITH-WARNINGS / FAIL verdict.

  • [ ] Scope detection identifies affected plugins via `git diff main --name-only` filtered to

`plugins/*/`; if git diff is unavailable, the skill falls back to all-plugin scope and states this explicitly.

  • [ ] Any plugin scoring below the `structure_min` (default 80) or `skills_min` (default 75)

threshold is listed as a FAIL, not a warning.

  • [ ] `--quality-gate` mode returns exit code 2 for blocking failures and exit code 1 for

non-blocking warnings, distinguishable by the calling CI step.

Read more
@athola
Ships withclaude-night-market

A plugin marketplace for Claude Code. Install only the plugins you need to run git workflows, code review, spec-driven development, and autonomous agents from inside your Claude Code session.

343200 skills60 agents1 MCP
Get the whole plugin

Stars on GitHub

Momentum

stars in total
343
Star history of athola/claude-night-market on GitHub, a chart by star-history.com

Other skills on claude-night-market.

More skills from other plugins.

brainstorming
Auto-invoked

brainstorming

You MUST use this before any creative work - creating features, building components, adding functionality, modifying behavior, or…

@obra@obraInstall Skill
ask-matt

ask-matt

Ask which skill or flow fits your situation. A router over the skills in this repo.

skills11d309k
@mattpocock@mattpocockInstall Skill
accessibility
Auto-invoked

accessibility

Design, implement, and audit accessible UI to WCAG 2.2 Level AA across Web, iOS, and Android — semantic ARIA roles and labels,…

ecc13d293k
@affaan-m@affaan-mInstall Skill
compiler-commit

compiler-commit

Use when you want to verify compiler changes and commit with the correct convention. Runs tests, lint, and format, then commits…

react2d252k
@facebook@facebookInstall Skill

Questions about plugin-review.

Which coding agents can use plugin-review?
plugin-review installs in Claude Code, Codex, Cursor, Gemini CLI, GitHub Copilot, OpenCode and Windsurf with the skills CLI, using each agent's flag shown on this page. Flowy's auto-invocation, which fires a skill when your prompt matches, runs in Claude Code only.