Vertragsprüfung für KI-gestützte Entwicklung mit OpenClaw

✍️ OpenClawRadar📅 Veröffentlicht: 14. März 2026🔗 Source
Vertragsprüfung für KI-gestützte Entwicklung mit OpenClaw
Ad

Vertragstests bieten eine Alternative zu Integrationstests und End-to-End-Tests bei der Arbeit mit KI-Codierungsagenten wie OpenClaw. Anstatt das gesamte System zu testen, testet man die Schnittstellen und Invarianten zwischen Komponenten und lässt dann den Agenten Code generieren, der diese Verträge erfüllt.

Die Kernidee

Bei der Verwendung eines Agenten zum Schreiben von Code verschiebt sich der Arbeitsablauf vom traditionellen Testen zur vertragsgetriebenen Entwicklung:

  • Zuerst Vertrag/Spezifikation schreiben, nicht die Implementierung
  • Verträge validieren Schnittstelle + Invarianten, anstatt dass Integrationstests das Verhalten prüfen
  • Minimale E2E-Smoke-Tests anstelle umfassender E2E-Tests
  • Agent schreibt Implementierungen, anstatt dass Menschen den meisten Code schreiben

Die Aufgabe der KI wird: "Sorge dafür, dass der Code den Vertrag erfüllt."

Wie ein Vertrag aussieht

Ein Vertrag definiert Eingabeschema, Ausgabeschema, Invarianten und Fehlerbedingungen. Beispiel in TypeScript mit Zod:

export const CreateUserRequest = z.object({
  email: z.string().email(),
  password: z.string().min(8)
})

export const CreateUserResponse = z.object({ id: z.string().uuid(), email: z.string().email(), createdAt: z.string() })

Beispiel für einen Vertragstest:

test("createUser contract", async () => {
  const req = CreateUserRequest.parse({
    email: "[email protected]",
    password: "password123"
  })
  

const res = await createUser(req) expect(CreateUserResponse.parse(res)).toBeDefined() })

Die KI kann den gesamten Dienst neu generieren, solange dieser Test besteht.

Vertragstest-Muster für KI-Agenten

Eine gängige Projektstruktur:

contracts/
  user.contract.ts
  order.contract.ts

tests/ contract/ user.test.ts

src/ services/ userService.ts

Arbeitsablauf: Verträge definieren, Agent generiert Implementierung, Vertragstests laufen, Agent behebt Fehler. Dies schafft eine enge Feedback-Schleife, auf die KI-Agenten angewiesen sind, um sich selbst zu korrigieren.

Ad

Beispiel für einen Agenten-Prompt

Innerhalb eines OpenClaw-Agenten-Arbeitsablaufs:

Implementiere den Dienst so, dass alle Tests in tests/contract bestehen.
Ändere keine Vertragsdefinitionen. Ändere nur Implementierungsdateien.

Der Agent iteriert, bis npm test PASS contract tests.

Verbrauchergesteuerte Verträge

Verbrauchergesteuerte Verträge funktionieren besonders gut für die KI-Entwicklung. Beispiel: Das Frontend definiert POST /users und erwartet { id: uuid, email: string }, und der Backend-Agent muss diesen Vertrag erfüllen. Typischerweise verwendete Tools sind Pact, Schema-Validierung und OpenAPI-Verträge.

Minimaler Test-Stack für KI-Codierung

Um die meisten Integrationstests zu ersetzen:

contracts/
  openapi.yaml

tests/ contract/ invariants/

src/ implementation

Testverteilung: Vertragstests (80%), Invarianten-/Eigenschaftstests (15%), minimale E2E-Smoke-Tests (5%). Beispiel-Smoke-Tests: Benutzerregistrierung funktioniert, Benutzeranmeldung funktioniert.

Zusätzlicher Trick: Eigenschaftstests

Agenten verbessern sich dramatisch mit Eigenschaftstests. Beispiel:

fc.assert(
  fc.property(fc.string(), async (email) => {
    const user = await createUser({email})
    expect(user.email).toEqual(email)
  })
)

Dies gibt dem Agenten einen Suchraum, aus dem er lernen kann.

Warum das für KI besser funktioniert

Agenten haben Schwierigkeiten mit der Koordination mehrerer Dienste, flatterhaften E2E-Tests und komplexer Umgebungseinrichtung. Sie glänzen, wenn sie deterministisches Feedback, kleine isolierte Aufgaben und Schemata + Einschränkungen erhalten. Vertragstests werden zur "wahren Grundlage" in einer KI-freundlichen Architektur: Verträge (Wahrheit) → Tests (Verifizierung) → Agent generiert → Implementierung.

📖 Read the full source: r/clawdbot

Ad

👀 Siehe auch

Zwei Telegram-Bots in einer Gruppe verbinden: Zustellungssemantik über HTTP
Anleitungen

Zwei Telegram-Bots in einer Gruppe verbinden: Zustellungssemantik über HTTP

Ein Entwickler teilt einen praktischen Ansatz, um zwei unabhängige Telegram-Bots im selben Gruppenchat zu verbinden. Dabei werden die Lücken bei der Bot-zu-Bot-Zustellung von Telegram mit HTTP-Relays, ACKs, Deduplizierung und streng begrenzten Feeds überbrückt.

OpenClawRadar
Open-Source-Launch-Playbook für OSS-LLM- und lokale KI-Projekte
Anleitungen

Open-Source-Launch-Playbook für OSS-LLM- und lokale KI-Projekte

Ein Open-Source-Playbook befasst sich mit Auffindbarkeitsproblemen für LLM- und lokale KI-Projekte, indem es strukturierte Anleitungen für die Vorbereitung vor dem Start, die Umsetzung am Starttag und die Nachbereitung nach dem Start bietet. Es enthält Vorlagen und Strategien für Community-Verteilung, Kontaktaufnahme mit Erstellern und SEO-Optimierung.

OpenClawRadar
Dokumentation zum Schreiben von MCP-Tools in C# .NET Framework für Claude Desktop/Code
Anleitungen

Dokumentation zum Schreiben von MCP-Tools in C# .NET Framework für Claude Desktop/Code

Vollständige Dokumentation und C#-Codebeispiele zur Erstellung benutzerdefinierter MCP-Tools mit .NET Framework 4.8, die es Claude Desktop/Code ermöglichen, Interaktionen mit externen Prozessen, Software, APIs und IoT-Geräten zu automatisieren.

OpenClawRadar
Praktische Techniken zur Reduzierung von Zustandsdrift in mehrstufigen KI-Agenten
Anleitungen

Praktische Techniken zur Reduzierung von Zustandsdrift in mehrstufigen KI-Agenten

Ein Entwickler teilt konkrete Methoden zur Behebung von Zustandsdrift in Multi-Agenten-Workflows, darunter Snapshot-basiertes Lesen, ausschließlich anhängendes Schreiben und die Trennung von Zustand und Kontext. Diese Ansätze machten Durchläufe reproduzierbar und das Debugging nachvollziehbar.

OpenClawRadar