Zum Inhalt springen

Vorlage fürs Team

Regeln für KI-Agenten im Team: Vorlage für CLAUDE.md und AGENTS.md

Regeln für KI-Coding-Agenten (Claude Code, Codex, Cursor, Copilot) halten nur, wenn eine Einstellung, ein Hook, CI oder ein Test sie durchsetzt, nicht ein Satz in CLAUDE.md. Die Vorlage unten hat acht Verbote samt dem, was jedes stoppt, Einstellungsmuster zum Kopieren und ein Arbeitsblatt, das Ihr Team in 45 Minuten ausfüllt.

Herunterladenpdf

Was Sie ausfüllen und abhaken, bleibt nur in diesem Browserfenster. Wir speichern und senden nichts. Nach dem Schließen ist es weg, drucken Sie Ihr Ergebnis also aus.

Für CTOs, Tech-Leads und Entwickler. Ihr Team nutzt bereits Claude Code, Codex, Cursor oder Copilot. Bisher arbeitet jeder nach eigenen Regeln. Diese Vorlage macht daraus eine gemeinsame Ebene.

KI schreibt heute unseren gesamten Code. Für das Ergebnis bürgt ein Senior-Entwickler. Seit 2023 haben wir 15+ Produktionsprojekte ausgeliefert. Diesen Rahmen nutzen wir dabei.

1. Warum Textregeln nicht reichen

Sie verbieten dem Agenten, eine Datei zu öffnen. Er öffnet sie nicht. Er schreibt sich ein Skript, das den Inhalt ausgibt.

Das ist keine böse Absicht. Der Agent hat eine Aufgabe und sucht Wege. Ein Satz im Prompt ist für ihn ein Hindernis, keine Mauer. Jede Regel unten enthält eine Spalte, die den meisten „KI-Richtlinien“ fehlt. Sie zeigt, was ihn wirklich stoppt.

EbeneWas das bedeutetStärke
Nur ein SatzRegel in CLAUDE.md oder AGENTS.md. Der Agent hält sich meistens daran.am schwächsten
Einstellung oder HookDer Befehl stoppt, bevor er startet.mittel
CIÄnderungen erreichen den Main-Branch erst bei grünem Gate.stark
Lint oder TestDer Build bricht ab mit Fehlermeldung. Der Agent liest sie und repariert selbst.am stärksten

Wurde eine Regel zweimal gebrochen, reicht ein reiner Satz nicht mehr. Stufen Sie diese Regel eine Ebene höher.

2. Acht Dinge, die der Agent nicht darf

#Der Agent darf nichtWarumWas ihn stoppt
1Zur Produktionsdatenbank verbindenFalsche Abfragen auf Produktion lassen sich nicht rückgängig machen. Für Diagnosen reicht ein Read-only-Replikat oder Log-Export.Einstellung (Verbot) + getrennte Zugangsdaten
2Secrets lesen (.env, Schlüssel, Token)Was der Agent liest, landet im Kontext, in Logs und manchmal im Commit.Einstellung + Secrets außerhalb des Repositories
3Produktionszugänge zur Cloud nutzenGleicher Grund wie bei der Datenbank, aber mit größerer Reichweite.Einstellung (Verbot)
4Deployment oder Migration startenWas sich nicht zurückdrehen lässt, läuft zwingend über einen Menschen.Einstellung (Nachfragen) + Umgebungsfreigabe in der CI
5Historie überschreiben oder auf Main pushenForce-Push und reset --hard zerstören unbemerkt fremde Arbeit.Einstellung + Hook + Branch-Schutz auf dem Server
6Den Test schreiben, nach dem Sie ihn bewertenSchreibt der Agent den Test, bestimmt er seine eigene Note.CI-Prüfung + Regel für den Reviewer
7Die eigene Änderung reviewenDasselbe Modell für Code und Prüfung hat dieselben blinden Flecken doppelt.Verbindliche PR-Freigabe durch einen Menschen
8Kundendaten in den Prompt einfügenPersonenbezogene Daten gehören in kein Werkzeug ohne Freigabe.nur ein Satz + Teamabsprache

Beim achten Punkt schreiben wir ehrlich „nur ein Satz“. Mechanisch hält diesen Punkt heute noch kein Werkzeug zuverlässig auf. Eine Regel, die ihre Schwäche zugibt, schlägt jede vorgetäuschte Stärke.

Wie viele Ihrer Regeln sind nur ein Satz? Genau so viele Lücken haben Sie.

3. Wohin welche Regel gehört

Der Agent lädt die Regeldatei bei jedem Start. Je mehr Text er liest, desto schlechter beachtet er das Wesentliche. Deshalb nutzen wir drei Ebenen:

  1. Repository-Root: Kurze CLAUDE.md oder AGENTS.md. Klärt Zweck des Repos, Testbefehle, Verbote und Definition fertiger Arbeit.
  2. Ordner: Modulregeln in einer Datei direkt im jeweiligen Ordner. Der Agent lädt sie erst bei der Arbeit dort.
  3. Lint oder Test: Das Wichtigste. Niemand muss das lesen. Es stoppt fehlerhafte Änderungen automatisch.

Nutzen Sie mehrere Werkzeuge? Pflegen Sie Regeln in AGENTS.md. In CLAUDE.md verweisen Sie mit der Zeile @AGENTS.md darauf. Zwei Kopien driften auseinander, bevor es jemand bemerkt.

Dateistruktur

CLAUDE.md  oder  AGENTS.md    kurz: Repo, Befehle, Links
.claude/
  settings.json               Verbote in maschinenlesbarer Form
  hooks/push-gate.sh          was Einstellungen nicht abdecken
  rules/
    00-never.md               8 Verbote + Spalte „was ihn stoppt“
    10-task.md             was eine Aufgabe braucht, bevor der Agent startet
    20-gates.md               Lint, Typecheck, Tests: blockiert ja/nein
    30-review.md              wer reviewt und was geliefert wird
    90-ownership.md         wer die Regeln besitzt und wie neue entstehen

4. Vorlagen für das Repository

Die Beispiele gelten für Claude Code. Das Prinzip aus Verbot, Hook, CI und Lint gilt für alle Werkzeuge. Nur die Schreibweise unterscheidet sich.

Verbote in den Einstellungen (Punkte 1 bis 5)

{
  "permissions": {
    "deny": [
      "Bash(psql:*)",
      "Bash(git push --force:*)",
      "Bash(git reset --hard:*)",
      "Read(.env.prod*)",
      "Read(**/*.pem)"
    ],
    "ask": [
      "Read(**/.env*)",
      "Bash(npx prisma migrate deploy:*)"
    ]
  }
}

Achtung: Die Regel prüft den Befehlstext, nicht die Absicht. Darf der Agent cat nutzen, umgeht cat .env das Leseverbot. Secrets gehören deshalb außerhalb des Repositories. Skripte laden sie, geben sie aber niemals aus.

Hook gegen Push auf Main (Punkt 5)

#!/bin/bash
# .claude/hooks/push-gate.sh  (PreToolUse, Bash)
# exit 0 = erlauben, exit 2 = stoppen
CMD=$(jq -r '.tool_input.command // empty')
[[ "$CMD" != *"git push"* ]] && exit 0
case "$CMD" in
  *" main"*|*" master"*)
    echo "Push auf Main ist verboten. Eröffnen Sie einen PR." >&2
    exit 2 ;;
esac
exit 0

Zwei typische Fehler setzen den Hook heimlich außer Kraft. Ein || true hinter dem Hook überschreibt Exit 2 zu 0. Ein 2>/dev/null verwirft die Fehlermeldung. Der Agent versteht dann nicht, warum der Befehl scheitert. Testen Sie den Hook einmal unter realen Bedingungen. Aktivieren Sie serverseitigen Branch-Schutz. Der Hook greift schließlich nur dort, wo er auch installiert ist.

Tests und Review (Punkte 6 und 7)

  • Der Test muss zuerst fehlschlagen. Und zwar auf dem Originalcode. Sonst bestätigt der Agent nur sich selbst.
  • Tests aus der Aufgabenstellung genehmigt ein Mensch. Die CI warnt, wenn ein PR Tests und Code gleichzeitig anfasst. Der Reviewer entscheidet.
  • Wer geschrieben hat, reviewt nicht. Starten Sie das Review in einem frischen Kontext, idealerweise mit einem anderen Modell. Es erhält das Diff und Ihre Regeln, keinen Chatverlauf.
  • Die CI muss blockieren. Eine Pipeline, die nur warnt, dient bloß als Dekoration.

5. Woher neue Regeln kommen

Direkt aus dem Review. Ein Kommentar, der zum zweiten Mal fällt, ist kein Entwicklerfehler. Er markiert eine Lücke in Ihren Regeln.

HäufigkeitWas zu tun ist
Erstes MalReparieren und weitermachen
Zweites MalRegel für den Agenten formulieren
Drittes MalLint oder Test schreiben, der das Problem automatisch abfängt

Die Bedingung: Reviews werden im Pull Request dokumentiert, nicht bloß mündlich im Call. Aus mündlichen Gesprächen lässt sich später keine Regel ableiten.

6. Verantwortung und Messung

Regeln ohne festen Verantwortlichen veralten innerhalb weniger Monate. Der Agent befolgt sie weiter, obwohl sie längst ungültig sind. Kopieren Sie folgende Struktur in 90-ownership.md:

Verantwortlicher: [Name]
Neue Regel: PR in .claude/rules/, Freigabe durch den Verantwortlichen.
Bereinigung: erster Montag im Monat, 30 Minuten.
Eskalation: zweimal verletzt -> eine Stufe höher
  nur ein Satz -> Einstellung oder Hook -> CI -> Lint
Monatliche Notiz: Wie viele Regeln noch reiner Satz sind.

Drei Kennzahlen sollten Sie jeden Monat im Blick behalten:

  • Review-Kommentare pro PR. Funktionieren die Regeln, sinkt diese Zahl kontinuierlich.
  • Wie oft ein Gate die Änderung gestoppt hat. Und wie oft der Agent sie danach selbst reparierte.
  • Wie viele Regeln noch reine Sätze sind. Das ist Ihr Arbeitsplan für den kommenden Monat.

Messen Sie weder Commit-Zahlen noch Codezeilen. Die KI bläht beides in Sekundenschnelle auf.

7. Arbeitsblatt für das Team (45 Minuten)

Ausdrucken, auf den Tisch legen und gemeinsam ausfüllen.

#Agent niemalsWas setzt es durch? (Satz / Einstellung / CI / Lint)Verantwortlich
1Produktionsdatenbank, nur Replikat oder Export
2Secrets außerhalb des Agentenkontexts
3Produktionszugänge zur Cloud
4Deploy und Migration nur durch Menschen
5Force-Push und Push auf Main
6Test, nach dem wir ihn bewerten
7Review der eigenen Änderung
8Kundendaten im Prompt
9
10

Sie sind fertig, wenn jede Zeile eine klare Durchsetzung und einen Verantwortlichen hat.

Häufige Fragen

Was gehört in CLAUDE.md oder AGENTS.md?
Kurz: was dieses Repo ist, wie die Tests laufen, was der Agent nicht darf und wie fertige Arbeit aussieht. Regeln für ein Modul gehören in eine Datei in dessen Ordner, das Wichtigste in eine Lint-Regel oder einen Test.
Warum hält sich der Agent nicht an die Regel im Prompt?
Der Agent hat eine Aufgabe und sucht einen Weg. Ein Satz im Prompt ist ein Hindernis, keine Mauer: Verbieten Sie ihm eine Datei, schreibt er ein Skript, das sie ausgibt. Deshalb hat jede Regel der Vorlage eine Spalte dafür, was sie wirklich stoppt.
CLAUDE.md oder AGENTS.md?
Nutzt Ihr Team mehrere Tools, halten Sie die Regeln in AGENTS.md und verweisen in CLAUDE.md mit der Zeile @AGENTS.md darauf. Zwei Kopien laufen auseinander, bevor es jemand merkt.
Woher kommen neue Regeln?
Aus dem Review. Ein Kommentar, der zum zweiten Mal fällt, wird eine Regel für den Agenten. Beim dritten Mal schreiben Sie eine Lint-Regel oder einen Test, der es selbst findet.

Wollen Sie Regeln mit jemandem aufsetzen, der täglich damit arbeitet?

Schreiben Sie uns, welche Tools Ihr Team nutzt und was die Agenten falsch machen. Wir melden uns innerhalb von zwei Arbeitstagen und wählen gemeinsam, was wir zuerst lösen.