agent-secrets CLI

agent-secrets выдает ИИ-агенту ключи на время: шифрование age, аренда секрета с TTL, журнал доступа и аварийный отзыв.

  • 114 ★ репозитория
  • Последний коммит
  • MIT
CLI

Широкий доступ

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

  • Агент получает открытое значение ключа и может им воспользоваться или передать дальше.
  • Утилита хранит все ключи и ключ шифрования на диске пользователя и запускает фонового демона.
Все причины и проверки

joelhooks/agent-secrets

Установка

Работает в

Ручная установка

curl -fsSL https://raw.githubusercontent.com/joelhooks/agent-secrets/main/install.sh | bash

Первый вариант из README для macOS, Linux и WSL. Другие: сборка из клона и `go install`.

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

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

Широкий доступИнструмент может менять данные, выполнять команды или работать с секретами.

  • Агент получает открытое значение ключа и может им воспользоваться или передать дальше.
  • Утилита хранит все ключи и ключ шифрования на диске пользователя и запускает фонового демона.

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

Что делает

Менеджер секретов на Go для агентов. Ключи лежат в хранилище с шифрованием age, а агент получает вместо пароля аренду секрета: `secrets lease github_token --ttl 30m` возвращает значение на ограниченное время. Каждая операция попадает в журнал только на добавление, `secrets audit` показывает последние записи. Демон слушает сокет Unix. Команда `secrets revoke --all` отзывает все аренды, а необязательные хуки ротации (например `gh auth refresh`) обновляют ключи. Корневая команда `secrets` печатает дерево команд в JSON, поэтому агент находит их сам. Есть навык OpenClaw, который учит агента пользоваться утилитой.

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

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

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

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

  • Нужен готовый облачный менеджер паролей с командной работой.
  • Хост запрещает фоновый демон с сокетом.
  • Агент должен читать секреты без аренды и журнала.

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

Возьми в аренду на 30 минут `github_token` через `secrets lease`, выполни git push и сразу отзови аренду.

Ограничения

Выданное значение секрета агент видит открытым текстом: аренда ограничивает срок, но не скрывает ключ от процесса, который его получил. Для большинства команд демон должен работать: `secrets serve &` запускает его, установочный скрипт делает это сам. Установка командой `curl ... | bash` выполняет скрипт из сети, сначала прочитайте его. В версии 0.5.x часть флагов устарела и уйдет в 0.6.0, старые скрипты надо обновить.

Как отключить. Выполните `secrets revoke --all`, остановите демон и удалите папку `~/.agent-secrets` вместе с бинарным файлом `secrets`. Ключи, которые лежали в хранилище, перевыпустите у поставщиков.

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

Как получить секрет в агенте?

Выполните `export GITHUB_TOKEN=$(secrets lease github_token)`. По умолчанию команда печатает только значение, а флаг `--json` добавляет данные аренды.

Как отозвать все ключи?

Команда `secrets revoke --all` сразу аннулирует все активные аренды. По желанию она запускает ротацию и стирает хранилище.

Какой максимальный срок аренды?

По умолчанию 24 часа, значение задается в `config.json` полем `max_lease_ttl`.

Где хранится журнал?

Журнал доступа только на добавление, посмотреть его можно командой `secrets audit --tail 20`.

Что за навык для агента?

Навык OpenClaw ставится командой `npx openclaw skills add https://github.com/joelhooks/agent-secrets` и описывает работу с утилитой.

Обсуждение

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

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

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

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

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

Консольная утилита ищет ключи и пароли в локальной истории ИИ-агентов и затирает их, сохраняя структуру JSONL.

CLIРасширенный доступ88Звезды репозитория

AgentGuard проверяет действия кодинг-агента до запуска и сканирует чужие скиллы на секреты, бэкдоры и промпт-инъекции.

ПлагинРасширенный доступ493Звезды репозитория

Vigils стоит между ИИ-агентом и его инструментами: скрывает секреты, спрашивает разрешения и пишет неизменяемый журнал вызовов

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

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

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

Коротко о README

README объясняет, зачем нужна аренда секретов, показывает установку, быстрый старт, формат JSON-ответов, команды, схему демона, модель безопасности и конфиг. Есть руководство по переходу с 0.4.x на 0.5.x.

Бейдж для README

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