Installation & Quick Start
Get eslint-plugin-ai-guardrails running in your project in under 2 minutes.
Requirements
| Requirement | Supported Versions |
|---|---|
| Node.js | ≥ 18.0.0 |
| ESLint | v8.x · v9.x |
| TypeScript | ≥ 5.0.0 |
| @typescript-eslint/parser | v6.x · v7.x · v8.x |
TypeScript-only — this plugin applies to .ts, .tsx, .mts, and .cts files. JavaScript files are intentionally excluded.
Option A — One-Command Setup (Recommended)
The fastest way to get started:
npx eslint-plugin-ai-guardrails initThis single command will:
- Create
eslint.config.mjsif you don't already have an ESLint config - Add
lint,typecheck, andbuildscripts — only when missing (existing scripts are preserved) - Ensure required dev dependencies are installed
- Create
tsconfig.jsonwith a strict baseline (only if missing) - Wire
vite-plugin-checkerif Vite is detected - Auto-generate strict AI guardrail instructions for
.windsurf,.cursor,.agents, and.kiro
Option B — Manual Setup
Install the plugin
npm install --save-dev eslint-plugin-ai-guardrails @typescript-eslint/parserpnpm add -D eslint-plugin-ai-guardrails @typescript-eslint/parseryarn add -D eslint-plugin-ai-guardrails @typescript-eslint/parserbun add -d eslint-plugin-ai-guardrails @typescript-eslint/parserAdd to your ESLint config
// eslint.config.mjs
import aiGuardrails from 'eslint-plugin-ai-guardrails';
export default [
aiGuardrails.flatConfigs.recommended
];// .eslintrc.json
{
"parser": "@typescript-eslint/parser",
"plugins": ["ai-guardrails"],
"extends": ["plugin:ai-guardrails/recommended"]
}Add lint scripts
{
"scripts": {
"lint": "eslint . --max-warnings 0",
"typecheck": "tsc --noEmit",
"build": "npm run lint && npm run typecheck && <your-build-step>"
}
}Tested Frameworks
This plugin is integration-tested against:
- ✅ Vite + React + TypeScript (ESLint v9 flat config)
- ✅ Next.js (ESLint v9 flat config)
- ✅ NestJS (ESLint v9 flat config with strict overrides)
- ✅ Express + TypeScript (ESLint v8 legacy
.eslintrc) - ✅ ESM projects (
"type": "module"witheslint.config.mjs) - ✅ CJS projects (
require()witheslint.config.cjs) - ✅ Monorepo workspaces (npm / pnpm / yarn workspaces)
See the Integrations guide for framework-specific configs.