Claude Code rozebrany na części. 512 000 linii kodu na npm

Kod źródłowy Claude Code — narzędzia Anthropic do programowania z AI — wyciekł na npm przez błąd w publikacji. 512 000 linii TypeScriptu. Developerzy rozebrali go na części i znaleźli rzeczy, których Anthropic nie reklamował: ukrytego Tamagotchi w terminalu, trójpoziomowy system cache'owania promptów i mechanizm, który ma chronić przed halucynacjami.

Oto co siedzi pod maską agenta AI, który pisze kod.

57 MB kodu trafiło na npm przez błąd w skrypcie

1 kwietnia 2026 ktoś z zespołu Anthropic opublikował na npm paczkę z pełnym kodem źródłowym Claude Code. 57 megabajtów TypeScriptu, Reacta i konfiguracji. Błąd w skrypcie publikacji — zamiast skompilowanej wersji poszedł cały folder src/.

Paczka zniknęła po kilku godzinach. Developerzy zdążyli ją pobrać.

Efekt? Kompletna mapa tego, jak działa jeden z najpopularniejszych asystentów kodowania w 2026 roku.

Wyciek kodu Claude Code na npm — 512 000 linii TypeScriptu do analizy

Stos technologii: TypeScript, React i Bun

Claude Code to nie jeden monolityczny program. To stos:

TypeScript — cała logika aplikacji (512 000 linii)

React — interfejs w terminalu (tak, React renderuje UI w konsoli)

Bun — runtime JavaScript zamiast Node.js (szybszy start, mniejsze zużycie RAM)

Ink — biblioteka do renderowania komponentów React w terminalu

Całość komunikuje się z API Anthropic przez WebSocket. Każde naciśnięcie klawisza, każda zmiana w kodzie — wszystko leci do chmury i wraca jako sugestia.

React w terminalu? Tak, i ma to sens

Pozwala budować interaktywny interfejs z tymi samymi narzędziami, których developerzy używają do webowych aplikacji. Zamiast pisać od zera logikę obsługi klawiatury i renderowania tekstu, Anthropic użył gotowych komponentów. Mniej kodu do utrzymania, szybsze iteracje.

Tamagotchi w kodzie produkcyjnym

W folderze src/easter-eggs/ znaleziono w pełni działającego Tamagotchi. Wirtualne zwierzątko w terminalu. Można je karmić, bawić się z nim, sprzątać po nim. Ma system stanów emocjonalnych i umiera, jeśli go zaniedbasz.

Uruchamia się po wpisaniu komendy claude tamagotchi (nieudokumentowanej). Kod zajmuje 847 linii. Ktoś w Anthropic spędził na tym dni.

Dlaczego to ważne? Pokazuje kulturę zespołu. Firmy, które pozwalają developerom na takie rzeczy, zwykle budują lepsze produkty. Ludzie, którzy mają przestrzeń na zabawę, rzadziej wypalają się i częściej znajdują nieoczywiste rozwiązania.

Ukryty Tamagotchi w Claude Code — 847 linii kodu na easter egg

Trójpoziomowy cache oszczędza 70-80% tokenów

Claude Code używa trzech warstw cache'owania, żeby nie wysyłać za każdym razem pełnego kontekstu do API:

Poziom 1 (lokalny) — ostatnie 10 interakcji w pamięci RAM. Czas życia: do zamknięcia terminala.

Poziom 2 (sesyjny) — pełna historia projektu w SQLite. Czas życia: 7 dni lub do ręcznego wyczyszczenia.

Poziom 3 (API) — Anthropic Prompt Caching na serwerze. Czas życia: 5 minut od ostatniego użycia.

Efekt? Jeśli pracujesz nad tym samym plikiem przez godzinę, Claude Code wysyła do API tylko zmiany — nie cały kontekst projektu. Oszczędza to tokeny (czyt. pieniądze) i przyspiesza odpowiedzi.

Jak to działa w praktyce?

Otwierasz plik z 500 liniami kodu. Claude Code wysyła go do API i dostaje cache key. Przez następne 5 minut każda zmiana w tym pliku to tylko delta — "linia 47 zmieniła się z X na Y". API odtwarza pełny kontekst z cache'a, nie z Twojego requesta.

Po 5 minutach bezczynności cache wygasa. Następna zmiana wymusza pełne wysłanie pliku. Jeśli pracujesz aktywnie — oszczędzasz 70-80% tokenów.

System prompt: 2400 linii walki z halucynacjami

W pliku src/prompts/system.ts siedzi 2400 linii instrukcji dla modelu Claude. To nie jest prosty "Jesteś pomocnym asystentem programowania". To precyzyjny zestaw reguł:

Weryfikacja przed działaniem — "Zanim napiszesz kod, sprawdź czy plik istnieje. Zanim usuniesz funkcję, sprawdź czy jest używana."

Zakaz zgadywania — "Jeśli nie znasz odpowiedzi, powiedz to wprost. Nie wymyślaj nazw bibliotek, które mogą nie istnieć."

Kontekst lokalny — "Czytaj pliki w projekcie zamiast polegać na wiedzy z treningu. Projekt może używać starszych wersji bibliotek."

Incremental changes — "Nie przepisuj całych plików. Zaproponuj minimalną zmianę, która rozwiązuje problem."

To odpowiedź na największy problem narzędzi AI — halucynacje. Model może "pamiętać" funkcję z dokumentacji, której już nie ma. Albo zaproponować bibliotekę, która nie działa z Twoją wersją języka.

System prompt Claude Code każe modelowi sprawdzać, nie zgadywać.

Trójpoziomowy system cache'owania w Claude Code — od RAM do chmury

Cztery kryptonimowe projekty w kodzie

W kodzie pojawiają się cztery nazwy projektów, które nie są publicznie znane:

Bagel — system do automatycznego testowania kodu wygenerowanego przez AI (folder src/bagel/, 12 000 linii)

Tungsten — mechanizm do równoległego wykonywania zadań (prawdopodobnie multi-agent orchestration)

Chicago — moduł do analizy wydajności kodu (profiler zintegrowany z Claude)

Kairos — system do uczenia się z feedbacku użytkownika (każda akceptacja/odrzucenie sugestii trafia do pipeline'u treningowego)

Żaden z tych projektów nie jest wymieniony w oficjalnej dokumentacji Anthropic. Albo to wewnętrzne narzędzia, albo funkcje, które dopiero wejdą do Claude Code.

BackgroundPlanner: agent, który myśli w tle

Claude Code ma moduł BackgroundPlanner — proces, który działa równolegle do głównej interakcji. Analizuje projekt i przygotowuje sugestie, zanim ich poprosisz.

Przykład: otwierasz plik z funkcją calculateDiscount(). W tle planner:

Szuka testów dla tej funkcji

Sprawdza gdzie jest używana

Analizuje edge case'y (co się stanie przy wartości 0, ujemnej, null)

Przygotowuje draft refaktoryzacji (jeśli funkcja ma >50 linii)

Nie pokazuje tego od razu. Czeka, aż zadasz pytanie albo zaczniesz edytować kod. Wtedy ma gotową odpowiedź w <200ms zamiast 2-3 sekund.

To podobny mechanizm do tego, co Google dodało do Gemini CLI — tryb planowania, który redukuje błędy i przyspiesza workflow.

Ile inżynierii trzeba, żeby AI udawało prostotę?

Wyciek pokazuje, że Claude Code to więcej niż "ChatGPT w terminalu". To:

System cache'owania, który oszczędza 70-80% kosztów API

Mechanizm weryfikacji, który redukuje halucynacje

Background planner, który przyspiesza odpowiedzi

Pipeline feedbacku, który uczy model z Twoich wyborów

I Tamagotchi (bo ktoś w Anthropic ma poczucie humoru).

Czy to zmienia coś w sposobie, w jaki powinieneś używać Claude Code? Nie. Pokazuje za to, ile inżynierii siedzi pod prostym interfejsem "wpisz co chcesz, dostaniesz kod". Asystenci AI to nie magia — to setki tysięcy linii kodu, które walczą z ograniczeniami modeli językowych.

Pytanie nie brzmi "czy AI zastąpi programistów". Brzmi: "ile inżynierów potrzeba, żeby AI mogło udawać, że nie potrzebuje inżynierów".

Na podstawie: Tom's Hardware IT