This repo is the source for the visualize agent skill. skills/visualize/ is the single authored and installable skill directory. Edit it directly; there are no distribution mirrors or placeholder transforms.
- Edit runtime instructions and helpers under
skills/visualize/; full catalog sources undercatalog/; authoring tools underdev-scripts/. Runnode dev-scripts/catalog-index.mjsafter catalog edits to regenerate the bundled index and fallback. - Run
node dev-scripts/check-skill-package.mjsand the checks relevant to the change.
skills/visualize/design-systems/animation-patterns.md is runtime-owned shared guidance for animate and catalog preview authors. Edit it directly; catalog generation does not overwrite it.
- Template →
skills/visualize/templates/<slug>/template.md. Keep the contract compact: frontmatter, use/exclusion rules, structure, creation guidance, hierarchy/mobile contracts, and concrete failure modes. SeeCONTRIBUTING.mdfor the canonical shape. - Design system →
catalog/design-systems/<slug>/{DESIGN.md,tokens.css}. - Pattern recipe →
skills/visualize/patterns/<slug>.md. Use for recurring creation guidance, not reusable component CSS. - Reference doc →
skills/visualize/reference/<topic>.md. Lean intent + named failure modes only. Don't write defensive scaffolding.
- Avoid duplication. Information should live in either
SKILL.mdor reference files, not both. Repeated rules drift, especially when a later edit fixes one copy and misses the other. - Keep
SKILL.mdprocedural.SKILL.mdshould carry only essential procedural instructions, workflow guidance, command routing, shared contracts, and global rules. Move detailed reference material into focused files underskills/visualize/reference/. - Separate variations from the core workflow. When the skill supports multiple variations, keep only the shared workflow and selection guidance in
SKILL.md. Move variant-specific details, examples, edge cases, and failure modes into separate reference files. - Reference docs defer to
SKILL.md. Shared skill behavior belongs inSKILL.md. Reference docs should first apply the shared rules inSKILL.md, then describe only topic- or verb-specific procedure, failure modes, and consequences. Do not restate shared fallback logic, output shape, global bans, diff guards, or context-resolution policy in references.
Every constraint the skill imposes must answer: what bad output would result without this? "Consistency" or "the agent might choose differently" doesn't count. A constraint that can't name the failure mode it prevents is defensive; drop it. The skill's value comes from rules that catch real failure modes the agent reliably falls into.
- Brand and voice trump contextual taste rules; correctness constraints and explicit Absolute bans remain carve-outs.
- Verbs interpret, not regenerate.
- Ship-blockers and taste-calls are different.
- Severity follows context, including aggregate.
- Don't strip-mine into invisibility.
- The reader is the judge.
skills/visualize/ ← single authored and installed skill
├── SKILL.md
├── reference/ ← typography / color / spatial / motion / copy
├── patterns/ ← creation-time pattern recipes
├── design-systems/ ← generated index/source pin/Clean fallback + runtime-owned animation-patterns.md
├── templates/ ← template contracts (template.md per template)
└── scripts/ ← bash + Node helpers
catalog/design-systems/ ← full authoritative catalog and generated previews
dev-scripts/preview-kit/ ← development-only preview sources
skills/visualize/fixtures/ ← shared fixtures used by shipped check helpers
.github/workflows/ci.yml ← standalone package + JSON lint + shellcheck