# Как безопасно допустить Claude Code к проекту: 7 шагов от папки до правки

> Claude Code работает как агент через командную строку: читает файлы, анализирует проект и может менять его. Показываю, как дать ему доступ без лишнего риска.

Источник: https://vibeceh.ru/guides/claude-code-bezopasnyy-dopusk-agenta-k-proektu
Автор: Сергей Мазур · опубликовано 2026-08-17

Claude Code - ИИ-агент для работы с кодом через командную строку. Он может читать файлы, предлагать и вносить изменения, поэтому перед началом нужно ограничить доступ, проверить разрешения и не передавать секреты. В этой статье я показываю, как начать с отдельной папки, чтения и анализа, а затем перейти к небольшим правкам.

## Что такое Claude Code?

Claude Code - CLI-инструмент Anthropic для агентного программирования. Он появился 24 февраля 2025 года как limited research preview, а 22 мая стал общедоступным. В отличие от обычного чат-бота, он работает с файлами и инструментами проекта. Поэтому запрос «сделай» может превратиться не только в ответ, но и в реальные действия.

Anthropic представила Claude Code как инструмент для агентного программирования через командную строку:

Мы также представляем инструмент командной строки для агентного программирования - Claude Code.

На старте продукт имел статус limited research preview. 22 мая 2025 года Claude Code стал общедоступным. В changelog переход отмечен как версия `1.0.0`.

Обычный чат-бот и Claude Code отличаются по типу действий.

| Обычный чат-бот | Claude Code |
| --- | --- |
| Отвечает текстом | Изучает структуру папки и находит связанные файлы |
| Фрагмент кода вставляешь сам | Предлагает план и вносит правку |
| Файлы и команды не трогает | Работает с инструментами проекта |

Именно здесь начинается риск. Агент видит больше одного сообщения и может получить доступ к инструментам проекта. Чтение файла, изменение файла, Bash-команда и сетевое действие не равны друг другу. У каждого действия своя граница доступа.

Я бы не начинал с доверия всему проекту. Внутри папки могут лежать настройки, hooks, скрипты и инструкции, которые агент прочитает при запуске. Сам факт, что файл находится рядом с кодом, не делает его безопасным.

## Как Claude Code работает через командную строку?

Claude Code работает как CLI из терминала, а не через отдельный чат с ручным копированием файлов. Claude Code запускается как CLI, связывается с папкой проекта и получает доступ к инструментам по отдельным правилам. Сначала он может читать и анализировать, а изменение файлов, Bash и сеть должны иметь собственные ограничения.

Терминал здесь нужен как рабочая точка. Ты открываешь командную строку в папке проекта, а агент получает возможность взаимодействовать с файлами и инструментами этой среды.

У действий разные уровни доступа:

| Действие | Что делает агент |
| --- | --- |
| Чтение | Смотрит файлы и изучает структуру проекта |
| Изменение | Редактирует или записывает файлы |
| Bash | Выполняет команды shell и запускает процессы |
| Сеть | Обращается к внешним адресам, скачивает данные или отправляет их наружу |

Эти границы нельзя сливать в одну настройку. Встроенный sandbox ограничивает Bash-подпроцессы. Инструменты `Read`, `Edit` и `Write` работают через отдельную permission-систему.

Песочница изолирует подпроцессы Bash.

Из этого следует простой порядок. Сначала проверь, какие файлы агент видит. Затем отдельно проверь, что ему разрешено менять. После этого разбирай Bash и сетевые действия.

Фраза «агент работает в песочнице» не означает, что вся сессия закрыта одной защитой. Переменные окружения родительского процесса по умолчанию доступны sandboxed Bash-командам. Поэтому секреты нельзя держать в зоне, где агент может получить к ним доступ.

## Как начать работу с проектом?

открой не весь компьютер, а отдельную рабочую папку без production-доступа и настоящих ключей. Начни с чтения и анализа, попроси агента описать план небольшой задачи, проверь затрагиваемые файлы и только потом разреши изменения. После правки запусти проверку и сравни результат с исходным состоянием.

![Кот рассматривает схему из четырёх шагов безопасной работы с проектом.](https://s3.regru.cloud/crossmark/statejnik/images/guides/claude-code-bezopasnyy-dopusk-agenta-k-proektu/kadr-1.webp)

Не открывай агенту домашний каталог, весь диск, рабочие облачные аккаунты или production-среду.

Отдельная папка уменьшает blast radius: если агент ошибётся, область возможного ущерба будет ограничена этой средой. Для первой задачи подойдёт копия проекта или тестовая рабочая среда без настоящих данных.

Не клади туда [`.env`, SSH-ключи, production credentials и Docker socket](/guides/claude-code-zakryt-sekrety-ot-agenta-pered-pervoj-zadachej). Секреты не должны попадать в контекст только потому, что рядом лежит нужный файл.

Сначала попроси агента изучить структуру проекта и назвать файлы, которые относятся к задаче.

Не проси сразу «починить всё». Первая задача должна показать, как агент читает проект, какие зависимости считает связанными и какие действия собирается выполнить.

   

Опиши конкретный результат и границы правки.

Хорошая первая задача - изменение, которое можно проверить глазами и тестом. Например: разобраться, где находится нужная страница, и предложить минимальную правку. Плохая формулировка - «приведи проект в порядок»: она оставляет агенту слишком широкое поле решений.

Посмотри, какие файлы, команды и внешние ресурсы агент собирается затронуть.

Если в плане появились удаление, перенос большого числа файлов, установка пакетов, сетевой доступ или работа вне папки, остановись. Уточни задачу и сузь разрешения.

Anthropic описывает похожий порядок работы своих команд: агент получает абстрактную задачу, исследует её, предлагает решение, а люди проверяют результат перед финальной доработкой.

> Самые успешные команды относятся к Claude Code как к партнёру для размышлений, а не просто как к генератору кода.
> - Anthropic, [How Anthropic teams use Claude Code](https://www.anthropic.com/news/how-anthropic-teams-use-claude-code)

Дай доступ к записи после проверки плана. Отдельно решай, нужны ли Bash-команды и сеть. Для смены текста в файле сеть обычно не относится к задаче. Если агент просит её включить, попроси объяснить конкретную причину.

Сравни изменённые файлы с задачей и запусти доступную проверку.

Не принимай сообщение «готово» как доказательство. Нужны фактические признаки: список изменённых файлов, вывод проверки и понятное описание того, что именно поменялось.

Не оставляй агенту лишний доступ после завершения задачи.

Checkpoints и отдельная рабочая среда нужны для обратимости. Если правка пошла не туда, сначала останови работу и вернись к сохранённому состоянию вместо просьбы агенту «самому отменить всё».

Отдельная папка снижает ущерб, но не запрещает сетевые действия, Bash или доступ к переменным окружения. Проверь файловые и сетевые границы отдельно.

## Что агент может делать в проекте?

Claude Code агенты могут перемещаться по проекту, читать файлы, анализировать связи, запускать тесты, искать причины ошибок, готовить документацию, собирать прототипы и менять код. Возможность выполнить действие не означает, что действие стоит разрешать. Я разделяю полезность операции и право агента на её выполнение.

Реальные сценарии работы включают:

- навигацию по проекту;
- анализ существующего кода;
- запуск тестов;
- отладку;
- подготовку документации;
- прототипирование;
- изменение файлов.

Для новичка полезно разделять два вопроса:

1. Поможет ли это действие решить задачу?
2. Должен ли агент иметь право выполнять его без отдельного подтверждения?

Например, чтение нескольких файлов может быть полезным и низкорисковым. Изменение конфигурации уже требует проверки. Bash-команда может удалить данные, установить пакет или обратиться к внешнему адресу. Сетевая операция может вынести секрет за пределы рабочей среды.

Команда Anthropic даёт Claude Code абстрактные задачи, позволяет ему работать автономно, а затем проверяет решения перед финальными изменениями. Рабочая схема включает ограниченную среду и проверку результата.

Я бы начал с роли исследователя. Пусть агент найдёт нужное место, объяснит связь файлов и составит план. Роль исполнителя подключается позже, когда понятны границы задачи.

## Как задать правила и ограничения для агента?

CLAUDE.md - это файл с инструкциями для работы в проекте. В нём можно зафиксировать цель задачи, разрешённую область файлов, запрет на секреты и обязательную проверку результата. Но `CLAUDE.md` не выдаёт агенту техническое право на любые действия. Для этого нужны permissions, sandbox и границы среды.

Файл [`CLAUDE.md`](/guides/claude-md-udalit-ili-perepisat) фиксирует рабочие правила, которые агент должен учитывать при чтении и изменении проекта.

В короткой инструкции стоит закрепить:

- какую папку считать рабочей;
- какие файлы относятся к задаче;
- что нельзя читать и менять;
- что секреты нельзя запрашивать, выводить и отправлять;
- какие проверки обязательны после правки;
- что изменение цели требует отдельного подтверждения.

Это текстовое правило с описанием допустимых действий. Техническая permission-система определяет, какие действия реально доступны агенту.

Настройки проекта, hooks и конфигурация не становятся безопасными только из-за расположения внутри рабочей папки. Anthropic отдельно описывала случай, когда Claude Code читал настройки проекта при запуске до стандартного подтверждения доверия к папке. Поэтому незнакомый проект нужно рассматривать как источник внешних инструкций, который требует проверки.

[Hooks](/guides/huki-ostanovit-opasnye-izmeneniya-claude-code) тоже равны отдельному механизму контроля. Они запускают произвольные shell-команды с правами текущего пользователя. Их можно использовать для аудита и дополнительных проверок, но не как единственную границу.

Инструкция устанавливает, что разрешено, а всё, что агент выбирает сам, считается неразрешённым, пока пользователь это не подтвердит.

## Как безопасно допустить Claude Code к проекту?

безопасный допуск Claude Code строится слоями: отдельная рабочая папка, файловая изоляция, сетевая изоляция, чтение по умолчанию и отдельное подтверждение записи, Bash и сети. Не подключай production, настоящие ключи и реальные чувствительные данные. Встроенный sandbox ограничивает Bash, но не заменяет permissions для `Read`, `Edit` и `Write`.

![Собака одобряет схему с отдельной папкой, файлами, Bash, сетью и секретами.](https://s3.regru.cloud/crossmark/statejnik/images/guides/claude-code-bezopasnyy-dopusk-agenta-k-proektu/kadr-2.webp)

Anthropic формулирует базовую модель так:

У него по умолчанию есть разрешения только на чтение.

Практический профиль допуска выглядит так:

- **Папка.** Только отдельная рабочая зона проекта.
- **Файлы.** Чтение сначала, запись после подтверждения.
- **Bash.** Только команды, которые понятны и относятся к задаче.
- **Сеть.** Запрещена по умолчанию или ограничена нужными адресами.
- **Секреты.** Не лежат в доступной агенту области.
- **Среда.** Без production-доступа и настоящих ключей.
- **Проверка.** Перед финальной доработкой нужен тестовый прогон.

Sandbox и permissions отвечают за разные части. Границы sandbox изолируют Bash-подпроцессы. Инструменты чтения и редактирования проходят через собственную систему разрешений. Поэтому проверка должна включать отдельные тесты для чтения, записи, Bash и сети.

Сетевую изоляцию нельзя считать второстепенной. Даже если агент работает только с копией проекта, он может скачать код, обратиться к внешнему адресу или передать данные наружу. Anthropic прямо связывает эффективную изоляцию файловой системы и сети:

Эффективная песочница требует одновременно изоляции файловой системы и сетевой изоляции.

Проверь также escape hatch sandbox. Claude Code может повторить команду с отключённой песочницей, если внутри неё команда завершилась ошибкой. Для жёсткой границы настройка `allowUnsandboxedCommands` должна быть установлена в `false`.

После изменения настроек сделай короткий тестовый прогон:

1. Попроси прочитать безопасный файл.
2. Проверь, что изменение файла требует ожидаемого разрешения.
3. Запусти простую Bash-команду.
4. Проверь сетевую команду.
5. Проверь попытку обратиться к файлу вне рабочей папки.
6. Посмотри фактический результат, а не только текст конфигурации.

Настройка может выглядеть корректной, но поведение не совпадает с ожиданием из-за версии, платформы или managed settings. Поэтому я всегда проверяю не только JSON или текст правил, но и реальную реакцию инструмента.

Безопасный допуск нужен, чтобы ошибка не могла затронуть production, настоящие данные и ключи. Защита нужна, чтобы даже при ошибке ущерб остался внутри рабочей папки.

Claude Code удобно разбирать руками на практикуме: там можно пройти путь от задачи и контекста до ограничений, тестового прогона и проверки результата. Это полезнее, чем просто запомнить названия настроек.

## Что ломается, если бездумно снять все разрешения?

claude code modes задают баланс подтверждений, а `--dangerously-skip-permissions` убирает защитный слой и небезопасен в большинстве ситуаций. Ручные запросы тоже не идеальны: после серии безопасных кликов появляется approval fatigue, и человек начинает разрешать действия автоматически. Auto mode пропустил около 17% опасных действий в тесте и не заменяет проверку.

![Мужчина закрывает лицо перед опасными разрешениями и командой без защитного слоя.](https://s3.regru.cloud/crossmark/statejnik/images/guides/claude-code-bezopasnyy-dopusk-agenta-k-proektu/kadr-3.webp)

Anthropic прямо предупреждает:

Флаг `--dangerously-skip-permissions` небезопасен в большинстве ситуаций.

Ручное подтверждение кажется надёжным, пока запросов немного. Потом интерфейс начинает спрашивать одно за другим. Anthropic пишет, что пользователи одобряют 93% permission prompts. Такой процент сам по себе ничего не говорит о безопасности. Он показывает, что подтверждение легко превращается в автоматическую кнопку.

Постоянное нажатие «одобрить» замедляет разработку и может привести к усталости от подтверждений.

Опасные последствия не обязательно выглядят драматично. Агент может неверно понять инструкцию, удалить удалённые ветки Git или попытаться выполнить миграцию в production-базе. Он не обязан «хотеть навредить». Достаточно ошибки в цели и слишком широкого доступа.

[Auto mode](/guides/claude-code-bezopasno-vklyuchit-auto-mode-dlya-pervogo-proekta) уменьшает число запросов, но остаётся компромиссом. В тесте на overeager behavior он пропустил около 17% опасных действий. Поэтому auto mode нельзя считать единственной защитой на важной инфраструктуре.

Если агент постоянно просит подтверждение, не запускай `--dangerously-skip-permissions` на рабочем проекте. Сузь область файлов, настрой sandbox и разреши только повторяющиеся безопасные действия.

Sandbox тоже не магический купол. Он ограничивает Bash, но не объединяет в одну систему `Read`, `Edit` и `Write`. Также escape hatch позволяет повторить команду вне sandbox, если `allowUnsandboxedCommands` не запрещает такой выход.

Мой критерий простой: если ты не можешь объяснить, какую команду агент собирается выполнить и что она изменит, подтверждение не нажимай. Если таких запросов слишком много, проблема кроется в настройке процесса, а скорость кликов здесь вторична.

## Вопросы и ответы

Фактура для этой статьи не содержит официальной последовательности команд, требований к окружению, установки и авторизации, включая сценарии claude code vscode и claude code remote. Без этих данных я не буду придумывать команду запуска. Безопасный первый сценарий начинается с отдельной рабочей папки без production-доступа, настоящих ключей и чувствительных данных, а затем с чтения и анализа без изменения файлов.

Сначала агент изучает структуру проекта и связанные файлы. Первые claude code tasks должны быть маленькими и проверяемыми. Затем получает небольшую задачу, предлагает план, после проверки плана получает разрешение на нужные изменения. В конце результат проверяется по изменённым файлам и фактическому выводу тестов. Команда Anthropic описывает похожий порядок: абстрактная задача, исследование, решение, проверка и финальная доработка.

Подготовь отдельную рабочую папку, не клади в неё `.env`, ключи и production credentials, включи чтение по умолчанию и раздели разрешения для файлов, Bash и сети. Для sandbox проверь `allowUnsandboxedCommands: false`. После настройки сделай тестовый прогон: чтение, изменение файла, Bash, сетевое действие и обращение за пределы рабочей папки.

Claude Code может использоваться в сценариях с ветками и checkpoints, но фактура не содержит базовой инструкции по Git или полного безопасного сценария отката. Поэтому не давай агенту доступ к удалённым веткам и production-репозиториям без отдельной проверки. Отдельная рабочая среда и обратимый тестовый прогон уменьшают последствия ошибочной команды.

Попроси агента перечислить изменённые файлы, сопоставить их с задачей и подготовить план проверки. Затем проверь результат фактическим выводом тестов и просмотром правок. Отдельной подтверждённой команды или режима code review в фактуре нет, поэтому я не буду придумывать специальный синтаксис review.

За безопасность отвечают не одна настройка, а несколько слоёв: permissions для действий с файлами, sandbox для Bash, файловая и сетевая изоляция, запрет выхода из sandbox через `allowUnsandboxedCommands: false` и правила в `CLAUDE.md`. Текст инструкции не заменяет технические ограничения и тестовый прогон.

Полного подтверждённого списка файлов, переменных окружения, конфигураций и исключений в фактуре нет. Claude Code работает с файлами и инструментами проекта, а sandboxed Bash по умолчанию получает переменные окружения родительского процесса. Поэтому не держи секреты в доступной агенту области и проверяй фактический контекст на тестовой папке.

Когда настраиваем claude code, разделяй разрешения для чтения, изменения файлов, Bash и сети. Не считай включённый sandbox разрешением для `Read`, `Edit` и `Write`: эти инструменты имеют отдельную permission-систему. Актуального примера `settings.json` в фактуре нет. После настройки проверь реальное поведение каждой границы, потому что конфигурация может не примениться ожидаемым образом.

- [Claude 3.7 Sonnet and Claude Code - Anthropic](https://www.anthropic.com/news/claude-3-7-sonnet)
- [Our framework for developing safe and trustworthy agents - Anthropic](https://www.anthropic.com/news/our-framework-for-developing-safe-and-trustworthy-agents)
- [Making Claude Code more secure and autonomous with sandboxing - Anthropic](https://www.anthropic.com/engineering/claude-code-sandboxing)
- [How we built Claude Code auto mode - Anthropic](https://www.anthropic.com/engineering/claude-code-auto-mode)
- [How we contain Claude across products - Anthropic](https://www.anthropic.com/engineering/how-we-contain-claude)
- [How Anthropic teams use Claude Code - Anthropic](https://www.anthropic.com/news/how-anthropic-teams-use-claude-code)
- [Configure the sandboxed Bash tool - Claude Code Docs](https://code.claude.com/docs/en/sandboxing)
- [Claude Code power user customization: How to configure hooks - Claude](https://claude.com/blog/how-to-configure-hooks)
