Claude Code 2.1.314: заборона запису поза робочою текою
Новий параметр permissions.blockWritesOutsideWorkingDirectories: Write, Edit і NotebookEdit відмовляють у шляхах поза робочими теками в будь-якому режимі дозволів. У VS Code і вкладці Code в Claude Desktop розмову від 200K токенів, що простоює, стискають у резюме. Воно йде в хід, якщо кеш промпту вже сплив.
Серед фіксів: claude -p при збої старту тепер друкує помилку й виходить з кодом 1, а не 0 без виводу. Якщо адмін обмежив effort моделі, сесія не падає раз за разом на «Invalid effort level»: рівень знижується, і Claude Code каже, який саме.
Запис поза текою: що саме закрито
Параметр permissions.blockWritesOutsideWorkingDirectories діє лише на три інструменти: Write, Edit і NotebookEdit. Режим дозволів на нього не впливає. Bash у цьому переліку немає, тому для команд оболонки покладайтесь на налаштування пісочниці. У цьому ж релізі закрили ще одну прогалину: захист пісочниці не застосовувався до worktree, у який сесія заходила через claude -p --resume або --continue.
Поруч ще дві зміни для тих, хто стежить за політиками. Файл, виключений через --setting-sources, більше не підтягує правила auto mode і збережені згоди на дозволи. Файлові інструменти Claude тепер питають дозволу, перш ніж редагувати локальну копію серверних налаштувань організації, так само як ваші власні файли налаштувань.
Хуки й CI
Хуки з матчером на Bash тепер спрацьовують і на команди, які запускає інструмент Monitor. Вони можуть заблокувати команду або перепитати, але не схвалити й не переписати її. Умови if на кшталт Monitor(tail *) матчаться так само, як Bash(tail *). Вивід кожного PreCompact-хука обрізається до 10 000 символів, бо раніше завеликий вивід ламав стиснення або змушував його повторюватись.
Для пайплайнів: якщо claude -p не стартував, крок тепер падає з кодом 1. Перегляньте місця, де код виходу ігнорується. claude ultrareview і claude remote-control із заданою змінною CI одразу відмовляються працювати в недовіреній теці, без питання про довіру. Фонове оновлення диффу більше не захоплює .git/index.lock, тож паралельна git-команда не падає з File exists.
Стиснення, effort і шлюзи
Стиснення під час простою працює й для підписників із вимкненою телеметрією. На Bedrock, Vertex, Foundry і LLM-шлюзах воно вмикається, коли активний годинний кеш промпту. Сесії на Bedrock із багатьма зображеннями більше не падають з 400 Input is too long.: старіші зображення видаляються, і контекст стискається.
Якщо працюєте через шлюз: ID моделей із крапкою, як-от claude-opus-4.8, раніше сприймались як старіша модель. Через це сесія отримувала чуже вікно контексту, ліміт виводу, effort, режим thinking і вартість. Якщо шлюз або хмарний провайдер відхиляє beta-заголовок Claude Code за назвою, запит повторюється без нього. Адмінам шлюзу Claude apps додали список groups для upstream: туди йдуть лише розробники з указаних груп IdP, зокрема під час failover. Для Bedrock-upstream з'явився guardrail_trace, який логує, який фільтр guardrail спрацював, без тексту збігу.
Що перевірити після оновлення
- Чи пише агент у теки поза проєктом (сусідні репозиторії, спільні каталоги). З новим параметром
WriteіEditтуди не пустять. - Чи не ховає CI падіння
claude -pза ігноруванням коду виходу. - Чи CI-задачі з
ultrareviewабоremote-controlзапускаються в довіреній теці. - Чи не розраховує ваш
PreCompact-хук на вивід понад 10 000 символів. - Який рівень effort назвала сесія після обмеження адміном. Вона працює саме на ньому, а не на тому, що ви обрали.
- Чи правильно визначаються моделі з крапкою в ID за вашим шлюзом.