Detalle del Skill

website-build

Generates and assembles deployable static websites from a plan.

CoincidenciaDirectaRevisado para creación de sitios web
Fuentecogni-work/insight-waveFuente externa
Instalaciones reportadas2Solo señal de popularidad

Revisar antes de usar

La revisión automática comprueba relevancia, no seguridad ni respaldo. Lee las instrucciones de la fuente antes de usar este Skill.

Vista previa guardada

SKILL.md

Este extracto es una copia guardada durante la revisión. La fuente externa contiene la versión completa y actual.

---
name: website-build
description: |
  This skill builds the static website by orchestrating CSS generation, parallel page
  generation, hero rendering, and site assembly. It produces a deployable output/website/
  folder from the website-plan.json blueprint. This skill should be used when the user
  mentions "build the website", "generate website", "website build", "Website erstellen",
  "Website generieren", "Seiten erzeugen", "HTML erzeugen", "render the website",
  "assemble the site", "create all pages", or wants to execute the website plan — even
  if they don't say "build" explicitly. Requires website-plan.json.
allowed-tools: Read, Write, Edit, Glob, Grep, Bash, Agent, Skill
---

# Website Build

Orchestrate the full website generation pipeline: shared CSS, homepage hero, parallel page generation, and site assembly.

## Prerequisites

Both `website-project.json` and `website-plan.json` must exist (from setup and plan skills). If missing, redirect to the appropriate skill.

## Workflow

### 1. Load Configuration

Read `website-project.json` and `website-plan.json`. Extract:
- Theme path and design variables path
- All page specs from the plan
- Navigation structure
- Build options (hero_renderer, language)
- Company details

### 1.4. Legal Compliance Gate

Before validating sources, check the legal-pages state:

1. Read `legal_config.jurisdiction` from `website-project.json`.
2. If `jurisdiction` is `null`: warn the user — "Keine Rechtsordnung konfiguriert. Die Website hat kein Impressum, keine Datenschutzerklärung und keinen Cookie-Hinweis. Vor Veröffentlichung in DE/AT/CH/EU rechtliche Pflicht. Bitte /website-legal ausführen oder explizit bestätigen, dass diese Seiten extern bereitgestellt werden." Do not abort — let the user proceed if they confirm.
3. If `jurisdiction` is set, scan `website-plan.json` for `legal-*` page entries (ids starting with `legal-`).
4. If none are present, **stop** and tell the user: "Rechtsordnung ist auf {jurisdiction} gesetzt, aber es sind keine rechtlichen Seiten im Plan. Bitte /website-legal ausführen, dann erneut /website-build." Offer to invoke `website-legal` immediately via the `Skill` tool.
5. If legal pages exist, scan their rendered markdown sources (`content/legal/*.md`) for unfilled `«TODO: ...»` markers and warn the user about each one before continuing — these will appear as visible markers in the published HTML.
6. Check `legal_config.cookie_categories.uses_analytics` and `legal_config.cookie_categories.uses_marketing_cookies`. If either is `true`, warn loudly: "Die Website verwendet Analyse- oder Marketing-Cookies. Der statische Cookie-Hinweis erfüllt **nicht** die Anforderungen von DSGVO/TTDSG/ePrivacy — er ist nur für Seiten mit ausschließlich technisch notwendigen Cookies korrekt. Vor der Veröffentlichung muss `output/website/.partials/cookie-notice.html` durch ein echtes Consent-Management-Tool ersetzt werden." Do not abort — let the user proceed if they confirm.

### 1.5. Validate Source Files

Before generating anything, verify that the source files referenced in the plan still exist. Content may have changed since planning — a deleted product or moved narrative would cause a page-generator agent to fail.

For each page in `website-plan.json`:
- Check all paths in `source_files` exist
- Check all glob patterns in `source_entities` resolve to at least one file
- Track pages with missing sources

**If sources are missing**: present a summary of affected pages and missing files. Ask whether to proceed (skipping those pages) or abort. Do not silently launch agents with broken source references.

**If all sources exist**: proceed without interruption.

### 2. Prepare Output Directory

```bash
mkdir -p output/website/{css,pages,images,.partials}
```

Ensure the directory structure matches the plan's slug paths. Create subdirectories for nested pages (e.g., `pages/produkte/`, `pages/blog/`).

### 3. Generate Design Variables

If `output/design-variables.json` does not exis
Leer la fuente completa en GitHub (abre una página externa)
Contexto

Trabajo relacionado