← all skills

dg-skill-authoring

A meta-skill: how to build a new Digital Garden skill.

L1 · low risk v1.0 MIT meta-skill digital-garden
dg-skill-authoring example screenshot dg-skill-authoring example screenshot

This one doesn't add a feature to your site — it teaches your agent how to author another skill that does. Hand it a Digital Garden customization (a component, widget, style, layout tweak) and it produces a spec-compliant, upstream-safe SKILL.md package that any other DG user's agent can install — following the exact pattern behind this zoo.

It's the pattern, packaged. Everything learned building dg-floating-tray — user-owned paths, autoloading, theme tokens, accessibility, consolidated tuning knobs — encoded as reusable authoring guidance.

How to use it

Copy the skill folder into your agent's skills directory, then in your skills repo ask:

git clone https://github.com/palol/skills-zoo.git
cp -r skills-zoo/skills/dg-skill-authoring ~/.claude/skills/

(or ~/.agents/skills/)

Use the dg-skill-authoring skill to turn this custom callout box into a reusable Digital Garden skill. Scope it, scaffold the folder, write spec-compliant frontmatter, and validate it.

It walks through scoping → scaffolding → frontmatter → body → assets/references → risk label → skills-ref validate → publishing to the zoo.

The five DG invariants

Every skill it produces must satisfy these — the real product of the meta-skill:

  1. User-owned paths only. Write into components/user/common/<slot>/, styles/custom-style.scss, helpers/userUtils.js, notes/ — never core layouts. Survives upstream git pull.
  2. Autoload, don't wire. DG's dynamics.js globs the slot folder and sorts alphabetically; a filename prefix (zzz-/aaa-) controls render order. No layout edit.
  3. Theme via tokens. Style with DG variables (--background-secondary, --text-accent, …) so light/dark work automatically. Colors are never a knob.
  4. Accessibility is not optional. Real text in aria-label, icons aria-hidden, keyboard-operable controls, visible focus, reduced-motion respected.
  5. Consolidate tunables. One >>> TUNING KNOBS <<< :root block; derive everything from it.

If a feature can't respect invariants 1–2 (needs a core/layout edit), the skill scopes it down or stops — it won't ship something that breaks on update.

Spec correctness, baked in

It enforces the agentskills.io rules that informal examples get wrong:

What's in the box

Prerequisites

Scope is Digital Garden only — the invariants encode DG conventions (autoloader, theme tokens, user-owned paths), not Quartz/Astro/plain-Eleventy.

Browse the full source on GitHub →