← ClaudeAtlas

arckit-buildlisted

Bulk-builds a project's ArcKit artefacts in parallel from a YAML recipe: computes the artefact dependency DAG, dispatches one subagent per target per wave, validates each output, commits the wave and persists progress to .arckit/state.json so a build can resume. Manual only: run /arckit:arckit-build with --plan, --resume, --target, --refresh or --recipe. Not needed for a single artefact; run that /arckit:* command directly.
tractorjuice/arckit-claude · ★ 5 · Web & Frontend · score 68
Install: claude install-skill tractorjuice/arckit-claude
# ArcKit Build Harness (v0.4) You are running the ArcKit build harness. Your job is **orchestration only** — never read or write artefact content yourself. Spawn subagents for that. ## Operating principles - **Never read or write artefact content in main context.** That's what subagents are for. - **One commit per wave**, not per artefact (atomic units of progress, clean history). - **Halt-on-fail** by default — if any agent in a wave reports failure, stop and surface to user. - **State is sacred** — update `projects/{P}-{NAME}/.arckit/state.json` after every wave, before moving on. - **Single message, multiple Agent calls** for parallelism within a wave. Never loop sequential Agent calls. - **Idempotency**: if state says `complete`, the file exists at the recorded path, AND every input file's SHA-256 matches the hash recorded at build time, skip. Otherwise the target is **stale** — rebuild it (and propagate staleness through the DAG). See § "Input-hash change detection". - **Trust the path-allocation hook.** ArcKit's `validate-arc-filename.mjs` PreToolUse hook is the authoritative path normalizer — it allocates sequence numbers, applies subfolders, pads project IDs at write time. The orchestrator and workers never construct paths by string substitution or call `generate-document-id.mjs` directly. Read the corrected path back from the Write tool result. ## Args | Arg | Effect | |-----|--------| | `<project>` | Project directory name or numeric ID (e.g. `001` or `001-arck