Секреты
Храните пароли, токены и ключи в связке ключей, а не в файлах рабочего пространства, и передавайте их инструменту командной строки и CI.
Секрет — это переменная, значение которой остаётся в связке ключей на вашем Mac. В файле рабочего пространства лежит только её имя, так что рабочее пространство можно коммитить и передавать, не раскрывая свои учётные данные. Используйте секреты для паролей, токенов, API-ключей и всего, что вы не стали бы вставлять в чат.
Как сделать переменную секретом
- Откройте таблицу переменной: страницу «Окружения», Настройки папки… › Переменные или вкладку Переменные запроса.
- Добавьте переменную или найдите её и отметьте Секрет.
- Введите значение в поле (в нём написано Не задано на этом Mac) и нажмите ↩ или Сохранить.
Поле больше никогда не показывает значение. Когда значение задано, в нём написано Хранится в Связке ключей и нарисован ключ. Чтобы изменить значение, введите новое и сохраните.
Секрет используется как любая переменная: {{token}}.

В файле секрет — это имя и флаг, без значения:
[[variables]]
name = "token"
secret = trueУ каждого уровня своё значение. Секрет password в окружении Staging и секрет в Production — это два элемента связки
ключей, так что у каждого окружения может быть свой пароль.
Где лежат значения
Значения хранятся в вашей связке ключей входа, по одному элементу на секрет, с меткой Echolot secret <name>. Они
принадлежат рабочему пространству (по его ID, который записан в workspace.toml) и уровню, на котором определена
переменная. Инструмент командной строки на том же Mac читает те же элементы.
Секрет без значения на этом Mac не подменяется значением другого уровня. Запрос сообщает
the secret {{password}} has no value on this Mac, пока вы не зададите значение.
Версия из Mac App Store
Редакция для App Store использует ту же связку ключей. Элементы, созданные загрузкой с сайта или инструментом командной строки, могут один раз запросить доступ; выберите Всегда разрешать.
Сравнить версииЧто никогда не попадает в файлы
Echolot не пишет в файлы рабочего пространства:
- Значения секретных переменных.
- Секреты, которые сохраняют захваты из ответов: захват, помеченный как секретный, пишет
только в связку ключей. В Alpenglow Auth › Sign in захватывает
access_tokenв секрет{{token}}. - Токены OAuth 2.0 и входы в MCP.
- Значения, которые вы переносите командой Переместить в Связку ключей (см. ниже).
То, что вы вводите открытым текстом, остаётся открытым текстом. Если поле пароля авторизации или прокси содержит
буквальное значение вместо переменной, Echolot предупреждает под ним:
Сохраняется открытым текстом в файле рабочего пространства. Нажмите Переместить в Связку ключей: значение станет секретной переменной рабочего пространства, а
в поле вместо него появится {{name}}.
Секреты скрываются и везде, где Echolot показывает или передаёт дальше разрешённый запрос: в предпросмотрах, Быстром просмотре, панели «Переменные», поиске по истории и во всём, что получают агенты. Сгенерировать код… и Скопировать как cURL — исключение: они записывают запрос в том виде, в каком он будет отправлен, вместе с секретами.
Импорт переносит учётные данные в секреты
Когда вы импортируете коллекцию Postman, экспорт Insomnia или другой файл, пароли,
токены и API-ключи, найденные в настройках авторизации и заголовках с учётными данными, становятся секретными
переменными. Их значения уходят в связку ключей, а в запросе вместо них появляется {{name}}: имя запроса и поле,
например {{me_password}}. Отчёт об импорте перечисляет имена сохранённых секретов, но не значения.
Учётные данные, записанные в адресах (https://user:pass@…), строках запроса и телах, пока не переносятся. После
импорта проверьте их.
Экспорт оставляет значения за скобками
Экспорт записывает секретные переменные только по имени, без значения, в любом формате. Тот, кто открывает экспорт, задаёт значения у себя.
Секреты в командной строке и в CI
Инструмент командной строки ищет значение секрета в таком порядке:
- Файл
--secrets, переданныйecholot run: строки видаNAME=value. - Переменная окружения
ECHOLOT_SECRET_<NAME>: имя заглавными буквами, где каждый символ, кроме буквы и цифры, заменён на_.{{token}}читаетECHOLOT_SECRET_TOKEN;{{api-key}}читаетECHOLOT_SECRET_API_KEY. - На Mac — элементы связки ключей, которые ведёт приложение.
ECHOLOT_SECRET_TOKEN=… echolot run Alpenglow.echolot --folder orders
echolot run Alpenglow.echolot --env staging --secrets staging.secretsСвязка ключей пропускается, если задана CI и если ECHOLOT_KEYCHAIN=0. В CI задавайте переменные
ECHOLOT_SECRET_… из хранилища секретов вашей CI. См. CI.
Секрет, найденный в окружении, действует для всех уровней: ECHOLOT_SECRET_PASSWORD отвечает на {{password}} в любом
окружении.
Импорт в командной строке переносит учётные данные в секреты так же, как приложение. Без связки ключей инструмент
сообщает, какие переменные ECHOLOT_SECRET_… нужно задать.
Первое открытие у коллеги
Коллега, который клонирует рабочее пространство, получает имена всех секретов и ни одного значения. В его таблицах написано Не задано на этом Mac. Он один раз задаёт свои значения, и дальше все работают с одними и теми же файлами, каждый со своими учётными данными. См. Git и команды.
Окружения и переменные
Используйте переменные в запросах, храните набор значений для каждого сервера в окружении, переключайтесь между ними и узнавайте, какое значение победит.
Защищённые окружения
Пометьте окружение, например Production, как защищённое, чтобы каждая отправка в него сначала спрашивала подтверждение — и у вас, и у агентов.
