OpenAgents Control (OAC) - Multi-agent orchestration and automation for Claude Code.
OpenAgents Control brings powerful multi-agent capabilities to Claude Code through a skills + subagents architecture:
- 8 Skills orchestrate workflows and guide the main agent through multi-stage processes
- 6 Subagents execute specialized tasks (context discovery, task breakdown, code implementation, testing, review)
- 4 Commands provide setup, status, help, and cleanup functionality
- Flat delegation hierarchy - only the main agent can invoke subagents (no nested calls)
- Context pre-loading - all standards and patterns loaded upfront to prevent nested discovery
- 6-stage workflow - ensures context-aware, high-quality code delivery with approval gates
- Intelligent Context Discovery - Smart discovery of coding standards, security patterns, and conventions
- Task Management - Break down complex features into atomic, verifiable subtasks
- Code Execution - Context-aware implementation following project standards
- Test Engineering - TDD-driven test creation and validation
- Code Review - Automated code quality and security analysis
Install directly from the Claude Code marketplace:
# Add the OpenAgents Control marketplace repository
/plugin marketplace add https://github.com/darrenhinde/OpenAgentsControl
# Install the OAC plugin
/plugin install oac
# Download context files (interactive profile selection)
/install-contextFirst time? Run
/install-contextto download context files, then/oac:statusto verify.
That's it! The plugin is now installed and ready to use.
For plugin development or testing:
# Clone the repository
git clone https://github.com/darrenhinde/OpenAgentsControl.git
cd OpenAgentsControl
# Load plugin locally
claude --plugin-dir ./plugins/claude-code
# Download context files
/install-contextAfter installation, the plugin is ready to use:
# Verify installation
/oac:status
# Get help and usage guide
/oac:help
# Start a development task (using-oac skill auto-invokes)
"Build a user authentication system"The using-oac skill is automatically invoked when you start a development task, guiding you through the 6-stage workflow with parallel execution for 5x faster feature development.
Context files are automatically downloaded during installation via /install-context. You can update or change profiles anytime:
# Install different profile
/install-context --profile=extended
# Force reinstall
/install-context --force
# Preview what would be installed
/install-context --dry-run --profile=allSkills guide the main agent through specific workflows:
Main workflow orchestrator implementing the 6-stage process (Analyze → Plan → LoadContext → Execute → Validate → Complete).
Auto-invoked: When you start a development task.
Guide for discovering and loading relevant context files (coding standards, security patterns, conventions).
Usage: /context-discovery authentication feature
Invokes: context-scout subagent via context: fork
Guide for fetching external library and framework documentation from Context7 and other sources.
Usage: /external-scout drizzle schemas
Invokes: external-scout subagent via context: fork
Guide for breaking down complex features into atomic subtasks with dependency tracking.
Usage: /task-breakdown user authentication system
Invokes: task-manager subagent via context: fork
Guide for executing coding tasks with full context awareness and self-review.
Usage: /code-execution implement JWT service
Invokes: coder-agent subagent via context: fork
Guide for generating comprehensive tests using TDD principles.
Usage: /test-generation authentication service
Invokes: test-engineer subagent via context: fork
Guide for performing thorough code reviews with security and quality analysis.
Usage: /code-review src/auth/
Invokes: code-reviewer subagent via context: fork
Execute multiple independent tasks in parallel to dramatically reduce implementation time for multi-component features.
Usage: Automatically used when task-manager marks tasks with parallel: true
Use when: Multiple independent tasks with no dependencies, need to speed up multi-component features
Subagents execute specialized tasks in isolated contexts:
Break down complex features into atomic, verifiable subtasks with dependency tracking and JSON-based progress management.
Tools: Read, Write, Glob, Grep
Model: sonnet
Discover relevant context files, standards, and patterns using navigation-driven discovery.
Tools: Read, Glob, Grep
Model: haiku
Fetch external library and framework documentation from Context7 API and other sources, with local caching.
Tools: Read, Write, Bash
Model: haiku
Execute coding subtasks with full context awareness, self-review, and quality validation.
Tools: Read, Write, Edit, Glob, Grep
Model: sonnet
Generate comprehensive tests using TDD principles with coverage analysis and validation.
Tools: Read, Write, Edit, Bash, Glob, Grep
Model: sonnet
Perform thorough code review with security analysis, quality checks, and actionable feedback.
Tools: Read, Bash, Glob, Grep
Model: sonnet
User-invocable commands for setup and status:
Download context files from the OpenAgents Control GitHub repository.
Usage: /install-context [--core|--all|--category=<name>]
Options:
--core- Download only core context files (standards, workflows, patterns)--all- Download all context files including examples and guides--category=<name>- Download specific category (e.g.,--category=standards)
Show usage guide for OAC workflow, skills, subagents, and commands.
Usage:
/oac:help- Show general help/oac:help <skill-name>- Show help for specific skill
Show plugin status, installed context version, and available components.
Usage: /oac:status
Shows:
- Plugin version
- Installed context version
- Available subagents and skills
- Context file count
Clean up old temporary files from .tmp directory.
Usage: /oac:cleanup [--force] [--session-days=N] [--task-days=N] [--external-days=N]
Options:
--force- Skip confirmation and delete immediately--session-days=N- Clean sessions older than N days (default: 7)--task-days=N- Clean completed tasks older than N days (default: 30)--external-days=N- Clean external context older than N days (default: 7)
Cleans:
- Old session files from
.tmp/sessions/ - Completed task files from
.tmp/tasks/ - Cached external documentation from
.tmp/external-context/
Example:
# Clean with defaults
/oac:cleanup
# Clean aggressively (3 days for sessions)
/oac:cleanup --session-days=3 --forceOAC implements a structured workflow for every development task:
- Understand requirements and scope
- Invoke
/context-discoveryto find relevant context files - Identify project standards, patterns, and conventions
- Present implementation plan
- REQUEST APPROVAL before proceeding
- Confirm approach with user
- Read all discovered context files
- Load coding standards, security patterns, naming conventions
- Pre-load context for execution stage (prevents nested discovery)
- Simple tasks (1-3 files): Direct implementation
- Complex tasks (4+ files): Invoke
/task-breakdownto decompose into subtasks - Follow loaded standards and patterns
- Run tests and validation
- STOP on failure - fix before proceeding
- Verify acceptance criteria met
- Update documentation
- Summarize changes
- Return results
OAC Pattern (nested - NOT supported in Claude Code):
Main Agent → TaskManager → CoderAgent → ContextScout
Claude Code Pattern (flat - CORRECT):
Main Agent → /context-discovery skill → context-scout subagent
Main Agent → /task-breakdown skill → task-manager subagent
Main Agent → /code-execution skill → coder-agent subagent
Key Principle: Only the main agent can invoke subagents. Skills guide the orchestration, subagents execute specialized tasks in isolated contexts (context: fork).
Why: Prevents nested ContextScout calls during execution.
How: Stage 3 loads ALL context upfront, so execution stages (4-6) have everything they need.
Example:
Stage 1: Discover context files → [standards.md, security.md, patterns.md]
Stage 3: Load all files → Read standards.md, Read security.md, Read patterns.md
Stage 4: Execute with loaded context → No nested discovery needed
Critical checkpoints:
- Stage 2 → Stage 3: User must approve the plan
- Stage 5 → Stage 6: Validation must pass
Never skip approval - it prevents wasted work and ensures alignment.
The plugin uses context files from the main OpenAgents Control repository.
plugins/claude-code/
├── .claude-plugin/
│ └── plugin.json # Plugin metadata
├── agents/ # Custom subagents (7 files)
│ ├── task-manager.md
│ ├── context-scout.md
│ ├── context-manager.md
│ ├── external-scout.md
│ ├── coder-agent.md
│ ├── test-engineer.md
│ └── code-reviewer.md
├── skills/ # Workflow skills (8 files)
│ ├── using-oac/SKILL.md
│ ├── context-discovery/SKILL.md
│ ├── external-scout/SKILL.md
│ ├── task-breakdown/SKILL.md
│ ├── code-execution/SKILL.md
│ ├── test-generation/SKILL.md
│ ├── code-review/SKILL.md
│ ├── install-context/SKILL.md
│ └── parallel-execution/SKILL.md
├── commands/ # User commands (4 files)
│ ├── install-context.md
│ ├── oac-help.md
│ ├── oac-status.md
│ └── oac-cleanup.md
├── hooks/ # Event-driven automation
│ ├── hooks.json
│ └── session-start.sh
├── scripts/ # Utility scripts
│ ├── install-context.ts # Context installer (TypeScript)
│ ├── install-context.js # Context installer (JS fallback)
│ └── cleanup-tmp.sh # Temporary file cleanup
└── .context-manifest.json # Downloaded context tracking
Context files are downloaded from the main repository via /install-context:
.opencode/context/
├── core/ # Core standards and workflows
│ ├── standards/
│ ├── workflows/
│ └── patterns/
├── openagents-repo/ # OAC-specific guides
│ ├── guides/
│ ├── standards/
│ └── concepts/
└── navigation.md # Context discovery navigation
-
Create skill directory:
mkdir -p plugins/claude-code/skills/my-skill
-
Create
SKILL.mdwith frontmatter:--- name: my-skill description: What this skill does context: fork agent: my-subagent --- # My Skill Instructions for the main agent...
-
Test locally:
claude --plugin-dir ./plugins/claude-code /my-skill
-
Create subagent file:
touch plugins/claude-code/agents/my-subagent.md
-
Add frontmatter:
--- name: my-subagent description: What this subagent does tools: Read, Write, Glob, Grep model: sonnet --- # MySubagent Instructions for the subagent...
-
Create skill to invoke it:
--- name: my-workflow description: Workflow description context: fork agent: my-subagent ---
Create hooks/hooks.json:
{
"hooks": {
"SessionStart": [{
"type": "command",
"command": "${CLAUDE_PLUGIN_ROOT}/hooks/session-start.sh",
"timeout": 5
}],
"PostToolUse": [{
"matcher": "Write|Edit",
"hooks": [{
"type": "command",
"command": "${CLAUDE_PLUGIN_ROOT}/scripts/format.sh",
"timeout": 30
}]
}]
}
}- OpenAgents Control - Main repository (OpenCode native)
- OAC CLI - Command-line tool for multi-IDE management (coming soon)
Contributions welcome! See the main OpenAgents Control repository for contribution guidelines.
MIT License - see LICENSE for details.
- Issues: GitHub Issues
- Discussions: GitHub Discussions
- ✅ Plugin structure
- ✅ 6 custom subagents (task-manager, context-scout, external-scout, coder-agent, test-engineer, code-reviewer)
- ✅ 8 workflow skills (using-oac, context-discovery, external-scout, task-breakdown, code-execution, test-generation, code-review, install-context, parallel-execution)
- ✅ 4 user commands (/install-context, /oac:help, /oac:status, /oac:cleanup)
- ✅ SessionStart hook for auto-loading using-oac skill
- ✅ Context download and verification scripts
- ✅ Flat delegation hierarchy (skills invoke subagents via context: fork)
- ✅ External library documentation fetching (ExternalScout subagent + skill)
- ✅ .tmp cleanup automation (/oac:cleanup command)
- ✅ .oac configuration file support (context-manager skill)
- ✅ Context management and personal task systems (context-manager skill)
- ✅ Parallel subtask execution tracking (parallel-execution skill)
- ⬜ MCP server integration (future)
- ⬜ Auto-generation from JSON config
- ⬜ Type-safe configuration
- ⬜ Multi-IDE conversion
Version: 1.0.0
Last Updated: 2026-02-16
Status: Production Ready