Zum Inhalt springen

Wie es funktioniert

Diese Seite erklärt die Mechanik hinter dem Report: was lokal erfasst wird, was als git note gespeichert wird und wie diese Daten in PR Report und Dashboard landen. Du musst nicht jedes Detail kennen, um Agent Note zu nutzen; hier findest du aber das Modell, wenn etwas unerwartet aussieht.

Wenn die generierten Git-Hooks installiert sind, kannst du in den meisten Repositories einfach weiter git commit und git push verwenden. Cursor stellt Prompt-/Response-Paare auch aus lokalen Transcripts wieder her und kann Commits weiter verfolgen, wenn Git-Hooks nicht verfügbar sind.

Ebene 1: Lokale temporäre Daten

Sitzungsdaten in .git/agentnote/sessions/. JSONL-Dateien für Prompts, Änderungen und Blob-Hashes. Werden nach jedem Commit rotiert. Werden nie gepusht.

Ebene 2: Git Notes

Dauerhafte Aufzeichnung in refs/notes/agentnote. Ein JSON pro Commit. Push-, fetch- und teamfähig.

DateiZweck
prompts.jsonlEin Prompt pro Zeile mit Turn-Nummer
changes.jsonlVon der KI berührte Dateien mit Post-Edit-Blob-Hashes
pre_blobs.jsonlDateistand vor jeder KI-Bearbeitung
heartbeatZeitstempel der Sitzungsaktivität
turnMonotoner Zähler, der bei jedem Prompt erhöht wird
{
"v": 1,
"agent": "claude",
"session_id": "a1b2c3d4-...",
"timestamp": "2026-04-02T10:30:00Z",
"model": "claude-sonnet-4-20250514",
"interactions": [
{
"prompt": "JWT-Auth-Middleware implementieren",
"contexts": [
{ "kind": "reference", "source": "previous_response", "text": "Die vorherige Antwort erklärt, warum diese Middleware geändert werden muss." }
],
"selection": {
"schema": 1,
"source": "primary",
"signals": ["primary_edit_turn"]
},
"response": "Ich erstelle die Middleware...",
"files_touched": ["src/auth.ts"],
"tools": ["Edit"]
}
],
"files": [
{ "path": "src/auth.ts", "by_ai": true },
{ "path": "CHANGELOG.md", "by_ai": false }
],
"attribution": {
"ai_ratio": 73,
"method": "line",
"lines": { "ai_added": 146, "total_added": 200, "deleted": 12 }
}
}

Claude Code

Meist line-level. Agent Note vergleicht den Dateistand vor und nach jedem KI-Edit und zieht spätere menschliche Änderungen wieder vom finalen Diff ab.

Codex CLI

Startet als file-level. Auf line-level wechselt es nur, wenn die Patch-Zahlen im Transcript zum finalen Commit-Diff passen.

Cursor

Startet als file-level. Auf line-level wechselt es nur, wenn die Edit-Zahlen passen und die finale Datei noch dem letzten KI-Edit entspricht.

Gemini CLI

Zeichnet Prompt / Response und file-level Attribution über Hooks und Transcript-Parsing auf. Ein line-level Upgrade gibt es noch nicht.

📝 Context ist ein reiner Anzeigehinweis für kurze Prompts wie “continue” oder “mach den nächsten Schritt”. Er macht den Prompt verständlicher, ohne die Attribution zu ändern.

Agent Note Dashboard showing Context before a short prompt
  • reference context kommt aus der unmittelbar vorherigen Response, wenn sie einen geänderten Dateipfad, Dateinamen oder Code-Bezeichner aus dem finalen Diff erwähnt.
  • scope context kommt aus der aktuellen Response, wenn die ersten Zeilen den Arbeitsumfang klar beschreiben.
  • Agent Note nutzt Zustimmungswörter wie yes, continue oder お願いします nicht als Auswahlregel. Ohne konkreten Datei- oder Code-Hinweis wird Context ausgelassen.
  • Context ändert nie files_touched, prompt ownership, AI Ratio, attribution method oder ob eine git note gespeichert wird.

Agent Note und Entire lösen verwandte, aber unterschiedliche Probleme.

  • Agent Note verbindet git commits mit dem Gespräch mit der KI, das sie erzeugt hat. Entire ist ein breiteres checkpoint product mit rewind / resume workflows.
  • Agent Note speichert den permanenten Record in refs/notes/agentnote; temporäre Session-Dateien bleiben unter .git/agentnote/. Entire stellt checkpoint metadata und eine hosted web application in den Mittelpunkt.
  • Das Agent Note Dashboard ist optionales static GitHub Pages, gestützt auf git notes. Agent Note kann ohne hosted service genutzt werden.
  • Agent Note stellt keinen alten workspace state wieder her. Es optimiert reviewability: warum ein commit geändert wurde, welche prompts beteiligt waren und wie viel diff AI-authored ist.
EreignisWas passiert
SessionStartErstellt das Sitzungsverzeichnis und schreibt den Heartbeat
UserPromptSubmitHängt den Prompt an, erhöht den Turn-Zähler und rotiert Logs
PreToolUse Edit/WriteErfasst synchron den Pre-Edit-Blob-Hash
PostToolUse Edit/WriteErfasst den Post-Edit-Blob-Hash und den Dateipfad
StopProtokolliert das Stop-Ereignis (Heartbeat bleibt aktiv — Stop = Ende der Antwort, nicht Ende der Sitzung)

Git Notes erscheinen nicht in Branch-Listen, in der GitHub-Oberfläche oder in CI — sie sind aber push- und fetchbar.

Terminal-Fenster
# Mit dem Team teilen
git push origin refs/notes/agentnote
# Vom Remote holen
git fetch origin refs/notes/agentnote:refs/notes/agentnote
# Note anzeigen
git notes --ref=agentnote show <commit>