Stallguard — Development skill for Claude Code
Drop-in wrapper that streams agent steps and kills/flags stalls, loops, and fake-GOAL finishes.
How to install Stallguard
This entry records only its repository, not the path inside it, so there is no
exact command to give. Open gpt4omni/stallguard and copy the folder into
~/.claude/skills/, or the file into ~/.claude/agents/.
What Stallguard does
Drop-in wrapper that streams agent steps and kills/flags stalls, loops, and fake-GOAL finishes.
Alternatives in Development
- 02 Runtime Shims — Prompt 02: Runtime Shims for bun:bundle Feature Flags & MACRO Globals 2.3k ★
- Stop Review Gate — You are reviewing uncommitted changes before the author finishes their turn 664 ★
- Obsidian Board — Show or update a kanban board — flags overdue items, updates from conversation 277 ★
README
stallguard
[](LICENSE) [](pyproject.toml) [](stallguard/) [](https://github.com/gpt4omni/stallguard/actions/workflows/test.yml)
**Your coding agent says "done". Did it do anything?** stallguard is a drop-in wrapper that streams agent steps, kills stalls and retry-loops, and flags fake-GOAL finishes — with a shareable trace for every run.

pipx install stallguard
stallguard run -- npx claude-code "fix the login bug"
# [stallguard] status=ok exit=0 duration=42.1s trace=traces/stallguard-....html
No code changes. Just prefix your agent command with `stallguard run --`.
The problem
AI coding agents fail in three boring, expensive ways:
- Stalls — no output for 20 minutes while your CI minute-burn ticks.
- Loops — the same tool call retried 500 times (
retrying with same args...). - Fake-GOALs — prints
DONE ✅whilegit diffis empty.
Logs scroll by, nobody watches, green checkmarks lie. stallguard turns each run into a verdict: `ok`, `error`, `stalled`, `looped`, or `fake-goal` — enforced by exit code, so CI can act on it.
30-second quickstart
# any agent, any command — just prefix it
stallguard run -- python -u your_agent.py
stallguard run --stall-timeout 90 --require-diff -- ./run.sh
# inspect a run later
stallguard view traces/stallguard-*.jsonl
# open traces/stallguard-*.html in a browser for the full step-by-step trace
What it catches
| flag | default | catches | exit |
|---|---|---|---|
--stall-timeout N |
120 | no output for N seconds → SIGKILL |
124 |
--repeat-limit K |
15 | K identical lines in a row → SIGKILL |
125 |
--require-diff |
off | exit 0 + "done" text but em |
Related Skills
Accounting Skill
Drop your bank statements, credit card statements, and invoices into a folder. This skill reads all of them, c
Animus Sprint Loops
A lightweight, platform agnostic protocol for autonomous development and objective handling (repo acts as a Cl
Agent Stagnation Guard
Drop-in stagnation detection for any OneFlow agent. Prevents repair loops (SMTP bounce loops, API 429 spirals,
Focus.Prompt
Pin a session goal to keep all todos, delegation decisions, and verification steps aligned with a single state
Desk Complete
Bring one underlying to a complete artifact set against checkable criteria. Built for goal-based loops.
Live Provider Debugging
Diagnose provider compatibility issues such as invalid message shapes, reasoning-content mismatches, and long-
Related Agents
Loop Operator
Safety net for autonomous agent loops. Detects stalls, reduces scope on repeated failures, escalates to user w
Goal Critic
Breaks stalls. Invoke when the same RoT DTD GOAL criteria fail repeatedly or the gate escalated with a stall —
Product Data Analyst
Sorcerer — Interpret product usage, conversion, drop-off, errors and feedback; form evidence-backed hypotheses