From simpleapps
Quality tooling awareness for projects. Covers linting, formatting, type checking, testing, dead code detection, and pre-commit hooks. Use when reviewing code, setting up projects, or noticing missing quality tooling.
npx claudepluginhub simpleapps-com/augur-skills --plugin simpleappsThis skill uses the workspace's default tool permissions.
These tools keep codebases healthy. When working in a project, check whether they are configured. If any are missing, suggest them to the user.
Generates design tokens/docs from CSS/Tailwind/styled-components codebases, audits visual consistency across 10 dimensions, detects AI slop in UI.
Records polished WebM UI demo videos of web apps using Playwright with cursor overlay, natural pacing, and three-phase scripting. Activates for demo, walkthrough, screen recording, or tutorial requests.
Delivers idiomatic Kotlin patterns for null safety, immutability, sealed classes, coroutines, Flows, extensions, DSL builders, and Gradle DSL. Use when writing, reviewing, refactoring, or designing Kotlin code.
These tools keep codebases healthy. When working in a project, check whether they are configured. If any are missing, suggest them to the user.
| Tool | Purpose | Config files | Run command |
|---|---|---|---|
| ESLint | Catch bugs and enforce patterns | .eslintrc*, eslint.config.* | pnpm lint |
| Prettier | Consistent formatting | .prettierrc*, prettier.config.* | pnpm format |
| TypeScript | Type safety | tsconfig.json | pnpm typecheck |
| Vitest / Jest | Tests | vitest.config.*, jest.config.* | pnpm test |
| knip | Dead code — unused exports, deps, and files | knip.json, knip.ts | pnpm knip |
| Lefthook | Pre-commit hooks — run checks before push | lefthook.yml | auto on commit |
Also check repo/package.json for scripts containing: lint, format, typecheck, test, check, validate.
Check repo/composer.json for scripts. Look for PHPStan (static analysis), PHP-CS-Fixer (formatting), PHPUnit (tests).
Check repo/pyproject.toml or repo/setup.cfg. Look for ruff (lint/format), black (formatting), mypy (types), pytest (tests).
Every project SHOULD have at minimum: lint, format, test. Increasingly, dead code detection (knip) and pre-commit hooks (lefthook) are expected.
If any are missing, flag them:
Missing quality tooling:
- [ ] Linting — suggest: eslint / ruff / phpstan
- [ ] Formatting — suggest: prettier / black / php-cs-fixer
- [ ] Testing — suggest: vitest / pytest / phpunit
- [ ] Dead code detection — suggest: knip
- [ ] Pre-commit hooks — suggest: lefthook
Do not install or configure tools without the user's approval. Flag what's missing and explain why it helps — let the user decide.
Fix every issue the checks find, regardless of which file it is in or who introduced it. There is no such thing as a "pre-existing issue" — context compaction erases your memory of earlier changes, so what looks pre-existing may be something you introduced. Even if you truly did not cause it, the goal is zero issues, not blame assignment. Fix it anyway.
When a check fails, the solution is ALWAYS to fix the underlying code. NEVER:
eslint-disable, rule removal, config changes).skip, .only, deleting the test)@ts-ignore, @ts-expect-error, type: any)--no-verify, --force, or flags that bypass checksThese actions hide problems — they do not fix them. A suppressed error is worse than a visible one because it will be forgotten and compound.
If a rule or test seems wrong, investigate why it exists before concluding it should change. Rules exist for reasons. If after investigation it genuinely does not apply, explain the reasoning to the user and let them decide — do not unilaterally disable it.
When reviewing code, scan for existing suppressions (eslint-disable, @ts-ignore, .skip, noqa, phpcs:ignore, etc.) and flag every instance to the user. These are hidden technical debt.
In pnpm workspace projects, the root pnpm-lock.yaml and site-level lockfiles MUST stay in sync. CI uses --frozen-lockfile and will reject mismatched lockfiles — this is the most common cause of deploy failures.
After ANY pnpm install, pnpm update, or pnpm add in a workspace, run pnpm install at the repo root to regenerate the root lockfile. Commit both lockfiles together. If you forget, the next deploy will fail.
When debugging in the browser (Chrome automation), Next.js and other frameworks show a red error overlay at the bottom of the page when there are runtime errors. This overlay contains the actual error message, stack trace, and usually the exact file and line number causing the problem.
MUST click on the error overlay and read the full error before attempting any fix. 95% of the time the answer is right there. Do not ignore it, do not guess at the problem, do not look elsewhere first — read the error overlay. If using Chrome automation tools, click the overlay element to expand it and read the details.
Use the /quality command to discover and run all configured checks. It handles the full cycle: discover, run, fix, repeat until clean.