Sicheres Agent Harness fur Claude Code und Codex: Rechte, Prufung und Rollback
Ein praktisches Agent Harness fur Claude Code und Codex mit Policy, Plan, Verifikation und Recovery.
Starke Agenten brauchen ein starkes Gelander
Am Anfang wirkt Claude Code oder Codex wie ein Prompt-Problem. Fur kleine Anderungen stimmt das. Sobald ein Agent aber Deployment, SaaS-APIs, lokale Dateien, Publishing oder E-Mail-Versand beruhrt, wird das eigentliche Problem die Ausfuhrungsstruktur.
Diese Struktur nenne ich Agent Harness: Rechte, Arbeitsplan, Verifikation, Logs und Rollback. Der Agent darf denken und Anderungen vorschlagen, aber nicht beliebige Befehle ohne Kontrolle ausfuhren.
Fur das Grundkonzept hilft zuerst der Harness-Engineering-Guide. Konkrete Risiken finden Sie in Claude Code Security Failure Cases.
User request
|
v
Agent
|
v
[1] Policy layer Erlauben, nachfragen, verbieten
[2] Plan layer Reihenfolge der Schritte
[3] Verification layer Erfolg maschinell prufen
[4] Recovery layer Fehler gezielt zurucknehmen
|
v
Files / shell / SaaS APIs / deploy
Claude Code dokumentiert Settings, Permissions, Hooks und MCP getrennt. Gute Einstiege sind Claude Code settings, Hooks reference und MCP.
Beispiel: Artikel veroffentlichen
Ein Artikel-Publish ist kein einzelner Schritt.
1. Analytics der letzten 7 Tage lesen
2. Thema in der Nahe eines wachsenden Clusters wahlen
3. Bestehende Artikel auf Duplikate prufen
4. Ausgangsartikel schreiben
5. Alle Sprachversionen erstellen
6. Frontmatter, Slug und Links prufen
7. Build ausfuhren
8. Live-URL prufen
9. Commit und Push
Ohne expliziten Plan erledigt der Agent oft den sichtbaren Teil und vergisst Ubersetzungen, Build oder Live-Check.
SaaS: Lesen, Erzeugen und Senden trennen
Wenn ein Agent Firmen recherchiert und Outreach-Mails vorbereitet, sollten die Grenzen klar sein.
| Operation | Automatisch | Grund |
|---|---|---|
| Offentliche Seiten lesen | Ja | Geringes Risiko |
| Lokale CSV speichern | Ja | Prufbar |
| Beispielseite erzeugen | Ja | Vor Veroffentlichung prufbar |
| Mail entwerfen | Ja | Noch nicht gesendet |
| Mail senden | Genehmigung | Externe Wirkung |
Lesen und Entwerfen kann automatisch laufen. Senden, Deployen und Produktionsanderungen brauchen eine Zustimmung.
Policy layer: allow, ask, deny
Eine kleine Policy reicht fur den Start.
{
"allowCommands": [
"npm run build",
"npm run test",
"node scripts/content-trend-report.mjs"
],
"askCommands": [
"git push",
"wrangler pages deploy",
"node scripts/outreach-send-mails.mjs --send"
],
"denyCommands": [
"rm -rf",
"git reset --hard",
"curl * | sh",
"npm publish"
],
"protectedPaths": [
".env",
".env.local",
"claudecode-lab-sheets-f54fc47c68f0.json"
]
}
In Claude Code kann eine Projekteinstellung ahnliche Regeln ausdrucken.
{
"$schema": "https://json.schemastore.org/claude-code-settings.json",
"permissions": {
"allow": [
"Bash(npm run build)",
"Bash(npm run test *)",
"Bash(node scripts/content-trend-report.mjs *)"
],
"ask": [
"Bash(git push *)",
"Bash(wrangler pages deploy *)"
],
"deny": [
"Bash(rm -rf *)",
"Bash(git reset --hard *)",
"Read(./.env)",
"Read(./.env.*)",
"Read(./claudecode-lab-sheets-f54fc47c68f0.json)"
]
}
}
Konkrete Regeln sind besser als Hinweise wie “sei vorsichtig mit Secrets”.
Verification layer: Erfolg als Befehl
Ein Build reicht nicht. Die Live-Seite, AdSense, Analytics und mobile Darstellung sollten gepruft werden.
const url = process.argv[2];
const response = await fetch(url, { redirect: "follow" });
if (!response.ok) {
throw new Error(`Page returned ${response.status}: ${url}`);
}
const html = await response.text();
const checks = [
["title", /<title>.+<\/title>/i],
["description", /<meta name="description"/i],
["adsense", /ca-pub-2125588229998303/i],
["analytics", /G-3YR0LE68MJ/i]
];
for (const [name, pattern] of checks) {
if (!pattern.test(html)) throw new Error(`Missing ${name}`);
}
Bei Code-Artikeln kann Playwright zusatzlich prufen, ob pre, code oder table auf Mobilbreite uberlaufen.
Recovery layer: Anderungen protokollieren
Gefahrlich ist nicht nur der Fehler. Gefahrlich ist ein Fehler ohne Anderungsprotokoll.
{
"runId": "2026-05-19-article-001",
"topic": "agent harness security",
"changedFiles": [
"site/src/content/blog/claude-code-codex-agent-harness-security.mdx"
],
"commands": [
"node scripts/content-trend-report.mjs --days 7",
"npm run build"
],
"status": "deployed"
}
In Git ist gezielte Wiederherstellung sicherer als ein grober Reset.
git status --short
git diff -- site/src/content/blog/target-article.mdx
git revert <bad-commit>
Umsetzungs-Checkliste: vom Ausgangspunkt her denken
Der häufigste mistake ist nicht ein schlechter Prompt. Das Problem entsteht, wenn ein Agent erst nur lesen soll und dann ohne klare Grenze externe Aktionen ausführen darf. Definieren Sie deshalb zuerst den Ausgangspunkt jedes workflow.
Bei Content ist der Ausgangspunkt nicht “der Artikel ist geschrieben”. Er lautet: Die öffentliche URL liefert 200, Analytics und AdSense sind noch vorhanden, und Codeblöcke laufen auf Mobilbreite nicht über. Bei Vertrieb ist der Ausgangspunkt nicht “die E-Mail wurde gesendet”. Er lautet: Firmenliste, Beispielseite und Mailentwurf sind prüfbar. Bei Security-Fixes ist der Ausgangspunkt nicht “Code wurde geändert”. Er lautet: Diff, Tests und Rollback sind sichtbar.
| use case | Zuerst automatisieren | Zustimmung behalten |
|---|---|---|
| Content Ops | Thema, Entwurf, Übersetzung, interne Links, Build | Deploy, git push, Änderungen an Werbe-Tags |
| SaaS-Integration | read-only Suche, CSV, Zusammenfassung, Entwurf | Versand, Löschung, Billing-Änderungen |
| Security Fix | Patch-Vorschlag, Tests, Impact-Notiz | Secrets, Produktion, breitere Rechte |
Der wichtigste pitfall ist die Mischung aus Lesen und Ausführen. Logs, Issues und Webseiten zu lesen ist nützlich. Wenn derselbe Agent aber E-Mails senden, Daten löschen oder Produktion deployen darf, kann eine bösartige Anweisung in einem externen Dokument zur echten Aktion werden. OWASP behandelt Prompt Injection und Excessive Agency im Top 10 for LLM Applications; genau diese risk-Klasse ist für Coding Agents relevant.
Für Claude Code sind die offiziellen Guides zu security und permissions die wichtigste Basis. Für Codex liefert OpenAI mit dem code generation guide den Produktkontext. Innerhalb von ClaudeCodeLab passen Security Failure Cases und Dangerous Prompts als nächste Lektüre.
Fertige Vorlagen und Checklisten liegen unter /products/. Wenn Rechte, CI, Review und Deployment als Team-Workflow eingerichtet werden sollen, ist /training/ der schnellere Einstieg.
Fazit
Agentenqualitat ist nicht nur Prompt-Qualitat. In echten Workflows kommt sie aus dem Harness.
- Policy: erlauben, fragen, blockieren
- Plan: Schritte vor der Ausfuhrung klar machen
- Verification: Erfolg mit Befehlen beweisen
- Recovery: Fehler gezielt reparieren
Claude Code und Codex unterscheiden sich, aber beide brauchen dasselbe Prinzip: einen sicheren Arbeitsweg statt unbegrenzter Ausfuhrungsfreiheit.
Kostenloses PDF: Claude-Code-Cheatsheet
E-Mail eintragen und eine Seite mit Befehlen, Review-Gewohnheiten und sicheren Workflows herunterladen.
Wir schützen Ihre Daten und senden keinen Spam.
Über den Autor
Masa
Engineer für praktische Claude-Code-Workflows und Team-Einführung.
Ähnliche Artikel
Claude-Code-Permission-Receipt: Scope, Beweis und Rollback festhalten
Permission-Receipt für Claude Code: erlaubte Aktionen, Freigabegrenzen, Prüfbefehle, Rollback und Umsatz-CTA-Prüfung.
Claude Code Subagents: Praxisleitfaden für sichere Agent-Delegation
Claude Code Subagents praktisch nutzen: Artikel- und Codearbeit sicher aufteilen, Prompts einsetzen, Fehler vermeiden.
Claude Agent SDK: Claude Code sicher in Apps einbetten
Aktuelles Claude Agent SDK Setup mit Permissions, MCP, Codebeispielen und Produktionsfallen.