CtrlK
BlogDocsLog inGet started
Tessl Logo

mcollina/linting-neostandard-eslint9

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

1.25x
Quality

95%

Does it follow best practices?

Impact

97%

1.25x

Average score across 5 eval scenarios

SecuritybySnyk

Passed

No known issues

Overview
Quality
Evals
Security
Files

task.mdevals/scenario-4/

Modernize Linting for a Node.js API Server

Problem/Feature Description

A Node.js REST API has been using the standard package for linting for the past two years. The team is updating their toolchain to stay current and wants to move to ESLint v9's flat config ecosystem while preserving as much of their existing Standard-like rule configuration as possible.

The project's current package.json has standard in devDependencies and a "standard" config block that customizes a few rules. There are also lint scripts that call standard directly. The team wants a seamless migration: the new setup should still enforce Standard-like style rules, run via npm scripts, and be fully compatible with ESLint v9 tooling.

Produce the migrated configuration files. You have access to the internet and can install packages using npm. Document any behavioral differences the team should expect in a MIGRATION_NOTES.md file.

Output Specification

  • Updated package.json — with appropriate devDependencies and updated scripts for the new toolchain
  • eslint.config.js — the new ESLint v9 flat config
  • MIGRATION_NOTES.md — brief notes on what changed and any behavioral differences to expect

Input Files

The following files are provided as inputs. Extract them before beginning.

=============== FILE: package.json =============== { "name": "api-server", "version": "2.1.0", "description": "Internal REST API server", "main": "server.js", "type": "module", "scripts": { "start": "node server.js", "lint": "standard", "lint:fix": "standard --fix" }, "standard": { "ignore": [ "dist/", "coverage/" ], "globals": ["process", "Buffer"] }, "dependencies": { "fastify": "^4.26.0" }, "devDependencies": { "standard": "^17.1.0" } }

=============== FILE: server.js =============== import Fastify from 'fastify'

const app = Fastify({ logger: true })

app.get('/health', async (request, reply) => { return { status: 'ok' } })

app.listen({ port: 3000 }, (err) => { if (err) { app.log.error(err) process.exit(1) } })

evals

SKILL.md

tile.json