SagnikKK1

Gatekeep — AI skill for Claude Code

AI community

Blocks your AI coding agent from faking its work.

How to install Gatekeep

This entry records only its repository, not the path inside it, so there is no exact command to give. Open SagnikKK1/gatekeep and copy the folder into ~/.claude/skills/, or the file into ~/.claude/agents/.

What Gatekeep does

Blocks your AI coding agent from faking its work.

Alternatives in AI

  • Multica — Make humans and AI agents work as one team — open-source and self-hostable 47.8k ★
  • Claude Task Master — by eyaltoledano - A task management system for AI-driven development with Claude, designed to work seamlessly 26k ★
  • Ralph For Claude Code — by Frank Bria - An autonomous AI development framework that enables Claude Code to work iteratively on project 8k ★

README

gatekeep

An independent verification gate for AI coding agents. It runs when the agent tries to say "done" and blocks it when the work was faked instead of finished: tests tampered with, checks weakened, claims that nothing in the session backs up.

![The agent reports "Done — all tests pass." gatekeep blocks the stop with three findings: two tests deleted and one assertion replaced with a truthiness check](assets/block.svg)

Real output from the Stop hook, not a mockup.

Quick start

Requires Node 20+ and git.

npm install -g gatekeep-agent           # or: npx gatekeep-agent install
cd /path/to/your/project
gatekeep install                        # wires Claude Code hooks into .claude/settings.local.json
gatekeep status                         # confirms the hooks and shows the state directory

As a Claude Code plugin instead, which wires the same four hooks for every project without touching any repository:

claude plugin marketplace add SagnikKK1/gatekeep
claude plugin install gatekeep@gatekeep

The plugin runs a `gatekeep` already on your PATH, falls back to the plugin's own build, and only then to `npx`. Install the npm package too if you want the fast path.

`install` also writes `gatekeep.config.json` and fills in `testCommand` from whatever the repository already uses — `package.json` `scripts.test`, `Cargo.toml`, `go.mod`, a pytest config, a `test:` target in a Makefile — printing what it matched. That turns on the strongest check here: **at every stop, the test files as they stood at session start are restored and the suite is run against the final code.** An agent that edited a test to fit its implementation fails against the tests it was given. Set `"testCommand": null` if the detected command is wrong, or too slow to run on every stop.

That is the whole setup. Start a Claude Code session as usual. When the agent tries to finish after weakening a test, it sees this instead and has to fix the implementation: