[Showoff Saturday] Vigil, a safety focused repository preflight CLI
I’ve been building Vigil, an opensource Go CLI designed to help developers and coding agents inspect automation before it changes a repository.
The basic idea is simple. Before running tests, hooks, setup scripts, release tasks, or thirdparty tooling, Vigil should clearly answer:
* What will run? * Why is it running? * What files or systems can it access? * Can it modify the repository? * Did it behave within its declared boundaries?
Some of the current features include:
* Standalone macOS and Linux binary * Interactive project setup * Direct argv execution with explicit shell opt-in * Timeouts, cancellation, and child-process cleanup * Git-visible mutation detection for read-only checks * Digest-bound plan and apply workflow * Dependency-aware and parallel workflow gates * Versioned JSON, JSONL, JUnit, SARIF, and GitHub output * Embedded language/tool packs * Capability-based subprocess plugin system * Reproducible release builds, SBOMs, attestations, and signed checksums
It started as a small internal CI/preflight helper, but I recently underwent a fairly major architectural rewrite to make it useful as a standalone public utility.
The project is still pre version 1, and I’m deliberately treating real world integration, release testing, security review, and usability feedback part of its makeup before I consider it release worthy of version 1.
Repository:
https://github.com/PayCal-Technologies/vigil-public
I’d especially appreciate feedback on the CLI model, mutation-safety approach, plugin trust system, and whether this solves a problem you encounter in real development workflows.