Безопасность
Четыре правила безопасности при вайб-кодинге: защита секретов, работа с терминалом и агентними IDE.
Дата составления: 2026-03-30
Статус: ✅ Актуально
Суть
Большинство проблем безопасности при вайб-кодинге связаны с одним: секреты (API-ключи, токены, пароли) попадают в публичный доступ или выполняется команда, последствия которой сложно обратить. Четыре правила ниже закрывают основные риски.
Правило 1 — Все секреты только в .env
Секреты — это любые данные, компрометация которых дает кому-то доступ к вашим аккаунтам, деньгам или переписке. К секретам относятся:
API-ключи нейросетей (OpenAI, Anthropic и т. д.) — одновременно идентификация и счет к оплате.
Токены Telegram-бота — дают полный контроль над ботом.
Session strings — строки сессии (Telethon, Pyrogram): эквивалент логина в аккаунт, даже без пароля.
Database URL — адрес базы данных с логином и паролем.
SMTP-данные — логин и пароль для отправки писем.
SSH-ключи — доступ к серверу.
Все они должны храниться только в файле .env в корне проекта:
OPENAI_API_KEY=sk-... TELEGRAM_BOT_TOKEN=7123456789:AAF... DATABASE_URL=postgresql://user:pass@host/db
При деплое на хостинг ключи вводятся в раздел «Переменные окружения» — в коде их быть не должно.
Правило 2 — .gitignore до первого коммита
Файл .gitignore говорит Git, какие файлы не нужно добавлять в репозиторий.
Создайте его до git add . — иначе .env попадет в историю коммитов, и даже если потом его удалить, он останется в старых коммитах.
Попросите нейросеть создать .gitignore для вашего проекта — она знает, какие файлы типичны для вашего стека и что из них нельзя публиковать.
Правило 3 — Просите LLM объяснять команды терминала
Нейросеть часто предлагает запустить команду в терминале — установить зависимость, настроить окружение, задеплоить. Не запускайте команду, которую не понимаете.
Если не знаете, что делает команда, спросите прямо:
«Объясни, что делает эта команда и каждый ее флаг: pip install -r requirements.txt —no-cache-dir»
Это особенно важно для команд, которые изменяют файловую систему или загружают код из Интернета. Особо опасные:
rm -rf— удаляет файлы и папки без возможности восстановления.curl ... | bash— скачивает и сразу запускает код из Интернета.chmod 777— открывает файл для записи всем.
Добавьте в системную инструкцию вашей IDE или чата с нейросетью: «Перед тем как предложить команду для терминала, объясни, что она делает, и укажи, необратима ли она».
Правило 4 — Особые правила для агентних IDE
Агентние IDE (Cursor, Windsurf, Antigravity, Claude Code) действуют самостоятельно: создают файлы, удаляют их, запускают команды в терминале без вашего участия в каждом шаге. Это удобно, но требует дополнительной осторожности.
Изолируйте агента в папке проекта. Не запускайте агента из корня диска или домашней директории — он должен видеть только файлы вашего проекта, а не всю файловую систему.
Не отключайте «Ask before run». В большинстве агентних IDE есть режим подтверждения перед выполнением терминальных команд. Оставляйте его включенным, пока не разберетесь с проектом.
Делайте **git commit** перед каждой агентной сессией. Агент может случайно перезаписать или удалить файлы. Если есть коммит — всегда можно откатиться.
Добавьте в системную инструкцию агента: «Перед выполнением каждой команды терминала объясняй, что она делает. Перед удалением или перезаписью файлов — спрашивай подтверждение».
Если API-ключ утек
Если .env случайно попал в публичный репозиторий или вы поняли, что ключ скомпрометирован:
Немедленно отзовите ключ — в личном кабинете сервиса (OpenAI, Anthropic и т. д.) найдите раздел API Keys и удалите скомпрометированный ключ
Выпустите новый ключ и добавьте его в
.envПроверьте расходы — в личном кабинете посмотрите, не было ли неожиданных списаний
Очистите историю Git — попросите нейросеть: «Как удалить файл
.envиз всей истории Git-репозитория?»
Чек-лист безопасности
Все секреты в
.env, не в коде.envесть в.gitignore.gitignoreсоздан до первогоgit commitРепозиторий приватный (или в коде точно нет секретов)
Все команды терминала поняты перед запуском
Для агентних IDE: включено подтверждение команд, агент изолирован в папке проекта
На хостинге переменные окружения добавлены в настройки, не в код
Что учесть
Даже если вы не подключали платежные данные к вашим API-ключам, это не значит, что их можно хардкодить. Бесплатные тарифы API нейросетей имеют лимиты. При утечке ключа злоумышленник быстро исчерпает лимит.
Устанавливая пакеты через
pip install, проверяйте название на pypi.org: популярные библиотеки часто подделывают со схожими именами (reqeustsвместоrequests).
Связанные статьи
Версионирование — как настроить
.gitignoreи не потерять рабочий кодИнструменты — пять способов вайб-кодинга
Глоссарий — API-ключ,
.env, хардкодинг, тайпсквоттинг, session string
Теги: #инструкция #новичок #вайб-кодинг #безопасность