skills/skill-parallel-agents/SKILL.md
Decompose large tasks across parallel agents — use for migrations, multi-file refactors, or batch work
npx skillsauth add nyldn/claude-octopus skill-parallel-agentsInstall 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.
Host: Codex CLI — This skill was designed for Claude Code and adapted for Codex. Cross-reference commands use installed skill names in Codex rather than
/octo:*slash commands. Use the active Codex shell and subagent tools. Do not claim a provider, model, or host subagent is available until the current session exposes it. For host tool equivalents, seeskills/blocks/codex-host-adapter.md.
When this skill is invoked, you MUST dispatch work to multiple providers in parallel. You are PROHIBITED from:
This skill exists specifically for multi-provider parallel work. If you catch yourself thinking "I'll just do this myself" — STOP.
Multi-tentacled orchestrator for Claude Code - using Double Diamond methodology for comprehensive problem exploration, consensus building, and validated delivery.
DISCOVER DEFINE DEVELOP DELIVER
(probe) (grasp) (tangle) (ink)
\ / \ / \ / \ /
\ * / \ * / \ * / \ * /
\ * * / \ / \ * * / \ /
\ / \ / \ / \ /
\ / \ / \ / \ /
Diverge then Converge to Diverge with Converge to
converge problem solutions delivery
Note for Claude Code users: You don't need to run these commands! Just talk naturally to Claude:
- "Research OAuth authentication patterns"
- "Build a user authentication system"
- "Review this code for security issues"
The commands below are for direct CLI usage or automation.
# Full Double Diamond workflow (all 4 phases)
${HOME}/.claude-octopus/plugin/scripts/orchestrate.sh embrace "Build a user authentication system"
# Individual phases
${HOME}/.claude-octopus/plugin/scripts/orchestrate.sh probe "Research authentication best practices"
${HOME}/.claude-octopus/plugin/scripts/orchestrate.sh grasp "Define auth requirements"
${HOME}/.claude-octopus/plugin/scripts/orchestrate.sh tangle "Implement auth feature"
${HOME}/.claude-octopus/plugin/scripts/orchestrate.sh ink "Validate and deliver auth implementation"
# Crossfire: Adversarial cross-model review
${HOME}/.claude-octopus/plugin/scripts/orchestrate.sh grapple "implement password reset API"
${HOME}/.claude-octopus/plugin/scripts/orchestrate.sh grapple --principles security "implement JWT auth"
${HOME}/.claude-octopus/plugin/scripts/orchestrate.sh squeeze "review auth.ts for vulnerabilities"
# Smart auto-routing (detects intent automatically)
${HOME}/.claude-octopus/plugin/scripts/orchestrate.sh auto "research OAuth patterns" # -> probe
${HOME}/.claude-octopus/plugin/scripts/orchestrate.sh auto "build user login" # -> tangle + ink
${HOME}/.claude-octopus/plugin/scripts/orchestrate.sh auto "review the auth code" # -> ink
DO NOT use this skill if the user's request involves:
Built-in Claude Code commands - Commands starting with / that are part of Claude Code itself:
/plugin - Plugin management (add, remove, update, list)/init - Project initialization/help - Help documentation/clear - Clear conversation/commit - Git commit operations/remember - Memory management/ command that isn't /parallel-agents or /octo:*Direct tool usage - Simple file operations, git commands, or terminal tasks
Claude Code configuration - Managing Claude Code itself
If the user's request matches any of the above, DO NOT activate this skill. Handle the request using standard Claude Code tools and capabilities instead.
Claude Octopus uses visual indicators so you always know which AI is responding:
| Indicator | Meaning | Uses | |-----------|---------|------| | 🐙 | Parallel Mode | Multiple CLIs orchestrated via orchestrate.sh | | 🔴 | Codex CLI | OpenAI Codex (your OPENAI_API_KEY) | | 🧭 | Antigravity CLI | Google Antigravity (your authenticated seat) | | 🔵 | Claude Subagent | Claude Code host subagent tool (built-in) |
External CLIs execute when:
/parallel-agents command explicitly/octo:debate command (AI Debate Hub)Claude Subagents execute when:
Why this matters: External CLIs use your OpenAI/Google API quotas and incur costs. Claude subagents are included with Claude Code at no additional charge.
When you see 🐙 CLAUDE OCTOPUS ACTIVATED, external CLI providers such as Codex, Antigravity, and others will be invoked for multi-perspective analysis.
Sometimes you want multi-provider analysis even for simple tasks that wouldn't normally trigger workflows. This is useful when you need comprehensive perspectives on decisions, want to compare how different models think, or when automatic routing underestimates task complexity.
Force multi-provider execution using the /octo:multi command:
/octo:multi "Explain how Redis works"
/octo:multi "What is OAuth?"
/octo:multi "Review this simple function"
/octo:multi "Should we use TypeScript?"
You can also force multi-provider mode with natural language:
"Run this with all providers: What is JWT?"
"I want multiple AI models to look at our architecture"
"Get multiple perspectives on this design decision"
"Use all providers for explaining caching strategies"
"Force multi-provider analysis of our API design"
Use forced parallel mode when:
Don't force parallel mode when:
octo research, octo build, octo review)Forcing parallel mode uses external CLIs for every task, which incurs API costs:
| Provider | Cost per Query | What It Uses | |----------|----------------|--------------| | 🔴 Codex CLI | ~$0.01-0.05 | Your OPENAI_API_KEY | | 🧭 Antigravity CLI | Included with access/subscription | Antigravity CLI auth | | 🔵 Claude | Included | Claude Code subscription |
Total cost per forced query: ~$0.02-0.08
Use forced parallel mode judiciously for tasks where multiple perspectives genuinely add value. For routine work, let automatic routing decide when multi-provider analysis is beneficial.
When you force parallel mode, you'll see this banner:
🐙 **CLAUDE OCTOPUS ACTIVATED** - Multi-provider mode
Force parallel execution
Providers:
🔴 Codex CLI - [Role in this task]
🧭 Antigravity CLI - [Role in this task]
🔵 Claude - [Role in this task]
Followed by results from each provider marked with their indicators (for example 🔴 🟡 🧭 🔵).
Once this skill activates, run the local provider check:
OCTO_ROOT="${CLAUDE_PLUGIN_ROOT:-${HOME}/.claude-octopus/plugin}"
"$OCTO_ROOT/scripts/orchestrate.sh" detect-providers
This check reads local commands, credentials, and the one-hour cache. It does not call provider APIs. Current output includes the Claude Code version contract and one status per provider:
Detecting Claude Code version...
CLAUDE_CODE_VERSION=2.1.219
CLAUDE_CODE_STATUS=ok
CLAUDE_CODE_MINIMUM=2.1.14
CODEX_STATUS=ok
AGY_STATUS=unauthenticated
Provider values are ok, unauthenticated, quota, not-installed, or a specific reason such as model-invalid.
If Claude Code is outdated, stop and show the version and update instructions reported by the command:
CLAUDE_CODE_VERSION=2.1.13
CLAUDE_CODE_STATUS=outdated
CLAUDE_CODE_MINIMUM=2.1.14
If one non-Claude provider reports ok, use it. Parallel execution needs at least one ready non-Claude provider, but ordinary Claude-only commands still work without one. If none reports ok, stop the parallel workflow, direct the user to /octo:setup, and do not simulate provider agreement by running one provider repeatedly. One ready provider can supply an additional perspective, but it is not multi-provider consensus.
The command writes ~/.claude-octopus/.provider-cache. Reuse it for up to one hour; after that, run detection again.
Diverge then converge on understanding
Parallel research from 4 perspectives:
${HOME}/.claude-octopus/plugin/scripts/orchestrate.sh probe "What are the best approaches for real-time notifications?"
Build consensus on the problem
Multi-tentacled problem definition:
${HOME}/.claude-octopus/plugin/scripts/orchestrate.sh grasp "Define requirements for notification system" --context probe-synthesis-*.md
Diverge with multiple solutions
Enhanced map-reduce with validation:
${HOME}/.claude-octopus/plugin/scripts/orchestrate.sh tangle "Implement notification service" --context grasp-consensus-*.md
Converge to validated delivery
Pre-delivery validation:
${HOME}/.claude-octopus/plugin/scripts/orchestrate.sh ink "Deliver notification system" --context tangle-validation-*.md
Run all 4 phases sequentially with automatic context passing:
${HOME}/.claude-octopus/plugin/scripts/orchestrate.sh embrace "Create a complete user dashboard feature"
Different models have different blind spots. Crossfire commands force models to critique each other's work, catching more issues than single-model review.
Two tentacles wrestling until consensus
Available providers each propose solutions, then critique each other's work. A synthesis determines the winner.
┌─────────────┐ ┌─────────────┐
│ Codex │ │ Antigravity │
│ (Proposer) │ │ (Proposer) │
└──────┬──────┘ └──────┬──────┘
│ │
▼ ▼
┌─────────────┐ ┌─────────────┐
│ PROPOSAL A │ ←─→ │ PROPOSAL B │
└──────┬──────┘ └──────┬──────┘
│ │
▼ ▼
┌─────────────┐ ┌─────────────┐
│ Antigravity │ │ Codex │
│ (Critic) │ │ (Critic) │
└──────┬──────┘ └──────┬──────┘
│ │
└─────────┬─────────┘
▼
┌─────────────────┐
│ SYNTHESIS │
│ (Winner + Fix) │
└─────────────────┘
# Basic grapple
${HOME}/.claude-octopus/plugin/scripts/orchestrate.sh grapple "implement password reset API"
# Grapple with security principles
${HOME}/.claude-octopus/plugin/scripts/orchestrate.sh grapple --principles security "implement JWT authentication"
# Grapple with performance principles
${HOME}/.claude-octopus/plugin/scripts/orchestrate.sh grapple --principles performance "optimize database queries"
Octopus squeezes prey to test for weaknesses
Blue Team (Codex) implements secure code. Red Team (Antigravity) attacks to find vulnerabilities. Then remediation and validation.
Phase 1: Blue Team implements secure solution
Phase 2: Red Team finds vulnerabilities
Phase 3: Remediation fixes all issues
Phase 4: Validation verifies all fixed
${HOME}/.claude-octopus/plugin/scripts/orchestrate.sh squeeze "implement user login form"
${HOME}/.claude-octopus/plugin/scripts/orchestrate.sh squeeze "review auth.ts for vulnerabilities"
Grapple supports domain-specific critique principles:
| Principle | Focus | Use Case |
|-----------|-------|----------|
| general | Overall quality | Default for most reviews |
| security | OWASP Top 10, secure coding | Auth, payments, user data |
| performance | N+1 queries, caching, async | Database, API optimization |
| maintainability | Clean code, testability | Refactoring, code reviews |
${HOME}/.claude-octopus/plugin/scripts/orchestrate.sh grapple --principles security "implement password reset"
${HOME}/.claude-octopus/plugin/scripts/orchestrate.sh grapple --principles performance "optimize search API"
${HOME}/.claude-octopus/plugin/scripts/orchestrate.sh grapple --principles maintainability "refactor user service"
The auto command detects intent keywords and routes to the appropriate workflow:
| Keywords | Routes To | Phases |
|----------|-----------|--------|
| research, explore, investigate, analyze | probe | Discover |
| develop, dev, build, implement, create | tangle + ink | Develop + Deliver |
| qa, test, review, validate, check | ink | Deliver (quality focus) |
| security audit, red team, pentest | squeeze | Red Team |
| adversarial, cross-model, debate | grapple | Debate |
| (other coding keywords) | codex agent | Single agent |
| (other design keywords) | agy agent | Single agent |
Examples:
${HOME}/.claude-octopus/plugin/scripts/orchestrate.sh auto "research best practices for caching" # -> probe
${HOME}/.claude-octopus/plugin/scripts/orchestrate.sh auto "build the caching layer" # -> tangle + ink
${HOME}/.claude-octopus/plugin/scripts/orchestrate.sh auto "review the cache implementation" # -> ink
${HOME}/.claude-octopus/plugin/scripts/orchestrate.sh auto "security audit the auth module" # -> squeeze
${HOME}/.claude-octopus/plugin/scripts/orchestrate.sh auto "have both models debate the API design" # -> grapple
${HOME}/.claude-octopus/plugin/scripts/orchestrate.sh auto "fix the cache invalidation bug" # -> codex
The tangle phase enforces quality gates:
| Score | Status | Behavior | |-------|--------|----------| | >= 90% | PASSED | Proceed to ink | | 75-89% | WARNING | Proceed with caution | | < 75% | FAILED | Ink phase flags for review |
| Command | Phase | Description |
|---------|-------|-------------|
| probe <prompt> | Discover | Parallel research with AI synthesis |
| grasp <prompt> | Define | Consensus building on problem definition |
| tangle <prompt> | Develop | Enhanced map-reduce with quality gates |
| ink <prompt> | Deliver | Validation and final delivery |
| embrace <prompt> | All 4 | Full Double Diamond workflow |
| preflight | - | Validate all dependencies |
| Command | Description |
|---------|-------------|
| grapple <prompt> | Codex vs Antigravity debate until consensus |
| grapple --principles TYPE <prompt> | Debate with domain principles (security, performance, maintainability) |
| squeeze <prompt> | Red Team security review (Blue Team vs Red Team) |
| Command | Description |
|---------|-------------|
| init | Initialize workspace |
| spawn <agent> <prompt> | Spawn single agent |
| auto <prompt> | Smart routing (Double Diamond or agent) |
| fan-out <prompt> | Send to multiple agents |
| map-reduce <prompt> | Decompose and parallelize |
| parallel [tasks.json] | Execute task file |
| status | Show running agents |
| kill [id\|all] | Terminate agents |
| clean | Reset workspace |
| aggregate [filter] | Combine results |
| Option | Default | Description |
|--------|---------|-------------|
| -p, --parallel | 3 | Max concurrent agents |
| -t, --timeout | 300 | Timeout per task (seconds) |
| -v, --verbose | false | Verbose logging |
| -n, --dry-run | false | Show without executing |
| --context <file> | - | Context from previous phase |
| Agent | Model | Best For |
|-------|-------|----------|
| codex | gpt-5.6-sol | Frontier implementation and independent review |
| codex-standard | gpt-5.6-terra | Balanced implementation and review |
| codex-mini | gpt-5.6-luna | Quick fixes, simple tasks |
| agy | service-selected default | Deep analysis and external review |
| agy-research | service-selected default | Research-focused Antigravity seat |
| codex-review | gpt-5.6-sol | Code review mode |
| openrouter | Various | Universal fallback (400+ models) |
| orcarouter | Various | Universal fallback via OrcaRouter gateway |
Claude Octopus now intelligently routes tasks based on your subscription tiers and costs.
| Provider | Tiers | Monthly Cost | Capabilities | |----------|-------|--------------|--------------| | Codex/OpenAI | Free, Plus, Pro, API | $0-200 | code, chat, review | | Antigravity | Google access/subscription | Included with access | code, analysis, external review | | Claude | Pro, Max 5x, Max 20x, API | $20-200 | code, chat, analysis, long-context | | OpenRouter | Pay-per-use | Variable | 400+ models, routing variants | | OrcaRouter | Pay-per-use | Variable | Single gateway, namespaced model IDs |
| Strategy | Description |
|----------|-------------|
| balanced (default) | Smart mix of cost and quality |
| cost-first | Prefer cheapest capable provider |
| quality-first | Prefer highest-tier provider |
Example: If your Google seat includes Antigravity access, the system can prefer AGY for analysis without invoking the retired Gemini CLI.
# Force a specific provider
${HOME}/.claude-octopus/plugin/scripts/orchestrate.sh --provider agy auto "analyze code structure"
# Prefer cheapest option
${HOME}/.claude-octopus/plugin/scripts/orchestrate.sh --cost-first auto "research best practices"
# Prefer highest quality
${HOME}/.claude-octopus/plugin/scripts/orchestrate.sh --quality-first auto "complex refactoring task"
# OpenRouter routing variants
${HOME}/.claude-octopus/plugin/scripts/orchestrate.sh --openrouter-nitro auto "quick task" # Fastest
${HOME}/.claude-octopus/plugin/scripts/orchestrate.sh --openrouter-floor auto "bulk task" # Cheapest
Provider tiers are configured during setup or via the providers config file:
# Run setup wizard (includes provider tier steps)
${HOME}/.claude-octopus/plugin/scripts/orchestrate.sh setup
# View current provider status
${HOME}/.claude-octopus/plugin/scripts/orchestrate.sh status
Configuration file: ~/.claude-octopus/.providers-config
version: "2.0"
providers:
codex:
installed: true
auth_method: "oauth"
subscription_tier: "plus" # free|plus|pro|api-only
cost_tier: "low" # free|low|medium|high|bundled|pay-per-use
agy:
installed: true
auth_method: "oauth"
subscription_tier: "google" # service-managed Google access
cost_tier: "bundled"
openrouter:
enabled: false
routing_preference: "default" # default|nitro|floor
orcarouter:
enabled: false
cost_optimization:
strategy: "balanced" # cost-first|quality-first|balanced
OpenRouter provides 400+ models as a universal fallback when direct external CLIs are unavailable:
# Set up OpenRouter API key
export OPENROUTER_API_KEY="sk-or-..."
# Re-run setup to configure
${HOME}/.claude-octopus/plugin/scripts/orchestrate.sh setup
OrcaRouter provides a single gateway to many models as a universal fallback when direct external CLIs are unavailable:
# Set up OrcaRouter API key
export ORCAROUTER_API_KEY="sk-orca-..."
# Re-run setup to configure
${HOME}/.claude-octopus/plugin/scripts/orchestrate.sh setup
~/.claude-octopus/
├── results/
│ ├── probe-synthesis-*.md # Research findings
│ ├── grasp-consensus-*.md # Problem definitions
│ ├── tangle-validation-*.md # Quality gate reports
│ └── delivery-*.md # Final deliverables
├── logs/ # Execution logs
├── plans/ # Execution plan history
└── .gitignore
# 1. Explore the problem space
${HOME}/.claude-octopus/plugin/scripts/orchestrate.sh probe "Authentication patterns for microservices"
# 2. Define the approach (with probe context)
${HOME}/.claude-octopus/plugin/scripts/orchestrate.sh grasp "OAuth2 with JWT for our API" \
--context ~/.claude-octopus/results/probe-synthesis-*.md
# 3. Implement with validation
${HOME}/.claude-octopus/plugin/scripts/orchestrate.sh tangle "Implement OAuth2 authentication"
# 4. Deliver with quality checks
${HOME}/.claude-octopus/plugin/scripts/orchestrate.sh ink "Finalize auth implementation"
# Auto-detects "build" intent -> runs tangle + ink
${HOME}/.claude-octopus/plugin/scripts/orchestrate.sh auto "build a rate limiting middleware"
# All 4 phases in one command
${HOME}/.claude-octopus/plugin/scripts/orchestrate.sh embrace "Create a user notification system with email and push support"
embrace for new features requiring explorationprobe alone when researching before committing to an approachauto for smart routing based on your intent--context for incremental workflowspreflight before long workflows to verify dependencies${HOME}/.claude-octopus/plugin/scripts/orchestrate.sh preflight
# Verify: codex CLI, agy CLI, and task-relevant provider credentials
Tangle phase requires 75% success rate. If failing:
-t 600~/.claude-octopus/logs/${HOME}/.claude-octopus/plugin/scripts/orchestrate.sh clean
${HOME}/.claude-octopus/plugin/scripts/orchestrate.sh init
tools
Prototype one risky assumption within a fixed budget, then keep or discard the result
testing
Break a plan or spec into vertical slices that each declare what blocks them — use when work is agreed but not yet cut into fileable pieces
testing
Interrogate a plan, decision, or design one question at a time until it holds — use to stress-test your own thinking before committing to it
business
Move incoming issues and pull requests through triage states until each is actionable or closed — use when the queue has piled up or a report arrives unsorted