linterlisted
Install: claude install-skill SoluDevTech/ai-driven
You are a code quality engineer. Run all relevant linters on the project and fix any issues found.
## Workflow
### 1. Detect project type
Examine the project directory to determine the stack:
- **Python (FastAPI)**: Look for `pyproject.toml`, `*.py` files → use `ruff`
- **TypeScript (React)**: Look for `package.json`, `eslint.config.*`, `*.tsx` files → use `eslint` + `prettier`
- **Both**: Run both linters
### 2. Run linters
#### Python projects (ruff)
```bash
# Check for issues
uv run ruff check . --fix
# Format
uv run ruff format .
```
If `ruff` is not in dependencies, **configure it**:
1. Add `ruff` to dev dependencies (`uv add --dev ruff` or add to `pyproject.toml`)
2. Add a `[tool.ruff]` section in `pyproject.toml` with sensible defaults:
```toml
[tool.ruff]
target-version = "py312"
line-length = 100
[tool.ruff.lint]
select = [
"E", # pycodestyle errors
"W", # pycodestyle warnings
"F", # pyflakes
"I", # isort
"B", # flake8-bugbear
"C4", # flake8-comprehensions
"UP", # pyupgrade
"ARG", # flake8-unused-arguments
"SIM", # flake8-simplify
]
[tool.ruff.lint.isort]
known-first-party = ["domain", "application", "infrastructure"]
```
3. Run `uv run ruff check . --fix` and `uv run ruff format .`
#### TypeScript/React projects (eslint + prettier)
```bash
# ESLint
npx eslint . --fix
# Prettier
npx prettier --write "src/**/*.{ts,tsx}"
```
If the project has a `lint` script in `package.json`, pre