skills/verify/SKILL.md
Run sequential verification checks on the current codebase. Build, typecheck, lint, tests, debug log audit, and git status. Stops on critical failures. Supports modes: quick, full, pre-commit, pre-pr.
npx skillsauth add howells/arc verifyInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
<tool_restrictions>
EnterPlanMode — BANNED. This is a procedural skill. Execute it directly.ExitPlanMode — BANNED. You are never in plan mode.
</tool_restrictions>Run sequential verification checks. Stop on critical failures.
Before running checks, detect the project's tooling:
Package manager:
pnpm-lock.yaml → pnpmbun.lockb or bun.lock → bunyarn.lock → yarnpackage-lock.json → npmLinter:
biome.json or biome.jsonc → [pm] biome check ..eslintrc* or eslint.config.* → [pm] eslint .Test framework:
vitest.config.* → [pm] vitest runjest.config.* → [pm] jestType checker:
tsconfig.json → [pm] tsc --noEmitBuild:
package.json scripts for build → [pm] run build$ARGUMENTS determines the mode:
| Argument | Mode | Checks |
|----------|------|--------|
| quick | Quick | Build + types only |
| full or (none) | Full | All checks |
| pre-commit | Pre-commit | Build + types + lint + debug logs (skip tests) |
| pre-pr | Pre-PR | All checks + search for hardcoded secrets |
Execute each check sequentially. If a check fails critically, report it and stop.
[pm] run build
[pm] tsc --noEmit
file:line)[pm] biome check .
# or
[pm] eslint .
[pm] biome check --write .quick and pre-commit modes)[pm] vitest run
# or
[pm] jest
Search for leftover debug statements in source files (not test files):
Use Grep tool: Pattern console\.(log|debug|dir|table) in src/ or app/ directories, excluding *.test.* and *.spec.* files
console.warn and console.error are intentional — don't flag thosegit status --short
git diff --stat
Use Grep tool: Search for patterns that suggest hardcoded secrets:
sk_live_, sk_test_, pk_live_, pk_test_ (Stripe)AKIA (AWS access keys)ghp_, gho_, ghs_ (GitHub tokens)xoxb-, xoxp- (Slack tokens)*_KEY, *_SECRET, *_TOKEN that look like real values (not env var references)Exclude: .env*, *.example, *.md, node_modules/
VERIFICATION: [PASS / FAIL]
Build: [OK / FAIL]
Types: [OK / X errors]
Lint: [OK / X issues]
Tests: [X/Y passed / SKIPPED]
Debug logs: [OK / X found]
Git: [clean / X uncommitted]
Secrets: [OK / X found / SKIPPED]
Ready for PR: [YES / NO]
If any check failed, list the specific issues below the table with file:line references and brief fix suggestions.
turbo.json or root pnpm-workspace.yaml exists, run checks at the workspace level (turbo build, turbo typecheck)development
Go-live and shareability checklist covering the basics needed to make a project visitable, shareable, and ready for a first real audience. Use when asked to "launch", "go live", "make this shareable", "get this ready to show people", or prepare a project for a public URL.
development
Discover architectural friction and propose structural refactors with competing interface options. Focuses on deepening shallow modules, extracting grouped concerns into packages/modules, breaking up god files, reducing duplication, and improving testability. Use when asked to "improve the architecture", "find refactoring opportunities", "deepen modules", "consolidate coupling", "break up god components", "extract this into a package", "make this more testable", or "find architectural friction".
development
Create, review, or revise a concise project vision document that captures what a project is, who it is for, why it exists, success criteria, constraints, non-goals, and decision principles. Use when starting a new project, clarifying product direction, aligning a codebase for future agent work, defining a north star, or turning a vague idea into docs/vision.md.
tools
Use when starting any conversation - establishes Arc's skill routing, instruction priority, and bootstrap rules