# Umstieg auf Clay 5 :badge[Aktuell]{tip}

Clay 5 bringt Seiten für APIs aus ihren OpenAPI-Dokumenten, und Request-Zellen, um sie auszuprobieren. Für eine bestehende Seite ändert sich wenig: Vier neue Komponentennamen sind vergeben, Clay schreibt jetzt einige Tags in den Head jeder Seite, die du vielleicht selbst eingetragen hast, und es setzt Pfeile, Striche und Anführungszeichen in deinem Text. Deine Seiten, Ordner, Versionen, Übersetzungen und die `clay.yaml` bleiben, wie sie sind.

## Auf einen Blick

| Clay 4 | Clay 5 |
|--------|--------|
| `::: request`, `::: fields`, `::: endpoints` und `::: credentials` sind Text | Sie sind [Komponenten](https://clay-doc.github.io/clay-example-repo/de/features/openapi.md) |
| `og:locale`, ein `favicon.ico` und ein `apple-touch-icon` kommen, wenn überhaupt, aus `head` in der `clay.yaml` | Clay schreibt sie, siehe [SEO](https://clay-doc.github.io/clay-example-repo/de/features/seo.md) |
| `->`, `--`, `...` und `"Anführungszeichen"` erscheinen wie getippt | Sie erscheinen als → – … und mit den Anführungszeichen der Sprache der Seite, siehe [Typografie](https://clay-doc.github.io/clay-example-repo/de/writing/markdown.md#typografie) |

Ein Coding-Agent kann den Umstieg erledigen:

::: prompt
Upgrade the Clay docs in this repository to Clay 5, following
https://clay-doc.github.io/clay-example-repo/guides/upgrading-to-clay-5.md.
The upgrade is done when `npx clay build --strict` passes.
:::

## Schritte

::: steps
1. **Clay aktualisieren.**

   ::: code-group
   ```bash [npm]
   npm install --save-dev clay-doc@5
   ```
   ```bash [pnpm]
   pnpm add --save-dev clay-doc@5
   ```
   ```bash [yarn]
   yarn add --dev clay-doc@5
   ```
   :::

2. **Nach den neuen Komponentennamen suchen.** Eine Zeile, die mit `::: request`, `::: fields`, `::: endpoints` oder `::: credentials` beginnt, war Text und ist jetzt eine Komponente. Außerhalb von Codeblöcken sind solche Zeilen selten; liste sie mit:

   ```bash
   grep -rnE "^:{3,} *(request|fields|endpoints|credentials)\b" docs
   ```

   Setz die, die Text bleiben sollen, in einen Codeblock, oder schreib `\:::`.

3. **Head-Tags entfernen, die Clay jetzt schreibt.** Clay fügt jeder Seite `og:locale`, ein `favicon.ico` und ein aus deinem `favicon` gezeichnetes `apple-touch-icon` hinzu. Wenn `head` in der `clay.yaml` sie auch einträgt, entferne sie dort, damit sie nicht doppelt in der Seite stehen:

   ```bash
   grep -nE "og:locale|apple-touch-icon|favicon\.ico" clay.yaml config/*.yaml
   ```

4. **Prüfen.**

   ```bash
   npx clay build --strict
   ```

   Wenn der Build durchläuft, ist der Umstieg fertig.
:::

## Was noch neu ist

::: cards
- [OpenAPI](https://clay-doc.github.io/clay-example-repo/de/features/openapi.md)
  Seiten für jede Operation und jedes Schema einer API, unter der Dokumentation in der Navigation, und Request-Zellen, um sie auf der Seite auszuprobieren.
- [SEO](https://clay-doc.github.io/clay-example-repo/de/features/seo.md) {fa-solid fa-chart-line}
  Icons für Suchergebnisse und Homescreens, der Name der Website in Suchergebnissen, und die Sprache jeder Seite für Linkvorschauen.
:::

- Gespeicherte Versionen behalten ihre APIs: `clay version` kopiert die OpenAPI-Dokumente in die Version, so bleiben ihre Seiten, wie sie waren. Siehe [Versionen](https://clay-doc.github.io/clay-example-repo/de/organizing/versions.md).
- `footer` in der `clay.yaml` setzt Links und eine Textzeile unter jede Seite, siehe [clay.yaml](https://clay-doc.github.io/clay-example-repo/de/configuration/clay-yaml.md#fu%C3%9Fzeile).
- Die Seitenleiste lässt sich durch Ziehen ihres Rands breiter oder schmaler machen, und lange Titel enden mit „…“.
- In der Seitenleiste bleibt die Seite, von der du kommst, nicht mehr markiert, wenn du einem Link im Text folgst.

---

All pages of these docs, as Markdown for language models: https://clay-doc.github.io/clay-example-repo/de/llms.txt
