Verify Maestro plugin prerequisites — Agent Teams flag, jq, trace MCP, PSM tools, directories, and hooks.
Run through each check below. Report PASS or FAIL for each item with details.
Read ~/.claude/settings.json and verify it contains:
{
"env": {
"CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS": "1"
}
}
On FAIL: Show the user the exact JSON needed. Note: Cannot safely auto-edit global settings — provide instructions:
Add the following to
~/.claude/settings.jsonand restart Claude Code:{ "env": { "CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS": "1" } }
Run — hooks require jq for JSON processing.
which jqOn FAIL: Detect OS and show install command:
AskUserQuestion(
questions: [{
question: "jq is not installed. Install it now?",
header: "Install jq",
options: [
{ label: "Show command", description: "Display the install command for your OS" },
{ label: "Skip", description: "Continue without jq (hooks may not work)" }
],
multiSelect: false
}]
)
If user wants to install, show: brew install jq (macOS) or sudo apt-get install jq (Linux). Re-check after install.
Verify trace toolbox prerequisites exist:
toolboxes/trace/ directorytoolboxes/trace/trace.js entrypointUse Glob checks. PASS only if both exist.
On FAIL: Report missing paths and instruct user to run setup/build for the trace toolbox before enabling trace MCP.
Run which tmux — /psm requires tmux sessions.
On FAIL: Detect OS and show install command:
brew install tmuxsudo apt-get install tmuxRun which gh — /psm uses GitHub CLI for PR/issue operations.
On FAIL: Detect OS and show install command:
brew install ghsudo apt-get install ghAlso remind user to authenticate after install:
gh auth login
Verify these directories exist:
.maestro/plans/.maestro/drafts/.maestro/wisdom/.maestro/research/On FAIL:
AskUserQuestion(
questions: [{
question: "Missing .maestro directories. Create them now?",
header: "Fix dirs",
options: [
{ label: "Yes, create", description: "Run mkdir -p .maestro/plans .maestro/drafts .maestro/wisdom .maestro/research" },
{ label: "Skip", description: "Continue without creating directories" }
],
multiSelect: false
}]
)
If yes: Bash("mkdir -p .maestro/plans .maestro/drafts .maestro/wisdom .maestro/research"). Re-check to confirm.
Check that all symlinks in .claude/scripts/ point to valid targets:
ls -la .claude/scripts/
Report any broken symlinks. No auto-fix for symlinks — they require manual attention.
Validate the plugin manifest parses correctly:
cat .claude-plugin/plugin.json | jq .
Validate hooks config parses correctly:
cat .claude/hooks/hooks.json | jq .
Verify all scripts in scripts/ are executable:
ls -la scripts/*.sh
On FAIL:
AskUserQuestion(
questions: [{
question: "Some scripts are missing execute permission. Fix now?",
header: "Fix perms",
options: [
{ label: "Yes, fix", description: "Run chmod +x scripts/*.sh" },
{ label: "Skip", description: "Continue without fixing permissions" }
],
multiSelect: false
}]
)
If yes: Bash("chmod +x scripts/*.sh"). Re-check to confirm.
End with a summary:
## Setup Status
- Agent Teams: PASS/FAIL
- jq: PASS/FAIL
- Trace MCP toolbox: PASS/FAIL
- tmux: PASS/FAIL
- gh CLI: PASS/FAIL
- Directories: PASS/FAIL
- Symlinks: PASS/FAIL
- Plugin manifest: PASS/FAIL
- Hooks config: PASS/FAIL
- Script permissions: PASS/FAIL
Overall: READY / NOT READY (N issues to fix)