Configures ESLint v9 flat config and neostandard for JavaScript and TypeScript projects, including migrating from legacy `.eslintrc*` files or the `standard` package. Use when you need to set up or fix linting with `eslint.config.js` or `eslint.config.mjs`, troubleshoot lint errors, configure neostandard rules, migrate from `.eslintrc` to flat config, or integrate linting into CI pipelines and pre-commit hooks.
96
95%
Does it follow best practices?
Impact
97%
1.25xAverage score across 5 eval scenarios
Passed
No known issues
{
"context": "Tests whether the agent follows the correct migration path from the 'standard' package to neostandard/ESLint v9, including using the --migrate flag, removing old setup, and updating scripts correctly.",
"type": "weighted_checklist",
"checklist": [
{
"name": "eslint.config.js created",
"description": "An eslint.config.js (or eslint.config.mjs) file exists in the output",
"max_score": 8
},
{
"name": "neostandard as config base",
"description": "eslint.config.js imports and uses neostandard() as the configuration base (not @eslint/js or other baselines)",
"max_score": 10
},
{
"name": "standard removed from devDependencies",
"description": "package.json devDependencies no longer contains 'standard'",
"max_score": 10
},
{
"name": "standard config block removed",
"description": "The top-level 'standard' config block is removed from package.json",
"max_score": 12
},
{
"name": "lint script uses eslint",
"description": "package.json 'lint' script value is 'eslint .' (not 'standard' or 'neostandard')",
"max_score": 12
},
{
"name": "lint:fix script uses eslint --fix",
"description": "package.json 'lint:fix' script value is 'eslint . --fix' (not 'standard --fix' or 'neostandard --fix')",
"max_score": 10
},
{
"name": "neostandard devDependency added",
"description": "package.json devDependencies includes 'neostandard'",
"max_score": 8
},
{
"name": "eslint devDependency added",
"description": "package.json devDependencies includes 'eslint'",
"max_score": 8
},
{
"name": "No standard lint command used",
"description": "No script or command in package.json or config files calls 'standard' (the lint runner) — linting runs via eslint only",
"max_score": 12
},
{
"name": "Migration notes present",
"description": "MIGRATION_NOTES.md exists and mentions at least one behavioral difference (e.g. import rules, rule changes, or eslint-plugin-import-x)",
"max_score": 10
}
]
}