Nos termos do próprio skill
O skill design-system é o proprietário compartilhado da marca no plugin markdown-html. Ele captura a identidade da marca uma única vez por meio de um assistente de onboarding de 10 perguntas — valores HEX de cor primária e de destaque, Google Fonts para títulos e corpo, um estilo de design (editorial, técnico, minimalista ou lúdico), diretório de saída padrão, tema de código, comportamento do sumário e, opcionalmente, nome e logotipo da empresa — depois valida o contraste do texto corrido e dos links conforme a WCAG 2.2 AA e deriva 12 propriedades personalizadas de CSS no espaço HSL.
Três ferramentas Python que usam apenas a biblioteca padrão cuidam do onboarding, do carregamento da configuração e da validação da paleta; a precedência é projeto sobre global sobre padrões internos. Todo conversor (md-document, md-review, md-slides) lê a configuração salva, então alterar um token altera todo documento renderizado.
O que ele produz
- Um arquivo de configuração que guarda a marca e a paleta derivada, gravado globalmente ou dentro do projeto.
- Doze propriedades personalizadas CSS embutidas no bloco de estilo de cada conversor, como --md-surface, --md-border, --md-link e --md-warn.
- Um schema JSON para a configuração, fornecido como asset para validação.
Como funciona
- 01Execute o onboarding uma vez
O skill é o proprietário compartilhado da marca no plugin markdown-html: md-document, md-review e md-slides consomem a configuração que ele grava, então uma única execução aplica a marca a toda conversão.
- 02Responda às dez perguntas
O assistente registra default_output_dir, HEX primária e de destaque, fontes de título e de corpo, design_style, code_theme, toc.behavior e company_name e logo_url opcionais.
- 03Deixe a validação condicionar o salvamento
brand_palette_validator.validate() roda após cada alteração, então o par é verificado de novo a cada edição de campo, e não apenas no fim do assistente.
- 04Derive os doze tokens
derive_palette() calcula tokens como --md-surface com bg mais ou menos 4-6% de luminância e --md-text-muted como rgba(text, 0.68), e os armazena em derived_palette no mesmo arquivo de configuração.
- 05Resolva a configuração por precedência
config_loader.py é o carregador importável que todo conversor chama antes de renderizar; ele mescla projeto, depois global, depois padrões internos, e respeita a variável de ambiente de bypass.
- 06Substitua ou redefina sem interação
Além do assistente, onboard.py aceita --defaults, --set key=value, --scope project, --show e --reset, então campos de marca podem ser alterados ou apagados sem percorrer as perguntas outra vez.