Dokumentation
OpenSpec
OpenSpec in Motoko Base — warum es existiert, Ordnerstruktur und wie du Changes vorschlägst, anwendest und archivierst.
OpenSpec ist ein spezifikationsgetriebener Workflow für KI-gestützte Entwicklung. Motoko Base nutzt ihn, damit Agenten vor dem Codieren planen — begrenzte Änderungen statt zufälliger Diffs über das Repo.
Offizielle Docs: openspec.dev
Warum OpenSpec?
| Ohne OpenSpec | Mit OpenSpec |
|---|---|
| Agent bearbeitet viele Dateien auf einmal | Agent folgt tasks.md Schritt für Schritt |
| Anforderungen leben im Chat-Verlauf | Anforderungen in reviewbaren Markdown-Dateien |
| Schwer zu wissen, was „fertig“ bedeutet | Specs definieren beobachtbares Verhalten |
| Muster weichen von Starter-Konventionen ab | openspec/config.yaml setzt Motoko-Regeln durch |
OpenSpec trennt Planung (Proposal, Design, Specs, Tasks) von Implementierung (Apply). Du prüfst den Plan, bevor Produktcode geändert wird.
Ordnerstruktur
openspec/
├── config.yaml # Project context + rules for AI artifacts
├── specs/ # Durable requirements (main specs)
│ └── <capability>/
│ └── spec.md
└── changes/
├── <active-change>/ # Work in progress
│ ├── .openspec.yaml
│ ├── proposal.md
│ ├── design.md
│ ├── tasks.md
│ └── specs/<capability>/spec.md # delta spec
└── archive/
└── <date>-<change-name>/ # completed changesMain Specs (openspec/specs/) sind langlebiges Produktgedächtnis — was der Starter pro Capability leisten muss (Links, Billing, Storage usw.).
Changes (openspec/changes/) sind kurzlebige Pläne für ein Ergebnis. Nach dem Archive fließen dauerhafte Anforderungen in die Main Specs.
Projektspezifische KI-Regeln stehen in openspec/config.yaml (Philosophie, Stack, Architektur-Constraints, Regeln pro Artefakt).
Eine Proposal erstellen
Nutze den Cursor-Slash-Befehl oder bitte den Agenten, den Propose-Skill auszuführen:
/opsx-propose Add a bookmarks demo with user ownershipDas erstellt openspec/changes/<name>/ und erzeugt:
| Artefakt | Zweck |
|---|---|
proposal.md | Was & Warum, Non-Goals, Capabilities, Impact |
specs/<capability>/spec.md | Delta-Anforderungen (ADDED/MODIFIED-Szenarien) |
design.md | Wie — Dateien, Muster, Entscheidungen (übersprungen wenn trivial) |
tasks.md | Checkbox-Implementierungsschritte |
Nur Planung — kein Produktcode, bis du Apply ausführst.
Zum Nachdenken ohne Planung: /opsx-explore. Zur Überarbeitung nach Feedback: /opsx-update.
Design
design.md hält Architekturentscheidungen für den Change fest:
- Welche bestehenden Muster wiederverwendet werden (
src/features/links/als CRUD-Vorlage) - Schema, Routen und Datei-Touchpoints
- Trade-offs und Non-Goals auf Design-Ebene
Agenten lesen proposal.md + die bestehende Codebase, bevor sie das Design schreiben. Kurz halten — lieber Starter-Muster wiederverwenden als neue Schichten erfinden.
Tasks
tasks.md ist eine Checkbox-Liste, der der Agent während Apply folgt:
- [ ] 1.1 Add schema in src/lib/db/schema/...
- [ ] 2.1 Create queries.ts with ownership filters
- [ ] 3.1 Wire dashboard route and nav itemTasks sollten klein, geordnet (Schema → Server → UI → Wiring) und bei bekannten Pfaden konkrete Dateipfade nennen.
Apply
Wenn der Plan gut aussieht:
/opsx-applyDer Agent:
- Liest
proposal.md, Delta-Specs,design.mdundtasks.md - Implementiert jede unchecked Task
- Markiert Tasks mit
- [x]als erledigt - Pausiert, wenn der Scope unklar ist oder der Spec aktualisiert werden muss
Du kannst Apply über mehrere Sitzungen laufen lassen — der Fortschritt wird in tasks.md verfolgt.
Archive
Wenn alle Tasks erledigt sind und du den Code reviewed hast:
/opsx-archiveArchive:
- Synchronisiert optional Delta-Specs in
openspec/specs/<capability>/spec.md - Verschiebt den Change-Ordner nach
openspec/changes/archive/<date>-<name>/
Main Specs werden die Quelle der Wahrheit für künftige KI-Sitzungen zu dieser Capability.
Nützliche CLI-Befehle
openspec list # active changes
openspec status --change <name> # artifact progress
openspec validate <name> # check a change
openspec view # browse specs and changesInstallation: OpenSpec installation
Cursor-Befehle
| Befehl | Aktion |
|---|---|
/opsx-explore | Nachdenken und untersuchen — kein Code |
/opsx-propose | Planungsartefakte erstellen |
/opsx-update | Artefakte nach Feedback überarbeiten |
/opsx-apply | Tasks implementieren |
/opsx-archive | Abschließen und Specs syncen |
/opsx-sync | Delta-Specs zu Main Specs syncen |
Skills liegen in .agents/skills/openspec-* und .cursor/skills/openspec-*.
KI-Entwicklungsworkflow — End-to-End-Ablauf von der Idee bis zum Review.
Cursor / KI-Agenten — AGENTS.md und Prompting-Tipps.