Help us improve
Share bugs, ideas, or general feedback.
Share bugs, ideas, or general feedback.
Share bugs, ideas, or general feedback.
Polyglot progressive linting for monorepos — adapter-driven baselines, per-app drift detection, and idempotent skips. Supports JavaScript/TypeScript (ESLint, Biome), Python (Ruff), Go (golangci-lint), Rust (Clippy), Terraform/OpenTofu (tflint), and Ansible (ansible-lint).
npx claudepluginhub theglitchking/gimme-the-lintCreate or refresh progressive-lint baselines (captures existing violations so only NEW ones block future commits)
Show the progressive linting dashboard — per-app baseline status and drift detection
Run progressive linting checks on the current project (only NEW violations above the baseline are flagged)
Get or set the gimme-the-lint update policy (auto | nudge | off)
Re-run the skill linker — refresh symlinks from node_modules into .claude/skills/
Uses power tools
Uses Bash, Write, or Edit tools
Share bugs, ideas, or general feedback.
Own this plugin?
Verify ownership to unlock analytics, metadata editing, and a verified badge.
Sign in to claimOwn this plugin?
Verify ownership to unlock analytics, metadata editing, and a verified badge.
Sign in to claimBased on adoption, maintenance, documentation, and repository signals. Not a security audit or endorsement.
This skill should be used when the model needs to ensure code quality through comprehensive linting and formatting. It provides automatic linting workflows for orchestrators (format → lint → resolve via concurrent agents) and sub-agents (lint touched files before task completion). Prevents claiming "production ready" code without verification. Includes linting rules knowledge base for ruff, mypy, and bandit, plus the linting-root-cause-resolver agent for systematic issue resolution.
Auto-configure code quality tools and generate custom /fix command for parallel agent-based fixing
Comprehensive Pylint skills for Python linting and code quality with configuration, checkers, and CI integration.
Code review, refactoring, linting, anti-pattern detection, and static analysis
Deterministic linting hooks, semantic code validators, and a multi-LLM advisory council. Enforces coding rules mechanically — not by suggestion.
Comprehensive PR review agents specializing in comments, tests, error handling, type design, code quality, and code simplification
Generate production-quality SVG technical diagrams (architecture, flowchart, UML, ER, sequence, etc.) with 7 built-in styles. Export as SVG+PNG via @resvg/resvg-js.
Bash Loop operating mode for Claude Code - action over explanation, tight feedback loops, intelligent context preservation, and graceful subagent control
Autonomous loop engine with orchestrated subagents, DAG-based task execution, context persistence across iterations, and intelligent failure recovery with circuit breaker
Persistent markdown-based planning with task directories, progress tracking, and context engineering for multi-step Claude Code workflows
Eliminate context rot in Claude Code with intelligent memory hierarchy, auto-learning hooks, and specialized subagents. 8-layer architecture with SessionStart/End hooks and MCP knowledge base.
Most projects use linters to catch mistakes and keep code clean. The problem is that when you add a linter to a project that already has a lot of code, the linter finds hundreds — sometimes thousands — of old problems. Turning linting on would block every commit until someone fixes all of it, so teams just never do it. gimme-the-lint solves this by remembering the old problems and only blocking your work when you create a new one. Your team cleans up the old stuff at its own pace; meanwhile no new mess gets in.
v2.0 generalizes that idea to any linter and any language. It is no longer "ESLint + Ruff for webapps" — it is a progressive-lint engine with a pluggable linter adapter for each tool, across JavaScript/TypeScript, Python, Go, Rust, Terraform, and Ansible, in any monorepo shape.
gimme-the-lint creates baselines — snapshots of every existing violation,
stored per app under .gtl/. On each run it lints, then asks one question of
every violation: is this new, or was it already baselined? Only new violations
block.
The trick is the fingerprint. Each violation is identified by
file + rule + message — deliberately not by line number. So a baselined
violation survives code moving up or down a file; only a genuinely new problem
is ever flagged. (In v1 this job was outsourced to the third-party
lint-to-the-future; v2 owns it, which is what makes every linter equal.)
Each app is bound to the linters its package manifest implies — package.json
→ ESLint, pyproject.toml → Ruff, go.mod → golangci-lint, Cargo.toml →
Clippy, biome.json → Biome, ansible.cfg / galaxy.yml → ansible-lint.
Terraform has no manifest, so a directory of *.tf / *.tofu files binds to
tflint by extension. Drift detection runs per app, so a config or linter-version
change in one app never churns the baselines of another.
frontend/
backend/ assumptioninstall seeds each app with a curated,
security-aware config for its linter (create-if-absent — never clobbers yours)S, eslint-plugin-security)--strict| Language | Linter | Bound by |
|---|---|---|
| JavaScript / TypeScript | eslint | package.json |
| JavaScript / TypeScript | biome | biome.json (supersedes ESLint) |
| Python | ruff | pyproject.toml, requirements.txt, setup.py |
| Go | golangci-lint | go.mod |
| Rust | clippy (cargo clippy) | Cargo.toml |
| Terraform / OpenTofu | tflint | *.tf / *.tofu files (no manifest) |
| Ansible | ansible-lint | ansible.cfg, galaxy.yml |
install seeds every discovered app with a best-practice ("recommended" tier)
config for its linter — created only if absent, so your own config is never
overwritten. Each ships a sensible default rule set and a single lever to
dial strictness up or down: