Local QA (format and lint)
Run the local QA script scripts/qa.sh in this skill.
Procedure
- Execute the script exactly as shown above when this skill is triggered.
- Capture and summarize key output (success/failure, major warnings, and any files modified).
- If the script fails due to missing tooling (
command not found, missing executable, or equivalent), install the missing tool(s) and rerun./scripts/qa.sh. - If the install command uses
uv,npm, orpnpm, set the same supply-chain cooldown env vars asscripts/qa.shin the same shell command as the install, for exampleUV_EXCLUDE_NEWER='7 days' NPM_CONFIG_MIN_RELEASE_AGE=7 PNPM_CONFIG_MINIMUM_RELEASE_AGE=10080 npm install -g <tool>; setting them in an earlier, separate command does not carry the cooldown into the install. - Install tools using this order of preference:
- Use the project's package manager when applicable (
uv/poetryfor Python, package manager scripts/dependencies for Node.js). - Use a system package manager (
brewon macOS,apton Debian/Ubuntu) when project-local install is not applicable. - Use language-specific installers as fallback (
pipx/pip,npm,go install, etc.).
- Use the project's package manager when applicable (
- If multiple tools are missing, repeat install -> rerun until QA completes or you hit a blocker.
- If installation fails or requires unavailable privileges, report what was attempted, the exact failure, and stop.
- Do not run unrelated commands; only run commands needed for QA and missing-tool installation.