waitdeadai

No Vibes — Development skill for Claude Code

Development community

Claude Code Stop hook that blocks false-success closeouts.

How to install No Vibes

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

What No Vibes does

Claude Code Stop hook that blocks false-success closeouts. Single bash file, jq-only dep, drop-in. Receipts inside.

Alternatives in Development

  • Claude Code Prompt Improver — Intelligent prompt improver hook for Claude Code 1.3k ★
  • Taskmaster — Stop hook for Claude Code that keeps the agent working until all plans and user requests are 100% complete 494 ★
  • Nonstop — Autonomous work mode for Claude Code 263 ★

README

no-vibes

[![tests](https://github.com/waitdeadai/no-vibes/actions/workflows/test.yml/badge.svg)](https://github.com/waitdeadai/no-vibes/actions/workflows/test.yml) [![License: Apache 2.0](https://img.shields.io/badge/License-Apache_2.0-blue.svg)](LICENSE) [![GitHub release](https://img.shields.io/github/v/release/waitdeadai/no-vibes)](https://github.com/waitdeadai/no-vibes/releases) [![GitHub stars](https://img.shields.io/github/stars/waitdeadai/no-vibes?style=social)](https://github.com/waitdeadai/no-vibes/stargazers) [![Claude Code](https://img.shields.io/badge/Claude%20Code-hook-orange)](https://code.claude.com/docs/en/hooks)

A Claude Code Stop hook that blocks the model from closing a turn with positive language when it didn't actually verify anything.

`no-vibes` is one bash file (~530 lines, depends only on `jq`) wired into Claude Code's `Stop`, `SubagentStop`, `PreToolUse`, `PostToolUse`, `TaskCreated`, and `TaskCompleted` events. It pattern-matches the language Claude uses when it is about to claim success it didn't earn — and it returns the exact corrective shape the model should use instead.

**Empirical baseline**: F1 **0.815** (95% CI [0.615, 0.941]) on MAST mode 3.3 ("No or Incorrect Verification"), n=19 human-labelled multi-agent traces from [MAD](https://huggingface.co/datasets/mcemri/MAD) (Cemri et al., NeurIPS 2025 — [arXiv:2503.13657](https://arxiv.org/abs/2503.13657)). The bash hook itself produces identical predictions to the Rust engine port on all 19 traces (zero per-trace disagreement) — see the [parity report](https://github.com/waitdeadai/agent-closeout-bench/blob/main/evaluation/runs/mast_human_bash_parity.md) and the [umbrella suite empirical writeup](https://github.com/waitdeadai/llm-dark-patterns/blob/main/evaluation/MAST-RESULTS.md).

What's new (2026-05-11)

Change What it fixes
Loadable locale packs (English, Spanish, Polish ship; native-speaker PRs welcome for the rest) Operators running Claude in non-