plugins/segl/skills/pencil-tokens/SKILL.md
Bridges design tokens to Pencil. Reads tokens.yml and guideline.yml, resolves all YAML references to concrete values, maps semantic colors + typography + spacing + radius + shadows to Pencil's set_variables format, then calls set_variables. Light mode only. One-shot token injection — run before any Pencil design work.
npx skillsauth add hjemmesidekongen/ai pencil-tokensInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Reads design tokens from .ai/design/{name}/tokens.yml and brand context from
.ai/brand/{name}/guideline.yml, then injects them into the active Pencil
document via set_variables. Light mode only — dark mode tokens are excluded
by default.
tokens.yml — parse YAML, extract all sections"{primitives.color.*}" must be resolved to the concrete hex from the primitives section. Pencil cannot interpret YAML references.guideline.yml — extract brand name, tagline for contextreferences/process.md for mapping table)set_variables with the complete variable set (~50 variables)| tokens.yml section | Pencil variable type | Example |
|---|---|---|
| semantic.color.* (all keys) | color | primary → #e1943d |
| primitives.color.{palette}.50/100/900 | color | primary-50 → #FEF7ED |
| typography.family.* | string | font-heading → "'Lato', sans-serif" |
| spacing.scale (selected stops) | number | spacing-md → 16 |
| radius.* (all named stops) | number | radius-xl → 12 |
| shadow.* (all named stops) | string | shadow-sm → CSS shadow value |
See references/process.md for the full mapping algorithm and edge case handling.
development
Creates a brand from scratch through market research and interactive sparring. Runs competitive research via Perplexity, then guides the user through positioning, audience, voice, values, and content pillars. Produces the full brand guideline set at .ai/brand/{name}/. Use when building a new brand, defining brand strategy for a product, or when /våbenskjold:create is invoked.
testing
Loads brand guidelines from .ai/brand/{name}/ and makes them available to the current context. Progressive disclosure: L1 confirms brand exists, L2 loads summary, L3 loads specific files on demand. Use when a downstream skill or user needs brand context, or when /våbenskjold:apply is invoked.
documentation
Guided reinvention of an existing brand guideline. Loads current brand from .ai/brand/{name}/, identifies what to keep vs change, and walks the user through targeted evolution. Preserves brand equity while updating positioning, voice, or values. Use when refreshing a brand or when /våbenskjold:evolve is invoked.
development
Codifies an existing brand from materials, samples, and references. Analyzes provided content to extract voice patterns, values, and positioning. Produces the same guideline format as brand-strategy. Use when a brand already exists but isn't documented, or when /våbenskjold:audit is invoked.