AgilConsultants

00

Wer hier spricht

Ich bin Christian Honl. Mein erster Chat mit Claude war am 14. Januar 2026; seit dem 2. April läuft der Git-Nachweis.

Erhoben aus
gemessenem Systemzustand
Messfenster
ab 2026-04-02 bis zum Erhebungstag
Zahlen mit Befehl
Anhang A, [C1]–[C25]
Was offen ist
Abschnitt 06

Seitdem, gemessen statt beschrieben (Stand 29.09.2026): 6.517 Commits in 7 Repositories [C1]; eine 2,46 GB große Append-only-Falldatenbank, deren 118 Schreibpfad-Trigger einen falschen Schreibvorgang abbrechen, statt ihn zu protokollieren [C6][C7]; 135.014 Provenienz-Zeilen, davon 135.013 mit dem Git-Commit, der sie erzeugt hat [C8]; und 56 benannte Gates, von denen 23 jede Nacht einen bekannt fehlerhaften Eingabewert bekommen und rot werden müssen — 4.721 bewiesen, 186 unbewiesen, 71 defekt, letzter Lauf am 10.09.2026 um 01:59 [C21][C22].

Zwei meiner Monitore stehen heute auf Rot. Sie stehen auf dieser Seite, in Abschnitt 06 — die Restore-Probe ist seit dem 1. August rot [C20].

Ich habe diesen Code nicht selbst getippt. Ich habe Claude orchestriert; meine Arbeit war Architektur, Urteil und Zurückweisung. Der Kunde war ein echter familienrechtlicher Fall — selbst akquiriert, unbezahlt — und die Frist war ein Gericht. Jede Zahl auf dieser Seite trägt entweder den lesenden Befehl, der sie erzeugt, oder das Dokument, aus dem sie stammt — und sagt, welches von beidem. Auch die Zahlen, die rot sind.

Am Ende muss das System liefern. Versprechen sind keine Option.

Cockpit erreichbar 200 gelesen 2026-08-23 14:05Gates zuletzt bewiesen 02:03 gelesen 2026-08-23 02:03älteste Arbeitssitzung auf dem Server offen seit 4 d 12 h gelesen 2026-08-23 14:07Beispieldaten — keine Live-MessungRot-Liste in dieser Messung nicht gemeldet

01

Wie die Zahlen auf dieser Seite zu lesen sind

Vier Regeln, dann die Zahlen. Jede Zahl trägt am Rand entweder den lesenden Befehl, der sie erzeugt, oder das Dokument, aus dem sie stammt — und sagt, welches von beidem. Jede Zahl trägt ihren eigenen Stand (die Kern-Zähler zuletzt gemessen am 10.09.2026), und die Zähler sind append-only — sie stehen also niedriger, als sie es sind, wenn Sie den Befehl ausführen. Wo eine Zahl bei der Prüfung korrigiert wurde, bleibt der alte Wert durchgestrichen stehen. Und was kaputt ist, sagt das in derselben Schriftgröße wie das, was funktioniert.

  • 58 Gates mit Tagesbeweis → 56 benannte / 25 bewiesene Gates
  • 116 Screens → 92 Screens
  • 842 Testdateien → ~636 Testdateien
  • 85 Anreicherungs-Timer → 29–41 Anreicherungs-Timer
  • 13 Modelle → 12 Modelle
  • sechs LifeRadar-Frontends → ein Screen mit sechs Ansichten

Eine interne Prüfung von 49 Aussagen ergab 28 gehalten, 20 überzogen, 1 widerlegt — ich gebe Ihnen lieber dieses Verhältnis als eine Broschüre.

02

Der Bau, gemessen

Das ist das gesamte Messfenster in einer Tabelle, damit es niemand aus Fließtext zusammensuchen muss. Zwei Zeilen tragen ihre Einschränkung in der Zeile selbst, nicht in einer Fußnote — ohne sie würde die Zahl als etwas gelesen, was sie nicht ist.

181 / 159 Kalendertage seit dem ersten Commit am 2026-04-02, 159 davon mit Commits (Stand 29.09.2026)das Messfenster ab 2026-04-02 bis zum Erhebungstag und die verschiedenen Commit-Tage darin; der Anhang trägt die Commit-Zahl, nicht die Tageszahl gemessen · gelesen aus: Dossier §1, Commit-Tage hinter [C1] [C1]

das Messfenster und die Tage darin, an denen ein Commit entstand

6.517 Commits in 7 Repositories (lebende Zahl seit 02.04.2026 — ein eingefrorenes Fenster wäre nicht reproduzierbar, weil Merges ältere Datumsstempel nachtragen) gemessen · [C1] · append-only

der Git-Nachweis über alle Repositories der Familie

~1,17 Mio. / 4.271 Zeilen produktiven Codes in 4.271 Dateien (~1,04 Mio. ohne Duplikate)von Claude unter meiner Anleitung erzeugt; Architektur, Prüfung und Zurückweisung sind meine — orchestriert, nicht getippt gemessen · gelesen aus: 4-Monats-Audit 2026-08-05, ki-nachweis:audit-2026-08-05/umfang_code [C2]

die produktive Codebasis, Duplikate gezählt und abgezogen

13 Produkte in einer Routing-Registry gemessen · [C3] · append-only

was die Routing-Registry als Produkt führt

5.068 / 2.576 Stories in einer Datenbank als einziger Wahrheitsquelle, 2.576 davon fertig gemessen · [C4] · append-only

der Arbeitsstand als Datenbank statt als Markdown

1.041 / 1.079 / 741 nicht fälschbare gegnerische Prüfläufe — Devil 1.041, Rollen-Panel 1.079, Aufräum-Auditor 741 (Stand 29.09.2026) gemessen · [C13] · append-only

Prüfungen, die dort landen, wo der ausführende Agent nicht schreiben kann

101.746 protokollierte Modellaufrufe durch einen einzigen Engpass — 13 Modelle von fünf Anbietern mit Antwort im Protokoll (Anthropic Opus, xAI Grok, Gemini 2.5 Flash, Novita mit DeepSeek/Kimi/GLM/Qwen, Exa; ein 14. Eintrag gemini-3.1-pro-preview: 8 Aufrufe, 0 Antworten), je Aufgabe wählbar; dazu Claude Fable 5.1 als Standardmodell der Werkstatt-Sitzung selbst (Claude Code, kein API-Aufruf, daher nicht im Zähler) — zusammen 14 Modelle gemessen · [C5] · append-only

jeder Modellaufruf seit dem 11. Juni durch einen einzigen Engpass

164 getaktete Läufe im Hintergrund aktiv, 0 fehlgeschlagen — von 256 inventarisierten; 81 weitere werden bei Bedarf gestartet (Stand 29.09.2026) gemessen · [C12]

die getakteten Läufe, die das System jeden Tag selbst fährt

201,86 $ im Register, über 101.746 protokollierte Aufrufedas Register beginnt am 2026-06-11 und enthält keine Pauschal-Abos; 68 % der Zeilen sind geschätzt statt vom Anbieter abgerechnet, das sind 98 % des Dollar-Betrags. Das Register ist das Instrument, nicht die Rechnung. gemessen · [C5] · append-only

was das System an Modellkosten selbst protokolliert — ein Engpass, durch den jeder Aufruf muss

Median 33 Commits pro Tag · Spitze 290 · 10,5 verschiedene Stunden der Uhr · 19 % zwischen 22:00 und 06:00 · ein Drittel am Wochenende [C1]

So sieht es aus, ein System um zwei kleine Kinder herum zu bauen.

03

Gates, die rot werden müssen

186 unbewiesen, 71 defekt, 4.721 bewiesen — letzter Lauf am 10. September 2026 um 01:59 [C22]. Jede Nacht bekommt jedes der 25 Gates eine Eingabe, von der das System weiß, dass sie falsch ist, und muss sie zurückweisen. Ein Gate, das seinen eigenen bekannten Fehlerfall nicht mehr fängt, wird gemeldet und nicht unterstellt. Selbst berichtete Prüfung ist keine Prüfung — jeder Lauf landet deshalb in einem Register, in das der ausführende Agent nicht schreiben kann.

Ein frontales Liniendiagramm einer Prüfschranke, deren Arm in Sperrstellung unten steht; ein zurückgewiesenes Objekt steht dahinter.
Markenbild, generiert — keine Fotografie des Systems

Dies gibt die aufgezeichneten Urteile wieder: 23 von 25 aus dem Nachtlauf vom 23.08.2026, 02:03, zwei aus früheren Läufen — das Datum jedes Laufs steht in seiner eigenen Zeile. Es ist eine Wiedergabe, kein Live-Gate; der Befehl, der das Register liest, steht darunter.

behavioral-conformance-gateBLOCKIERT · PROVEN · Exit-Code der Mechanik: 0 ·
canonical-write-path-guardBLOCKIERT · PROVEN · Exit-Code der Mechanik: 0 ·
code-orphan-surfacerBLOCKIERT · PROVEN · Exit-Code der Mechanik: 0 ·
container-isolation-proofBLOCKIERT · PROVEN · Exit-Code der Mechanik: 0 ·
data-boundary-reportBLOCKIERT · PROVEN · Exit-Code der Mechanik: 0 ·
deploy-drift-guardNICHT BLOCKIERT · UNPROVEN · Exit-Code der Mechanik: -1 ·
meta-export-gateBLOCKIERT · PROVEN · Exit-Code der Mechanik: 0 ·
object-type-catalog-gateBLOCKIERT · PROVEN · Exit-Code der Mechanik: 0 ·
object-type-catalog-write-guardBLOCKIERT · PROVEN · Exit-Code der Mechanik: 0 ·
pkg:authority-tierBLOCKIERT · PROVEN · Exit-Code der Mechanik: 0 ·
pkg:confidence-calibration-monitorBLOCKIERT · PROVEN · Exit-Code der Mechanik: 0 ·
pkg:devkit-enginesKEIN SKRIPT · MISSING · zuletzt gesehen:
pkg:entity-data-auditBLOCKIERT · PROVEN · Exit-Code der Mechanik: 0 ·
pkg:object-type-catalog-write-guardBLOCKIERT · PROVEN · Exit-Code der Mechanik: 0 ·
pkg:object-type-instantiateBLOCKIERT · PROVEN · Exit-Code der Mechanik: 0 ·
pkg:over-merge-guardBLOCKIERT · PROVEN · Exit-Code der Mechanik: 0 ·
pkg:schema-catalog-builderBLOCKIERT · PROVEN · Exit-Code der Mechanik: 0 ·
pkg:source-independence-scoreBLOCKIERT · PROVEN · Exit-Code der Mechanik: 0 ·
pkg:survivorship-engineBLOCKIERT · PROVEN · Exit-Code der Mechanik: 0 ·
pkg:survivorship-mergeBLOCKIERT · PROVEN · Exit-Code der Mechanik: 0 ·
provenance-stress-guardsFEHLER DER MECHANIK · BROKEN · Exit-Code der Mechanik: 1 ·
shared-promote-gateBLOCKIERT · PROVEN · Exit-Code der Mechanik: 0 ·
spawn-tenant-isolationBLOCKIERT · PROVEN · Exit-Code der Mechanik: 0 ·
story-status-aqal-trigger-guardBLOCKIERT · PROVEN · Exit-Code der Mechanik: 0 ·
survivorship-resolutionBLOCKIERT · PROVEN · Exit-Code der Mechanik: 0 ·

Der auf einer wiedergegebenen Zeile gedruckte Exit-Code ist der Exit-Code der Prüf-Mechanik aus false_green_runs, nicht der des Gates selbst. BLOCKED ist, was das Gate mit der bekannt schlechten Eingabe gemacht hat; PROVEN ist das Urteil der Mechanik über das Gate.

Unter dem Raster: 56 benannte Gates in einer 97,5 KB großen Doktrin-Datei, 13 davon hart im Done-Pfad, 44 Glieder in der 249-zeiligen Commit-Kette [C21]. 2.449 Read-Set-Attestierungen (Stand 11.09.2026), per SHA-256 bewiesen und nach einer Kontext-Verdichtung absichtlich ungültig gemacht, damit die nächste Änderung mit exit 2 blockiert [C13]. 944 verzeichnete Devil-Läufe im nicht selbst beschreibbaren Register (Stand 11.09.2026) [C13]. Der Nachtlauf: 152 Schritte, 123 ok / 29 markiert / 3 degradiert / 2 blockiert [C19].

warum soll die weich bleiben, dann werden wir nie besser 2026-06-21

In derselben Tabelle wie der Gewinn gemessen: Die Prüfabdeckung geschlossener Arbeit stieg an diesem Tag von ~15 % auf 80–93 %, und der Durchsatz fiel um den Faktor vier. Der Preis steht in derselben Größe wie der Gewinn.

04

Warum es jedes Ding gibt, in der Reihenfolge, in der der Schmerz kam

Sechs Dinge, jedes eingeleitet durch den Moment, in dem es nötig wurde — nicht durch das, was es tut. Mir ist lieber, Sie lernen das Urteil als die Funktionsliste.

Der Fall musste sich selbst tragen.

Mein Anwalt war dauerhaft im Urlaub, verlangte absurde Gebühren und beantwortete meine Fragen nicht. Wenn der, der dafür bezahlt wird, den Fall zu tragen, ihn nicht trägt, muss der Fall sich selbst tragen.

Also wurde die Akte ein System und kein Ordner: jedes Dokument hinein, jeder Fakt mit seiner Herkunft, jede Frist als Datum, und Berichte, die ein Anwalt einreichen kann. Die Herkunft sitzt als Trigger am Schreibpfad, denn ein Fakt ohne nachvollziehbaren Ursprung ist eine Behauptung — und ein Gericht liest das Ergebnis.

die Mechanik

2,46 GB append-only (Stand 29.09.2026) [C6] · 118 RAISE(ABORT)-Trigger am Schreibpfad [C7] · 135.014 Herkunfts-Zeilen, 135.013 davon mit dem Git-SHA (Stand 29.09.2026) [C8] · 87.026 per OCR gelesene Seiten (Stand 29.09.2026); Kosten-Anteile vom 23.08.2026 (Nenner damals 86.846 Seiten): 71.232 (82,0 %) kostenlos, 1.020 needs_human, 954 Werkzeugfehler, 15.288 Modell-Seiten für 14,57 $ [C9]. In derselben Tabelle die lauten Fehler: 954 cli_error, 1.020 needs_human und 23.657 Seiten, die nicht messbar tragen statt eines erfundenen Werts.

Beim Kunden: Es macht sichtbar, welcher kleine Teil den Experten wirklich braucht.

Ein Handbuch ist ein Vorschlag.

Ich habe meine eigenen April-Korrekturen gelesen — 34 Stück, alle mit derselben Aussage: Template nicht wortgetreu befolgt.

Acht lesbare Templates, und jedes davon war ignorierbar. Also verließ der Arbeitsstand die Markdown-Dateien und zog in eine Datenbank, und die Definition of Done hörte auf, Prosa zu sein, und wurde ein Pflichtfeld.

die Mechanik

5.068 Stories mit Pflichtfeldern (Stand 29.09.2026) [C4] · 1.803 Abhängigkeits-Kanten · ein Append-only-Abschlussregister mit 239 Zeilen über 14 benannte Abschlussklassen, mit zwei RAISE(ABORT)-Triggern gegen Update und Delete [C13].

Beim Kunden: sein Tracker, mit gegatetem Abschlusspfad.

Zügel für den Bullen.

Ein Agent, von dem ich glaubte, ich hätte ihn abgeschaltet, übernahm den Kanal meines anderen Agenten und antwortete, als wäre er dieser Agent. Ich merkte es nur, weil der Ton falsch war.

Gerettet hat es, dass es bereits eine Incident-Prozedur gab — alles herunterfahren, sauber neu starten, verifizieren — sodass ich ihn abschalten konnte, statt mit ihm zu diskutieren.

die Mechanik

Seitdem drei nüchterne Sätze, alle als Code statt als Richtlinientext: Nichts sendet von allein an einen Menschen; kein fertig eines Agenten zählt ohne Registereintrag, den er nicht selbst schreiben kann; jede autonome Schleife hat einen Abschaltweg, der nicht von der Schleife abhängt.

Beim Kunden: dieselben drei, erzwungen in seinen Hooks und seiner CI.

Die Brücke.

Das Modell baute eine plausible Version einer Sache, die es nicht verstanden hatte — aus einer Beschreibung, die selbst unvollständig war.

Jeder teure Fehler in diesem Bau führte auf diese Lücke zurück, nicht auf Code. Also wurde die Brücke Mechanik: Vor einem Bau beantworten drei unabhängige Agenten, was der Kanon sagt, was die Realität sagt — gelesen, nie angenommen — und was der Abhängigkeitsgraph sagt.

die Mechanik

2.449 per SHA-256 bewiesene Read-Set-Attestierungen (Stand 11.09.2026) [C13] · 263 Korrektur-Ereignisse, im Median null Tage von das hast du falsch gemacht bis zu einem Gate im Code, längster Weg 49 Tage und genau so protokolliert [C13][C17].

Beim Kunden ist genau das die Arbeit: aus „bau das“ eine Beschreibung machen, der die Realität zustimmt.

Eine Session darf nicht vom Gerät in meiner Hand abhängen.

Ich schob mit einer Hand den Kinderwagen und hielt mit der anderen das Telefon, damit eine Session nicht stirbt.

Also zogen die Sessions auf den Server, dauerhaft hinter einer Identitätsebene am Rand; ein Verbindungsabbruch kostet ein Neuverbinden, keinen Nachmittag. Das Schwere war nicht das Terminal, sondern die Darstellung — Serverausgabe auf einem Telefon sauber lesbar zu machen.

Drei gestrichelte Geräte-Umrisse, hinter denen eine durchgehende orange Linie zu einem Server-Rack läuft: die Geräte brechen, die Linie nicht.
Markenbild, generiert — keine Fotografie des Systems
die Mechanik

4.731 Ereignisse / 310.622 Transkript-Zeilen · xterm 5.5.0, WebGL-Addon 0.18.0, canvas 0.7.0, fit 0.10.0 exakt gepinnt · 16 protokollierte Recherche-Läufe allein zu diesem Stack · ein Upgrade auf xterm 6 geprüft und bewusst verworfen. In derselben Tabelle: es läuft ohne systemd-Unit — kein Auto-Restart.

Beim Kunden: seine Identitätsebene und seine Infrastruktur; ich bringe die Aufbewahrungsregel und die vererbten Policy-Grenzen mit.

Die Veranstaltung, die nirgends stand.

Ich wollte wissen, was an einem Sonntag in der Stadt los ist. An diesem Abend gab es eine große Veranstaltung, die nirgends verzeichnet war.

Der echte Kalender einer Stadt steht nicht im Index — deshalb liest dieses Ding Originale und behält die Herkunft dessen, was es gefunden hat, statt einen Eintrag nachzuerzählen.

die Mechanik

303 Orte in 20+ Städten · 1.055 Bilder · SHA-256-Dedup in osint_events · jede Ausstattung mit eigener Quelle und Konfidenz, sodass der Screen Pool bestätigt oder Angaben unvollständig sagt. In derselben Tabelle ehrlich gehalten: Eine Story verzeichnet noch hart kodierte Herkunft und verifiziert ohne Verifikation auf der Datenachse — genau der Fehler, den dieses Produkt vermeiden soll, aufgeschrieben statt still geschlossen.

Beim Kunden: dasselbe Muster Lesen → Prüfen → Herkunft für jeden Katalog auf unzuverlässigen Lieferantendaten.

05

Die Zügel

Hereingeholt hat mich der Hype um autonome Agenten. Beim Bauen habe ich das Gegenteil gelernt: Um aus einem autonomen Modell das Beste zu holen, braucht es straffe Zügel, keine lose Hand. Auf dem Bullen zu reiten ist der Punkt — die Zügel machen es möglich.

Eine flache Objektstudie von Zügeln und Trensengebiss, zur Ansicht ausgelegt, ein Riemen in Orange hervorgehoben.
Markenbild, generiert — keine Fotografie des Systems
Das AgilConsultants-Murmeltier in Lederjacke, halb aus einem Gully, das die Straße beobachtet.

Die stehende Grenze: ein einzelner Betreiber, kein Vier-Augen-Prinzip, kein zentrales Zugriffs-Auditlog.

  • Nichts sendet von allein an einen Menschen — eine hart kodierte Allowlist, kein Review-Kommentar.
  • Jede autonome Schleife hat einen Abschaltweg, der nicht von der Schleife abhängt.
  • Kein fertig zählt ohne Registereintrag, den der Agent nicht selbst schreiben kann.
  • Ausgaben fremder Werkzeuge gelten als nicht vertrauenswürdig und werden nie ausgeführt.
  • Geheimnisse nur über .env, mit einem Scanner in jedem Commit.
  • Umgehungen werden gezählt, nicht verboten — 43 von 43 --no-verify-Umgehungen aufgelöst; das Register blockiert nicht die Umgehung, es blockiert den nächsten Commit [C13].
Zwölf Haarlinien unterschiedlicher Länge; drei mit einem schwereren Strich durchgestrichen, zwei enden im Nichts.
Markenbild, generiert — keine Fotografie des Systems

06

Was offen ist, und was fehlgeschlagen ist

Dieser Abschnitt hat dieselbe Schriftgröße, dieselben Zeilen und dieselben Befehle wie Abschnitt 02 — und er steht vor meinem Lebenslauf. Er ist live: Er wird aus derselben Messung gespeist wie die Leiste im Kopf. Wenn die Restore-Probe grün wird, steht das hier. Bis dahin steht hier das.

Beispieldaten — keine Live-Messung

  • DR-Restore-Probe rot, ExecMainStatus=1 — das Backup existiert, der Restore ist derzeit nicht bewiesen [C20].
  • Litestream-Staleness-Monitor in ALERT, Replica-WAL-Zeitstempel nicht lesbar [C20].
  • Der 19 GB große Rechtskorpus ist aus der Live-Replikation gefallen, nur noch ein wöchentlicher S3-Snapshot, der letzte vom 2026-08-16.
  • 95 Timer aktiviert, aber tot [C12].
  • Evals: 5 Fälle, nicht eingeplant; kein Modell-Tracing, keine Span-Bäume, keine Prompt-Versionierung.
  • OpenTimestamps: 0 von 72 Ankern nachgeprüft — ausgewiesen als verankert, nicht nachgeprüft.
  • Die Content- und Video-Strecke ruht; der Renderer scheiterte 4 von 4 Nächten und meldete dabei exit 0 — ein stiller Fehler in genau der Strecke, die laut zu scheitern verspricht, und die eine Aussage, die die interne Prüfung glatt widerlegt hat. Sie steht deshalb hier.
  • Investments stehen still, mit zwei offenen Backtest-Fehlern, die ich in meinem eigenen Code gefunden habe.
  • 560 Einträge im Wiederverwendungs-Register ohne passende Bestätigung [C24].
  • Mandanten-Isolation nur auf Resolver-Ebene; 564 Dateien tragen noch den alten Pfad der geteilten Datenbank.
  • 4 von 7 Repos haben keine Commit-Hook-Kette, 30 von 51 Gates laufen nur auf meiner Maschine — der Portabilitäts-Engpass.
  • Ein einzelner Betreiber, kein Vier-Augen-Prinzip; tx_to wird nie gesetzt, das Schema ist also bitemporal und die Nutzung nicht.

07

Wohin die Daten gehen

Das ist meist die erste Frage, deshalb steht sie auf der Seite und nicht im Gespräch. Am 23. August lief meine eigene Recherche-Maschine gegen meine eigene Konfiguration und fand vier Dinge. Sie sollen sie hier lesen und nicht später finden.

Was das System tut

  • Zwecktypisierte Auslieferung mit Default-Deny an der Auslieferungsgrenze.
  • Code-Namen statt Namen Dritter in jeder Ausgabe.
  • Eine Bereinigung personenbezogener Daten auf dem Auslieferungspfad.
  • IBAN-Schwärzung über 21 Importer.
  • Löschmarkierung statt DELETE.
  • Ein Lizenzregister je Quelle.
  • Ein Löschprotokoll nach Artikel 17 in WORM-Speicher.
  • Nachweise zu Privacy by Design nach Artikel 25, erzeugt aus dem Live-Zustand.
  • Ein gegen SSRF abgesicherter Fetch.
  • HMAC-signiertes SSO, das ohne sein Geheimnis sicher fehlschlägt.
  • Cloudflare-Tunnel statt offener Ports.
  • Und die hart kodierte Regel, dass keine E-Mail und keine Nachricht ohne Menschen hinausgeht.

Die vier Funde vom 2026-08-23

Ein regionaler Endpunkt ist keine Zusicherung der Datenresidenz. Mein eigenes System lief auf europe-west4. EU-Residenz verlangt den EU-Multi-Region-Endpunkt mit Private Service Connect. Die Fix-Story US-LEGAL-VERTEX-EU-MULTIREGION-ENDPOINT-DATENRESIDENZ-01 ist offen.
Zero Data Retention gilt je Organisation und vererbt sich nicht. Es hat echte Kanten, deshalb ist ein Löschkonzept, das auf „30 Tage“ geschrieben ist, falsch.
Wer Auftragsverarbeiter ist, hängt am Beschaffungsweg. Der Auftragsverarbeitungsvertrag reicht nicht über ihn hinweg. Nie beide Wege mischen, ohne beide zu dokumentieren.
Zertifizierungen, vorhanden und fehlend. Vorhanden: SOC 2 Type 2 (2025), CSA STAR L2, SOC 3, ISO 27001 (2025), ISO 42001 (2025), NIST 800-171r3. Fehlend: ISO 27017, ISO 27018, ISO 27701, TISAX, PCI DSS, BSI C5.

Stand 2026-08-23, mit der Anweisung, vor einem Vertragsschluss neu zu prüfen und sich nicht auf diese Seite zu verlassen.

08

Beim Kunden liefere ich mit Ihrem Stack

Die ehrliche Aufstellung Komponente für Komponente: was ich hier benutze, was nicht, und wonach ich auf Ihrer Seite des Tisches greifen würde. Eigenes habe ich dort gebaut, wo das offizielle Teil noch nicht existierte oder nicht tief genug ging; das offizielle Teil übernehme ich an der sichtbaren Kante, als dünne Hülle, nie als Nachbau.

seitlich scrollbar
KomponenteHeute im Einsatz?Was ich beim Kunden nutze
Claude CodejaDasselbe — das Liefermittel.
wo, und warum oder warum nicht

Wo 49 Kommandos, 26 parallele Worktrees

Warum oder warum nicht Das ganze System ist darin gebaut.

HooksjaDasselbe, plus die Git-Kette.
wo, und warum oder warum nicht

Wo 20 + 18 Dateien, 5 registrierte Ereignisse, PreToolUse blockiert mit exit 2

Warum oder warum nicht Die Hook-Oberfläche ist der Ort, an dem die Disziplin wirklich landet, bevor die Arbeit existiert.

Skills im offiziellen FormatjaKundendoktrin als Skills, nicht als Wiki-Seite, die niemand öffnet.
wo, und warum oder warum nicht

Wo 49 + 41 Dateien

Warum oder warum nicht Doktrin, die das Modell laden muss, ist ein Skill, kein README.

Sub-AgentenjaDasselbe, mit Widerlegung als Grundhaltung.
wo, und warum oder warum nicht

Wo 944 / 806 / 664 verzeichnete Läufe (Stand 11.09.2026)

Warum oder warum nicht Gegnerische Prüfung durch einen frischen Agenten ist hier die wertvollste Technik.

Messages APIjaDasselbe SDK, unverändert.
wo, und warum oder warum nicht

Wo @anthropic-ai/sdk ^0.96.0

Warum oder warum nicht Direkte Kontrolle über die Kostenzuordnung je Aufruf.

Tool Use und strukturierte AusgabenteilweiseTool Use, wie die API es anbietet; mein Schema-Gate schrumpft zur Prüfschicht.
wo, und warum oder warum nicht

Wo Eigener JSON-Schema-Abbruch

Warum oder warum nicht Im Code als Abweichung dokumentiert, weil es kein response_format gab.

Prompt CachingteilweisePrompt Caching überall als Voreinstellung.
wo, und warum oder warum nicht

Wo Nur auf dem TypeScript-Pfad

Warum oder warum nicht Der größte unangetastete Kostenhebel, und ich habe ihn liegen lassen.

Batch APIteilweiseBatches überall dort, wo die Aufgabe wirklich offline ist.
wo, und warum oder warum nicht

Wo Adapter auf NotImplementedError('wave 2')

Warum oder warum nicht Der Nachtlauf ist latenzgebunden; Batching hilft den Kosten und schadet genau dieser Schleife.

Files APIneinFiles API für gewöhnliche Dokument-Abläufe.
wo, und warum oder warum nicht

Wo —

Warum oder warum nicht Dokumente kommen über S3 mit WORM-Triggern und einer Herkunftskette.

MCPgenutzt, nicht selbst geschriebenMCP-Server schreiben — die sichtbare Kante, die die Sprache des Kunden spricht.
wo, und warum oder warum nicht

Wo Zwei konfigurierte Server

Warum oder warum nicht Ein privater Engpass ist richtig für einen Betreiber und falsch für einen Kunden, der eine prüfbare Werkzeuggrenze braucht.

Agent SDKneinAgent SDK beim Kunden, mit meinen Gate-Mustern als dünnen Hüllen.
wo, und warum oder warum nicht

Wo —

Warum oder warum nicht Mein Orchestrator und seine Register sind älter; ich portiere lieber ein Muster als eine Codebasis.

Claude auf Vertex / BedrockteilweiseBeides, je nach Beschaffungsweg des Kunden.
wo, und warum oder warum nicht

Wo Vertex im Router; Bedrock nicht

Warum oder warum nicht Wegen des EU-Arguments gewählt — und Abschnitt 07 ist die Stelle, an der sich diese Wahl als falsch erwies.

Extended ThinkingteilweiseExtended Thinking mit explizitem Budget und Kostenzuordnung.
wo, und warum oder warum nicht

Wo Denk-Tokens werden ins Register gezählt

Warum oder warum nicht Eingesetzt, wo es sich lohnt, nie stillschweigend: ungezählte Denk-Tokens sind eine echte Rechnung.

Abweichungen, die ich heute zurücknehmen würde

  • Ad-hoc-HTTP-Routing statt MCP-Werkzeugverträgen — meine Werkzeuggrenze ist privat und undokumentiert.
  • Mein eigenes hartes Gate für strukturierte Ausgaben statt Tool Use der API — es sollte zu einer Prüfschicht schrumpfen.
  • Meine eigenen Rollen-Panels statt Sub-Agenten des Agent SDK — der Personen-Entwurf ist es wert, der Unterbau darunter wohl nicht meiner zu pflegen.
  • Prompt Caching nur auf dem TypeScript-Pfad — der Router lässt den größten Kostenhebel ungenutzt.
  • Der Batch-API-Adapter auf „Welle 2“ — die nicht latenzgebundenen Nachtschritte gehören in Batches.

09

Die zwei Jahrzehnte, die der Bau-Nachweis nicht zeigt

Alles darüber ist ein Mensch und ein Modell. Das hier sind die anderen zwanzig Jahre — und der einzige Teil dieser Seite, den Sie nicht vom Terminal aus prüfen können: Er trägt keine Befehle, nur Referenzen auf Anfrage.

  • 2018–2020Deutsche Bahn RIS Mobil, 45+ Personen — Scrum Master zweier Teams auf dem Weg zur Selbstorganisation, ein drittes Team und ein DevOps-Team eingestellt und aufgebaut, agiler Prozess an Hochsicherheits-Anforderungen angepasst, die App bundesweit im Einsatz.
  • 2017–2018Deutsche Bahn RIS Fahrzeug, 20+ Personen, drei Teams, Produktmanagement aufgebaut.
  • 2015–2016Tourismus-Go-live, 70+ Personen, live nach acht Jahren Entwicklung.
  • 2014–2015Öffentliche Verwaltung, 100+ Personen, acht agile Teams auf dem Weg zu zwölf, wo LeSS an seine Grenze kam; die Skalierung Richtung SAFe vorbereitet und das visuelle Zentrum aufgebaut.
  • 2009–2013Commerzbank, 50+ Personen — als Senior-Entwickler gestartet, das V-Modell als zu kundenfern empfunden, als Scrum Master vier agile Teams aufgebaut und dabei die Frontend-Erneuerung geführt.
  • 2005–2009Dresdner Kleinwort Wasserstein / Dresdner Bank — den Web-Limitprüfungs-Dienst eingeführt, der Risikolimits beim Geschäftsabschluss prüft.
  • 2002–2005Duales Studium, Diplomarbeit über evolutionäre Algorithmen, Note 1,0 — dort begann das Interesse an Suche über unbegrenzten Lösungsräumen.
  • 2021–2026Elternzeit, zwei kleine Töchter, Agile Disruption geschrieben (2024, 41 Seiten, 10 Kapitel), die Ausbildung in systemischer Aufstellungsarbeit abgeschlossen.
  • seit 2016Geschäftsführer von AgilConsultants.

Die Brücke vom Buch ins System

  • Idioten-Index → Frage 3 des Sieben-Fragen-Entscheidungsfilters
  • jede Anforderung trägt einen Namen, der sie verteidigt → 49 datierte Zitatstellen in der Doktrin-Datei, 56 von 62 destillierten Prinzipien wörtlich
  • löschen, bis du 10 % zurückholen musst → ein Backlog-Schnitt von 26,8 % mit Append-only-Abschlussregister und --reopen-Pfad
  • zuletzt automatisieren → ein Gate geht SOFT, wird durch Mutation bewiesen, dann HART, dann getaktet — nie direkt in die Automatisierung

Die Zeit, allein mit einem Modell zu bauen, war kein Rückzug aus Teams — sie war der schnellste Weg, den Stoff zu lernen, den ich jetzt in eines zurücktragen will.

Vor 2016 — Engagements, die ich auf Anfrage benennen kann

  • Go AgilEine agile Transition als Programm geführt, nicht als Schulung.
  • Scale AgileSkalierung über den Punkt hinaus, an dem ein Framework nicht mehr passte.
  • Bug Fixing MarathonEin befristeter Stoß gegen einen Fehler-Rückstand, täglich gemessen.
  • Sex IT UpEine interne IT-Abteilung so aufstellen, dass die eigenen Kollegen mit ihr arbeiten wollten.

10

Prüfen Sie es selbst — und was ich nicht herausgebe

Mir ist lieber, Sie fassen das System an, als dass Sie darüber lesen. Die Absage steht zuerst, weil sie der Teil ist, der Urteil gekostet hat: Meine eigene Sicherheitsprüfung hat meinen ersten Entwurf dieses Abschnitts durchfallen lassen — ein einfacher Terminal-Login auf dem Produktionshost wäre eine Shell als der datenbank-besitzende Benutzer gewesen. Also: keine Shell auf dem Produktionshost, niemals.

Drei Angebote, aufsteigend im Aufwand, jedes mit seiner Grenze zuerst

von meiner Seite der Wand ausEin aufgezeichneter Durchgang von 10 Minuten und eine 30-minütige Live-Bildschirmfreigabe. sofort verfügbar
kein Fallinhalt, keine persönlichen Zitate, über die volle Historie auf Geheimnisse und vor der Übergabe auf personenbezogene Daten geprüftEin bereinigtes, nur lesbares Repository — Gates, Hooks, Doktrin, die Mutations-Mechanik. innerhalb weniger Tage
nicht mein Produktionshost, nicht meine Identitätstür; ein nicht privilegierter Benutzer, Transkript-Aufbewahrung aus, ein hartes AblaufdatumEine eigene Prüf-Sandbox auf einem Wegwerf-Server mit einer synthetischen, nur per DDL erzeugten Mandanten-Datenbank (prove-isolation=0 [C14]). geplante Arbeit, kein Schalter

Drei Durchgangs-Spuren

Problem → Stories → Klickdummy → DeployDie Vorführung der Geschwindigkeit, kein Produkt, das ich Ihnen verkaufen würde.
Story → Gates → DeploySie nennen ein kleines Feature und sehen die Gates feuern — darunter sehr wahrscheinlich eines, das mich blockiert.
Dokument → Herkunft → BerichtWerfen Sie ein synthetisches Dokument hinein, sehen Sie die Kaskade das teure Modell ablehnen, und klicken Sie dann jeden Satz im Bericht zurück auf die Seite, aus der er stammt.

Kontakt

Schreiben Sie mir und sagen Sie, durch welche der vier Türen Sie gekommen sind. Ich antworte selbst.

[email protected]

Impressum (§ 5 DDG)

Betreiber
AgilConsultants
Anschrift
Höhestrasse 48, 61348 Bad Homburg
Vertreten durch
Christian Wolfgang Honl, Geschäftsführer
Register
Amtsgericht Frankfurt am Main, HRB 16085
Umsatzsteuer-ID (§ 27a UStG)
DE298914143
Telefon
+49 (0) 152 / 343 455 61
Verantwortlich für redaktionelle Inhalte (§ 18 MStV)
Christian Wolfgang Honl, Anschrift wie oben

Aus der Seite von 2016 vorbelegt. Jede Zeile oben muss vor der Veröffentlichung verifiziert werden.

Die Live-Elemente dieser Seite sind erstanbieterseitig und nur lesend. Es wird nichts Nicht-Notwendiges gespeichert, kein Cookie gesetzt und kein Dritter kontaktiert — deshalb erscheint kein Einwilligungsbanner. Die Schriften werden von dieser Domain ausgeliefert.

Impressum · Datenschutz