Help us improve
Share bugs, ideas, or general feedback.
From godmode
Sets up linting and code standards with ESLint, Prettier, Biome, Ruff, golangci-lint. Configures auto-fixes, pre-commit hooks, assesses violations, and enforces formatting across JS, Python, Go, Rust, Ruby.
npx claudepluginhub arbazkhan971/godmodeHow this skill is triggered — by the user, by Claude, or both
Slash command
/godmode:lintThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
- User invokes `/godmode:lint`
Configures modern linting: Biome for JavaScript/TypeScript, Ruff for Python, Clippy for Rust. Detects projects, migrates from ESLint/Flake8, checks versions, adds pre-commit integration.
Detects linter (Biome, ESLint, Deno lint) and formatter (Prettier), runs with auto-fix on target path or codebase, reports fixed and remaining issues. Use before commits, after AI code gen, or CI lint failures.
Runs auto-detected linters/formatters/fixers for Python (Ruff/ty/bandit), JS/TS (ESLint/Prettier/tsc), Rust (clippy/fmt), Go (gofmt/vet); supports --fix/--format/pre-commit.
Share bugs, ideas, or general feedback.
/godmode:lint# Detect existing configurations
ls -la .eslintrc* .prettierrc* biome.json \
.editorconfig .stylelintrc* .golangci.yml \
pyproject.toml .flake8 .rubocop.yml 2>/dev/null
# Check for pre-commit hooks
ls .husky/ .pre-commit-config.yaml 2>/dev/null
# Count current violations
npx eslint . --format compact 2>/dev/null | wc -l
ruff check . --statistics 2>/dev/null
LINT ASSESSMENT:
Language(s): <detected>
| Aspect | Status |
|--------------|----------------------|
| Linter | <tool or NONE> |
| Formatter | <tool or NONE> |
| Pre-commit | YES/NO |
| Editor config| YES/NO |
| Violations | <N errors, N warns> |
| CI enforce | YES/NO |
IF no linter: install recommended for language
IF no formatter: add Prettier/Biome/gofmt
IF no hooks: set up Husky + lint-staged
IF warnings > 0 in CI: set --max-warnings=0
TOOL SELECTION:
| Language | Linter | Formatter |
|------------|---------------|---------------|
| TypeScript | ESLint/Biome | Prettier/Biome|
| Python | Ruff | Ruff/Black |
| Go | golangci-lint | gofmt |
| Rust | clippy | rustfmt |
| Ruby | RuboCop | RuboCop |
| CSS/SCSS | Stylelint | Prettier |
IF project has ESLint+Prettier: consider Biome
IF Python with flake8+black: migrate to Ruff
ESLint 9+ flat config with typescript-eslint, prettier.
Biome: single biome.json for lint+format+imports.
Ruff: pyproject.toml [tool.ruff] section.
Go: .golangci.yml with 5m timeout.
AUTO-FIX LAYERS:
Level 1: Format on Save (editor, zero effort)
Level 2: Lint Fix on Save (safe rules only)
Level 3: Pre-commit (staged files, catches misses)
Level 4: CI Enforcement (final gate, no auto-fix)
THRESHOLDS:
Batch fix target: resolve 100% of auto-fixable
Manual remaining: list with file:line for user
IF auto-fix changes semantics: DISCARD fix
IF false positive rate > 20%: disable rule
# Batch fix all existing violations
npx eslint . --fix
npx prettier --write "**/*.{ts,tsx,js,json,css,md}"
ruff check . --fix && ruff format .
# JavaScript/TypeScript: Husky + lint-staged
npm install -D husky lint-staged
npx husky init
echo "npx lint-staged" > .husky/pre-commit
# Python: pre-commit framework
pip install pre-commit
pre-commit install
pre-commit run --all-files
LINT-STAGED CONFIG:
*.{ts,tsx}: eslint --fix --max-warnings=0, prettier
*.{json,css,md}: prettier --write
*.py: ruff check --fix, ruff format
RULES:
Lint only staged files (fast commits)
Full lint runs in CI only
IF commit takes > 10s: check scope
CODING STANDARDS:
| Area | Standard | Tool |
|--------------|------------------|----------|
| Indentation | 2 spaces (no tab)| Prettier |
| Line length | 100 chars max | Prettier |
| Quotes | Single (JS/TS) | Prettier |
| Semicolons | Always | Prettier |
| Trailing comma| All | Prettier |
| Import order | builtin>ext>int | ESLint |
"lint: configure <tool> with <N> rules""lint: add pre-commit hooks""lint: auto-fix <N> violations"Never ask to continue. Loop autonomously until done.
--max-warnings=0.eslint-disable as a strategy.--max-warnings=0 in CI..editorconfig.1. Language: package.json, pyproject.toml, go.mod
2. Linter: .eslintrc*, biome.json, [tool.ruff]
3. Formatter: .prettierrc*, biome.json, [tool.black]
4. Hooks: .husky/, .pre-commit-config.yaml
5. Editor: .editorconfig, .vscode/settings.json
6. Violations: run linter in check mode
Print: Lint: {tool} configured, {N} rules. Violations: {before} -> {after}. Hooks: {status}. Verdict: {verdict}.
iteration rule_group violations_before auto_fixed manual_remaining tests_pass status
KEEP if: tests pass AND violations decreased
AND no behavioral changes from auto-fix
DISCARD if: tests fail OR auto-fix changed semantics
OR > 20% false positives
STOP when ANY of:
- All rule groups enabled with zero violations
- Pre-commit hooks installed and working
- CI enforcement with --max-warnings=0
- User requests stop