Originaltitel: "Den Claude Code Quellcode von Anthropic in einem Artikel verstehen: Warum ist er einfach besser als andere?"
Originalautor: Yuker, KI-Forscher
Am 31. März 2026 entdeckte der Sicherheitsforscher Chaofan Shou, dass im Anthropic npm-Release des Claude Code-Pakets die Source-Map-Datei nicht entfernt wurde.
Das bedeutet, dass der vollständige TypeScript-Quellcode von Claude Code, 512.000 Zeilen, 1903 Dateien, somit im öffentlichen Internet offengelegt wurde.
Natürlich konnte ich unmöglich so viel Code in nur wenigen Stunden durchlesen, also näherte ich mich diesem Quellcode mit drei Fragen:
1. Was ist der grundlegende Unterschied zwischen Claude Code und anderen KI-Programmiertools?
2. Warum "fühlt" sich das Schreiben von Code damit einfach besser an als bei anderen?
3. Was genau verbirgt sich in 510.000 Zeilen Code?
Nach dem Durchlesen war meine erste Reaktion: Das ist nicht nur ein KI-Programmierassistent; das ist ein Betriebssystem.
Stellen Sie sich vor, Sie hätten einen Remote-Programmierer eingestellt und ihm Fernzugriff auf Ihren Computer gegeben.
Wie würden Sie damit umgehen?
Wenn Sie Cursor wären: Sie würden ihn neben sich sitzen lassen, und jedes Mal, wenn er einen Befehl eingeben muss, würden Sie hinsehen und auf "Zulassen" klicken. Es ist unkompliziert, aber Sie müssen ihn ständig im Auge behalten.
Wenn Sie ein GitHub Copilot Agent wären: Sie würden ihm eine brandneue virtuelle Maschine geben, in der er herumspielen kann. Nachdem er fertig ist, reicht er den Code ein, Sie überprüfen ihn und führen ihn dann zusammen. Es ist sicher, aber er kann Ihre lokale Umgebung nicht sehen.
Wenn Sie Claude Code wären:
Sie würden ihn Ihren Computer direkt benutzen lassen – aber Sie haben ihn mit einem extrem ausgeklügelten Sicherheitssystem ausgestattet. Was er tun kann, was er nicht tun kann, welche Aktionen Ihre Zustimmung erfordern, welche er selbstständig ausführen kann, und selbst wenn er rm -rf verwenden möchte, muss dies vor der Ausführung 9 Ebenen der Überprüfung durchlaufen.
Hier sind drei völlig unterschiedliche Sicherheitsphilosophien:

Warum DID Anthropic den schwierigsten Weg gewählt?
Weil nur so die KI mit Ihrem Terminal, Ihrer Umgebung und Ihrer Konfiguration arbeiten kann – das ist es, was "wirklich beim Programmieren helfen" bedeutet, anstatt "ein Stück Code in einem Reinraum zu schreiben und es dann hineinzukopieren".
Aber was sind die Kosten? Sie haben dafür 510.000 Zeilen Code geschrieben.
Die meisten Leute denken, dass KI-Programmiertools so funktionieren:
Benutzereingabe → LLM API aufrufen → Ergebnis erhalten → Dem Benutzer anzeigen
Der tatsächliche Claude Code funktioniert so:
Benutzereingabe
→ Dynamisches Zusammenstellen von 7 Ebenen von System-Prompts
→ Injizieren von Git-Status, Projektkonventionen, historischem Gedächtnis
→ 42 Tools, jedes mit einem Handbuch
→ LLM entscheidet, welches Tool verwendet werden soll
→ 9 Ebenen der Sicherheitsüberprüfung (AST-Parsing, ML-Klassifikatoren, Sandbox-Prüfungen...)
→ Auflösung von Berechtigungskonflikten (lokale Tastatur/IDE/Hook/KI-Klassifikator konkurrieren gleichzeitig)
→ 200ms Anti-Ermüdungsverzögerung
→ Tool ausführen
→ Ergebnisse im Streaming-Modus zurückgeben
→ Nähert sich der Kontext dem Limit? → Dreistufige Komprimierung (Mikrokomprimierung → automatische Komprimierung → vollständige Komprimierung)
→ Parallelität erforderlich? → Einen Schwarm von Sub-Agenten generieren
→ Schleife bis zum Abschluss der Aufgabe
Ich glaube, jeder ist sehr neugierig auf das oben Genannte, aber keine Sorge, lassen Sie uns sie einzeln auspacken.
Öffnen Sie src/constants/prompts.ts, und Sie werden diese Funktion sehen:

Beachten Sie das SYSTEM_PROMPT_DYNAMIC_BOUNDARY?
Dies ist ein Cache-Trennzeichen. Der Inhalt über dem Trennzeichen ist statisch und kann von der Claude API zwischengespeichert werden, um Token-Kosten zu sparen. Der Inhalt unter dem Trennzeichen ist dynamisch – Ihr aktueller Git-Branch, Ihre CLAUDE.md Projektkonfiguration, Ihre zuvor bereitgestellten Präferenzerinnerungen... jede Interaktion ist einzigartig.
Was bedeutet das?
Anthropic behandelt Cue-Wörter wie Compilerausgaben zur Optimierung. Der statische Teil ist das "kompilierte Binärprogramm", und der dynamische Teil sind die "Laufzeitparameter". Die Vorteile dieses Ansatzes sind:
1. Kosteneinsparung: Der statische Teil wird zwischengespeichert, wodurch redundante Gebühren vermieden werden
2. Geschwindigkeit: Cache-Treffer überspringen direkt die Verarbeitung dieser Token
3. Flexibilität: Der dynamische Teil ermöglicht es jeder Interaktion, sich der aktuellen Umgebung bewusst zu sein
Jedes Tool hat sein eigenes "Benutzerhandbuch"
Was noch erstaunlicher ist, ist, dass jedes Tool-Verzeichnis eine prompt.ts-Datei enthält – dies ist ein Benutzerhandbuch, das speziell auf LLM zugeschnitten ist.
Schauen Sie sich das BashTool an (src/tools/BashTool/prompt.ts, etwa 370 Zeilen):

Dies ist kein Dokument für Menschen, es ist ein Verhaltenskodex für KI-Verhalten. Jedes Mal, wenn Claude Code startet, werden diese Regeln in die System-Prompts injiziert.
Deshalb führt Claude Code niemals von sich aus gewaltsam git push --force aus, während einige Tools dies tun könnten – es liegt nicht daran, dass das Modell intelligenter ist, sondern daran, dass die Cues die Regeln bereits buchstabiert haben.
Außerdem unterscheidet sich die interne Version von Anthropic von der, die Sie verwenden
Code hat zahlreiche Zweige wie diesen:

ant bezieht sich auf interne Mitarbeiter von Anthropic. Ihre Version hat detailliertere Richtlinien zum Codestil ("Schreibe keine Kommentare, es sei denn, das WARUM ist nicht offensichtlich"), eine aggressivere Ausgabestrategie ("Inverted Pyramid Writing") und einige experimentelle Funktionen, die sich noch im A/B-Test befinden (Verification Agent, Explore & Plan Agent).
Dies verdeutlicht, dass Anthropic der größte Benutzer von Claude Code ist. Sie verwenden ihr eigenes Produkt, um ihr eigenes Produkt zu entwickeln.
Öffnen Sie src/tools.ts, und Sie werden das Tool-Register sehen:

42 Tools, aber die meisten davon haben Sie noch nie direkt gesehen. Das liegt daran, dass viele Tools verzögert geladen werden – erst wenn LLM sie benötigt, werden sie bei Bedarf über ToolSearchTool injiziert.
Warum wird das gemacht?
Weil für jedes zusätzliche Tool der System-Prompt eine zusätzliche Beschreibung benötigt und das Token mehr Geld ausgeben muss. Wenn Sie nur möchten, dass Claude Code Ihnen hilft, eine Zeile Code zu ändern, muss er nicht den 'Cron Task Scheduler' und 'Team Collaboration Manager' laden.
Es gibt ein noch intelligenteres Design:

Setzen Sie CLAUDE_CODE_SIMPLE=true, und Claude Code bleibt nur mit drei Tools übrig: Bash, Datei lesen, Datei ändern. Dies ist eine Hintertür für Minimalisten.

Achten Sie auf diese Standardwerte: isConcurrencySafe ist standardmäßig false, isReadOnly ist standardmäßig false.
Dies nennt man Fail-Closed-Design – wenn der Autor eines Tools vergisst, die Sicherheitsattribute zu deklarieren, geht das System davon aus, dass es 'unsicher und beschreibbar' ist. Es ist besser, übervorsichtig zu sein, als ein einziges Risiko zu übersehen.

Das FileEditTool prüft, ob Sie diese Datei bereits mit dem FileReadTool gelesen haben. Wenn nicht, wirft es direkt einen Fehler und erlaubt keine Modifikation.
Deshalb wird Claude Code nicht "magisch ein Code-Snippet schreiben, um Ihre Datei zu überschreiben", wie einige Tools – es ist erforderlich, zuerst zu verstehen, bevor man modifiziert.
Jeder, der Claude Code benutzt hat, hat ein Gefühl: Er scheint Sie wirklich zu kennen.
Sie sagen ihm "spotte die Datenbank in Tests nicht", und er wird bei der nächsten Interaktion nicht spotten. Sie sagen ihm "Ich bin Backend-Ingenieur, React-Neuling", und er wird Front-End-Code mit Backend-Analogien erklären.
Dahinter steht ein komplettes Gedächtnissystem.

Claude Code verwendet eine andere KI (Claude Sonnet), um zu bestimmen, "welche Erinnerungen für das aktuelle Gespräch relevant sind"
Kein Keyword-Matching, keine Vektorsuche – er lässt ein kleines Modell schnell alle Gedächtnisdateititel und -beschreibungen scannen, wählt bis zu die 5 relevantesten aus und injiziert dann ihren vollständigen Inhalt in den aktuellen Gesprächskontext.
Die Strategie lautet "Präzision vor Recall" – lieber eine potenziell nützliche Erinnerung verpassen, als eine irrelevante injizieren, die den Kontext verschmutzt.
KAIROS-Modus: Nächtliches "Träumen"
Das ist für mich der Science-Fiction-Teil.
Es gibt ein Feature-Flag im Code namens KAIROS. In diesem Modus werden Erinnerungen aus langen Gesprächen nicht in strukturierten Dateien, sondern in datumsergänzten log-artigen Einträgen gespeichert. Dann gibt es eine /dream-Fähigkeit, die während der "Nachtzeit" (geringe Aktivität) läuft und diese rohen Logs in strukturierte thematische Dateien destilliert.

Die KI organisiert Erinnerungen im "Schlaf". Das ist keine Ingenieurskunst mehr; das ist Bionik.
Wenn Sie Claude Code eine komplexe Aufgabe ausführen lassen, macht er vielleicht stillschweigend das hier:

Er generiert einen Sub-Agenten.
Und der Sub-Agent hat eine strikte "Selbstbewusstseins"-Injektion, um zu verhindern, dass er rekursiv mehr Sub-Agenten generiert:

Dieser Codeabschnitt sagt: "Du bist ein Arbeiter, kein Manager. Denke nicht darüber nach, mehr Leute einzustellen, erledige die Arbeit selbst."
Koordinator-Muster: Manager-Muster
Im Koordinator-Muster wird Claude Code zu einem reinen Aufgaben-Orchestrator, der die Arbeit nicht selbst erledigt, sondern nur delegiert:

Kernprinzipien, die in Code-Kommentaren geschrieben stehen:
"Parallelität ist Ihre Superkraft" für schreibgeschützte Forschungsaufgaben: parallel ausführen. Für Dateischreibaufgaben: seriell pro Dateigruppe ausführen (Konflikte vermeiden).
Optimierung des Prompt-Cache bis zum Äußersten
Um die Cache-Trefferquote von Sub-Agenten zu maximieren, verwenden alle geforkten Sub-Agent-Utility-Ergebnisse denselben Platzhaltertext:
"Fork gestartet – Verarbeitung im Hintergrund"
Warum? Weil der Prompt-Cache der Claude API auf Byte-Ebene-Präfix-Matching basiert. Wenn die Präfix-Bytes von 10 Sub-Agenten identisch sind, benötigt nur der erste einen "Kaltstart", die restlichen 9 treffen direkt auf den Cache.
Dies ist eine Optimierung, die ein paar Cent pro Aufruf spart, aber in großem Maßstab kann sie eine beträchtliche Menge an Kosten sparen.
Alle LLMs haben ein Kontextfenster-Limit. Je länger das Gespräch, desto mehr historische Nachrichten, es wird schließlich das Limit überschreiten.
Claude Code hat dafür eine dreischichtige Komprimierung entwickelt:

Mikrokomprimierung berührt nur alte Tool-Aufrufergebnisse – Ersetzen von "Inhalt der 500-Zeilen-Datei, die vor 10 Minuten gelesen wurde" durch [Inhalt des alten Tool-Ergebnisses gelöscht].
Prompt-Wörter und Dialog-Thread bleiben vollständig erhalten.
Wenn der Token-Verbrauch 87% des Kontextfensters erreicht (Fenstergröße - 13.000 Puffer), wird dies automatisch ausgelöst. Es gibt einen Schutzschalter: Stoppen Sie Versuche nach 3 aufeinanderfolgenden Komprimierungsfehlern, um eine Schleife zu vermeiden.
Lassen Sie die KI eine Zusammenfassung des gesamten Gesprächs erstellen und ersetzen Sie dann alle historischen Nachrichten durch die Zusammenfassung. Es gibt eine strikte Vorschrift während der Zusammenfassungserstellung:

Warum so streng? Weil, wenn die KI während des Zusammenfassungsprozesses zusätzliche Tool-Aufrufe tätigen würde, dies zu mehr Token-Verbrauch führen würde, was kontraproduktiv wäre. Dieser Prompt sagt im Wesentlichen: "Deine Aufgabe ist es, zusammenzufassen, tue nichts anderes."
Komprimiertes Token-Budget:
· Dateiwiederherstellung: 50.000 Token
· Obergrenze pro Datei: 5.000 Token
· Skill-Inhalt: 25.000 Token
Diese Zahlen sind nicht willkürlich – sie stellen einen Gleichgewichtspunkt zwischen "genügend Kontext behalten, um weiterzuarbeiten" und "genügend Platz freigeben, um neue Nachrichten zu empfangen" dar.
Innerhalb von 510.000 Zeilen Code ist der Teil, der tatsächlich die LLM API aufruft, wahrscheinlich weniger als 5%. Was ist mit den restlichen 95%?
· Sicherheitsüberprüfungen (18 Dateien nur für ein einziges BashTool)
· Berechtigungssystem (Zulassen/Verweigern/Fragen/Durchleiten Quadratische Entscheidung)
· Kontextmanagement (Dreischichtige Komprimierung + KI-Gedächtnisabruf)
· Fehlerbehebung (Schutzschalter, exponentielles Backoff, Transkript-Persistenz)
· Multi-Agenten-Koordination (Schwarm-Orchestrierung + Mailbox-Kommunikation)
· UI-Interaktion (140 React-Komponenten + IDE-Brücke)
· Leistungsoptimierung (Prompt-Cache-Stabilität + paralleles Prefetch beim Start)
Wenn Sie ein KI-Agenten-Produkt entwickeln, sind dies die wirklichen Probleme, die Sie lösen müssen. Es geht nicht darum, wie schlau Ihr Modell ist; es geht darum, wie robust Ihr Gerüst ist.
Es geht nicht nur darum, einen netten Prompt zu erstellen. Die Prompts von Claude Code beinhalten:
· 7-schichtige dynamische Zusammenstellung
· Jedes Tool kommt mit einem eigenständigen Benutzerhandbuch
· Cache-Grenzen sind präzise abgegrenzt
· Interne und externe Versionen haben unterschiedliche Befehlssätze
· Tool-Reihenfolge ist fixiert, um Cache-Stabilität zu erhalten
Dies ist technisches Prompt-Management, kein Handwerk.
Jede externe Abhängigkeit hat eine entsprechende Fehlerrichtlinie:

42 Tools = Systemaufruf-Berechtigungssystem = Benutzerberechtigungs-Management-Skill-System = App Store MCP Protokoll = Gerätetreiber-Agenten-Schwarm = Prozessmanagement Kontextkomprimierung = Speichermanagement Transkript-Persistenz = Dateisystem
Das ist kein "Chatbot plus ein paar Tools"; das ist ein Betriebssystem mit LLM im Kern.
510.000 Zeilen Code. 1903 Dateien. 18 sichere Dateien nur für ein einziges Bash-Tool.
9 Ebenen der Prüfung, nur um sicher zu haben, dass die KI Ihnen beim Tippen eines Befehls hilft.
Dies ist die Antwort von Anthropic: Um KI wirklich nützlich zu machen, können Sie sie nicht in einen Käfig sperren oder wild laufen lassen. Sie müssen ein vollständiges Vertrauensgerüst um sie herum aufbauen.
Und die Kosten für dieses Vertrauenssystem sind 510.000 Zeilen Code.
Dieser Inhalt wird nur zu allgemeinen Informationszwecken bereitgestellt und stellt keine finanzielle, Anlage-, Rechts- oder Steuerberatung dar. Alle erwähnten Ereignisse, Prämien, Online-Aktionen oder zugehörige Informationen sollten nicht als Empfehlung, Aufforderung oder Einladung zum Kauf, Verkauf, Handel oder anderweitigem Umgang mit Krypto-Assets betrachtet werden. Krypto-Assets sind sehr volatil und können zu Verlusten führen. Die Verfügbarkeit von WEEX Services, Produkten und zugehörigen Aktionen kann je nach Region unterschiedlich sein. Sie sind dafür verantwortlich sicherzustellen, dass Ihre Teilnahme mit geltenden lokalen Gesetzen und Vorschriften übereinstimmt.





























