Specsmaxxing: KI-Psychose mit YAML-Spezifikationen und ACAI bekämpfen

Der neueste Blogbeitrag von Acai.sh, „Specsmaxxing – Überwindung der KI-Psychose und warum ich Spezifikationen in YAML schreibe“, befasst sich mit dem Problem, dass KI-Agenten aus dem Ruder laufen, wenn Kontextfenster volllaufen oder Sitzungen abbrechen. Der Autor teilt einen praktischen Workflow: strukturierte Spezifikationen in YAML statt nur in Markdown und nummerierte Anforderungen (z. B. AUTH-1, AUTH-2), auf die Agenten direkt im Code verweisen können. Diese Methode, genannt Acceptance Criteria for AI (ACAI), entstand, als ein Sub-Agent Anforderungen automatisch nummerierte und in der Implementierung darauf verwies, was die Rückverfolgbarkeit verbesserte und Regressionen reduzierte.
Der Beitrag beschreibt einen vierstufigen Prozess: Specify (Anforderungen in YAML schreiben), Ship (Agenten implementieren lassen), Review (Code gegen Spezifikationen prüfen) und Iterate. Der Autor gibt zu, zuvor mit Markdown-Spezifikationen (PRDs, TRDs, Architekturdokumenten) übertrieben und an „KI-Psychose“ gelitten zu haben – mehr Zeit mit dem Bau von KI-Geschirren als mit Produkten verbracht zu haben. Der YAML-basierte Ansatz soll leichter und besser maschinenlesbar sein.
Wichtige Erkenntnis: Ein einfaches README.md und AGENTS.md verbessern die Agentenausgabe bereits erheblich. Der Beitrag argumentiert, dass „Peak Slop“ vorbei ist und strukturierte Spezifikationen die nächste Entwicklung darstellen. Ein Code-Snippet zeigt das Muster:
# Requirements
AUTH-1: Accepts `Authorization: Bearer <token>` header
AUTH-2: Tokens are user-scoped, providing access to any of the user's resources
AUTH-3: Rejects with 401 Unauthorized
// AUTH-1
const authHeader = req.headers["authorization"];
// AUTH-2
const isAuthorized = verifyBearerToken(authHeader);
// AUTH-3
if (!isValid) return res.status(401).json({ error: "Unauthorized" });
Der Beitrag bewertet auch Alternativen: GitHub SpecKit, OpenSpec, Kiro, Traycer.ai – und listet Gründe auf, warum einem acai.sh nicht gefallen könnte (z. B. Overhead, eigenwilliges Format). Es ist ein pragmatischer Ansatz für Entwickler, die möchten, dass ihre KI-Agenten zuverlässigen Code ausliefern, ohne ständige Nachjustierungen.
Für wen es gedacht ist: Entwickler, die KI-Codierungsagenten (Claude, Copilot usw.) verwenden und auf Kontextgrenzen stoßen, die eine leichte Spezifikationsebene wünschen, um Agenten auf Kurs zu halten.
📖 Lesen Sie die vollständige Quelle: HN AI Agents
👀 Siehe auch

Tacit: Eine LLM-erste Programmiersprache, entwickelt mit Claude Code und Opus 4.7
Tacit ist eine experimentelle, LLM-zentrierte Programmiersprache, die mit Claude Code und Opus 4.7 entwickelt und implementiert wurde. Sie entfernt menschliche Annehmlichkeiten, um die Token-Nutzung zu minimieren, und enthält eine Einführung, die mittleren und höheren LLMs (Sonnet und aufwärts) beibringt, Tacit-Code zu schreiben.

Sammlung von 177 OpenClaw SOUL.md-Vorlagen, organisiert in 24 Kategorien
Ein Entwickler hat 177 sofort einsatzbereite SOUL.md-Vorlagen für OpenClaw-Agenten in 24 Kategorien zusammengestellt, darunter Marketing, Entwicklung, Business, DevOps, Finanzen, Kreatives, Daten, Sicherheit, Gesundheit, Recht, Personalwesen und Bildung. Alle Vorlagen sind unter der MIT-Lizenz verfügbar und auf GitHub zu finden.

Lobster Cage: Dockerisierte Sicherheitsumgebung für Self-Hosting von OpenClaw auf Raspberry Pi
Ein Entwickler hat Lobster Cage erstellt, eine Docker Compose-Umgebung mit eingeschränktem ausgehendem Zugriff und Proxy-basiertem Routing, um OpenClaw sicher auf einem Raspberry Pi für Experimente auszuführen.

SkyClaw v2.2 Rust AI Agent Runtime fügt OpenAI OAuth und benutzerdefinierte Tool-Erstellung hinzu
SkyClaw v2.2 führt die OpenAI OAuth-Authentifizierung mit ChatGPT Plus/Pro-Abonnements ein, ermöglicht die Erstellung benutzerdefinierter Tools, bei denen Agenten zur Laufzeit eigene Bash/Python/Node-Tools schreiben, und bietet einen Daemon-Modus für den Hintergrundbetrieb. Die Rust-basierte Laufzeitumgebung erreicht Benchmarks von 31 ms Kaltstart, 15 MB Leerlauf-RAM und 9,3 MB Binärgröße.