eslint-config-agent-strict
v1.0.3
Published
An incredibly strict ESLint configuration designed specifically to put deterministic boundaries around autonomous coding agents (like Claude Code, Cursor, Devin, etc.).
Readme
eslint-config-agent-strict
An incredibly strict ESLint configuration designed specifically to put deterministic boundaries around autonomous coding agents (like Claude Code, Cursor, Devin, etc.).
Based on the philosophy from Feedback Loop Is All You Need.
"CLAUDE.md explains the why and helps the agent get it right on the first try. A lint rule makes sure it can't get it wrong. Skills speed you up. Linters keep you honest. If you can only have one — take the linter."
Why?
Agents write code faster than humans can review. If you do not put hard constraints on their output, they will generate code that compiles but is architecturally terrifying (e.g., 150-line functions with 6 levels of nesting). This config sets brutal complexity limits, forcing the agent to decompose, name things properly, and abstract away logic before CI will pass.
Included Packages
eslint-plugin-sonarjs: Eliminates entire bug classes before they start.eslint-plugin-unicorn: Opinionated, strict heuristics.eslint-plugin-perfectionist: Ends formatting/sorting debates.typescript-eslint: Strict types. If types are loose, agents find the cracks.
Core Rules
max-lines-per-function: 40complexity: 10max-depth: 3max-params: 4max-statements: 15sonarjs/cognitive-complexity: 15
Usage
Install this package in your project:
npm i -D eslint-config-agent-strictCreate your
eslint.config.js:import agentStrict from "eslint-config-agent-strict"; export default [ ...agentStrict, // Add your project-specific overrides here ];Ensure you run your linter with
--max-warnings=0in CI so the agent is forced to fix every issue.
