Claude Code hook
Taskmaster
Stop hook for Claude Code that keeps the agent working until all plans and user requests are 100% complete
Install
git clone https://github.com/blader/taskmaster.gitFrom the README
Taskmaster
Taskmaster is a completion guard for coding agents.
It addresses a common failure mode: the agent makes partial progress, writes a
summary, and stops before the user goal is actually finished.
Philosophy
Taskmaster is built around one idea: progress is not completion.
- Evidence over narrative:
The agent should not be allowed to stop based on a convincing summary alone.
Completion must be explicit and machine-checkable.
- Same-session recovery:
When a turn is incomplete, the right move is to continue in the same running
session, not restart from scratch.
- Goal re-anchoring:
Compliance prompts force the model back to the user’s actual request, not its
own local notion of “good enough”.
- Automation-safe signaling:
A deterministic done token makes completion parseable for wrappers and
CI-style flows.
Core Contract
A run is complete only when the assistant emits:
If that token is missing at stop time, Taskmaster blocks stop and pushes the
current turn to continue. Codex monitoring stays active for later turns in the
same long-lived session.
Enforcement Prompt
Taskmaster uses one shared compliance prompt for both Codex and Claude.
- Codex: the wrapper/injector path injects this shared prompt back into the
same running session when stop conditions are not met.
- Claude: the Stop hook returns this same shared prompt as the block reason.
The shared prompt source lives in taskmaster-compliance-prompt.sh.
How It Works
- Codex path:
- Runs through a wrapper (codex shim / codex-taskmaster launcher).
- Enables Codex session logs.
- Watches task_complete / turn_complete events.
- If done token is missing, injects a continuation prompt into the same
running Codex process via expect PTY.
- A done token suppresses injection for…How hooks work
- Hooks are shell commands Claude Code runs at fixed points: before or after a tool call, when you submit a prompt, when Claude stops, on notifications and at session start.
- They are set in the hooks section of ~/.claude/settings.json (or .claude/settings.json for a project), or come bundled in a plugin.
- A hook can block a tool call, add context, or run a formatter or test. Read the scripts before you install them: they run on your machine with your permissions.
Details
- Repository
- blader/taskmaster
- Type
- Hooks
- Language
- Shell
- License
- MIT
- Last updated
- 11 March 2026
FAQ
What is Taskmaster?
Stop hook for Claude Code that keeps the agent working until all plans and user requests are 100% complete It is a hook for Claude Code, from blader/taskmaster on GitHub.
How do I install Taskmaster?
Clone blader/taskmaster from GitHub and follow the setup steps in its README.
Is Taskmaster popular?
blader/taskmaster has 533 GitHub stars and 44 forks. It was last updated on 11 March 2026.
More hooks
LSP Enforcement Kit
328nesaminua/claude-code-lsp-enforcement-kit
Hooks that steer Claude Code toward LSP-based navigation instead of grep to save tokens.
Grip
439guilyx/grip
A git hook that won't let you push code you can't explain. Quizzes you on your own diff. Works with Claude Code, Codex, Cursor.
Abide
621coldteadotai/abide
Make your coding agent abide by all your project rules
cchooks
131GowayLee/cchooks
Python SDK that simplifies parsing hook input and returning decisions for Claude Code hooks.
nWave
631nWave-ai/nWave
AI agents that guide you from idea to working code, with you in control at every step.
TypeScript Quality Hooks
179bartolli/claude-code-typescript-hooks
Hooks that run TypeScript type checks, ESLint and Prettier automatically after Claude edits files.
Browse the most popular Claude Code mods, all hooks, or the skills and MCP server directories.