Skip to content

A Skill is an orchestrator markdown file that runs multi-step workflows — spawning agents, validating their outputs between stages, and coordinating without writing code itself.

Primitive

Skill

First, disambiguation

"Skill" is overloaded. The KG keeps two.

Skillthis node

Orchestrator of multi-step workflows across agents

Explicit — ADW or slash command invokes it

Skill Pack

Knowledge base — SKILL.md + resources dir, loaded on description match

Implicit — Claude loads it when description matches user intent

The Skill primitive (this node) is for workflow orchestration — it does not write code. It coordinates agents that do.

Skill vs Command

A Command is one prompt. A Skill is a pipeline.

Command

Single-shot prompt

AgentsOne invocation

StagesOne output

StateNo handoffs

Example/feature, /commit

Skill

Multi-stage orchestrator

AgentsMany, sequential or parallel

StagesN gates, artifact between each

StateOutput of step N is required read for N+1

Example/product-spec, /planning-products

The distinction matters because Skills carry state between steps. The output of Step 2 becomes Step 3's required read. A Command cannot do that.

Anatomy of a workflow

Each stage has a gate before the next begins.

00

Invoke

input

01

Spawn agent A

gate ✓

02

Validate A's output

artifact

03

Spawn agent B

reads A

04

Final check

PASS

Each stage produces a verifiable artifact — the Skill checks it before starting the next stage. No cascading failures from broken upstream output.

Keep the orchestrator lean

Main file ≤ 1500 words. Details live in references/.

.claude/skills/planning-products/

skills/planning-products/├── SKILL.md# the lean orchestrator└── references/ ├── task-templates.md# when classifying a task ├── agent-system-template.md# when generating AGENT_SYSTEM.md ├── orchestration-rules.md# when setting dependencies └── spawn-template.md# when spawning agents

The orchestrator loads references only at the branch that needs them. Context usage stays proportional to the complexity of the current step, not the total workflow.

Scoped enforcement

Skills attach hooks that only fire during execution.

temporary attachment

Workflow-specific gates, zero global pollution.

planner-task-create-gate.sh# PostToolUse on task_create.pyagent-system-gate.sh# PostToolUse on AGENT_SYSTEM.mdplan-completeness-gate.sh# Stop — verify plan before exit

These hooks disappear when the skill finishes. You get workflow-specific enforcement without polluting the global hook configuration. The hook lifecycle matches the skill's lifecycle.

The discipline

Skills orchestrate. Agents execute.

A Skill that writes code has lost its job. A Skill without validation gates between stages produces cascading failures. A monolithic Skill burns the orchestrating session's context before any agent runs. The value of the primitive is its narrowness — coordinate, validate, hand off, repeat. Let the agents do the work.