← ClaudeAtlas

pre-pushlisted

Run the project's diff-aware pre-push gate before pushing — builds, lints, and tests only what changed. Use when the user says "run precheck", "pre-push check", or "validate before push".
eric-sabe/engsys · ★ 1 · AI & Automation · score 67
Install: claude install-skill eric-sabe/engsys
# Pre-push Gate Trigger: user says "run precheck", "pre-push check", "validate before push", or equivalent. ## The Contract Run the project's pre-push gate from the repo root before every `git push`. The gate is a **diff-aware contract**: it inspects `git diff origin/main...HEAD`, then runs only the checks relevant to the files that changed. It should be enforced by a `pre-push` git hook so it runs automatically on `git push`. Run it manually if you want early feedback before committing. The gate is invoked through whatever the project defines — a script (`scripts/precheck.sh`), a package-manager task (`npm/pnpm/yarn run precheck`, `make precheck`, `just precheck`, `cargo`/`go`/`mvn` equivalents), or a Taskfile target. The name and runner are project-specific; the contract is not. ```bash <precheck-command> # standard — diff-driven, runs relevant gates only <precheck-command> --full # force the full suite even if the diff didn't trigger it PUSH_OVERRIDE=1 git push ... # emergency bypass — no local gates run, CI is sole safety net ``` ## What It Does (diff-aware gate selection) The gate maps changed paths to checks. Always run **build + lint**; layer on the rest based on what the diff touched. Each project defines its own table — the shape is always `changed files → gates triggered`: | Changed files | Gates triggered | | -------------------------------------- | -----------------------