# KI-Begleiter

> Eine einzige Datei, die ein KI-Modell auf das Schreiben von Gastprogrammen für Apogee vorbereitet. Laden Sie sie herunter, legen Sie sie Ihrem Modell vor, und es beginnt mit denselben Regeln, die dieses Handbuch lehrt.

Ein Großteil des Codes, der für Apogee geschrieben wird, wird von einem Modell entworfen werden. Ein Modell, das Apogee nie gesehen hat, schreibt ein plausibles Gastprogramm (Guest), das `std` verwendet, in jeder Schleife alloziert, zu einem atomaren Zähler greift, seinen Hilfsdaten (Advice) vertraut und ein `usize` festschreibt. Der **KI-Begleiter** ist eine einzige Markdown-Datei, die alles vorab bereitstellt, was diese Fehler verhindert: was ein Gastprogramm ist, die harten Regeln, die vollständige öffentliche Oberfläche des SDK mit exakten Signaturen, Muster zum Übernehmen, die Fehler und ihre Behebung sowie eine Checkliste für das Review.

[Begleiter herunterladen](https://apogee.gweb3networks.com/docs/apogee-ai-companion.md)
In die Zwischenablage kopieren
[Als Text öffnen](https://apogee.gweb3networks.com/docs/apogee-ai-companion.md)

## So verwenden Sie ihn

- **In einem Chat:** Hängen Sie die Datei an oder fügen Sie sie als erste Nachricht ein, bevor Sie beschreiben, was gebaut werden soll.
- **In einem Coding-Agenten:** Speichern Sie sie im Wurzelverzeichnis Ihres Projekts unter dem Namen, den Ihr Werkzeug per Konvention liest, etwa `AGENTS.md` oder `CLAUDE.md`, oder fügen Sie sie den Projektregeln des Werkzeugs hinzu. Der Agent liest sie dann zu Beginn jeder Sitzung.
- **Für das Review:** Bitten Sie das Modell, ein Gastprogramm Zeile für Zeile gegen Abschnitt 8 der Datei zu prüfen, die Review-Checkliste.

Die Datei formuliert ihre Regeln als **MUST** und **MUST NOT**, jeweils mit der Begründung daneben, weil Modelle expliziten und begründeten Vorgaben zuverlässiger folgen als Konventionen, die sie selbst erschließen sollen.

## Was er enthält

| Abschnitt | Inhalt |
| --- | --- |
| 0. Anweisungen an das Modell | Die Regeln als harte Vorgaben behandeln; nie eine API aufrufen, die nicht aufgeführt ist; Beweise sind nicht zero-knowledge |
| 1. Was ein Gastprogramm ist | Das Target, der einzelne Hart, was ein Beweis aussagt, die Programmidentität, die drei Speicherbereiche |
| 2. Harte Regeln | 23 Regeln: Programmform, `usize` und Zeiger mit 32 Bit, der Bump-Allokator, der Stack, Ausrichtung, Atomics, die fehlende Außenwelt, Hilfsdaten, Grenzen der öffentlichen Werte, der Befehlssatz, Gleitkommazahlen, Überlaufprüfungen, Kosten |
| 3. Aufbau und Build | Die Crate-Vorlagen, der Gastprogramm-Workspace, der Build-Befehl, die Aufteilung in eine zuerst auf dem Host getestete Bibliothek |
| 4. Das Guest-SDK | Jede öffentliche Funktion mit ihrer exakten Signatur, die Fakten zur Laufzeitumgebung und die Speicherkarte, die delegierten Operationen und die mitgelieferten Crates |
| 5. Muster | Hilfsdaten, gegen einen Hash geprüft; eine Merkle-Abfrage und ein Zustandsübergang; Wiederverwendung von Puffern; strukturierte Hilfsdaten; Digests für wachsende Ausgaben |
| 6. Host-Seite | Ausführung im Emulator, Profiling, Export des Images, Beweisen und Verifizieren, Höhen und gleichzeitig bearbeitete Shards |
| 7. Fehler und Abhilfen | Jeder Exit-Status, jeder fatale Fehler und jede Zurückweisung, auf die ein Gastprogramm trifft, mit Ursache und Abhilfe |
| 8. Review-Checkliste | Elf Prüfungen, die vor dem Vorschlagen von Code für Gastprogramme durchzuführen sind |
| 9. Fakten | Die ISA, das Beweissystem, das Sicherheitsniveau, die Grenzen und die gemessenen Ergebnisse |

## Die Regeln, auf denen er besteht

Der Begleiter wiederholt die Regeln dieses Handbuchs, und drei davon verdienen es, hervorgehoben zu werden, weil Modelle sie am häufigsten falsch machen:

- **Zeiger und `usize` sind 32 Bit breit.** Ein Modell, das überwiegend mit 64-Bit-Code trainiert wurde, serialisiert `usize`, ohne zweimal nachzudenken. Gastprogramm und Host sind sich dann über die Bytes uneinig.
- **Der Heap gibt nie Speicher frei.** Idiomatisches Rust alloziert großzügig, weil ein echter Allokator Speicher zurückgibt. Hier ist jede Allokation für den Rest des Laufs dauerhaft; der Begleiter verlangt deshalb überall Wiederverwendung und `with_capacity`.
- **Atomics kompilieren, und sie gehören nicht in neuen Code von Gastprogrammen.** Sie werden für die Kompatibilität mit bestehenden Bibliotheken unterstützt. Auf einem einzigen Hart synchronisieren sie nichts, und sie fügen dem Beweis eine Schaltkreisfamilie hinzu.

## Für Agenten, die diese Dokumentation direkt lesen

- [`/llms.txt`](/llms.txt) verzeichnet jede Seite dieser Website in Markdown, für Modelle, die das Web lesen.
- [`/docs/llms-full.txt`](https://apogee.gweb3networks.com/docs/llms-full.txt) ist die gesamte englische Dokumentation, einschließlich der Spezifikation, in einer einzigen Datei.
- Jede Seite hat einen Link **Als Markdown anzeigen** und eine Schaltfläche **Als Markdown kopieren**, unter ihrem Titel und in der rechten Spalte.

Englisch ist die kanonische Sprache der Dokumentation, und der Begleiter wird für jede Sprachversion auf Englisch veröffentlicht: Es ist die Sprache, der Modelle am zuverlässigsten folgen, und die, in der die Spezifikation geschrieben ist.
