mold
Installation
SKILL.md
/mold
Ceremony scales to the job. The Bounds pass picks one of three tiers from references/tiers.md: Quick writes a one-confirm mini-spec, Light runs only the dialogue modes the open forks need, and Full runs the whole Flow below. /cheese's tier-1 escalation enters mini-spec mode with no confirm; see ## Agent-invoked mini-spec mode.
Flow
- Bounds pass — open the
Goal / Decided / Asking / [AGENT-DECIDED]ledger with the goal pinned as one sentence; only an explicit user fork changes it. Map every input's goals and non-goals as one[AGENT-DECIDED]line; ask the user only when the goal is genuinely unknown or a leverage trigger fires. Run the shape check, then announce the tier with its reason (references/tiers.md). Quick exits here: one fast confirm, then## Agent-invoked mini-spec mode. Upgrade the tier whenever the evidence changes; never downgrade silently. - Route — choose the secondary mode from
references/modes.md, announce it, and correct false premises first. - Dialogue — consequential forks are the user's to pick. A fork is consequential per the leverage line in
../age/references/voice.md. Every other fork is[AGENT-DECIDED]. Supply options, trade-offs, and evidence before you ask. Ground each critical claim through code, the Validate Cycle, or a Prototype Cycle. Resolve every contradiction. Render the decision map after three consecutive fork questions, or on request. - Sketch — For work across modules or with a new public interface, run
references/shape-check.md. Bind identity and role nouns to code referents. Record the Placement block; no bodies. - Plan for approval — run the fresh-context fork-coherence taste test with
python3 skills/mold/scripts/mold.pyz taste-testand persist its digest-bound pass; a failure reopens only named forks, and the third failed verdict stops. Light with one expected curd stops here: no planner, and the handoff is/cook --auto <spec-path>. Otherwise dispatch a typedPlannerRequest, validate itsPlannerResultWriterView(one retry, then stop before the handshake), normalize on the host, and persist only the typedPlannerResultandCurdPlan. Present the plan's semantic curds and waves at the handshake. Seereferences/curdle.md§ "Pre-approval typed planner dispatch". - Two-key handshake — Before extraction, the user and agent must agree to the draft spec and displayed typed plan. The user provides an explicit verb. The agent performs a coherence self-check. Neither key changes nor disappears. See
references/handshake.md. - Curdle — Resolve the durable spec path with
SPEC=$(python3 skills/mold/scripts/mold.pyz artifact-path specs <slug>). Phase one writes the local artifact and write-ahead prepared state before any external call. It writes the approved spec at"$SPEC". It also writes the host-validatedPlannerResultandCurdPlan. It also writes local issue drafts and the session's non-obvious decisions as durable ADRs. Phase two publishes approved follow-ups. Retain the prepared recovery state when an external capability is unavailable or publication fails. Phase two reconciles their state and references into the durable spec before any handoff. - Publish and hand off — after reconciliation, run
python3 skills/mold/scripts/mold.pyz curd-count. Then publish the approvedCurdPlanwithpython3 skills/mold/scripts/mold.pyz publishand keep the returnedHandoffPointerpath; Light with one curd skips publish and hands/cook --auto <spec-path>. Prompt through## Handoff. Dispatch only the user's non-stop selection.
Portability: ../cheese/references/harness-portability.md. Prefer bundled/repo-local helpers; slash commands are host renderings, not the control model.