In den eigenen Worten des Skills
Der design-system Skill ist der gemeinsame Markeneigner für das markdown-html-Plugin. Er erfasst die Markenidentität einmalig über einen Onboarding-Assistenten mit 10 Fragen – Primary- und Accent-HEX-Werte, Google Fonts für Überschriften und Fließtext, einen Designstil (editorial, technical, minimal oder playful), Standard-Ausgabeverzeichnis, Code-Theme, TOC-Verhalten sowie optionalen Firmennamen und Logo – prüft anschließend den Kontrast von Fließtext und Links gegen WCAG 2.2 AA und leitet 12 CSS-Custom-Properties im HSL-Raum ab.
Drei nur auf der Standardbibliothek basierende Python-Tools übernehmen das Onboarding, das Laden der Konfiguration und die Palettenvalidierung; die Rangfolge ist Projekt vor Global vor den integrierten Standardwerten. Jeder Konverter (md-document, md-review, md-slides) liest die gespeicherte Konfiguration, sodass eine geänderte Token-Einstellung jedes gerenderte Dokument verändert.
Was er erzeugt
- Eine Konfigurationsdatei mit der Marke und der abgeleiteten Palette, die entweder global oder in das Projekt geschrieben wird.
- Zwölf CSS Custom Properties, die in den Style-Block jedes Konverters eingebettet werden, etwa --md-surface, --md-border, --md-link und --md-warn.
- Ein JSON-Schema für die Konfiguration, das als Asset für die Validierung mitgeliefert wird.
So funktioniert es
- 01Onboarding einmal ausführen
Der Skill ist der gemeinsame Markeninhaber für das markdown-html-Plugin: md-document, md-review und md-slides greifen alle auf die von ihm geschriebene Konfiguration zu, sodass ein einziger Lauf jede Konvertierung markengerecht gestaltet.
- 02Die zehn Fragen beantworten
Der Assistent erfasst default_output_dir, primäre und Akzent-HEX-Werte, Überschrift- und Fließtext-Schriftarten, design_style, code_theme, toc.behavior sowie optional company_name und logo_url.
- 03Validierung über die Speicherung entscheiden lassen
brand_palette_validator.validate() läuft nach jeder Änderung, sodass das Paar bei jeder Feldbearbeitung erneut geprüft wird und nicht erst am Ende des Assistenten.
- 04Die zwölf Tokens ableiten
derive_palette() berechnet Tokens wie --md-surface bei bg plus oder minus 4-6% Leuchtdichte und --md-text-muted als rgba(text, 0.68) und speichert sie unter derived_palette in derselben Konfigurationsdatei.
- 05Konfiguration nach Rangfolge auflösen
config_loader.py ist der importierbare Loader, den jeder Konverter vor dem Rendern aufruft; er führt Projekt-, dann Global- und dann eingebaute Standardwerte zusammen und beachtet die Bypass-Umgebungsvariable.
- 06Nicht interaktiv überschreiben oder zurücksetzen
Über den Assistenten hinaus akzeptiert onboard.py --defaults, --set key=value, --scope project, --show und --reset, sodass Markenfelder geändert oder gelöscht werden können, ohne die Fragen erneut zu durchlaufen.