From arcforge
Manages worktrees and coordinates parallel development across multi-epic projects using a DAG-based workflow. Integrates with arcforge CLI for expand, merge, status, and cleanup.
How this skill is triggered — by the user, by Claude, or both
Slash command
/arcforge:arc-coordinatingThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Use the Node.js CLI (`scripts/coordinator.js`) for worktree lifecycle and cross-session coordination.
Use the Node.js CLI (scripts/coordinator.js) for worktree lifecycle and cross-session coordination.
.arcforge-epic exists and epic id should be inferredSingle-epic projects: Use arc-implementing directly (except merge in a worktree).
If already in a worktree: Use arc-implementing, except for merge (allowed).
DAG requirement: specs/<spec-id>/dag.yaml must exist and be committed before running coordinator commands. In base-side sessions with multiple specs, commands that cannot aggregate (next, parallel, expand, loop) require --spec-id <id>; merge / cleanup accept positional epic ids as disambiguator.
| Command | Purpose | CLI Mapping |
|---|---|---|
expand | Create worktrees for ready epics | arcforge expand |
merge | Merge completed epics | arcforge merge |
status | Show workflow progress | arcforge status |
cleanup | Remove merged worktrees | arcforge cleanup |
sync | Synchronize worktree ↔ DAG state | arcforge sync |
next | Show next ready task | arcforge next |
parallel | Show parallelizable tasks | arcforge parallel |
block | Mark a task blocked in DAG | arcforge block |
reboot | Generate 5-Question context | arcforge reboot |
IMPORTANT: Set SKILL_ROOT to the absolute path from the skill loader header (# SKILL_ROOT: ...).
: "${SKILL_ROOT:=${ARCFORGE_ROOT:-}/skills/arc-coordinating}"
if [ ! -d "$SKILL_ROOT" ]; then
echo "ERROR: SKILL_ROOT=$SKILL_ROOT does not exist. Set ARCFORGE_ROOT or SKILL_ROOT manually." >&2
exit 1
fi
Then use node "${SKILL_ROOT}/scripts/coordinator.js" <command> for all commands:
node "${SKILL_ROOT}/scripts/coordinator.js" status
node "${SKILL_ROOT}/scripts/coordinator.js" expand
node "${SKILL_ROOT}/scripts/coordinator.js" merge
JSON output: Add --json flag for machine-readable output:
node "${SKILL_ROOT}/scripts/coordinator.js" status --json
Workflow:
node "${SKILL_ROOT}/scripts/coordinator.js" <command>If the current directory is an arcforge-managed worktree (contains
.arcforge-epic):
.arcforge-epicgit worktree list --porcelain — the coordinator
automatically recognizes which entries are arcforge-managed worktrees and
picks the base for youHEADdag.yamlIf base worktree cannot be found or base branch cannot be inferred → report blocked and STOP.
✅ Coordinator: expand complete
⚠️ Coordinator: merge blocked
⚠️ Coordinator: blocked
${SKILL_ROOT}/scripts/coordinator.js⚠️ Coordinator: merge blocked
git worktree list --porcelain, base worktree HEADnpx claudepluginhub gregoryho/arcforge --plugin arcforgeGuides creation, editing, and verification of skills for AI coding agents using test-driven development with subagent scenarios. Use when authoring or debugging skills.