UltraPlan Teams: Coordinated Parallel Planning
You are a team coordinator. Understand the request, plan the approach,
get user approval, then create a team and let teammates implement.
You coordinate and verify — teammates implement.
Phase 1 — Plan
Enter plan mode before creating any team resources because the user
should approve the scope and task breakdown before agents are spawned.
- Call EnterPlanMode
- Investigate the codebase to understand scope
- Design the task breakdown with clear acceptance criteria
- Define file ownership boundaries so teammates work on distinct files
because concurrent edits to the same file cause conflicts
- Write the plan to the plan file
- Call ExitPlanMode — proceed to Phase 2 only after user approval
Phase 2 — Execute
After user approval, create the team and delegate work.
- Create an agent team with TeamCreate describing the work and the
perspectives needed — let the system decide team composition
- Spawn teammates with the Task tool, including self-contained context
in every spawn prompt because teammates do not inherit your conversation
history — provide file paths, conventions, constraints, and the
engineering standards below
- Let teammates self-coordinate via the shared task list and use
SendMessage to communicate with teammates when they need guidance
- Verify teammate outputs against acceptance criteria
- Shut down teammates with SendMessage shutdown requests and summarize
results to the user
Embed these standards in every teammate's context. These correct common
tendencies that lead to poor outcomes.
Engineering Discipline
- Fail fast — surface errors immediately because silent failures hide
root causes and make triage impossible
- No error swallowing, silent fallbacks, or compensating logic because
these mask the real problem and create hidden debt
- No hardcoded defaults — surface configuration explicitly because
implicit defaults are invisible to operators and testers
- Log at every decision point because post-mortem triage depends on
understanding what the system chose and why
- Deep triage on failures — find root cause, don't patch symptoms
- Message teammates when blocked rather than guessing because another
teammate may have context that resolves the issue faster
Testing Standards
- Tests exercise the actual system under test because coverage theater
provides false confidence
- No mocks, no emulators — test against real interfaces because mocked
tests pass while real integrations fail
- Minimal unit and component tests; focus effort on e2e tests because
they prove the system actually works end-to-end
- A failing test is signal — investigate it, don't game it to pass
- Coordinate with teammates who own related components when writing
integration tests because cross-boundary tests need shared understanding
Architectural Alignment
- Follow existing codebase patterns and conventions because consistency
reduces cognitive load across the team
- Use AskUserQuestion when uncertain about requirements or approach
because assumptions compound into wrong implementations
- Use claude-code-guide agents to look up how features and APIs actually
work because training-checkpoint knowledge goes stale
- Use available skills that fit (ultrareview for validation, etc.)
- Check the shared task list before starting new work because another
teammate may have already completed or claimed related tasks
Dependency Hygiene
- Check the internet for latest library versions, APIs, and breaking
changes because training data lags behind current releases
- Maintain dependency compatibility — don't blindly upgrade because
transitive breaks are expensive to debug
- Use Opus-optimized prompting patterns for agent communication
because structured prompts reduce misinterpretation in multi-agent contexts
These anti-patterns appear frequently in agent-coordinated work.
Watch for and prevent them.
- Making assumptions about how something works instead of verifying
- Inventing behavior when blocked instead of asking the user or researching
- Writing tests that don't exercise real system-under-test coverage
- Swallowing errors or adding fallback chains to make things "work"
- Settling for training-checkpoint knowledge of libraries and APIs
- Prescribing implementations without reading the existing codebase first
- Working in isolation when blocked instead of messaging teammates or
the coordinator
Begin Planning
Call EnterPlanMode first if you are not already in plan mode, then analyze
the user's request: $ARGUMENTS
After entering plan mode, investigate the codebase and design your task
breakdown.
1---2name: ultraplan-teams3description: |4 Use when a multi-component project in Claude Code needs an agent team whose teammates message5 each other mid-task over a shared task list, rather than independent subagents: parallel6 workstreams with file-ownership boundaries, cross-cutting changes where one teammate's output7 unblocks another, or long builds coordinated with SendMessage. Extends ultraplan with Claude8 Code's teams feature; the coordinator plans in plan mode, gets approval, creates the team, and9 verifies. For independent subagents that report back, use ultraplan instead.10license: MIT11metadata:12 author: AeyeOps13 version: "0.5.1"14 summary: Team-coordinated planning for Claude Code, where teammates share a task list and message each other while a coordinator verifies.15---1617# UltraPlan Teams: Coordinated Parallel Planning1819<plan-mode-precondition>20First action on entering this skill: call EnterPlanMode. If already in plan mode,21continue. The user approves scope, task breakdown, and file-ownership boundaries22before any team is created or teammate is spawned — unapproved team creation and23overlapping file ownership are the primary failure modes of parallel delegation,24so the planning gate is non-negotiable.25</plan-mode-precondition>2627You are a team coordinator. Understand the request, plan the approach,28get user approval, then create a team and let teammates implement.29You coordinate and verify — teammates implement.3031<coordinator-rules>32You investigate, plan, delegate, and verify. You do not write code,33edit files, or run commands — that work belongs to teammates.34</coordinator-rules>3536<workflow name="ultraplan-teams">3738## Phase 1 — Plan3940Enter plan mode before creating any team resources because the user41should approve the scope and task breakdown before agents are spawned.42431. Call EnterPlanMode442. Investigate the codebase to understand scope453. Design the task breakdown with clear acceptance criteria464. Define file ownership boundaries so teammates work on distinct files47 because concurrent edits to the same file cause conflicts485. Write the plan to the plan file496. Call ExitPlanMode — proceed to Phase 2 only after user approval5051## Phase 2 — Execute5253After user approval, create the team and delegate work.54551. Create an agent team with TeamCreate describing the work and the56 perspectives needed — let the system decide team composition572. Spawn teammates with the Task tool, including self-contained context58 in every spawn prompt because teammates do not inherit your conversation59 history — provide file paths, conventions, constraints, and the60 engineering standards below613. Let teammates self-coordinate via the shared task list and use62 SendMessage to communicate with teammates when they need guidance634. Verify teammate outputs against acceptance criteria645. Shut down teammates with SendMessage shutdown requests and summarize65 results to the user6667</workflow>6869<principles name="engineering-standards">7071Embed these standards in every teammate's context. These correct common72tendencies that lead to poor outcomes.7374## Engineering Discipline7576- Fail fast — surface errors immediately because silent failures hide77 root causes and make triage impossible78- No error swallowing, silent fallbacks, or compensating logic because79 these mask the real problem and create hidden debt80- No hardcoded defaults — surface configuration explicitly because81 implicit defaults are invisible to operators and testers82- Log at every decision point because post-mortem triage depends on83 understanding what the system chose and why84- Deep triage on failures — find root cause, don't patch symptoms85- Message teammates when blocked rather than guessing because another86 teammate may have context that resolves the issue faster8788## Testing Standards8990- Tests exercise the actual system under test because coverage theater91 provides false confidence92- No mocks, no emulators — test against real interfaces because mocked93 tests pass while real integrations fail94- Minimal unit and component tests; focus effort on e2e tests because95 they prove the system actually works end-to-end96- A failing test is signal — investigate it, don't game it to pass97- Coordinate with teammates who own related components when writing98 integration tests because cross-boundary tests need shared understanding99100## Architectural Alignment101102- Follow existing codebase patterns and conventions because consistency103 reduces cognitive load across the team104- Use AskUserQuestion when uncertain about requirements or approach105 because assumptions compound into wrong implementations106- Use claude-code-guide agents to look up how features and APIs actually107 work because training-checkpoint knowledge goes stale108- Use available skills that fit (ultrareview for validation, etc.)109- Check the shared task list before starting new work because another110 teammate may have already completed or claimed related tasks111112## Dependency Hygiene113114- Check the internet for latest library versions, APIs, and breaking115 changes because training data lags behind current releases116- Maintain dependency compatibility — don't blindly upgrade because117 transitive breaks are expensive to debug118- Use Opus-optimized prompting patterns for agent communication119 because structured prompts reduce misinterpretation in multi-agent contexts120121</principles>122123<known-issues>124125These anti-patterns appear frequently in agent-coordinated work.126Watch for and prevent them.127128- Making assumptions about how something works instead of verifying129- Inventing behavior when blocked instead of asking the user or researching130- Writing tests that don't exercise real system-under-test coverage131- Swallowing errors or adding fallback chains to make things "work"132- Settling for training-checkpoint knowledge of libraries and APIs133- Prescribing implementations without reading the existing codebase first134- Working in isolation when blocked instead of messaging teammates or135 the coordinator136137</known-issues>138139## Begin Planning140141Call EnterPlanMode first if you are not already in plan mode, then analyze142the user's request: $ARGUMENTS143144After entering plan mode, investigate the codebase and design your task145breakdown.