Anthropics undokumentiertes OAuth-Rate-Limit-Pool erfordert Claude Code System-Prompt

Ein Entwickler, der einen LLM-Proxy baute, entdeckte, dass die Ratenlimit-Verarbeitung von Anthropic für OAuth-Tokens vom Inhalt des System-Prompts abhängt, nicht von Headern oder Tokentyp.
Das Problem
Der Entwickler hatte eine funktionierende Einrichtung mit:
- Anthropic SDK mit authToken
- Beta-Headern (claude-code-20250219, oauth-2025-04-20)
- user-agent: claude-cli/2.1.75
- x-app: cli
Haiku funktionierte einwandfrei, aber Sonnet lieferte hartnäckige 429-Ratenlimit-Fehler ohne Retry-After-Header, ohne Ratenlimit-Header, nur "message": "Error". Währenddessen hatte ein KI-Agent (der OpenClaw ausführte) auf demselben Server mit demselben OAuth-Token keine Probleme mit Sonnet 4.6.
Die Lösung
Nach der Untersuchung des Anthropic-Provider-Quellcodes von OpenClaw (@mariozechner/pi-ai) fand der Entwickler diesen Code:
// Für OAuth-Tokens MÜSSEN wir die Claude Code-Identität einbeziehen
if (isOAuthToken) {
params.system = [{
type: "text",
text: "You are Claude Code, Anthropic's official CLI for Claude.",
}];
}
Das Hinzufügen dieser einen Zeile zum Proxy behebt die Sonnet-Ratenlimit-Fehler sofort.
Wie es funktioniert
Die API leitet Anfragen basierend darauf, ob Ihr System-Prompt sich als Claude Code identifiziert, an das Claude Code-Ratenlimit-Pool weiter (das separat und höher ist als das reguläre API-Pool). Dieses Verhalten ist weder in den SDK-Dokumenten noch in den API-Dokumenten beschrieben.
Praktische Lösung
Wenn Sie Anthropic OAuth-Tokens verwenden und mysteriöse 429-Fehler erhalten, fügen Sie "You are Claude Code, Anthropic's official CLI for Claude." zu Ihrem System-Prompt hinzu.
📖 Read the full source: r/ClaudeAI
👀 Siehe auch

Verwendung von Projektberichten zur Aufrechterhaltung des OpenClaw-Kontexts bei Langzeitprojekten
Ein Entwickler teilt eine Technik zur Erstellung von 'Projekt-Narrativen', bei der ein separater OpenClaw-Worker nach Meilensteinen die Codebasis analysiert, um das Systemverständnis zu dokumentieren, Probleme zu identifizieren und den Kontext zu erhalten.

Claude-Kompaktierung Workaround: Verwendung einer Handoff.MD-Datei
Ein Reddit-Nutzer teilt eine praktische Lösung für Claudes "Komprimierungsnachricht" in Gesprächen: Erstellen Sie eine detaillierte handoff.md-Datei, die das Gespräch zusammenfasst, und starten Sie dann eine neue Sitzung mit dieser Datei. Der Beitrag enthält spezifische Schritte zur Verwendung von ChatGPT für die Prompt-Generierung und zum Projektmanagement mit Anweisungen.

Ja Flow/Nein Flow: Eine einfache Technik zur Reduzierung von Kontext-Halluzinationen in KI-Codierungssitzungen
Ein Reddit-Nutzer teilt die Yes-Flow/No-Flow-Technik, um die Konsistenz in KI-Gesprächen zu erhalten, indem er Eingabeaufforderungen umschreibt, anstatt Korrekturen zu stapeln. Dies hilft, Kontextabriss und Halluzinationen während langer Programmier-Sessions zu reduzieren.

Hohe CPU/RAM-Auslastung und Gateway-Neustarts in OpenClaw? IPv6 für Telegram deaktivieren
Wenn Sie in Ihrem Telegram-Bot-Konfiguration autoSelectFamily: false und dnsResultOrder: 'ipv4first' setzen, werden ENETUNREACH-Fehler vermieden, die hohe CPU-Auslastung, Event-Loop-Einfrierungen und Gateway-Neustarts verursachen.