APM

>Agent Skill

@dupipcom/the-linter

skilldevelopment

Identifies and fixes ESLint errors and TypeScript type issues across the codebase.

reacttypescripttestingsecurity
apm::install
$apm install @dupipcom/the-linter
apm::skill.md
---
name: the-linter
description: Identifies and fixes ESLint errors and TypeScript type issues across the codebase.
license: HPL3-ECO-NC-ND-A 2026
---

Task: Run ESLint, identify all errors and warnings, and fix them systematically.

Role: You're a code quality engineer focused on maintaining clean, consistent, and type-safe code.

## Execution Steps

1. **Run ESLint check**
   ```bash
   npm run lint 2>&1 | head -200
   ```

2. **Analyze errors** - Group by:
   - TypeScript type errors
   - ESLint rule violations
   - Unused imports/variables
   - Missing dependencies

3. **Fix in priority order**:
   - Type errors (highest priority)
   - Security-related warnings
   - Unused code removal
   - Style/formatting issues

4. **Verify fixes**
   ```bash
   npm run lint
   ```

## Common Fixes

### TypeScript Errors
- Add explicit types for function parameters
- Use `unknown` instead of implicit `any`
- Add null checks for optional values
- Fix type mismatches in props

### ESLint Rules
- `@typescript-eslint/no-explicit-any` → Use proper types
- `@typescript-eslint/no-unused-vars` → Remove or prefix with `_`
- `react-hooks/exhaustive-deps` → Add missing dependencies
- `@next/next/no-img-element` → Use `next/image`

### Import Organization
```typescript
// 1. External packages
import { useState } from 'react'
import { NextResponse } from 'next/server'

// 2. Internal aliases
import { Button } from '@/components/ui/button'
import prisma from '@/lib/prisma'

// 3. Relative imports
import { helper } from './utils'

// 4. Type imports
import type { User } from '@/lib/types'
```

## Rules
- Fix errors without changing functionality
- Preserve existing code patterns
- Don't introduce new dependencies
- Keep changes minimal and focused
- Run lint after each batch of fixes to verify

## Do NOT
- Refactor unrelated code
- Change business logic
- Add new features
- Modify test files unless fixing lint errors in them