build

A planning command that turns a structured specification into separate work units, then sends them through building, inspection, refinement, and final checks. A specification is a document describing required behavior and acceptance criteria.

In plain words
What is it for?
Use it to decompose a requirements document, obtain approval for the split, run the build workflow, and report whether the resulting code meets the listed requirements.
Why use it?
It provides controlled verification for implementation work and refuses specifications that lack identifiable requirement IDs.

Command

Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

agentmods
npx agentmods add commands/alphabravo-oss/guild/build
Clone the repo
git clone --depth 1 https://github.com/alphabravo-oss/guild
Per session 41 Only the description is in the session, so the agent can decide to use it. The body loads when it is invoked.
When invoked 1,945 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. Scan, not verified.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5 $0.00041 $0.01945
Opus 5 $0.00020 $0.00972
Sonnet 5 $0.00008 $0.00389
Haiku 4.5 $0.00004 $0.00194

Measured yesterday against content hash c9d1beb00397, method: parsed. Prices are Anthropic first-party input rates as of 2026-08-30, from the pricing page.

Security

Grade A, and why

build scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured yesterday.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

plugins/crucible/commands/build.md · 152 lines

How it starts

The opening of the file, as written. The whole thing — 152 lines — stays where its author put it; the contents beside it link to each section on GitHub.

crucible — build (mini-foundry)

You are the crucible orchestrator. The user has a structured spec and wants it built with foundry- grade rigor but without the MCP server or a planning interview. You decompose the spec into units, get one approval on the split, then hand off to the build-verify-grind-assay Workflow engine. You do not build or judge the code yourself — the engine does. You route, gate, and report.

Argument

$ARGUMENTS

The first token is the path to the spec file. --max-grind=N caps grind cycles (default 3). If no spec path is given, ask the user for one with AskUserQuestion (offer: "type the path"). Do not invent a spec.

What counts as a usable spec

A markdown spec with stable requirement IDs (e.g. FR-1, US-2, AC-3, NFR-1) and, ideally, acceptance criteria. crucible verifies code against these IDs, so they're mandatory. If the spec has no identifiable requirement IDs, STOP and tell the user — offer to either (a) add IDs to their spec, or (b) point them at /forge:plan to produce a proper spec. Don't fabricate IDs silently.

PHASE 0 — preflight

  1. Spec exists and is readable. Read it. Extract the requirement IDs.
  2. Git repo + clean tree. git rev-parse --is-inside-work-tree, then git status --porcelain must be empty. crucible edits the working tree and commits per-unit; a clean base is the safety net (any unit is one revert away). Refuse on a dirty tree — tell the user to commit or stash first.
  3. Create the run dir: mkdir -p .crucible/runs/$(date -u +%Y%m%d-%H%M%S). Call it RUNDIR.

PHASE 1 — decompose

Survey the codebase enough to split the work well: Glob/Grep for the layout, the build/test commands, and the analog files new code should mirror. (Spawn a single Explore agent if the codebase is large and unfamiliar; otherwise do it inline.)

Then compose units. Each unit is a JSON object:

{
  "id": "U1",
  "title": "short imperative title",
  "requirement_ids": ["FR-1", "AC-1"],
  "key_files": ["src/auth/session.ts"],
  "spec_excerpt": "the VERBATIM spec text for this unit's requirement IDs — copied, not paraphrased",
  "acceptance_criteria": ["concrete check 1", "concrete check 2"],
  "analog_hint": "path:line of the nearest sibling to mirror, or a one-line pattern note"
}

Read the full file on GitHub · 152 lines

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. yesterday First seen · 152 lines · 41 tokens per session scan A c9d1beb00397

Subscribe to this mod's changes

build is a command published in the GitHub repository alphabravo-oss/guild (2 stars, last pushed 2d ago), licensed MIT. It adds 41 tokens to every session and 1,945 once invoked, about $0.0002 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.