skills/deploy-agent-team/SKILL.md
This skill should be used when the user says "deploy a team", "spin up agents to work on this", "use all our agents", "coordinate specialists", or wants to break a large task into parallel sub-tasks handled by multiple domain experts simultaneously. Orchestrates Claude Code's experimental agent team system using the full bopen-tools specialist roster.
npx skillsauth add b-open-io/prompts deploy-agent-teamInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Deploy a coordinated team of specialized agents from the bopen-tools kit using Claude Code's agent team system. Agents work in parallel on independent tasks and communicate through a shared task list and message bus.
Agent teams require this env var to be set:
CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS=1
Add to ~/.claude/settings.json:
{
"env": {
"CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS": "1"
}
}
Without this, TeamCreate will fail.
Start from the lead session's permission settings and inspect the installed
Agent tool schema before spawning. Current builds can accept a per-spawn
mode; use a safe non-interactive mode such as dontAsk/auto with narrow
allow rules when available. If the host does not expose that field, the teammate
inherits the lead. Permission requests may bubble up to the lead.
Do not launch the lead with --dangerously-skip-permissions merely to avoid team
prompts. Reserve that mode for an explicitly trusted, externally sandboxed
environment.
See references/permissions-and-isolation.md for the permission and file-ownership
model.
| Agent | subagent_type | Best for |
|-------|--------------|----------|
| researcher | bopen-tools:researcher | Libraries, APIs, docs, competitive analysis |
| nextjs | bopen-tools:nextjs | Next.js, React, Vercel, RSC, app router |
| native-desktop | bopen-tools:native-desktop | Native SDK, Zig, WebViews, menu-bar apps, signed DMGs |
| designer | bopen-tools:designer | UI, game HUDs, TV shells, directional focus, Tailwind, accessibility |
| agent-builder | bopen-tools:agent-builder | AI SDK v7 agents, durable runtime selection, conditional eve evaluation |
| database | bopen-tools:database | Schema, queries, PostgreSQL, Redis, Convex |
| integration-expert | bopen-tools:integration-expert | REST APIs, webhooks, third-party services |
| code-auditor | bopen-tools:code-auditor | Security review, vulnerability scanning |
| tester | bopen-tools:tester | Unit, integration, e2e tests, CI |
| documentation-writer | bopen-tools:documentation-writer | READMEs, API docs, PRDs, guides |
| devops | bopen-tools:devops | Vercel+Railway+Bun, CI/CD, monitoring |
| optimizer | bopen-tools:optimizer | Bundle analysis, Lighthouse, Core Web Vitals |
| architecture-reviewer | bopen-tools:architecture-reviewer | System design, refactoring strategy, tech debt |
| mobile | bopen-tools:mobile | Expo-first React Native, Swift, Kotlin, Flutter |
| payments | bopen-tools:payments | Stripe, billing, financial transactions |
| marketer | product-skills:marketer | CRO, SEO, copy, launch strategy |
| legal | product-skills:legal | Privacy, compliance, ToS |
| mcp | bopen-tools:mcp | MCP server setup, config, diagnostics |
Full roster with per-agent skills to mention in spawn prompts: references/agent-roster.md
Before calling any tools, identify:
TeamCreate(
team_name: "feature-billing",
description: "Implement Stripe billing with UI, API, tests, and docs"
)
Set dependencies with addBlockedBy where order matters:
TaskCreate(
subject: "Design billing UI components",
description: "Create PricingCard, BillingHistory, UpgradeModal using shadcn/ui.
Repo: ~/code/myapp. Tailwind v4. Output: src/components/billing/.",
activeForm: "Designing billing UI"
) → id: "1"
TaskCreate(
subject: "Implement Stripe integration",
description: "Set up webhooks, subscription creation, customer portal.
Repo: ~/code/myapp. API routes in app/api/billing/.",
activeForm: "Implementing Stripe integration"
) → id: "2"
TaskCreate(
subject: "Write billing test suite",
description: "Vitest tests for all billing API routes and webhook handler.
Repo: ~/code/myapp. Tests in __tests__/billing/.",
activeForm: "Writing billing tests"
) → id: "3"
TaskUpdate(taskId: "3", addBlockedBy: ["2"]) # tests wait for Stripe impl
Agent(
subagent_type: "bopen-tools:designer",
name: "designer",
mode: "dontAsk",
prompt: "..." # see references/spawn-prompt-guide.md
)
Every spawn prompt must be self-contained — teammates have zero conversation history. See references/spawn-prompt-guide.md for the full template and how to list each agent's available skills.
Messages from teammates arrive automatically. Check progress:
TaskList()
Answer a blocked teammate:
SendMessage(
type: "message",
recipient: "backend",
content: "Stripe webhook secret is STRIPE_WEBHOOK_SECRET in .env.local",
summary: "Stripe secret location"
)
SendMessage(type: "shutdown_request", recipient: "designer", content: "Work complete")
SendMessage(type: "shutdown_request", recipient: "backend", content: "Work complete")
SendMessage(type: "shutdown_request", recipient: "tester", content: "Work complete")
# Wait for each shutdown_response, then:
TeamDelete()
Parallel from the start:
├── researcher: research best practices / prior art
├── designer: UI components
├── nextjs or integration-expert: API / server logic
└── database: schema changes
Blocked until implementation complete:
├── tester: test suite
└── documentation-writer: feature docs
Parallel:
├── code-auditor: full vulnerability scan (Semgrep, CodeQL)
└── architecture-reviewer: structural/design issues
Blocked until audit complete:
├── nextjs or integration-expert: fix findings
└── tester: regression tests
Parallel:
├── code-auditor: security review
├── tester: coverage audit
├── optimizer: Lighthouse + bundle
├── documentation-writer: user-facing docs
└── legal: privacy / ToS
Blocked until all above complete:
└── devops: deploy pipeline
| Problem | Fix |
|---------|-----|
| TeamCreate fails | Check CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS=1 is set |
| Teammate hits permission prompts | Pre-approve the specific safe operation in the lead's settings, then retry |
| Teammate not claiming tasks | Check blockedBy deps with TaskGet |
| Teammate idle and unresponsive | Send a direct SendMessage — idle agents wake on receipt |
| TeamDelete fails | Teammates still running. Send shutdown_request to each |
| Teammate went off-script | Send correction via SendMessage. If severe, shutdown and respawn |
references/permissions-and-isolation.md — inherited permissions and safe file partitioningreferences/agent-roster.md — full roster table + which skills to mention per agent in spawn promptsreferences/spawn-prompt-guide.md — complete spawn prompt template with skills sectiontools
This skill should be used when a Claude Code session needs to keep working after Anthropic usage runs out, or when the user asks to run the Claude Code harness on GPT-5.6 Sol. Trigger phrases include "my Anthropic usage ran out", "I'm out of Claude usage", "usage limit reached, what now", "keep working on another model", "run Claude Code on GPT-5.6 Sol", "use GPT-5.6 Sol as the model", "set up claudex", "claudex isn't working", "route the harness through CLIProxyAPI", or "bill against my ChatGPT/Codex subscription". It stands up a local proxy so the Claude Code CLI runs on OpenAI's Codex backend as an escape hatch, and diagnoses that setup when it drifts. macOS + Homebrew.
testing
This skill should be used when the user asks to "open Visual Wayfinder", "answer a Wayfinder ticket visually", "turn this decision into a configurator", "show Wayfinder choices as a dashboard", "prototype the Wayfinder questionnaire", or wants interactive choice cards, tradeoff controls, rankings, ranges, toggles, and consequence previews for one active Wayfinder decision. It wraps the Wayfinder skill and JSON Render; it never replaces the tracker or resolves more than the active decision.
development
This skill should be used when the user asks to "make a visual proposal", "write this up so I can share it", "present these options visually", "diagram the trade-offs", "turn this plan into something reviewable", or requests a shareable design pitch, architecture proposal, RFC, options comparison, or visual roadmap for work that has not been built. It produces one self-contained, theme-aware HTML page led by grounded diagrams. Use visual-review instead for completed code changes; do not use this skill for internal task tracking.
tools
This skill should be used when the user asks to "add plugin settings", "make a plugin configurable", "store per-project plugin configuration", "use settings.local.json", "create a plugin state file", "expose skill settings in Agent Master", or "add a skill interface". Distinguishes official Claude Code settings from project-owned configuration and documents bOpen Agent Master skill interface discovery.