mcpbeat

Opc Architecture

vibeeval/opc-architecture

OPC Architecture Understanding

737 tokens
context cost
the whole folder, loaded on every use
1
files
instructions only
0
copies elsewhere
how many repositories repackaged it
521
stars on the repo
on the repository, not the skill itself

Install

one command, takes just this skill from the repository
npx skills add https://github.com/vibeeval/vibecosystem --skill opc-architecture

What it tells the agent to use

found in the instruction text
Task spawns other agents

The instruction itself

8 sections, as written by the author

OPC Architecture Understanding

OPC (Orchestrated Parallel Claude) extends Claude Code - it does NOT replace it.

Core Concept

Claude Code CLI is the execution engine. OPC adds orchestration via:

  • Hooks - Intercept Claude Code events (PreToolUse, PostToolUse, SessionStart, etc.)
  • Skills - Load prompts into Claude Code
  • Scripts - Called by hooks/skills for coordination
  • Database - Store state between Claude Code instances

How Agents Work

When you spawn an agent:

  • Main Claude Code instance (your terminal) runs hook on Task tool
  • Hook calls subprocess.Popen(["claude", "-p", "prompt"])
  • A NEW Claude Code instance spawns as child process
  • Child runs independently, reads/writes to coordination DB
  • Parent tracks child via PID in DB
$ claude                         ← Main Claude Code (your terminal)
    ↓ Task tool triggers hook
    ↓ subprocess.Popen(["claude", "-p", "..."])
        ├── claude -p "research..."   ← Child agent 1
        ├── claude -p "implement..."  ← Child agent 2
        └── claude -p "test..."       ← Child agent 3

What OPC Is NOT

  • OPC is NOT a separate application
  • OPC does NOT run without Claude Code
  • OPC does NOT intercept Claude API calls directly
  • OPC does NOT modify Claude Code's internal behavior

What OPC IS

  • OPC IS hooks that Claude Code loads from .claude/hooks/
  • OPC IS skills that Claude Code loads from .claude/skills/
  • OPC IS scripts that hooks/skills call for coordination
  • OPC IS a database backend for state across Claude Code instances

Key Files

.claude/
├── hooks/           ← TypeScript hooks that Claude Code runs
├── skills/          ← SKILL.md prompts that Claude Code loads
├── settings.json    ← Hook registration, Claude Code reads this
└── cache/           ← State files, agent outputs

opc/
├── scripts/         ← Python scripts called by hooks
├── docker-compose.yml ← PostgreSQL, Redis, PgBouncer
└── init-db.sql      ← Database schema

Coordination Flow

  • User runs claude in terminal
  • Claude Code loads hooks from .claude/settings.json
  • User says "spawn a research agent"
  • Claude uses Task tool
  • PreToolUse hook fires, checks resources
  • Hook spawns claude -p "research..." as subprocess
  • Hook stores PID in PostgreSQL
  • Child agent runs, writes output to .claude/cache/agents/<id>/
  • Child completes, broadcasts "done" to PostgreSQL

10. Parent checks DB, reads child's output file

Remember

  • Every "agent" is just another claude -p process
  • Hooks intercept events, they don't create new functionality
  • All coordination happens via files and PostgreSQL
  • Claude Code is always the execution engine

How to use it

Copy the folder

Take vibeeval/opc-architecture from the repository into ~/.claude/skills for personal use, or into .claude/skills inside a project.

Check the name does not clash

The agent identifies a skill by the name field in its header. Two skills with the same name cannot sit side by side — one of them will be ignored.