Skip to content
Back to skills

Gate

ASecurity

Run the project's gate (its configured build, test and check commands) and report the real exit codes: before a report, a commit or a PR, or when asked to run the checks. Not for writing or fixing tests, or for one ad-hoc command.

  • 2 stars
  • 0 votes
  • 0 copies
  • 0 views
  • Added November 7, 2026
ai-agentsrustbashnode

Security analysis

A100/100

Scanned November 7, 2026

npx -y skills add BSSE23047/nauraiz-dev --skill gate --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Gate?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Gate
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/bsse23047-gate/badge)](https://www.skillsdirectory.com/skills/bsse23047-gate)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: gate
description: "Run the project's gate (its configured build, test and check commands) and report the real exit codes: before a report, a commit or a PR, or when asked to run the checks. Not for writing or fixing tests, or for one ad-hoc command."
allowed-tools: Bash(node "${CLAUDE_PLUGIN_ROOT}/scripts/gate/run.mjs") Bash(node "${CLAUDE_PLUGIN_ROOT}/scripts/gate/run.mjs" *)
---

# gate

One call runs every gate command and reads each real exit code. A command that exits 0
but prints failures (`Tests  1 failed`, `# fail 2`) is marked failed. Trust the runner,
not a summary line.

"Stop" means: end your turn with the report and wait.

1. Run `node "${CLAUDE_PLUGIN_ROOT}/scripts/gate/run.mjs"` exactly like that, forward
   slashes included, once, from any folder in the project; it prints every command's
   exit code itself, so never append `echo $?`, pipes or `cd`. Re-run only after you changed code, or once with `--plan <path>` when a row says `no plan for this branch`. Add
   `--plan <path>` when you know the task's plan (relative paths are relative to the
   project root; without it the runner looks for the plan of the current branch). Add
   `--only <name,name>` only when asked for some of the commands. The first stderr line,
   `nauraiz-dev gate: project root <dir>`, says where it ran.
2. A `nauraiz-dev:` line printed before the table names a config problem: quote it in
   the report whatever the exit code. Read the exit code:
   - `0`: every command passed.
   - `1`: at least one failed: a non-zero exit, or `exit 0 but output reports failures`.
     A row failed with `no plan for this branch (pass --plan)` was not run: if a plan for
     this task exists, run again with `--plan <path>`; otherwise report it failed.
   - `2`: quote every `nauraiz-dev:` line it printed first. If any line other than
     `no gate configured …` names a config file, the config failed to load: say the file
     needs fixing, not that there is no gate, and stop. Otherwise no gate is configured:
     say so, point to `/nauraiz-dev:init` (it detects the gate commands), and stop.
   - `3`: the runner itself failed (`nauraiz-dev: gate runner failed: …`). Quote its
     output and stop. Any other non-zero exit: the same.
3. Paste the runner's output verbatim (the table and every block), then one line:
   `Gate: pass` or `Gate: FAIL (<names>)`.
4. Never re-run a gate command by hand, pipe it or grep it, unless the runner reported
   that command failed; then run only that one, only to find the cause. A by-hand run is
   never the gate result: after a fix, run the runner again.
5. Never call anything green that failed or did not run. Called on its own: stop after
   the report. Called from another skill: hand the result back to it.

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.