Install any skill in seconds. Free to start, no credit card required.
Get Started Free →Multi-agent DAG orchestration for workflows where AI agents collaborate via dependency graphs, covering agent spawning, output merging, and quality evaluation. Use when a task needs multiple specialized agents or to parallelize AI work.
.claude/skills/borghei-agenthub/SKILL.md| Test case | Without → With | Effect | Δ tokens | Δ turns |
|---|---|---|---|---|
| case-01 | ✗→✓ | ▲ Improved | 77% | 0% |
| case-03 | ✗→✓ | ▲ Improved | 37% | 0% |
| case-13 | ✗→✓ | ▲ Improved | 8% | 0% |
| case-04 | ✗→✓ | ▲ Improved | -25% | 0% |
| case-05 | ✗→✓ | ▲ Improved | 3% | 0% |
AgentHub provides patterns and tools for orchestrating multiple AI agents as a directed acyclic graph (DAG). Instead of one agent doing everything sequentially, AgentHub lets you decompose complex tasks into sub-tasks, assign each to a specialized agent, define dependencies between them, and merge their outputs into a coherent result.
The core insight: complex tasks decompose better than they scale. A 10-step sequential task run by one agent hits context limits and quality degradation. Five parallel agents with clear scopes and a merge step produce better results faster.
max_parallel scheduling for real speedup.Before designing the workflow, confirm these inputs. If any is unknown or vague, ASK — do not assume:
max_parallel scheduling)Stop rule: ask only the 2-3 that most change the output. If the user says "just draft it," proceed and list your assumptions at the top of the artifact.
This skill uses compound sub-skill architecture. Each sub-skill in skills/ handles a stage of the orchestration lifecycle:
| Sub-Skill | File | Purpose | |-----------|------|---------| | Init | skills/init.md | Initialize a multi-agent workflow definition | | Run | skills/run.md | Execute a defined workflow end-to-end | | Spawn | skills/spawn.md | Spawn individual agents within a workflow | | Board | skills/board.md | Dashboard showing agent status and progress | | Eval | skills/eval.md | Evaluate agent outputs for quality and consistency | | Merge | skills/merge.md | Merge outputs from multiple agents into final result | | Status | skills/status.md | Show workflow execution status and health |
Lifecycle: Init defines the workflow DAG, Run orchestrates execution, Spawn creates individual agents, Board provides real-time visibility, Eval checks output quality, Merge combines results, and Status reports overall health (Init → Run → Spawn (parallel) → Eval → Merge, with Board/Status reading state throughout).
| Tool | Purpose | Command | |------|---------|---------| | dag_analyzer.py | Validate DAG definitions (cycles, unreachable nodes, critical path) | python scripts/dag_analyzer.py --workflow workflow.json --validate --critical-path | | session_manager.py | Manage orchestration sessions and state | python scripts/session_manager.py create --json | | board_manager.py | Manage agent task boards with status tracking | python scripts/board_manager.py --session session.json --view board | | result_ranker.py | Rank and merge outputs from multiple agents | python scripts/result_ranker.py --session session.json --rank --merge synthesize |
Load the reference that matches the task — keep this file lean and pull detail on demand:
This skill covers:
This skill does NOT cover:
agent-designer)self-improving-agent)| Skill | Integration | Data Flow | |-------|-------------|-----------| | agent-designer | Defines individual agent capabilities that become DAG nodes | Agent specs flow in; execution results flow back for agent tuning | | self-improving-agent | Each agent can use self-improvement patterns to get better | Session feedback from orchestration feeds into agent learning loops | | prompt-engineer-toolkit | Agent task prompts benefit from prompt engineering | Optimized prompts improve individual agent quality within the DAG | | context-engine | Manages what context each agent sees | Context retrieval provides relevant inputs to each spawned agent | | observability-designer | Monitors workflow execution and agent health | Agent state transitions and timing metrics feed into dashboards |
| Case | Status | Duration (ms) | Turns | Tokens | Tool calls | ||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Without | With | Δ | Without | With | Δ | Without | With | Δ | Without | With | Δ | ||
case-01 | fail→pass | 12,160 | 13,861 | +14% | 1 | 1 | 0% | 2,317 | 4,090 | +77% | 0 | 0 | — |
case-02 | fail→fail | 5,480 | 6,829 | +25% | 1 | 1 | 0% | 1,017 | 2,633 | +159% | 0 | 0 | — |
case-03 | fail→pass | 15,594 | 11,693 | -25% | 1 | 1 | 0% | 2,507 | 3,431 | +37% | 0 | 0 | — |
case-13 | fail→pass | 9,850 | 2,565 | -74% | 1 | 1 | 0% | 1,644 | 1,780 | +8% | 0 | 0 | — |
case-04 | fail→pass | 13,844 | 3,534 | -74% | 1 | 1 | 0% | 2,776 | 2,073 | -25% | 0 | 0 | — |
case-05 | fail→pass | 11,963 | 5,734 | -52% | 1 | 1 | 0% | 2,314 | 2,373 | +3% | 0 | 0 | — |
case-06 | fail→pass | 9,087 | 2,579 | -72% | 1 | 1 | 0% | 1,381 | 1,767 | +28% | 0 | 0 | — |
case-07 | fail→pass | 7,210 | 2,606 | -64% | 1 | 1 | 0% | 1,343 | 1,819 | +35% | 0 | 0 | — |
case-08 | fail→pass | 10,762 | 5,331 | -50% | 1 | 1 | 0% | 1,655 | 2,392 | +45% | 0 | 0 | — |
case-09 | pass→pass | 9,372 | 5,434 | -42% | 1 | 1 | 0% | 1,464 | 2,459 | +68% | 0 | 0 | — |
case-10 | fail→pass | 14,460 | 3,470 | -76% | 1 | 1 | 0% | 2,453 | 1,922 | -22% | 0 | 0 | — |
case-11 | fail→pass | 15,110 | 2,550 | -83% | 1 | 1 | 0% | 2,783 | 1,812 | -35% | 0 | 0 | — |
case-12 | fail→pass | 8,939 | 1,920 | -79% | 1 | 1 | 0% | 1,292 | 1,697 | +31% | 0 | 0 | — |
case-14 | fail→pass | 8,181 | 2,045 | -75% | 1 | 1 | 0% | 1,379 | 1,801 | +31% | 0 | 0 | — |
case-15 | fail→fail | 14,455 | 11,657 | -19% | 1 | 1 | 0% | 2,272 | 3,121 | +37% | 0 | 0 | — |
case-16 | fail→fail | 17,752 | 12,859 | -28% | 1 | 1 | 0% | 2,787 | 4,185 | +50% | 0 | 0 | — |
case-17 | fail→pass | 22,595 | 4,289 | -81% | 1 | 1 | 0% | 4,220 | 2,034 | -52% | 0 | 0 | — |
case-18 | fail→pass | 16,255 | 9,235 | -43% | 1 | 1 | 0% | 3,196 | 2,854 | -11% | 0 | 0 | — |
case-19 | fail→pass | 10,629 | 3,688 | -65% | 1 | 1 | 0% | 1,754 | 2,014 | +15% | 0 | 0 | — |
case-20 | pass→pass | 11,088 | 3,545 | -68% | 1 | 1 | 0% | 1,541 | 1,892 | +23% | 0 | 0 | — |
case-21 | pass→pass | 14,854 | 9,600 | -35% | 1 | 1 | 0% | 1,660 | 3,054 | +84% | 0 | 0 | — |
case-22 | pass→pass | 8,701 | 2,214 | -75% | 1 | 1 | 0% | 1,348 | 1,702 | +26% | 0 | 0 | — |
DecimalAI ran this skill against gemini-3.6-flash twice over the same eval suite — once with the skill loaded and once without — and compared the two runs case by case. 22 cases were attempted. The headline lift of +68 percentage points is the difference between those two pass rates over the 22 comparable cases.
Without the skill loaded, the model failed this case. With it loaded, the same prompt on the same model passed. This is one improved case from the latest verified run; every case, including any that regressed, is in the table above.
Other measured skills in the registry, with their headline benchmark lift.