maestro-uninstall
Maestro Uninstall
Remove the Maestro orchestrator that /maestro-install installed. This is the inverse of the installer. By default it is conservative: it removes the bash-validation hook and clears ephemeral session state — your config (maestro.json) and the orchestrator skill are kept.
The uninstaller script only touches files in .claude/ — it never touches the actual tasks in the task list, because those live in Claude Code's task system, not on disk. The ephemeral maestro_session_tasks.json it deletes is only a per-session ledger of step labels, not your tasks. Deleting the real Maestro tasks is a separate, opt-in step handled in purge mode (step 3 below).
Workflow
-
Decide the scope. Ask the user (or infer from their request):
- default — remove the bash-validation PreToolUse hook from settings (session files cleared);
maestro.jsonand the orchestrator skill are kept --purge— also delete.claude/skills/maestro/SKILL.md, the copied runtime scripts (maestro-set-session-workflow.cjs,maestro-render-orchestrator.cjs,bash-validation.sh,lib/maestro-session.cjs), and the user-authored config (.claude/maestro.json) — everything the install pipeline produced. Use this only when the user wants Maestro fully gone. Ifmaestro.jsonis tracked in git, the deletion will show up as a working-tree change to commit.
- default — remove the bash-validation PreToolUse hook from settings (session files cleared);
-
Run the uninstaller from the project root:
node "${CLAUDE_SKILL_DIR}/../../scripts/maestro-uninstall.js" "${CLAUDE_PROJECT_DIR:-.}"Add
--purgeas a trailing argument if the user asked to fully remove it: