Our review
Runs configured build and test commands and records the results as evidence of pass or failure.
Strengths
- Quick feedback on compilation and test status
- Gracefully handles missing commands by skipping them
- Captures output for later analysis
- Integrates into a broader verification pipeline
Limitations
- Only checks build and tests, not code quality
- Limited to 5 minutes per command, no advanced customization
- Depends on external configuration (config.json)
Use this gate as an initial check in a CI pipeline to validate that the code compiles and tests pass.
Not suitable for complex pipelines requiring multiple build steps or advanced validation.
Security analysis
CautionThe skill uses Bash to execute build and test commands defined in a configuration file. While intended for internal use, this could allow execution of harmful commands if the configuration is compromised. There is no explicit validation of command content.
- •Runs arbitrary commands from config.json using Bash, which could be dangerous if the config file is tampered with or contains malicious commands.
Examples
Run the build gate to check that the project compiles and all tests pass.Verify the codebase by executing the build and test commands.Perform a basic verification of the project with build and test gates.name: gate-build description: >- Runs configured build and test commands. Captures output as evidence. Returns PASS if commands exit 0, FAIL otherwise. Internal gate — invoked by verify, not directly by users. allowed-tools:
- Read
- Bash
- Glob
- Write
Gate: Build
Goal
Confirm the codebase compiles and tests pass. This is the most basic gate — if the code doesn't build or tests don't pass, nothing else matters.
Inputs
.specwright/config.json--commands.buildandcommands.test.specwright/state/workflow.json-- current work unit for evidence path
Outputs
- Evidence file at
{currentWork.workDir}/evidence/build-report.md - Gate status update in workflow.json: PASS, FAIL, or ERROR
- Console output showing results inline (users see findings, not just badges)
Constraints
Execution (LOW freedom):
- Read build command from
config.jsoncommands.build. Run it. Capture output. - Read test command from
config.jsoncommands.test. Run it. Capture output. - If a command is null/missing, SKIP that check (not FAIL).
- If both commands are null, gate status is SKIP.
- Timeout: 5 minutes per command. If exceeded, status is ERROR.
Verdict (LOW freedom):
- Follow
protocols/gate-verdict.mdfor verdict rendering. - Build exit code 0 + test exit code 0 = PASS.
- Any non-zero exit code = FAIL.
- Show failing output inline so the user sees what broke.
Evidence (LOW freedom):
- Follow
protocols/evidence.mdfor file format and storage. - Write evidence file with: command run, exit code, stdout/stderr, timestamp.
- Update
workflow.jsongates section perprotocols/state.md.
Protocol References
protocols/gate-verdict.md-- default-FAIL, self-critique, visibilityprotocols/evidence.md-- evidence storage and freshnessprotocols/state.md-- gate status updates
Failure Modes
| Condition | Action | |-----------|--------| | Build command not configured | SKIP build check, continue to test check | | Test command not configured | SKIP test check | | Both commands null | Gate status = SKIP | | Command times out (>5min) | Gate status = ERROR with timeout message |
Next.js App Router Expert
Development
A skill that turns Claude into a Next.js App Router expert.
README Generator
Development
Creates professional and comprehensive README.md files for your projects.
API Documentation Writer
Development
Generates comprehensive API documentation in OpenAPI/Swagger format.