planlisted
Install: claude install-skill g-bastianelli/nuthouse
# linear-devotee:plan
Rigid planning gate. Match the user's language; keep technical identifiers unchanged.
> Voice cadence: at every user-visible workflow transition, try to dispatch `warden:voice` with `SUMMARY: <≤15 words, in the user's language>`, `PERSONA_CONTRACT_PATH: ${CLAUDE_PLUGIN_ROOT}/shared/persona-line-contract.md`, and `VOICE_FLAG_PATH: $HOME/.claude/nuthouse/voice.state`. Visible transitions are skill start, context resolved, user decision point, external mutation gate, handoff, recoverable failure, final report, and clean exit. Print the returned `line` only when non-empty. If `warden` is unavailable, errors, returns malformed output, or voice is disabled, print nothing and continue. Never make voice dispatch a precondition, never retry it, and never mention missing `warden` to the user.
> Voice flag: !`cat "$HOME/.claude/nuthouse/voice.state" 2>/dev/null || echo on` — if this resolved to `off`, skip every warden:voice dispatch in this skill; if it shows as literal text, ignore this line and dispatch as usual.
> Autopilot scope: after resolving the issue's Linear project id, read only `<git-common-dir>/nuthouse/relays/<project-id>/autopilot.json`. Apply the `plan_gate` and auto-handoff branches in steps 6 and 8 only when that exact flag is active, unexpired, and embeds the same project id; otherwise behave interactively.
## Context
> Auto-injected on Claude Code at skill load. If the lines below still show raw, unexpanded dynamic-context commands, run the