Ralph-Loop – wenn ein Agent konvergiert statt „fertig“ zu sagen
Datum: 2026-01-01
Warum „fertig“ im Chat nicht reicht
Jeder, der mit KI-Agenten produktiv arbeitet, kennt den Moment: Der Chat sagt *„Alles erledigt“*, du commitest – und zehn Minuten später fällt dir auf, dass PHPUnit rot ist, ein Screen 500 liefert oder Translation-Keys fehlen. Das Problem ist nicht Faulheit des Modells, sondern fehlende Objektivität: Der Agent hat keinen maschinenlesbaren Beweis geliefert, dass wirklich nichts mehr offen ist.
Agentic Engineering braucht deshalb einen Mechanismus, der Konvergenz erzwingt – nicht Vertrauen. Dafür nutzen wir den Ralph-Loop.
Das Problem im Detail
| Symptom | Ursache ohne Ralph-Loop |
|---|---|
| „Tests sollten laufen“ | Kein erzwungener PHPUnit-Lauf |
| „Ich habe alle Screens geprüft“ | Keine curl-Liste, keine 200er |
| „Translations sind ok“ | Kein Key-Vergleich DE/EN |
| „Briefing ist synchron“ | Kein Abgleich Briefing ↔ PHP |
Ohne Loop endet die Arbeit, wenn das Sprachmodell es für sinnvoll hält – nicht wenn das Projekt objektiv grün ist.
Das Pattern: Ralph-Loop
Der Ralph-Loop startet einen spezialisierten Subagenten (z. B. `subagent-check-screens`) und wiederholt Runden, bis am Ende drei maschinenlesbare Marker ein eindeutiges Bild liefern:
| Marker | Bedeutung |
|---|---|
| `RALPH_LOOP_OPEN_FAILURES` | Anzahl offener Prüfobjekte nach Korrekturen in dieser Runde |
| `RALPH_LOOP_CHANGED_FILES` | Anzahl geänderter Dateien in dieser Runde |
| `RALPH_LOOP_CHANGED_FILE_LIST` | Kommaseparierte Liste oder `none` |
Wann ist wirklich grün?
Grün bedeutet ausschließlich:
- `RALPH_LOOP_OPEN_FAILURES=0`
- `RALPH_LOOP_CHANGED_FILES=0`
Alles andere → nächste Runde. Kein Bauchgefühl, kein „fast fertig“.
Ablauf einer Runde
001. CLI startet Subagent mit festem Scope (z. B. nur Translations).
002. Agent liest Skills, Rules und Briefings.
003. Agent korrigiert Verstöße physisch im Repo.
004. Agent meldet die drei Marker am Ende der Antwort.
005. Orchestrator wertet aus: konvergent oder nächste Runde.
So sieht es bei uns aus
php start-vendor-subagent-ralph-loop.php subagent-check-screens
Der `CLISubagentRalphLoopOrchestrator`:
001. Parst CLI-Argumente (`subagent-check-screens`, optional Zusatzkontext).
002. Legt Log-Ordner unter `logs-start-vendor-subagent-ralph-loop/` an.
003. Ruft den Cursor Agent headless auf.
004. Wertet Marker aus und startet bei Bedarf Runde 2, 3, … n.
Verschachtelte Loops (z. B. Deep-Check ruft Ralph pro 10er-Batch auf) nutzen Env-Flags wie `DEEP_CHECK_SUPPRESS_RALPH_LOOP_CLEAR`, damit Terminal-Output und Logs sauber bleiben.
Ralph-Loop vs. einmaliger Agent-Lauf
| Einmaliger Chat/CLI-Lauf | Ralph-Loop |
|---|---|
| Endet nach einer Antwort | Endet bei Konvergenz |
| Kein standardisiertes Grün | Marker = Grün/Rot |
| Schwer in CI nutzbar | Exit-Code + Logs |
| „Ich glaube, es passt“ | „OPEN_FAILURES=0“ |
Für Exploration reicht ein Lauf. Für Qualitätssicherung im Repo brauchst du den Loop.
Typische Subagents im Ralph-Loop
| Subagent | Wann starten |
|---|---|
| `subagent-check-screens` | Nach Screen-/Template-Änderungen |
| `subagent-check-translations` | Nach i18n oder Routing |
| `subagent-check-orchestrator` | Nach Orchestrator/Step-Services |
| `subagent-check-vendor-duplicates` | Nach Vendor-Updates |
| `subagent-fix-fehler-und-test` | Wenn curl/PHPUnit rot |
Jeder Subagent verweist auf `@skill-subagent-build` und die Rule `018-subagent-ralph-loop-output.mdc` für die Pflicht-Marker.
Anti-Patterns
001. Loop ohne Subagent-Scope – „Mach alles grün“ in einer Runde → wieder Monster-Prompt.
002. Marker ignorieren – Mensch sagt „passt schon“, obwohl `OPEN_FAILURES=3`.
003. Tests abschwächen – Rot wird grün gemacht, indem Assertions gelöscht werden (bei uns: verboten).
004. Keine Logs – Ohne `logs-start-vendor-subagent-ralph-loop/` kein Nachweis im Team.
005. Endlosschleife ohne Abbruch – Orchestrator braucht sinnvolle Abbruchkriterien bei harten Blockern.
Integration in den Development-Workflow
`start-vendor-development-workflow.php` und verwandte Scripts rufen Subagents und Tests in fester Reihenfolge auf. Der Ralph-Loop ist kein isoliertes Spielzeug, sondern Gate vor Commit/Push:
001. Code-Änderung
002. Relevanter Subagent im Ralph-Loop
003. PHPUnit (`start-vendor-phpunit-tests.php`)
004. Optional: `start-vendor-git-push.php`
So wird „fertig“ zur Pipeline-Entscheidung, nicht zur Chat-Meinung.
Häufige Fragen
Wie viele Runden sind normal?
Bei fokussiertem Scope oft 1–3. Bei großen Refactorings oder ersten Einrichtungen auch mehr – entscheidend ist Konvergenz, nicht die Rundenanzahl.
Muss jeder Subagent einen Ralph-Loop haben?
Prüf- und Fix-Agenten im produktiven Workflow: ja. Einmalige Recherche: optional.
Was, wenn OPEN_FAILURES nie 0 wird?
Blocker dokumentieren, Scope verkleinern oder Briefing/Architektur klären – nicht Marker weglassen.
Kann ich den Loop in CI laufen lassen?
Ja – headless `cursor agent`, Logs und Exit-Code sind dafür gedacht (siehe auch Cron/CI-Beitrag).
Verwandte Beiträge
| Beitrag | Thema |
|---|---|
| Subagents statt Monster-Prompt | Spezialisierung |
| Rules, Skills, Subagents | Steuerungsebenen |
| Deep-Check | 10er-Batches PHP |
| Cursor Agent per CLI | Headless Jobs |
| Von der IDE zum Nachtjob | Cron/CI |
Takeaway
Agentic Engineering braucht maschinenlesbares Grün/Rot – kein Bauchgefühl im Chat. Der Ralph-Loop mit `OPEN_FAILURES` und `CHANGED_FILES` macht aus „fertig“ eine prüfbare Aussage. Wer das ernst nimmt, committet seltener kaputten Code – und schläft besser vor dem Deploy.
Vertiefung: Ralph-Loop – wenn ein Agent konvergiert statt „fertig“ zu sagen im Projektalltag
In unserem Repository ist agentic ralph loop konvergenz kein abstraktes Konzept, sondern Teil der täglichen Agent-Arbeit unter `briefing/`, `cursor-rules/` und den `start-vendor-*`-Workflows. Wer agentic ralph loop konvergenz ernst nimmt, dokumentiert zuerst die Spezifikation, setzt danach Orchestrator, Services und Screens um und schließt mit `curl` sowie PHPUnit ab. Diese Kette verhindert, dass die KI nur im Chat Fortschritt simuliert, während Routing, Translations oder Briefings veraltet bleiben.
Konkret bedeutet das: Jede Änderung an Screens oder CLI-Skripten startet mit dem passenden Briefing unter `briefing/screens/` bzw. `briefing/CLIOrchestrator/`. Subagents wie `subagent-check-screens`, `subagent-check-orchestrator` oder `subagent-check-translations` prüfen Schicht für Schicht. Der Ralph-Loop (`RALPH_LOOP_CHANGED_FILES`, `RALPH_LOOP_CHANGED_FILE_LIST`) macht Konvergenz maschinenlesbar – rot bleibt rot, bis der Ist-Stand dem Briefing entspricht.
Entscheidungshilfe: Wann welcher Hebel?
| Situation | Empfohlener Hebel | Erwartetes Ergebnis |
|---|---|---|
| Wiederholter Architekturfehler | Rule in `cursor-rules/rules/` | Modell hält Grenze dauerhaft ein |
| Komplexer mehrstufiger Ablauf | Skill `@skill-*` + Subagent | Checkliste statt Einmal-Prompt |
| Großes Feature mit mehreren Screens | `features/` + `start-vendor-feature.php` | Checkpoints bis deploybar |
| Einzelner Screen rot (curl 500) | `subagent-fix-fehler-und-test` | HTTP 200 + grüne Tests |
| Unklare Spec | Briefing-First in `briefing/` | Keine erfundenen Defaults im Code |
Architektur- und Review-Perspektive (Teil 2)
Teams, die agentic ralph loop konvergenz produktiv nutzen, behandeln Agent-Output wie menschlichen Code: Pull Request, Diff-Review, PHPUnit, curl. In PHP-Projekten mit strikter Schichtung (Screen → Orchestrator → ScreenServices → Repositories) darf die KI keine Abkürzungen einbauen – weder direkte Repository-Aufrufe im Screen noch Legacy-Ordner `src/Orchestrator/` ohne Freigabe in `briefing.md`. `@skill-screen-php-layer` und `@skill-orchestrators` definieren diese Grenzen; Subagents setzen sie durch.
| Review-Fokus | Prüffrage | Typischer Subagent |
|---|---|---|
| Screen-Schicht | Ruft PHP nur den Orchestrator auf? | `subagent-check-screens` |
| Orchestrator | Steps nummeriert, Briefing-Sync? | `subagent-check-orchestrator` |
| Services | Kein try-catch, keine array-Returns? | `subagent-check-services` |
| Repositories | SQL-Logging, Indizes, PHPDoc UI-Nutzung? | `subagent-check-repos` |
| Translations | Keys in Twig korrekt? | `subagent-check-translations` |
Betrieb, Logs und Nachvollziehbarkeit (Teil 3)
Agentic Engineering ohne Logs ist Blindflug. CLI-Workflows schreiben strukturierte Terminal-Ausgabe gemäß `006-cli-console-colors.mdc`; Live-SQL unter `logs-live-sql/` dokumentiert UI-Bezug pro Query. Bei Blogposts und Screens gilt: Nach jeder Template- oder PHP-Änderung `curl http://localhost:{PORT}/blog/agentic-ralph-loop-konvergenz` bis HTTP 200. Fehler-HTML analysieren, beheben, erneut prüfen – Regel 051 in `001-ki-behavior.mdc`.
Praxis-Checkliste vor Freigabe
001. Markdown unter `briefing/blog/blogposts/2026-01-01-agentic-ralph-loop-konvergenz/` vollständig und mit mindestens einer Tabelle gepflegt.
002. Hero-SVG und Content-SVG im Post-Ordner und unter `htdocs/images/blog/2026-01-01-agentic-ralph-loop-konvergenz/` vorhanden.
003. Route `/blog/agentic-ralph-loop-konvergenz` in `config/routing/routes-project-config.php` eingetragen.
004. Translation-Dateien unter `translation/de/blog/` und `translation/en/blog/` mit passender `seo_description`.
005. Homescreen listet den Beitrag über `ScreenHome001BuildHomeScreenResponseService` automatisch.
006. `curl http://localhost:{PORT}/blog/agentic-ralph-loop-konvergenz` liefert HTTP 200.
Erweiterte FAQ und Takeaway (Teil 4)
Wie vermeide ich stille Fallbacks?
Regelwerk `020-no-fallbacks-no-defaults.mdc` und Skill `@skill-no-fallbacks-no-defaults`: fehlende Pflichtwerte müssen sichtbar werden, nicht mit `??` oder erfundenen Defaults gefüllt werden.
Was ist mit Vendor-only-Code?
Host-Duplikate sind verboten; `subagent-check-vendor-duplicates` und `@skill-vendor-only-files` sichern, dass Logik im Vendor bleibt, wenn sie dort bereits existiert.
Wie halte ich Translations synchron?
Nach DE-Änderungen sofort EN (und weitere Sprachen) nachziehen; `@skill-translations` und `subagent-check-translations` prüfen Keys und Twig-Pfade.
| Merksatz | Bedeutung für agentic ralph loop konvergenz |
|---|---|
| Briefing-First | Spec vor Code, immer |
| Ralph-Loop | Konvergenz statt „fertig“-Behauptung |
| curl + PHPUnit | Beweis statt Chat-Grün |
| Keine Emojis | Professioneller Ton in Code und UI |
agentic ralph loop konvergenz skaliert nur mit versionierter Steuerung: Rules setzen Grenzen, Skills liefern Verfahren, Subagents führen aus. Wer jeden Schritt mit Briefing, curl und PHPUnit belegt, ersetzt Chat-Hoffnung durch deploybare Qualität. Der Beitrag `/blog/agentic-ralph-loop-konvergenz` ist Teil dieser Serie – vertiefend, referenzierbar und auf Hardcore-Developer-Niveau formuliert.
Vertiefung (Teil 5): Ralph-Loop – wenn ein Agent konvergiert statt „fertig“ zu sagen im Projektalltag
In unserem Repository ist agentic ralph loop konvergenz kein abstraktes Konzept, sondern Teil der täglichen Agent-Arbeit unter `briefing/`, `cursor-rules/` und den `start-vendor-*`-Workflows. Wer agentic ralph loop konvergenz ernst nimmt, dokumentiert zuerst die Spezifikation, setzt danach Orchestrator, Services und Screens um und schließt mit `curl` sowie PHPUnit ab. Diese Kette verhindert, dass die KI nur im Chat Fortschritt simuliert, während Routing, Translations oder Briefings veraltet bleiben.
Konkret bedeutet das: Jede Änderung an Screens oder CLI-Skripten startet mit dem passenden Briefing unter `briefing/screens/` bzw. `briefing/CLIOrchestrator/`. Subagents wie `subagent-check-screens`, `subagent-check-orchestrator` oder `subagent-check-translations` prüfen Schicht für Schicht. Der Ralph-Loop (`RALPH_LOOP_CHANGED_FILES`, `RALPH_LOOP_CHANGED_FILE_LIST`) macht Konvergenz maschinenlesbar – rot bleibt rot, bis der Ist-Stand dem Briefing entspricht.
Entscheidungshilfe: Wann welcher Hebel?
| Situation | Empfohlener Hebel | Erwartetes Ergebnis |
|---|---|---|
| Wiederholter Architekturfehler | Rule in `cursor-rules/rules/` | Modell hält Grenze dauerhaft ein |
| Komplexer mehrstufiger Ablauf | Skill `@skill-*` + Subagent | Checkliste statt Einmal-Prompt |
| Großes Feature mit mehreren Screens | `features/` + `start-vendor-feature.php` | Checkpoints bis deploybar |
| Einzelner Screen rot (curl 500) | `subagent-fix-fehler-und-test` | HTTP 200 + grüne Tests |
| Unklare Spec | Briefing-First in `briefing/` | Keine erfundenen Defaults im Code |
Architektur- und Review-Perspektive (Teil 6)
Teams, die agentic ralph loop konvergenz produktiv nutzen, behandeln Agent-Output wie menschlichen Code: Pull Request, Diff-Review, PHPUnit, curl. In PHP-Projekten mit strikter Schichtung (Screen → Orchestrator → ScreenServices → Repositories) darf die KI keine Abkürzungen einbauen – weder direkte Repository-Aufrufe im Screen noch Legacy-Ordner `src/Orchestrator/` ohne Freigabe in `briefing.md`. `@skill-screen-php-layer` und `@skill-orchestrators` definieren diese Grenzen; Subagents setzen sie durch.
| Review-Fokus | Prüffrage | Typischer Subagent |
|---|---|---|
| Screen-Schicht | Ruft PHP nur den Orchestrator auf? | `subagent-check-screens` |
| Orchestrator | Steps nummeriert, Briefing-Sync? | `subagent-check-orchestrator` |
| Services | Kein try-catch, keine array-Returns? | `subagent-check-services` |
| Repositories | SQL-Logging, Indizes, PHPDoc UI-Nutzung? | `subagent-check-repos` |
| Translations | Keys in Twig korrekt? | `subagent-check-translations` |
Betrieb, Logs und Nachvollziehbarkeit (Teil 7)
Agentic Engineering ohne Logs ist Blindflug. CLI-Workflows schreiben strukturierte Terminal-Ausgabe gemäß `006-cli-console-colors.mdc`; Live-SQL unter `logs-live-sql/` dokumentiert UI-Bezug pro Query. Bei Blogposts und Screens gilt: Nach jeder Template- oder PHP-Änderung `curl http://localhost:{PORT}/blog/agentic-ralph-loop-konvergenz` bis HTTP 200. Fehler-HTML analysieren, beheben, erneut prüfen – Regel 051 in `001-ki-behavior.mdc`.
Praxis-Checkliste vor Freigabe
001. Markdown unter `briefing/blog/blogposts/2026-01-01-agentic-ralph-loop-konvergenz/` vollständig und mit mindestens einer Tabelle gepflegt.
002. Hero-SVG und Content-SVG im Post-Ordner und unter `htdocs/images/blog/2026-01-01-agentic-ralph-loop-konvergenz/` vorhanden.
003. Route `/blog/agentic-ralph-loop-konvergenz` in `config/routing/routes-project-config.php` eingetragen.
004. Translation-Dateien unter `translation/de/blog/` und `translation/en/blog/` mit passender `seo_description`.
005. Homescreen listet den Beitrag über `ScreenHome001BuildHomeScreenResponseService` automatisch.
006. `curl http://localhost:{PORT}/blog/agentic-ralph-loop-konvergenz` liefert HTTP 200.
Erweiterte FAQ und Takeaway (Teil 8)
Wie vermeide ich stille Fallbacks?
Regelwerk `020-no-fallbacks-no-defaults.mdc` und Skill `@skill-no-fallbacks-no-defaults`: fehlende Pflichtwerte müssen sichtbar werden, nicht mit `??` oder erfundenen Defaults gefüllt werden.
Was ist mit Vendor-only-Code?
Host-Duplikate sind verboten; `subagent-check-vendor-duplicates` und `@skill-vendor-only-files` sichern, dass Logik im Vendor bleibt, wenn sie dort bereits existiert.
Wie halte ich Translations synchron?
Nach DE-Änderungen sofort EN (und weitere Sprachen) nachziehen; `@skill-translations` und `subagent-check-translations` prüfen Keys und Twig-Pfade.
| Merksatz | Bedeutung für agentic ralph loop konvergenz |
|---|---|
| Briefing-First | Spec vor Code, immer |
| Ralph-Loop | Konvergenz statt „fertig“-Behauptung |
| curl + PHPUnit | Beweis statt Chat-Grün |
| Keine Emojis | Professioneller Ton in Code und UI |
agentic ralph loop konvergenz skaliert nur mit versionierter Steuerung: Rules setzen Grenzen, Skills liefern Verfahren, Subagents führen aus. Wer jeden Schritt mit Briefing, curl und PHPUnit belegt, ersetzt Chat-Hoffnung durch deploybare Qualität. Der Beitrag `/blog/agentic-ralph-loop-konvergenz` ist Teil dieser Serie – vertiefend, referenzierbar und auf Hardcore-Developer-Niveau formuliert.
Vertiefung: Ralph-Loop – wenn ein Agent konvergiert statt „fertig“ zu sagen im Projektalltag
In unserem Repository ist agentic ralph loop konvergenz kein abstraktes Konzept, sondern Teil der täglichen Agent-Arbeit unter `briefing/`, `cursor-rules/` und den `start-vendor-*`-Workflows. Wer agentic ralph loop konvergenz ernst nimmt, dokumentiert zuerst die Spezifikation, setzt danach Orchestrator, Services und Screens um und schließt mit `curl` sowie PHPUnit ab. Diese Kette verhindert, dass die KI nur im Chat Fortschritt simuliert, während Routing, Translations oder Briefings veraltet bleiben.
Konkret bedeutet das: Jede Änderung an Screens oder CLI-Skripten startet mit dem passenden Briefing unter `briefing/screens/` bzw. `briefing/CLIOrchestrator/`. Subagents wie `subagent-check-screens`, `subagent-check-orchestrator` oder `subagent-check-translations` prüfen Schicht für Schicht. Der Ralph-Loop (`RALPH_LOOP_CHANGED_FILES`, `RALPH_LOOP_CHANGED_FILE_LIST`) macht Konvergenz maschinenlesbar – rot bleibt rot, bis der Ist-Stand dem Briefing entspricht.
Entscheidungshilfe: Wann welcher Hebel?
| Situation | Empfohlener Hebel | Erwartetes Ergebnis |
|---|---|---|
| Wiederholter Architekturfehler | Rule in `cursor-rules/rules/` | Modell hält Grenze dauerhaft ein |
| Komplexer mehrstufiger Ablauf | Skill `@skill-*` + Subagent | Checkliste statt Einmal-Prompt |
| Großes Feature mit mehreren Screens | `features/` + `start-vendor-feature.php` | Checkpoints bis deploybar |
| Einzelner Screen rot (curl 500) | `subagent-fix-fehler-und-test` | HTTP 200 + grüne Tests |
| Unklare Spec | Briefing-First in `briefing/` | Keine erfundenen Defaults im Code |
Architektur- und Review-Perspektive (Teil 2)
Teams, die agentic ralph loop konvergenz produktiv nutzen, behandeln Agent-Output wie menschlichen Code: Pull Request, Diff-Review, PHPUnit, curl. In PHP-Projekten mit strikter Schichtung (Screen → Orchestrator → ScreenServices → Repositories) darf die KI keine Abkürzungen einbauen – weder direkte Repository-Aufrufe im Screen noch Legacy-Ordner `src/Orchestrator/` ohne Freigabe in `briefing.md`. `@skill-screen-php-layer` und `@skill-orchestrators` definieren diese Grenzen; Subagents setzen sie durch.
| Review-Fokus | Prüffrage | Typischer Subagent |
|---|---|---|
| Screen-Schicht | Ruft PHP nur den Orchestrator auf? | `subagent-check-screens` |
| Orchestrator | Steps nummeriert, Briefing-Sync? | `subagent-check-orchestrator` |
| Services | Kein try-catch, keine array-Returns? | `subagent-check-services` |
| Repositories | SQL-Logging, Indizes, PHPDoc UI-Nutzung? | `subagent-check-repos` |
| Translations | Keys in Twig korrekt? | `subagent-check-translations` |
Betrieb, Logs und Nachvollziehbarkeit (Teil 3)
Agentic Engineering ohne Logs ist Blindflug. CLI-Workflows schreiben strukturierte Terminal-Ausgabe gemäß `006-cli-console-colors.mdc`; Live-SQL unter `logs-live-sql/` dokumentiert UI-Bezug pro Query. Bei Blogposts und Screens gilt: Nach jeder Template- oder PHP-Änderung `curl http://localhost:{PORT}/blog/agentic-ralph-loop-konvergenz` bis HTTP 200. Fehler-HTML analysieren, beheben, erneut prüfen – Regel 051 in `001-ki-behavior.mdc`.
Praxis-Checkliste vor Freigabe
001. Markdown unter `briefing/blog/blogposts/2026-01-01-agentic-ralph-loop-konvergenz/` vollständig und mit mindestens einer Tabelle gepflegt.
002. Hero-SVG und Content-SVG im Post-Ordner und unter `htdocs/images/blog/2026-01-01-agentic-ralph-loop-konvergenz/` vorhanden.
003. Route `/blog/agentic-ralph-loop-konvergenz` in `config/routing/routes-project-config.php` eingetragen.
004. Translation-Dateien unter `translation/de/blog/` und `translation/en/blog/` mit passender `seo_description`.
005. Homescreen listet den Beitrag über `ScreenHome001BuildHomeScreenResponseService` automatisch.
006. `curl http://localhost:{PORT}/blog/agentic-ralph-loop-konvergenz` liefert HTTP 200.
Erweiterte FAQ und Takeaway (Teil 4)
Wie vermeide ich stille Fallbacks?
Regelwerk `020-no-fallbacks-no-defaults.mdc` und Skill `@skill-no-fallbacks-no-defaults`: fehlende Pflichtwerte müssen sichtbar werden, nicht mit `??` oder erfundenen Defaults gefüllt werden.
Was ist mit Vendor-only-Code?
Host-Duplikate sind verboten; `subagent-check-vendor-duplicates` und `@skill-vendor-only-files` sichern, dass Logik im Vendor bleibt, wenn sie dort bereits existiert.
Wie halte ich Translations synchron?
Nach DE-Änderungen sofort EN (und weitere Sprachen) nachziehen; `@skill-translations` und `subagent-check-translations` prüfen Keys und Twig-Pfade.
| Merksatz | Bedeutung für agentic ralph loop konvergenz |
|---|---|
| Briefing-First | Spec vor Code, immer |
| Ralph-Loop | Konvergenz statt „fertig“-Behauptung |
| curl + PHPUnit | Beweis statt Chat-Grün |
| Keine Emojis | Professioneller Ton in Code und UI |
agentic ralph loop konvergenz skaliert nur mit versionierter Steuerung: Rules setzen Grenzen, Skills liefern Verfahren, Subagents führen aus. Wer jeden Schritt mit Briefing, curl und PHPUnit belegt, ersetzt Chat-Hoffnung durch deploybare Qualität. Der Beitrag `/blog/agentic-ralph-loop-konvergenz` ist Teil dieser Serie – vertiefend, referenzierbar und auf Hardcore-Developer-Niveau formuliert.