dotenvx CLI

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

  • 5 880 ★ репозитория
  • Последний коммит
  • BSD-3-Clause
CLI

Расширенный доступ

Почему такой уровень

  • CLI расшифровывает секреты и передает их запущенному процессу; защита вывода не ограничивает полномочия этого процесса.
Все причины и проверки

dotenvx/dotenvx

Установка

Работает в

В терминале, через SkillFoxx CLI

npx skillfoxx add cli/dotenvx

Определит агенты на машине, покажет уровень доступа и зафиксирует версию.

Другие способы установки

Доступ и проверки

Как мы проверяем

Расширенный доступИнструмент запускает код или ходит в сеть, а внешние данные только читает.

  • CLI расшифровывает секреты и передает их запущенному процессу; защита вывода не ограничивает полномочия этого процесса.

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

Что делает

dotenvx, инструмент командной строки, хранит значения переменных окружения в зашифрованном виде и расшифровывает их при запуске приложения. Файл с шифротекстом можно версионировать рядом с проектом, а приватный ключ хранить отдельно в среде исполнения. CLI подходит для запуска программ на разных языках. Можно выбирать env-файлы под окружение и управлять порядком загрузки значений. Для работы с CLI-агентами описан режим сокрытия секретов в выводе процесса. При этом сама запущенная программа получает настоящие значения и должна иметь право ими пользоваться.

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

Подходит, если

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

Не подходит, если

  • Приватный ключ собираются хранить в том же репозитории без отдельной защиты.
  • Требуется запретить запущенной программе доступ к расшифрованным значениям.
  • Сокрытие вывода принимают за полную изоляцию агента от сети и файлов.

Пример запроса к агенту

Подготовь dotenvx для тестового приложения: опиши хранение ключа и порядок env-файлов. Не читай реальные секреты в чат и не коммить их.

Ограничения

Для расшифрования нужен приватный ключ; шифротекст без него не восстановит окружение приложения. Ключи следует хранить отдельно от публикуемых env-файлов и учитывать при резервном копировании. Режим сокрытия вывода не скрывает значения от самого процесса, поэтому разрешения агента и доступ к сети остаются отдельной задачей. При загрузке нескольких файлов уже существующие переменные по умолчанию имеют приоритет; изменение этого порядка требует явного режима overload.

Как отключить. Верните приложению прежний способ загрузки переменных, затем удалите CLI. Перед удалением ключей проверьте, что нужные окружения можно восстановить.

Частые вопросы

Что хранится в env-файле после шифрования?

Значения переменных заменяются шифротекстом.

Как запустить приложение с переменными?

В примере Node.js используется `dotenvx run -- node index.js`. После разделителя укажите команду своего приложения, которому нужно передать переменные.

Можно ли шифровать без приватного ключа?

Да. Для нового файла можно передать существующий публичный ключ через `--with`. Приватный ключ потребуется при запуске приложения.

Мешает ли сокрытие вывода агенту прочитать секрет?

Нет. Процесс получает реальные значения, а режим скрывает их в выводе. Ограничьте доступ агента отдельно.

Почему значение из env не заменило уже заданную переменную?

Уже заданные переменные имеют приоритет. Флаг `--overload` меняет этот порядок; включайте его только тогда, когда значения из файла должны заменить текущее окружение.

Обсуждение

Вопросов и отзывов пока нет.

Скилл и CLI для .env.schema: агент видит имена, типы и правила переменных окружения, а значения секретов в его контекст не попадают

СкиллРасширенный доступ5 тыс.Звезды репозитория

Vahta дает агенту использовать ваши пароли и API-ключи через зашифрованное хранилище, не показывая сами значения

CLIШирокий доступ71Звезды репозитория

EnvLatch хранит API-ключи в связке ключей macOS и дает команде агента только выбранные переменные окружения, без файлов .env

CLIШирокий доступ99Звезды репозитория

Обертка над 1Password CLI: агент находит, использует и сохраняет секреты, не видя значений, и реже просит одобрения

CLIШирокий доступ326Звезды репозитория

Утилита хранит ключи в системной связке и подставляет их в запрос на транспортном уровне, так что агент значения не видит.

CLIШирокий доступ197Звезды репозитория

Lade выдает команде секреты и доступ к закрытой сети только на время ее работы, а потом убирает, для людей и для агентов

CLIШирокий доступ136Звезды репозитория

Коротко о README

Пакет также подключается как библиотека JavaScript. CLI-примеры показывают несколько способов установки и раздельные файлы для разных окружений.

Бейдж для README

Сообщить о проблеме