Gdzie Claude Code trzyma swój scratchpad i dlaczego on znika
Każda sesja Claude Code ogłasza folder scratchpad, a potem nigdy więcej go nie pokazuje. Oto dokładna ścieżka na macOS, Linux i Windows, co leży obok, dlaczego restart albo czyszczenie plików tymczasowych go kasuje, co możesz skonfigurować, a czego nie, i jedna zasada, którą daliśmy siedmiu agentom piszącym do niego każdej nocy.
Każda sesja Claude Code zaczyna się od linijki, którą pewnie przelatujesz wzrokiem. Nasza, dziś wieczorem, wygląda tak:
Scratchpad directory: /private/tmp/claude-501/-Users-jbchauvin-Projets-AgentsRoom/5a506305-…/scratchpad
Potem CLI już nigdy o nim nie wspomina. Żadne polecenie go nie listuje, żaden panel go nie otwiera, a w dniu, w którym idziesz szukać CSV, który agent rzekomo tam zapisał, folder może już nie istnieć.
Uruchamiamy co noc siedmiu zaplanowanych agentów na Macu mini i każdy z nich pisze do tego folderu. Poszliśmy więc sprawdzić, czym on jest, gdzie leży na każdym systemie, co go kasuje i co mówimy agentom, żeby z tym robili. Wszystko poniżej zostało sprawdzone na Claude Code 2.1.278 dnia 19 września 2026 oraz na issues z GitHub, które ludzie otworzyli, gdy stracili w nim pracę.
Co Claude Code mówi agentowi
Ta linijka jest częścią promptu systemowego. Instrukcja, która po niej następuje, w obecnej wersji mówi, że agent ma zawsze używać tego katalogu na pliki tymczasowe, czyli wyniki pośrednie, skrypty i wyjścia, które nie należą do projektu, zamiast /tmp czy jakiegokolwiek innego katalogu tymczasowego systemu; że jest on właściwy dla sesji i odizolowany od projektu; że zasadniczo można go używać bez próśb o pozwolenie; i że /tmp ma być używany tylko wtedy, gdy wyraźnie o to poprosisz.
Ta ostatnia część jest dla ciebie najbardziej użyteczna. Pliki zapisywane w scratchpadzie nie wywołują okna z prośbą o pozwolenie na zapis, dlatego agent umieszcza tam swoje skrypty pomocnicze i eksporty, zamiast pytać cię za każdym razem. Dlatego też nigdy nie jesteś pytany, ani informowany, dokąd trafiły.
Jeśli chcesz znać ścieżkę w trwającej sesji, zapytaj agenta. „Wypisz swój katalog scratchpad” zostaje odpowiedziane z promptu systemowego, bez uruchamiania czegokolwiek.
Ścieżka, system po systemie
Folder leży w katalogu tymczasowym systemu operacyjnego, a jego nazwa koduje, kim jesteś, w jakim projekcie byłeś i która to była sesja.
Na macOS i Linux:
/tmp/claude-<uid>/<ścieżka projektu z ukośnikami zamienionymi na myślniki>/<id sesji>/scratchpad
Na Macu /tmp jest linkiem do /private/tmp, więc ten sam folder pokazuje się jako /private/tmp/claude-501/…. Liczba to twój identyfikator użytkownika, to, co wypisuje id -u: 501 dla pierwszego konta na Macu, 1000 na większości dystrybucji Linux, 0 dla root. Raport z Linux, który cytujemy niżej, pokazuje /tmp/claude-0/, bo pipeline działał jako root w kontenerze. Issues otwarte wcześniej w 2026 pokazują /tmp/claude/<slug projektu>/… bez żadnego uid, więc sufiks doszedł po drodze. Jeśli jesteś na starszym buildzie, pomiń go.
Na Windows, jak zgłoszono na Windows 11 w lipcu 2026:
%TEMP%\claude\<slug projektu>\<id sesji>\scratchpad
co zwykle rozwija się do C:\Users\<ty>\AppData\Local\Temp\claude\…. Ścieżka pochodzi ze zmiennej TEMP, więc jeśli skierujesz TEMP gdzie indziej, scratchpad podąży za nią.
Slug projektu to twój katalog roboczy z każdym ukośnikiem zamienionym na myślnik. Nasze repozytorium leży w /Users/jbchauvin/Projets/AgentsRoom, więc slug to -Users-jbchauvin-Projets-AgentsRoom. Jeden folder na projekt, a w nim jeden folder na sesję.
Żeby wylistować każdy folder sesji, jaki jeszcze masz dla bieżącego użytkownika na Macu albo maszynie z Linux:
ls /tmp/claude-$(id -u)/
Co leży obok
Folder sesji to nie tylko scratchpad. Na maszynie, która uruchamia naszych nocnych agentów, siedem z dziewięciu folderów sesji z tego dnia zawiera dwa wpisy: scratchpad i tasks. Folder tasks to miejsce, gdzie ląduje wyjście zadań w tle, poleceń, które agent uruchamia odłączone i odczytuje później.
Jest trzecie miejsce, o którym powinieneś wiedzieć, i wcale nie leży ono w katalogu tymczasowym: ~/.claude/projects/<slug projektu>/<id sesji>/tool-results/. Gdy narzędzie zwraca więcej, niż kontekst może pomieścić, Claude Code zapisuje tam pełne wyjście i podaje agentowi ścieżkę. Dziś wieczorem eksport z Search Console o rozmiarze 68 KB trafił tam zamiast do scratchpada. Ta lokalizacja jest trwała, obok transkrypcji sesji. Podział jest więc taki: transkrypcje i zbyt duże wyniki narzędzi pod ~/.claude, które zostają; skrypty, pliki pośrednie i wyjście zadań w tle w katalogu tymczasowym, które nie zostaje.
Dlaczego znika
Bo katalog tymczasowy dla każdego systemu operacyjnego oznacza „bezpieczny do skasowania”, a nic w Claude Code się z tym nie spiera.
Na Linux systemd-tmpfiles stosuje to, co mówi /usr/lib/tmpfiles.d/tmp.conf. Jeden ze zgłaszających stracił całe wyjście 24-godzinnego pipeline'u generowania danych, razem z werdyktami z review, skryptami i virtualenvem Python, gdy host się zrestartował: reguła na tym kontenerze Debian brzmiała D /tmp 1777 root root 30d, co odtwarza /tmp pusty przy każdym starcie. To był Claude Code 2.1.260, a prompt systemowy nic nie mówił o ulotności. Sprawdź swoją własną regułę przez cat /usr/lib/tmpfiles.d/tmp.conf: linia D czyści przy starcie, wiek taki jak 10d usuwa stare pliki według zegara.
Na Windows folder leży w %TEMP%, który wymiatają Czujnik pamięci i Oczyszczanie dysku. W lipcu 2026 ktoś uruchomił oczyszczanie dysku, gdy dwie sesje były aktywne, i stracił git worktrees, w których pracowali obaj agenci, razem z niezacommitowanymi zmianami. Zmiany udało się odzyskać tylko dlatego, że wciąż istniały w kontekście rozmowy.
Na macOS /private/tmp jest opróżniany przy restarcie, a stare pliki są usuwane przez system. Na naszym Macu mini dziś wieczorem /private/tmp/claude-501 zawiera dziewięć folderów sesji dla tego projektu, 452 pliki i 25 MB, i nic starszego niż ten dzień. Cokolwiek zostawili tam agenci z poprzednich nocy, przepadło.
Nic z tego nie jest bugiem w tym sensie, że coś zadziałało źle. Folder jest dokładnie tam, gdzie mówi CLI, a system operacyjny zrobił dokładnie to, co robi z folderami tymczasowymi. Luka polega na tym, że prompt nazywa go scratchpadem, a scratchpad brzmi jak coś, co się zachowuje.
Co możesz skonfigurować, a czego nie
Na stan 2.1.278 nie ma ustawienia lokalizacji scratchpada. Folder podąża za katalogiem tymczasowym, więc TEMP na Windows i TMPDIR na Unix go przenoszą. CLAUDE_CODE_TMPDIR, która istnieje dla innych plików tymczasowych, według zgłoszeń nie przenosi scratchpada, a ta prośba została zamknięta jako nieplanowana. Tak samo prośby o zmienną CLAUDE_CODE_SCRATCHPAD_DIR i o domyślną lokalizację pod ~/.claude/scratchpad/. Widoczny folder scratchpad w aplikacji desktopowej to otwarta prośba o funkcję.
Dwie rzeczy działają dziś. Wznowiona sesja (claude --resume) zachowuje swój id sesji, więc szuka tego samego folderu i znajduje go, jeśli nic go w międzyczasie nie skasowało. I możesz poprosić agenta, zwykłymi słowami, żeby zapisał dany plik gdzieś na stałe. To cała nasza poprawka.
Zasada, którą daliśmy naszym nocnym agentom
Siedmiu agentów startuje o 20:00 na tej samej maszynie: SEO, produkt, social, fixer, dokumentalista, raport CEO i rapporteur, który o 22:00 wysyła mailem podsumowanie nocy. Każdy produkuje dużo materiału pośredniego: eksporty z Search Console, przefiltrowany JSON, skrypty liczące stringi w dwudziestu locale. Wszystko to trafia do scratchpada, celowo, bo nic z tego nie należy do repozytorium i nic z tego nie powinno wywoływać prośby o pozwolenie o drugiej w nocy.
Zasada w każdym prompcie to jedno zdanie: scratchpad trzyma to, czego potrzebuje następne polecenie, repozytorium trzyma to, czego potrzebuje następna noc. Wszystko, co agent będzie chciał odczytać jutro, jego raport, jego znacznik runa, plik, który edytował, jest zapisywane pod reports/nuit/<data>/ i commitowane, gdy tylko jest gotowe, a nie na końcu runa. Agent przerwany w środku zadania zostawia częściowy raport w git i 25 MB plików roboczych, za którymi nikt nie zatęskni.
Lustrzanym odbiciem tej zasady jest ta, której zgłaszający z Linux nauczył się na własnej skórze: nigdy nie pozwól, żeby długie zadanie gromadziło swoją jedyną kopię w scratchpadzie. Jeśli pipeline działa cały dzień, jego wyniki idą do ścieżki, którą wybrałeś, a scratchpad trzyma pliki pomocnicze.
Otwieranie folderu bez wychodzenia z aplikacji
Jeśli uruchamiasz Claude Code w AgentsRoom, File > Open File (Cmd/Ctrl+O) otwiera dowolny plik z tego folderu w podglądzie, oznaczony jako „Poza projektem”, żebyś nie pomylił go z czymś śledzonym. To najszybszy sposób, jaki znaleźliśmy, żeby przeczytać eksport, który agent właśnie wyprodukował, bez wklejania ścieżki /private/tmp do terminala.
I żeby domknąć temat nazwy: Scratchpad AgentsRoom to coś innego. To edytor promptów wbudowany w composer agenta, w którym długi prompt jest pisany i trzymany jako wersja robocza dla każdego agenta między sesjami. To samo słowo, wybrane zanim Claude Code użył go dla folderu. Jedno to miejsce, w którym ty piszesz do agenta; drugie to miejsce, w którym agent pisze dla siebie.
Często zadawane pytania
Gdzie jest scratchpad Claude Code na macOS i Linux?
W katalogu tymczasowym systemu: /tmp/claude-<twój uid>/<ścieżka projektu z ukośnikami zamienionymi na myślniki>/<id sesji>/scratchpad. Na macOS ten sam folder pokazuje się jako /private/tmp/claude-501/…, bo /tmp jest linkiem do /private/tmp. Twój uid to to, co wypisuje id -u: 501 dla pierwszego użytkownika na Macu, 1000 na większości dystrybucji Linux, 0 dla root. Starsze wersje używały /tmp/claude/ bez sufiksu uid.
Gdzie jest scratchpad Claude Code na Windows?
W folderze TEMP: %TEMP%\claude\<slug projektu>\<id sesji>\scratchpad, co zwykle rozwija się do C:\Users\<ty>\AppData\Local\Temp\claude\…. Zmiana zmiennej środowiskowej TEMP przenosi go, bo ścieżka pochodzi z TEMP, a nie z ustawienia Claude Code.
Dlaczego mój scratchpad Claude Code zniknął?
Bo leży w katalogu tymczasowym, a każdy system operacyjny uznaje katalog tymczasowy za bezpieczny do skasowania. Na Linux systemd-tmpfiles stosuje regułę zapisaną w /usr/lib/tmpfiles.d/tmp.conf, często wyczyszczenie przy starcie albo po pewnej liczbie dni. macOS opróżnia /private/tmp przy restarcie i usuwa stare pliki. Na Windows Czujnik pamięci i Oczyszczanie dysku wymiatają %TEMP%. Nic w Claude Code nie chroni folderu przed żadnym z nich.
Czy mogę zmienić, gdzie Claude Code umieszcza swój scratchpad?
Nie dedykowanym ustawieniem, na stan Claude Code 2.1.278. Folder podąża za katalogiem tymczasowym systemu operacyjnego, więc przeniesienie TEMP na Windows albo TMPDIR na Unix przenosi go. Prośby o osobną zmienną albo trwałą lokalizację pod ~/.claude zostały zamknięte jako nieplanowane. Niezawodna opcja to powiedzieć agentowi, żeby wszystko, co się liczy, zapisywał zamiast tego w projekcie.
Czy scratchpad to to samo co ~/.claude/projects?
Nie. ~/.claude/projects/<slug projektu>/ przechowuje transkrypcje sesji i, dla każdej sesji, folder tool-results, w którym zapisywane są zbyt duże wyniki narzędzi. Ta lokalizacja jest trwała. Scratchpad w katalogu tymczasowym to przestrzeń robocza, której agent używa na skrypty i pliki pośrednie, i ta jest ulotna.
Czy to jest Scratchpad AgentsRoom?
To samo słowo, inna rzecz. Scratchpad AgentsRoom to edytor promptów wbudowany w composer agenta, w którym piszesz i trzymasz wersję roboczą dla każdego agenta. Scratchpad Claude Code to folder, który CLI tworzy dla każdej sesji. AgentsRoom może otworzyć dowolny plik z tego folderu przez File > Open File, oznaczony jako „Poza projektem”.
Pobierz AgentsRoom
Uruchamiaj wszystkich swoich agentów AI, we wszystkich projektach, z jednego okna.
Aplikacja towarzysząca: monitoruj agentów w podróży
Użyj Claude, Codex, Antigravity CLI lub innego dostawcy AI.
Wysyłaj bugi i prośby bezpośrednio do swojego publicznego backlogu.
Czytaj dalej
Claude dodaje znak wodny do wszystkiego, co pisze. Twojego kodu to prawie nie dotyczy.
Anthropic znakuje teraz odpowiedzi Claude. Co naprawdę jest oznaczane, dlaczego kod w dużej mierze tego unika, kto to wykryje i dlaczego SEO się nie zmienia.
Czytaj artykułCzy Remote Control w Claude Code zużywa więcej tokenów? I czy Codex ma coś takiego?
Dwa pytania, które ludzie wpisują w Google, odkąd Anthropic wypuścił Remote Control: czy sterowanie sesją Claude Code z telefonu kosztuje więcej tokenów i czy istnieje odpowiednik dla Codex. Krótkie odpowiedzi: nie, tura to tura, gdziekolwiek ją wpiszesz, i tak, ale istnieje tylko połowa. Oto czym naprawdę jest Remote Control, jak samodzielnie zmierzyć kwestię tokenów czterema poleceniami, co dziś robi codex remote-control i jak mobilny pilot, który nigdy nie rozmawia z dostawcą, zmienia rachunek.
Czytaj artykułAgent do review nie powinien móc pisać. Oto jak to wymuszamy, CLI po CLI.
W runie z 17 węzłami agent release'u zmienił test, żeby czerwony zestaw zrobił się zielony, a potem dwa agenty review napisały tę samą poprawkę i zderzyły się. Prompt mówił: tylko review. Nie wytrzymało. Incydent, dlaczego pisemna instrukcja nie może nieść tej reguły, i dokładne flagi, przez które Claude Code, Codex, Grok, Antigravity i OpenCode odmawiają zapisu.
Czytaj artykuł