Де Claude Code зберігає свій scratchpad і чому він зникає
Кожна сесія Claude Code оголошує теку scratchpad і більше ніколи про неї не згадує. Ось точний шлях на macOS, Linux і Windows, що лежить поруч, чому перезавантаження або очищення тимчасових файлів її стирає, що можна і чого не можна налаштувати, і єдине правило, яке ми дали семи агентам, що пишуть туди щоночі.
Кожна сесія Claude Code починається з рядка, який ви, мабуть, пробігаєте очима. Наш сьогодні ввечері виглядає так:
Scratchpad directory: /private/tmp/claude-501/-Users-jbchauvin-Projets-AgentsRoom/5a506305-…/scratchpad
Потім CLI про неї більше не згадує. Жодна команда її не виводить, жодна панель її не відкриває, і того дня, коли ви підете шукати CSV, який агент, за його словами, туди записав, теки може вже не бути.
Ми запускаємо сім агентів за розкладом на Mac mini щоночі, і кожен із них пише в цю теку. Тож ми пішли й подивилися, що це таке, де вона живе на кожній системі, що її видаляє і що ми кажемо агентам із цим робити. Усе, що нижче, перевірено на Claude Code 2.1.278 19 вересня 2026 року і на issues у GitHub, які відкрили люди, що втратили в ній роботу.
Що Claude Code каже агенту
Рядок є частиною системного промпту. Інструкція, яка йде за ним у поточній версії, каже, що агент має завжди використовувати цю теку для тимчасових файлів, тобто для проміжних результатів, скриптів і виводів, яким не місце в проєкті, замість /tmp чи будь-якої іншої тимчасової теки системи; що вона прив'язана до сесії та ізольована від проєкту; що її зазвичай можна використовувати без запитів дозволу; і що /tmp слід використовувати, лише якщо ви явно про це попросите.
Остання частина якраз корисна для вас. Файли, записані всередині scratchpad, не викликають діалог дозволу на запис, і саме тому агент кладе туди свої допоміжні скрипти та експорти, а не питає вас щоразу. З тієї ж причини вас ніколи не питають і ніколи не кажуть, куди вони поділися.
Якщо вам потрібен шлях у запущеній сесії, спитайте агента. На «Виведи свою теку scratchpad» він відповідає із системного промпту, нічого не запускаючи.
Шлях, система за системою
Тека лежить у тимчасовій теці операційної системи, а її ім'я кодує, хто ви, у якому проєкті ви були і яка це була сесія.
На macOS і Linux:
/tmp/claude-<uid>/<шлях проєкту, слеші замінені на дефіси>/<id сесії>/scratchpad
На Mac /tmp є посиланням на /private/tmp, тому та сама тека показується як /private/tmp/claude-501/…. Число, це ваш ідентифікатор користувача, те, що виводить id -u: 501 для першого облікового запису на Mac, 1000 у більшості дистрибутивів Linux, 0 для root. Звіт з Linux, який ми цитуємо нижче, показує /tmp/claude-0/, бо пайплайн працював від root у контейнері. Issues, відкриті раніше у 2026 році, показують /tmp/claude/<slug проєкту>/… узагалі без uid, тож суфікс додали по дорозі. Якщо у вас старіша збірка, приберіть його.
На Windows, як повідомляли на Windows 11 у липні 2026 року:
%TEMP%\claude\<slug проєкту>\<id сесії>\scratchpad
що зазвичай розгортається в C:\Users\<ви>\AppData\Local\Temp\claude\…. Шлях виводиться зі змінної TEMP, тож якщо ви спрямуєте TEMP в інше місце, scratchpad піде за нею.
Slug проєкту, це ваш робочий каталог, у якому кожен слеш замінено на дефіс. Наш репозиторій живе в /Users/jbchauvin/Projets/AgentsRoom, тому slug дорівнює -Users-jbchauvin-Projets-AgentsRoom. Одна тека на проєкт, потім одна тека на сесію всередині неї.
Щоб вивести всі теки сесій, які у вас ще залишилися для поточного користувача на Mac або машині з Linux:
ls /tmp/claude-$(id -u)/
Що лежить поруч
Тека сесії, це не лише scratchpad. На машині, яка запускає наших нічних агентів, сім із дев'яти тек сесій за день містять два записи: scratchpad і tasks. У теку tasks потрапляє вивід фонових задач, команд, які агент запускає окремо і читає пізніше.
Є й третє місце, про яке варто знати, і воно взагалі не в тимчасовій теці: ~/.claude/projects/<slug проєкту>/<id сесії>/tool-results/. Коли інструмент повертає більше, ніж може вмістити контекст, Claude Code зберігає повний вивід туди і віддає агенту шлях. Сьогодні ввечері експорт Search Console на 68 КБ пішов туди, а не в scratchpad. Це розташування постійне, поруч із транскриптом сесії. Тож розподіл такий: транскрипти і завеликі виводи інструментів під ~/.claude, який залишається; скрипти, проміжні файли та вивід фонових задач у тимчасовій теці, яка не залишається.
Чому він зникає
Бо тимчасова тека означає «можна видаляти» для будь-якої операційної системи, і ніщо в Claude Code із цим не сперечається.
На Linux systemd-tmpfiles застосовує те, що написано в /usr/lib/tmpfiles.d/tmp.conf. Один користувач втратив увесь вивід 24-годинного пайплайна генерації даних, включно з вердиктами рев'ю, скриптами та віртуальним середовищем Python, коли хост перезавантажився: правило в тому контейнері Debian було D /tmp 1777 root root 30d, яке перестворює /tmp порожнім під час кожного завантаження. Це був Claude Code 2.1.260, і системний промпт нічого не казав про недовговічність. Перевірте своє правило за допомогою cat /usr/lib/tmpfiles.d/tmp.conf: рядок D очищає під час завантаження, вік на кшталт 10d видаляє старі файли за таймером.
На Windows тека лежить під %TEMP%, який вимітають «Контроль пам'яті» та «Очищення диска». У липні 2026 року хтось запустив очищення диска, поки йшли дві сесії, і втратив git worktrees, у яких працювали обидва агенти, включно з незакомміченими правками. Правки вдалося відновити лише тому, що вони ще існували в контексті розмови.
На macOS /private/tmp очищається під час перезавантаження, а старі файли система видаляє. На нашому Mac mini сьогодні ввечері /private/tmp/claude-501 містить дев'ять тек сесій для цього проєкту, 452 файли і 25 МБ, і нічого старшого за сьогоднішній день. Усе, що залишили там агенти попередніх ночей, зникло.
Ніщо з цього не баг у тому сенсі, що щось спрацювало неправильно. Тека знаходиться рівно там, де каже CLI, а операційна система зробила рівно те, що вона робить із тимчасовими теками. Розрив у тому, що промпт називає її scratchpad, а scratchpad звучить як щось, що зберігають.
Що можна налаштувати, а чого не можна
Станом на 2.1.278 налаштування розташування scratchpad не існує. Тека йде за тимчасовою текою, тому TEMP на Windows і TMPDIR на Unix її переміщують. Про CLAUDE_CODE_TMPDIR, яка існує для інших тимчасових файлів, повідомляли, що scratchpad вона не переміщує, і цей запит було закрито як не запланований. Та сама доля спіткала запити на змінну CLAUDE_CODE_SCRATCHPAD_DIR і на розташування за замовчуванням під ~/.claude/scratchpad/. Видима тека scratchpad у десктопному застосунку, це відкритий запит на функцію.
Дві речі працюють уже сьогодні. Відновлена сесія (claude --resume) зберігає свій id сесії, тому шукає ту саму теку і знаходить її, якщо ніщо не видалило її за цей час. І ви можете попросити агента, простими словами, записати потрібний файл у постійне місце. У цьому і полягає все наше рішення.
Правило, яке ми дали нашим нічним агентам
Сім агентів стартують о 20:00 на одній машині: SEO, продукт, соцмережі, fixer, документаліст, звіт CEO і rapporteur, який о 22:00 надсилає поштою підсумок ночі. Кожен виробляє багато проміжного матеріалу: експорти Search Console, відфільтрований JSON, скрипти, які рахують рядки у двадцяти локалях. Усе це йде в scratchpad, навмисно, бо нічому з цього не місце в репозиторії і ніщо з цього не має викликати запит дозволу о другій ночі.
Правило в кожному промпті, це одне речення: scratchpad зберігає те, що потрібно наступній команді, репозиторій зберігає те, що потрібно наступній ночі. Усе, що агент захоче прочитати завтра, його звіт, його маркер запуску, файл, який він редагував, записується під reports/nuit/<дата>/ і коммітиться одразу, щойно готове, а не наприкінці запуску. Агент, якого перервали посеред задачі, залишає частковий звіт у git і 25 МБ робочих файлів, за якими ніхто не сумуватиме.
Дзеркальне відображення цього правила, те, чого користувач Linux навчився на гіркому досвіді: ніколи не дозволяйте довгій задачі накопичувати свою єдину копію в scratchpad. Якщо пайплайн працює цілий день, його виводи йдуть за шляхом, який обрали ви, а scratchpad зберігає допоміжні файли.
Відкрити теку, не виходячи із застосунку
Якщо ви запускаєте Claude Code всередині AgentsRoom, File > Open File (Cmd/Ctrl+O) відкриває будь-який файл цієї теки в попередньому перегляді, позначений як такий, що поза проєктом, щоб ви не сприйняли його за відстежуваний. Це найшвидший спосіб, який ми знайшли, щоб прочитати експорт, щойно створений агентом, не вставляючи шлях /private/tmp у термінал.
І щоб замкнути коло з назвою: Scratchpad в AgentsRoom, це інше. Це редактор промптів, вбудований у композер агента, де довгий промпт пишеться і зберігається як чернетка для кожного агента між сесіями. Те саме слово, обране до того, як Claude Code використав його для теки. Одне, це місце, де ви пишете агенту; інше, це місце, де агент пише для себе.
Часті запитання
Де знаходиться scratchpad Claude Code на macOS і Linux?
У тимчасовій теці системи: /tmp/claude-<ваш uid>/<шлях проєкту, слеші замінені на дефіси>/<id сесії>/scratchpad. На macOS та сама тека показується як /private/tmp/claude-501/…, бо /tmp є посиланням на /private/tmp. Ваш uid виводить id -u: 501 для першого користувача на Mac, 1000 у більшості дистрибутивів Linux, 0 для root. Старіші версії використовували /tmp/claude/ без суфікса uid.
Де знаходиться scratchpad Claude Code на Windows?
У теці TEMP: %TEMP%\claude\<slug проєкту>\<id сесії>\scratchpad, що зазвичай розгортається в C:\Users\<ви>\AppData\Local\Temp\claude\…. Зміна змінної середовища TEMP переміщує його, бо шлях виводиться з TEMP, а не з налаштування Claude Code.
Чому мій scratchpad Claude Code зник?
Бо він живе в тимчасовій теці, а будь-яка операційна система вважає тимчасову теку безпечною для видалення. На Linux systemd-tmpfiles застосовує правило з /usr/lib/tmpfiles.d/tmp.conf, часто це очищення під час завантаження або через певну кількість днів. macOS очищає /private/tmp під час перезавантаження і видаляє старі файли. На Windows «Контроль пам'яті» та «Очищення диска» вимітають %TEMP%. Ніщо в Claude Code не захищає теку від усього цього.
Чи можна змінити, куди Claude Code кладе свій scratchpad?
Окремим налаштуванням ні, станом на Claude Code 2.1.278. Тека йде за тимчасовою текою операційної системи, тож перенесення TEMP на Windows або TMPDIR на Unix переміщує її. Запити на окрему змінну або постійне розташування під ~/.claude були закриті як не заплановані. Надійний варіант: сказати агенту писати все, що має значення, у проєкт.
Scratchpad, це те саме, що ~/.claude/projects?
Ні. У ~/.claude/projects/<slug проєкту>/ лежать транскрипти сесій і, для кожної сесії, тека tool-results, куди зберігаються завеликі виводи інструментів. Це розташування постійне. Scratchpad у тимчасовій теці, це робочий простір, який агент використовує для скриптів і проміжних файлів, і він недовговічний.
Це Scratchpad з AgentsRoom?
Те саме слово, інша річ. Scratchpad в AgentsRoom, це редактор промптів, вбудований у композер агента, де ви пишете і зберігаєте чернетку для кожного агента. Scratchpad у Claude Code, це тека, яку CLI створює для кожної сесії. AgentsRoom може відкрити будь-який файл цієї теки через File > Open File, і він позначений як такий, що поза проєктом.
Завантажити AgentsRoom
Запускайте всіх своїх AI-агентів на всіх своїх проєктах з одного вікна.
Додаток-компаньйон: контролюйте своїх агентів на ходу
Використовуйте свого: Claude, Codex, Antigravity CLI або іншого AI-провайдера.
Надсилайте баги та запити прямо у свій публічний беклог.
Читати далі
Чи витрачає Remote Control у Claude Code більше токенів? І чи є він у Codex?
Два запитання, які люди вводять у Google відтоді, як Anthropic випустила Remote Control: чи коштує керування сесією Claude Code з телефону більше токенів, і чи є еквівалент для Codex. Короткі відповіді: ні, хід є хід, де б ви його не набрали, і так, але існує лише половина. Ось що таке Remote Control насправді, як самому виміряти питання токенів у чотири команди, що робить codex remote-control сьогодні, і як мобільний пульт, який ніколи не звертається до провайдера, змінює розрахунок.
Читати статтюАгент рев’ю не повинен мати змоги писати. Ось як ми це забезпечуємо, CLI за CLI.
У запуску з 17 вузлів релізний агент відредагував тест, щоб червоний набір став зеленим, а потім два агенти рев’ю написали одне й те саме виправлення і зіткнулися. У промпті було сказано: лише рев’ю. Це не втрималося. Розбір інциденту, чому письмова інструкція не може нести це правило, і точні прапорці, які змушують Claude Code, Codex, Grok, Antigravity та OpenCode відмовлятися писати.
Читати статтюДесять агентів запустили ту саму перевірку типів водночас. Розв'язком виявилася тека.
Сімнадцять кодових агентів в одному чекауті, десять процесів tsc паралельно, load average 37 і 87 МБ вільної пам'яті. Перевірка типів на дев'яносто секунд забрала 7 хв 36. Ось виміри, пояснення того, чому машина не рахувала, і маленьке спільне блокування, яке все виправило. Копіюється в будь-який репозиторій.
Читати статтю