devops-env

Инвентаризация env-переменных — где читаются, обязательность, .env.example без значений, проверка утечек секретов (роль devops). Use когда нужно разобраться с конфигурацией или секретами проекта.

SKILL.md

GitHub
<!-- generated by scripts/generate-codex-skills.mjs; edit canonical agents/, commands/ or skills/ -->

Проведи инвентаризацию env-переменных проекта: запрос пользователя.

  1. Найди все чтения env: grep -rn "process\.env\." src/ (+ import.meta.env, env( в конфигах), схемы валидации (zod/envalid), docker-compose.yml, render.yaml, .github/workflows/. Составь таблицу: переменная → где читается (file:line) → обязательна/опциональна → дефолт → секрет ли.
  2. Классифицируй: секреты (ключи, токены, строки подключения с паролем) vs конфиг (порты, флаги, URL без кредов). Секреты — только через env/секрет-хранилища: локально .env (в .gitignore), CI — GitHub secrets, Render — env-переменные сервиса (через агента $render).
  3. Собери .env.example: все переменные с комментарием-назначением, без значений (или с безопасными плейсхолдерами вида postgres://user:pass@localhost:5432/db). Проверь, что .env* в .gitignore и в .dockerignore — секреты не должны попадать ни в репо, ни в слои образа.
  4. Проверь утечки: git grep по сигнатурам ключей (sk-, AKIA, -----BEGIN, паролям в URL) в трекаемых файлах; найденное — сообщи владельцу (ротация ключа — его решение, сам не ротируй).
  5. Сверь среды: переменные, которые читаются в коде, но отсутствуют в .env.example/compose/CI — перечисли как разрывы. Помни: в Docker изменения env применяются только через docker compose up -d --force-recreate.

Края: пустой запрос пользователя — текущий каталог. Найденный закоммиченный секрет — не удаляй историю сам, доложи. Значения прод-переменных не выводи в ответ.

Отдай: таблицу инвентаря, .env.example (путь), список разрывов/утечек, следующий шаг. Опирайся на навыки docker, ci-cd, backend-architecture. Делегируй субагенту $devops.