/taskmaster
Codex wrapper plus same-process expect PTY injector that keeps work moving until an explicit parseable done signal is emitted.
$ npx -y skills add blader/taskmaster --skill taskmaster --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
- Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.Auto-invocation is when the right skill fires by itself at the right moment, driven by a FLOW.md router and a hook, instead of you invoking it by name. It is the difference between a skill being installed and a skill actually getting used.Read the full definition →
- You can call itInvoke it directly when you want it.
- Slash command
/taskmaster
Context preview
The summary Claude sees to decide when to auto-load this skill.
Codex wrapper plus same-process expect PTY injector that keeps work moving until an explicit parseable done signal is emitted.
SKILL.md
taskmaster.SKILL.mdname: taskmaster
description: |
Codex wrapper plus same-process expect PTY injector
that keeps work moving until an explicit parseable done signal is emitted.
author: blader
version: 4.2.0
Taskmaster
Taskmaster for Codex uses session-log polling plus automatic continuation. Codex TUI does not currently expose arbitrary writable stop hooks, so this skill implements the same completion contract externally.
How It Works
1. **Run Codex via wrapper**: `run-taskmaster-codex.sh` sets `CODEX_TUI_RECORD_SESSION=1` and a log path. 2. **Injector parses log events** and checks completion on each `task_complete` event. 3. **Parseable token contract**: `TASKMASTER_DONE::<session_id>` 4. **Token missing**:
- inject follow-up user message into the same running process via
expect PTY bridge transport, using the shared compliance prompt. 5. **Token present**: no further injection.
Parseable Done Signal
When the work is genuinely complete, the agent must include this exact line in its final response (on its own line):
TASKMASTER_DONE::<session_id>
This gives external automation a deterministic completion marker to parse.
Configuration
- `TASKMASTER_MAX` (default `0`): max warning count before suppression in the
stop hook. `0` means unlimited warnings.
Fixed behavior (not configurable):
- Done token prefix: `TASKMASTER_DONE`
- Poll interval: `1` second
- Transport: expect only
- Expect payload mode and submit delay are fixed
Setup
Install and run:
bash ~/.codex/skills/taskmaster/install.sh
codex-taskmaster
Read more
name: taskmaster description: | Codex wrapper plus same-process expect PTY injector that keeps work moving until an explicit parseable done signal is emitted. author: blader version: 4.2.0
Taskmaster
Taskmaster for Codex uses session-log polling plus automatic continuation. Codex TUI does not currently expose arbitrary writable stop hooks, so this skill implements the same completion contract externally.
How It Works
1. **Run Codex via wrapper**: `run-taskmaster-codex.sh` sets `CODEX_TUI_RECORD_SESSION=1` and a log path. 2. **Injector parses log events** and checks completion on each `task_complete` event. 3. **Parseable token contract**: `TASKMASTER_DONE::<session_id>` 4. **Token missing**:
- inject follow-up user message into the same running process via
expect PTY bridge transport, using the shared compliance prompt. 5. **Token present**: no further injection.
Parseable Done Signal
When the work is genuinely complete, the agent must include this exact line in its final response (on its own line):
TASKMASTER_DONE::<session_id>
This gives external automation a deterministic completion marker to parse.
Configuration
- `TASKMASTER_MAX` (default `0`): max warning count before suppression in the
stop hook. `0` means unlimited warnings.
Fixed behavior (not configurable):
- Done token prefix: `TASKMASTER_DONE`
- Poll interval: `1` second
- Transport: expect only
- Expect payload mode and submit delay are fixed
Setup
Install and run:
bash ~/.codex/skills/taskmaster/install.sh codex-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.

