coding-agents
Run the Right Checks Before Every Grix Push
Learn how grix-pre-push-checks helps agents validate only what changed, saving time and catching contract breaks across Go, Flutter, Python, and Kubernetes.
Where this fits
You’ve just finished a backend change in Grix—say, a new NATS message handler in Go. You’re about to push, but you’re not sure if you should run the full test suite, vet, and build, or just the one package. Running everything wastes minutes; running too little risks breaking a cross-service contract. This skill solves that by inspecting your actual change set and selecting the smallest sufficient validation set before you push, hand off for review, or mark a task complete.
Why agents benefit
- Change-set awareness: Reads
AGENTS.mdandCONTRIBUTING.md, then compares againstorigin/mainto include staged, unstaged, and relevant untracked files—no guessing. - Subsystem mapping: Groups changed files into backend (Go), Flutter frontend/admin, Python voicebridge, Kubernetes manifests, scripts, docs, or repository-local skills, and picks the appropriate checks for each.
- Contract-aware broadening: Detects cross-component changes (e.g., a shared protobuf or API type) and automatically expands validation to every affected producer and consumer.
- Environment handling: Knows when to use a local NATS URL or skip integration tests, avoiding false failures from missing services.
- Progressive depth: Starts with a focused
go teston the changed package and only escalates togo vet ./...andgo build ./...when shared contracts are touched—keeping feedback fast.
Practical scenarios
Backend-only tweak
You modify a single Go file in backend/internal/voicebridge. The skill runs go test for that package only, verifies it passes, and stops. No full ./... run, no waiting on unrelated tests.
Cross-service contract change
You update a shared NATS message struct used by both the Go backend and the Python voicebridge. The skill detects the contract change, runs go test ./... (with a dummy NATS URL) plus go vet, and also triggers Python unit tests for the voicebridge—so you catch breakage on both sides before the PR.
Flutter UI + docs update
You add a new admin screen and update a decision note. The skill runs flutter analyze and relevant widget tests for the changed Dart files, then skips heavy integration tests because the docs change doesn’t affect code. It also validates that the decision note follows repo conventions.
Add it to your agent workflow
Install via the OpenAgentSkill CLI:
npx skills add askie/grix --skill grix-pre-push-checks
Then, in your agent prompt, ask: “Run grix-pre-push-checks before pushing.” The skill will read your repo guidelines, compute the change set, and execute the minimal validation commands. It’s designed to be called right after you finish editing code, before you commit or open a PR.
Compare before adopting
Before adding this to your toolchain, compare it with alternatives like a generic pre-push hook or a hardcoded script that always runs the full suite. Look for: quality signals (does it actually reduce CI failures?), maintenance freshness (is the skill’s repo updated as Grix evolves?), and workflow fit (does it respect your repo’s AGENTS.md conventions?). Also check if it supports your exact stack—Grix-specific skills may not map cleanly to other projects.
Why it is worth tracking
With 130 stars and an active author, this skill shows real community traction. The approach—selecting validation based on changed paths—is a pattern that saves agent time and reduces noise, and it’s likely to grow as more developers adopt it. Track it if you work on multi-language repos where running the wrong tests is a constant cost. Evaluate it whenever you notice your agent spending too long on validation or missing cross-contract breaks. For a broader view of agent skills worth adopting, see the OpenAgentSkill directory for related options.
Featured Skill
grix-pre-push-checks
Skill by askie