ss-build

Build a screen with StyleSeed's composed design method — choose or compile an output grammar, apply a brand recipe plus domain/page/profile/lock constraints, then run the code and pixel gates before presenting.

By bitjaru · 665 installs

npx skills add bitjaru/styleseed --skill ss-build

Source repository · Upstream listing

Build with the composed StyleSeed method Registry first artifact boundary When .styleseed/project.json and .styleseed/artifacts/index.json exist, resolve the requested artifact ID first, then read only .styleseed/bundles/<artifact id .md and .styleseed/manifests/<artifact id .json . Never fall back to the global legacy bundle for a registry project. Legacy projects may use .styleseed/effective rules.md only when no registry exists. The build method is the product. Score and screenshots are auxiliary evidence, not the source of design judgment. Step 1 — Establish the rule set before code If either .styleseed/project.json or .styleseed/artifacts/index.json exists, require a complete, valid registry and resolve the requested artifact with the installed resolver's scripts/resolve context.mjs project root . artifact <artifact id agent <agent . Read .styleseed/bundles/<artifact id .md and preserve .styleseed/manifests/<artifact id .json as provenance. Do not create STYLESEED.md , restart setup, or use a legacy bundle because a registry is incomplete, invalid, or lacks a compiled output. Resolve missing scope with the user. For changes spanning multiple artifacts, resolve and check each affected artifact separately. Only when neither registry file exists, use the legacy path: if STYLESEED.md is missing, run /ss setup before UI code; otherwise preserve it. Invoke /ss resolve (Claude Code) or $ss resolve (Codex) with from lock STYLESEED.md agent <agent , read .styleseed/effective rules.md , and preserve .styleseed/manifest.json . If a supplied visual reference is not represented by the selected grammar, use /ss reference within the selected project boundary. Never reduce an unfamiliar reference to a palette swap or replace approved project choices without human approval. Do not load llms full.txt after resolution succeeds. Step 2 — Compose, do not improvise The compiled bundle already composes the authority order: core invariants → selected grammar → surface adapter → domain/page → brand recipe → optional profile → bounded lock → craft baseline. Use the manifest selection and source hashes to detect drift. Open a full source document only when the bundle points to a genuine ambiguity; do not reassemble the handbook ad hoc. Before code, state the effective rule set in one line, for example: Resolve conflicts by authority. A profile or lock cannot waive task fitness, coherence, or accessibility. Step 3 — Build with design judgment Make the grammar's user job and primary decision visible in the first viewport. Establish one focal point; avoid equal weight template grids. Use the grammar's composition, density, type, color, surface, imagery/data, action, state, responsive, and motion contracts. Use the recipe's containment, geometry, control, collection, and navigation morphology. Set data styleseed recipe="<id " on the artifact root when using bundled pattern components. Use product specific content and evidence. Never copy the StyleSeed demo or a reference screen. Implement loading, empty, error, focus, reduced motion, and responsive behavior where relevant. Step 4 — Code gate loop Run /ss score on the actual implementation. The score must name the effective rule set and check both core invariants and grammar specific tells. Fix the highest gain failures and re score, up to roughly three passes, until ≥80. If it cannot pass, report the real blocker. Step 5 — Pixel gate loop For every renderable artifact, invoke /ss verify : use the adapter renderer, inspect every required viewport/frame/page and relevant state, fix perceptual failures, and re render. If no renderer is available, say the visual gate was skipped; never imply it passed. Step 6 — Present with proof Report: effective rule set and why it fits; final code score; visual verification status and viewport; material fixes made by the gates; project/artifact configuration paths (or legacy STYLESEED.md ) and any compiled grammar path. Rules Grammar before code; code gate after build; pixel gate last. Output grammar is functional. Brand recipe is morphological. Aesthetic profile is optional. Neither substitutes for the grammar or permits a brand clone. The primary action must remain identifiable; additional color is permitted only where the grammar gives it stable semantic or categorical meaning. Re read the lock and grammar on every UI change.