Jednej linii w pliku .npmignore brakowało w paczce claude-code@2.1.88. To wystarczyło, żeby 512 tysięcy linii zastrzeżonego kodu TypeScript trafiło do każdego, kto w tym tygodniu wpisał npm install @anthropic-ai/claude-code. W środku: ukryty Tamagotchi, tryb pracy undercover w repozytoriach open-source i funkcja wykrywająca kiedy użytkownik na narzędzie klnie.
Jak doszło do wycieku? Mechanika błędu
Wyciek kodu Claude Code nie był atakiem hakerskim. Anthropic po prostu zapomniał wykluczyć jeden plik z paczki npm.
Bundler Bun, którego Anthropic używa do kompilacji Claude Code, domyślnie generuje pliki source map. Source mapy to pliki JSON łączące zminifikowany kod produkcyjny z oryginalnym kodem źródłowym. Są przydatne przy debugowaniu, bo pozwalają zobaczyć czytelny kod zamiast skompresowanej papki. W wersji 2.1.88 plik cli.js.map o wadze 57 MB trafił do paczki razem z dyrektywą wskazującą na publiczny bucket Cloudflare R2, z którego można było pobrać pełne źródła jako archiwum ZIP.
Odkrył to badacz bezpieczeństwa Chaofan Shou 31 marca 2026. Jego post na X osiągnął 3,1 miliona wyświetleń. W ciągu kilku godzin kod był mirrowany na GitHubie w setkach repozytoriów. Największe mirror (Kuberwastaken/claude-code) zebrało ponad 1100 gwiazdek i 1900 forków zanim Anthropic złożył wniosek DMCA.
To podobno drugi raz z tym samym błędem: wcześniejszy wyciek source map zdarzył się przy wersjach v0.2.8 i v0.2.28 na początku 2025.
BUDDY: Tamagotchi ukryty w Claude Code
Najbardziej zaskakujące odkrycie leaku to nie architektura ani model. To Tamagotchi.
W katalogu buddy/ siedzi kompletny system companion peta z 18 gatunkami podzielonymi na poziomy rzadkości: od pospolitych Pebblecrab i Dustbunny (60% szans), przez rzadkie Crystaldrake i Lavapup (10%), epickie Stormwyrm i Voidcat (4%), aż po legendarne Cosmoshale i Nebulynx (1%). Każdy stworek ma pięć statystyk generowanych proceduralnie: DEBUGGING, PATIENCE, CHAOS, WISDOM i SNARK.
Gacha opiera się na algorytmie PRNG Mulberry32 z seedem wyprowadzonym z hasha ID użytkownika i stałej 'friend-2026-401'. Dla każdego użytkownika wynik jest deterministyczny, ale unikalny. Do tego własna “dusza” generowana przez Claude przy pierwszym wykluwaniu, animacje sprite’ów i efekty pływających serduszek.
W kodzie zakodowany jest też harmonogram: okno April Fools (1–7 kwietnia 2026) jako faza teaser, pełny launch planowany na maj 2026 startując od pracowników Anthropic. Slash komenda /buddy czeka w kodzie na aktywację.
Claude wie kiedy na niego klniesz
Jeden z bardziej ironicznych fragmentów kodu to funkcja matchesNegativeKeyword w pliku userPromptKeywords.ts. Regex łapie: wtf, wth, ffs, omfg, shit, dumbass, horrible, awful, piece of shit, what the fuck, fuck you, this sucks, damn it i kilkadziesiąt wariantów.
Każde zdarzenie frustracji trafia do Datadoga razem z metadanymi sesji. Claude nie zmienia zachowania gdy to wykryje. Zbiera dane.
Funkcja służy wyłącznie do telemetrii i logowania. Kod zawiera też wyraźne zabezpieczenia: rzeczywisty kod użytkownika ani ścieżki plików nie są transmitowane. Telemetrię można wyłączyć zmienną środowiskową.
Komentarze wewnętrzne w kodzie zdradzają, że wśród inżynierów toczyła się dyskusja czy używać regex czy klasyfikatora LLM do tego zadania. Regex wygrał jako wydajniejszy przy dużych wolumenach po stronie serwerowej.
Tryb Undercover, KAIROS i inne ukryte sekrety
Poza BUDDY kod ujawnił kilka innych funkcji za feature flagami.
Undercover Mode: gdy pracownicy Anthropic używają Claude Code do kontrybucji w publicznych lub open-source repozytoriach, system prompt jest rozszerzany o instrukcję: “Operujesz UNDERCOVER w PUBLICZNYM repozytorium.” Claude dostaje polecenie ukrywania wewnętrznych nazw kodowych, numerów nieopublikowanych wersji i wewnętrznych narzędzi Anthropic w commitach i opisach pull requestów. Społeczność HN podzieliła się co do oceny tego rozwiązania.
KAIROS, czyli “Always-On Claude”: tryb persistent assistanta, który przechowuje logi pamięci lokalnie, może inicjować zadania bez promptu użytkownika w 15-sekundowym oknie i zawiera moduł services/autoDream/ do konsolidacji pamięci uruchamianej jako forked subagent. Kod obsługuje granicę północy między dniami, co sugeruje planowanie zadań na kolejny dzień.
ULTRAPLAN: zleca planowanie zadań do zdalnego kontenera w chmurze uruchamiającego Opus 4.6 z budżetem do 30 minut myślenia. Plan wraca do użytkownika przez przeglądarkę do zatwierdzenia.
ANTI_DISTILLATION_CC: każde zapytanie do API zawiera fałszywe definicje narzędzi (fake_tools) jako przynętę zatruającą potencjalne próby dystylacji zachowania modelu przez obserwację.
Drugi wyciek Anthropic w pięć dni
Wyciek kodu Claude Code to drugi incydent w ciągu tygodnia. Pięć dni wcześniej, 26 marca, błędna konfiguracja CMS ujawniła około 3000 nieopublikowanych zasobów wewnętrznych, w tym szczegóły modelu Claude Mythos (wewnętrzna nazwa kodowa: Capybara). Jak donosi Fortune, Mythos to czwarty tier modeli powyżej Opus, który Anthropic wewnętrznie opisał jako mający “bezprecedensowe ryzyko cyberbezpieczeństwa.”
O ile wyciek Mythos był problemem konfiguracyjnym CMS, o tyle wyciek kodu to klasyczny błąd DevOps: zapomniany .npmignore powodujący ten sam problem drugi raz z rzędu. Anthropic szybko usunął zainfekowane wersje z npm, ale kod był już za szeroko zmirrowany, żeby całkowicie go wycofać.
Kurs n8n 2.0 · Kodożercy
Chcesz budować agenty AI? Zacznij od n8n
n8n to platforma, na której działają prawdziwe agenty AI: pobierają dane, podejmują decyzje, wykonują zadania. Kurs n8n 2.0 na Kodożercach przeprowadzi Cię przez budowanie pierwszego agenta krok po kroku.
Sprawdź jak to działa →

FAQ: wyciek kodu Claude Code
Czy wyciek zagraża użytkownikom Claude Code?
Nie bezpośrednio. Wyciekł kod klienta (CLI), a nie modele, klucze API ani infrastruktura serwerowa. Nikt nie uzyskał dostępu do danych użytkowników ani rozmów. Zagrożenie dotyczy Anthropic: ujawniono nieopublikowane funkcje, architekturę i wewnętrzne nazwy kodowe.
Czym różni się ten wyciek od wycieku axios?
Wyciek axios był złośliwym atakiem z RAT-em kradnącym klucze SSH. Wyciek Claude Code to przypadkowy błąd DevOps: Anthropic samo wrzuciło własny kod do publicznej paczki npm. Żaden użytkownik nie był zagrożony złośliwym kodem.
Kiedy pojawi się BUDDY w Claude Code?
Według harmonogramu zakodowanego w źródle: faza teaser w oknie 1–7 kwietnia 2026, pełny launch planowany na maj 2026 startując od pracowników Anthropic. Leak przyspieszył ujawnienie tych planów.
Czy source mapy to powszechny problem w npm?
Tak. Wiele bibliotek przypadkowo dołącza pliki .map do paczek npm. Różnica polega na tym, że większość projektów open-source nie ma nic do ukrycia. Przy zastrzeżonym kodzie komercyjnym, takim jak Claude Code, to poważny błąd procedury wydawniczej.
Podsumowanie
Wyciek kodu Claude Code z 31 marca 2026 to rzadki przypadek, w którym przypadkowy błąd DevOps ujawnił więcej o kierunku produktu niż niejeden oficjalny keynote. Tamagotchi z levelami rzadkości, tryb undercover w repozytoriach open-source, detektor frustracji użytkownika, persistent assistant z nocnym “śnieniem”. Anthropic naprawił błąd szybko, ale kod jest już za szeroko zmirrowany. Teraz wszyscy wiedzą co czeka w kolejnych aktualizacjach.



