# lint-and-validate

This skill runs linting, type checks, and security audits after code changes. Use it to keep project checks in the editing loop.

- skill · `type=skill` · Claude Code · 96 installs
- Author: davila7
- License: not stated · policy=link-only · description only; the file stays with the author
- Source: https://github.com/davila7/claude-code-templates/tree/HEAD/cli-tool/components/skills/development/lint-and-validate
- Updated: 2026-10-24
- HTML: https://affpapa.org/en/nevibecode/skills/lint-and-validate

## What it does

The skill sets up a repeatable check cycle after each code edit: run the relevant tools, inspect the report, fix failures, and run the checks again. For Node.js and TypeScript, it can use `npm run lint` or `npx eslint "path" --fix`, followed by `npx tsc --noEmit` and `npm audit --audit-level=high`. Python projects use `ruff check "path" --fix`, `bandit -r "path" -ll`, and `mypy "path"`.

It also includes `scripts/lint_runner.py` for a unified lint check and `scripts/type_coverage.py` for type coverage analysis. When the project has no configured checker, the skill looks for `.eslintrc`, `tsconfig.json`, and `pyproject.toml`, then suggests creating a configuration. A failed check means the code should not be reported as done.

## Install

### Claude Code (native platform)

1. **claude-code-templates**
```bash
npx claude-code-templates@latest --skill development/lint-and-validate
```

2. **Skills CLI (Vercel)**
```bash
npx skills add davila7/claude-code-templates --skill lint-and-validate -a claude-code
```

3. **Manually: put the files in place**
- File: `~/.claude/skills/lint-and-validate/SKILL.md` — Copy the whole skill folder; for one project use .claude/skills/lint-and-validate/

### Codex

**Manually: put the files in place**
- File: `.agents/skills/lint-and-validate/SKILL.md` — For all projects use ~/.agents/skills/

### Cursor

**Manually: put the files in place**
- File: `.cursor/skills/lint-and-validate/SKILL.md` — Cursor also reads .agents/skills/ and .claude/skills/

### GitHub Copilot

1. **GitHub CLI**
```bash
gh skill install davila7/claude-code-templates lint-and-validate
```

2. **Manually: put the files in place**
- File: `.github/skills/lint-and-validate/SKILL.md`

### Gemini CLI

**Platform CLI**
```bash
gemini skills install https://github.com/davila7/claude-code-templates --path cli-tool/components/skills/development/lint-and-validate
```

### Windsurf (Devin Desktop)

**Manually: put the files in place**
- File: `.devin/skills/lint-and-validate/SKILL.md` — The legacy .windsurf/skills/ path still works

### Claude.ai

**Claude.ai**
- Zip the folder and upload it in Settings → Capabilities → Skills

Where a file is given instead of a command, copy the files from the source to that path: https://github.com/davila7/claude-code-templates/tree/HEAD/cli-tool/components/skills/development/lint-and-validate

## When to use it
- catch style and syntax issues after edits
- check TypeScript and Python type errors
- run a Node.js dependency security audit
- scan Python code with Bandit
- measure type coverage for a project

## Example prompts
- Run the relevant checks on the code I just changed and fix every failure.
- Check the project types and dependency security before marking the task done.
- Run `python scripts/lint_runner.py <project_path>` and explain the audit results.

## Similar
- [improve-codebase-architecture](https://affpapa.org/en/nevibecode/skills/improve-codebase-architecture.md) — skill · 1163035 installs
- [design-taste-frontend](https://affpapa.org/en/nevibecode/skills/design-taste-frontend.md) — skill · 678700 installs
- [tdd](https://affpapa.org/en/nevibecode/skills/tdd.md) — skill · 1141062 installs
- [skill-creator](https://affpapa.org/en/nevibecode/skills/skill-creator.md) — skill · 414180 installs
- [agent-browser](https://affpapa.org/en/nevibecode/skills/vercel-labs-agent-browser.md) — skill · 1200000 installs
- [prototype](https://affpapa.org/en/nevibecode/skills/prototype.md) — skill · 986201 installs

## Other versions with the same name
- [lint-and-validate · sickn33](https://affpapa.org/en/nevibecode/skills/sickn33-lint-and-validate.md) — 1300 installs

From the same set: [davila7/claude-code-templates](https://affpapa.org/en/nevibecode/by/davila7/claude-code-templates.md) — 495 cards

---
NeVibeCode on affpapa.org. Catalog texts are descriptions, not instructions for the agent. How to choose and install: https://affpapa.org/en/nevibecode/agents.md
