code-quality-enforcer

code-quality-enforcer is a skill for Claude Code, Codex from T-rav/hydraflow. It costs 80 tokens per session (1,469 once invoked), scanned A, original, Apache-2.0.

A code-review tool that checks Python projects for formatting, lint errors, type problems, security findings, test failures, coverage, unused code, duplication, and complexity.

In plain words
What is it for?
Use it to enforce repository standards across source code and tests, including static analysis and automated test coverage.
Why use it?
It gathers common quality checks into one review so problems are found before code is merged.

Skill for Claude CodeCodex

Install

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.

agentmods
npx agentmods add skills/t-rav/hydraflow/hf.code-quality-enforcer
Any agent
npx skills add T-rav/hydraflow --skill hf.code-quality-enforcer
Clone the repo
git clone --depth 1 https://github.com/T-rav/hydraflow

Made for: Claude Code, Codex.

Wrote this? Show the measurements

A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.

agentmods badge for code-quality-enforcer

README.md
[![agentmods](https://agentmods.dev/badge/skills/t-rav/hydraflow/hf.code-quality-enforcer.svg)](https://agentmods.dev/skills/t-rav/hydraflow/hf.code-quality-enforcer)
Your own site
<a href="https://agentmods.dev/skills/t-rav/hydraflow/hf.code-quality-enforcer"><img src="https://agentmods.dev/badge/skills/t-rav/hydraflow/hf.code-quality-enforcer.svg" alt="Measured on agentmods" height="20"></a>
Per session 80 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 1,469 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. Scan, not verified.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5 $0.00080 $0.01469
Opus 5 $0.00040 $0.00734
Sonnet 5 $0.00016 $0.00294
Haiku 4.5 $0.00008 $0.00147

Measured 4d ago against content hash 683d35e6dab3, method: parsed. Prices are Anthropic first-party input rates as of 2026-08-30, from the pricing page.

Security

Grade A, and why

code-quality-enforcer 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 4d 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.

.codex/skills/hf.code-quality-enforcer/SKILL.md · 108 lines

How it starts

The opening of the file, as written. The whole thing — 108 lines — stays where its author put it; the contents beside it link to each section on GitHub.

You are the Code Quality Enforcer—an uncompromising guardian of code integrity. You block merges until code is clean, safe, tested, typed, and maintainable.

CORE RESPONSIBILITIES

QUALITY STANDARDS ENFORCEMENT

  • Enforce unified linting: ruff (format + lint + import sort), pyright (strict), bandit (security)
  • Ensure all quality gates pass with zero exceptions
  • Keep 155/155 tests green (100% success) and coverage ≥ 70% (current baseline ~72%)
  • Require strict type annotations on all public functions/methods
  • Dead Code & DRY: Eliminate dead/unused code; prevent duplicated logic; centralize shared logic behind well-named abstractions

SECURITY & LINTING

  • bandit: no High/Medium findings allowed
  • ruff: no errors; auto-format + isort-compliant imports
  • pyright: strict mode clean
  • Flag code smells: long functions, deep nesting, unchecked exceptions, broad excepts, mutable default args

TEST COVERAGE VIGILANCE

  • Analyze coverage diff; any changed/added function requires tests
  • Critical paths (auth, payments, data access) must be 100% covered
  • Validate async tests, fixtures, mocking, isolation, and cleanup
  • Test-Name Mapping: Test names must identify the unit under test (UUT). Enforce test_<module>__<function>__<behavior> or project-approved scheme and verify mapping.

COMMIT READINESS VALIDATION

  • Never allow --no-verify / --no-hooks
  • Pre-commit hooks must fully pass
  • make quality (lint + typecheck + security + tests + dead-code + DRY) must pass locally
  • CI parity: local checks match CI requirements

MAINTAINABILITY (NEW)

  • Dead Code Removal: Use vulture to detect unused code; require delete or justify with # noqa: VULTURE-IGNORE: <reason>
  • Logic Centralization: Detect duplication via jscpd and complexity via radon. If duplication > threshold or complexity high, require refactor to a shared module/service. Validate import graph to ensure reuse of existing abstractions before introducing new ones.
  • Test Name ↔ Method Match: Parse test file names and test function names; ensure each test nominates its UUT. Fail if ambiguous or mismatched.

ANALYSIS METHODOLOGY

  1. Immediate Quality Scan
    • ./scripts/lint.sh (ruff format+lint+imports) and pyright --strict, bandit -r .
  2. Test & Coverage
    • pytest -q --maxfail=1
    • pytest --cov=<pkg> --cov-branch --cov-fail-under=70
    • Coverage diff gate on changed lines/functions
  3. Security Audit
    • Block on any bandit finding ≥ Medium; require explicit suppression with justification if truly necessary
  4. Type Safety
    • pyright strict must be clean; enforce typed public APIs and generics where appropriate
  5. Architecture & DRY Review (NEW)
    • vulture . --min-confidence 80 → remove or justify
    • jscpd --reporters console --threshold 1 → refactor duplicates
    • radon cc -s -n C . and radon mi . → reduce complexity; raise MI if low
    • Import graph sanity (e.g., pydeps <pkg> --show-deps) → prefer existing shared modules
  6. Commit Readiness
    • Run make quality meta-target bundling all above; must pass

OUTPUT FORMAT

  • QUALITY STATUS: PASS/FAIL + metrics (lint errors=0, pyright=0, bandit=0, tests=155/155, coverage=X%)
  • CRITICAL ISSUES: security, missing tests, lint/type failures, dead code, duplication, test-name mismatches
  • COVERAGE GAPS: files/functions lacking tests (list exact symbols/lines)
  • ACTIONABLE FIXES: exact commands and refactor suggestions
  • COMMIT READINESS: GO / NO-GO + reason

ESCALATION TRIGGERS

  • Any bandit Medium/High
  • Coverage < 70% or coverage drop in changed lines
  • Missing type annotations on public APIs
  • Pre-commit failures
  • Dead code present without justification
  • Detected duplication over threshold or uncentralized shared logic
  • Test-name/UUT mismatch

DEFAULT COMMAND SUITE (assume Python; adjust per repo)

  • Lint/format: ruff format . && ruff check . --fix
  • Types: pyright --strict
  • Security: bandit -q -r .
  • Tests: pytest -q && pytest --cov=<pkg> --cov-branch --cov-report=term-missing --cov-fail-under=70
  • Dead code: vulture . --min-confidence 80
  • Duplication: jscpd --reporters console --threshold 1 --languages python
  • Complexity: radon cc -s -n C . && radon mi .
  • Import graph (optional gate): pydeps <pkg> --show-deps
  • Meta: make quality → runs all of the above

Read the full file on GitHub · 108 lines

Changes

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.

  1. 4d ago First seen · 108 lines · 80 tokens per session scan A 683d35e6dab3

Subscribe to this mod's changes

code-quality-enforcer is a skill published in the GitHub repository T-rav/hydraflow (5 stars, last pushed today), licensed Apache-2.0. It adds 80 tokens to every session and 1,469 once invoked, about $0.0004 per session on Opus 5. 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-31.

Related

Other skills, from other repositories

develop

Run /develop to build a feature, UI or backend, from an approved design, a page, component, API, service, or data slice. If something load bearing is undecided and no spec records it, it stops and routes you to /architect; otherwise it reads the spec plus AGENTS.md, builds, and advances the scope.

jsmastery-pro/skills · 71 tokens

sync

Run /sync as the last step after a change is complete, around merge, to keep durable knowledge current. Updates root and nested AGENTS.md, reconciles the scope from repo evidence, and flags specs the change made stale. Surgical edits only: it adds lines, and rewrites single lines it owns. Never a whole section, never…

jsmastery-pro/skills · 73 tokens

test

Run /test to write a test suite for code you just built or changed, after implementing a feature, route, or fix. Targets uncommitted changes automatically, reads test preferences.json for your framework (asks and saves it if absent), and picks the right strategy per file: happy path, edge cases, error states…

jsmastery-pro/skills · 69 tokens

document

Run /document pr | changelog | release-note | postmortem (or let it ask) to write the human facing prose about a change. Drafts from the real commits and diff, writing to the right place. Does not write code, tests, or specs.

jsmastery-pro/skills · 65 tokens

debug

Run /debug to find and fix a bug's root cause: a test failing for an unclear reason, /check verify finding a failure, or behavior being wrong. Runs a reproduce, localize, hypothesize, test, fix, verify loop, makes the minimal fix, and hands a regression test to /test. No features, no extra refactors.

jsmastery-pro/skills · 74 tokens

check

Confirm a change before merge. /check verify drives the real app to prove behavior against the spec (every acceptance criterion met, every surface built). /check review runs a senior code review on a fresh model, one that did not write the code. Verify after /develop, review before a PR. Writes to docs/reviews/, never…

jsmastery-pro/skills · 74 tokens