
agent-vault-proxy v0.9.0
Just-in-time API-ключи для ИИ-агентов — и любого другого процесса, который вы через него маршрутизируете: вызывающая сторона видит только плейсхолдер.
Keys on the Wire
Ваш ИИ-агент никогда не хранит ваши API-ключи. Он отправляет заполнитель; настоящий секрет подставляется на лету.
Останавливает похитителей учётных данных (Shai-Hulud и подобные) и агентов с prompt-инъекциями от утечки ваших секретов. Скомпрометированному агенту нечего красть.
Как это работает
- Ваш агент отправляет запрос с заполнителем, а не с ключом.
- Keys on the Wire подставляет настоящий секрет из вашего хранилища, в процессе передачи.
- Агент никогда не видит ключ. Нечего утекать, нечего красть.
Под капотом это loopback HTTPS-прокси. Он извлекает каждое учётное данное из вашего хранилища точно в срок и внедряет его в исходящий запрос, поэтому вызывающий процесс (ваш агент или что угодно ещё, что вы маршрутизируете через него) никогда не держит реальные байты.
Бэкенды хранилищ: macOS Keychain, Bitwarden Secrets Manager, Google Secret Manager, AWS Secrets Manager, static (без хранилища, для ознакомления) и env. На Mac бэкенд Keychain не требует облачной учётной записи хранилища и дополнительных зависимостей: ваши секреты остаются там, где они уже есть. (kow setup по-прежнему по умолчанию использует Bitwarden; передайте нужный бэкенд.) См. Архитектура адаптеров.
Посмотрите в действии
Быстрый старт
1. Установка (Linux pipx, macOS brew):
pipx install 'keys-on-the-wire[bitwarden]'
# macOS: brew install inflightsec/keys-on-the-wire/keys-on-the-wire
sudo kow setup --bws
2. Установите навык, чтобы ваш агент сам писал привязку за вас:
/plugin marketplace add inflightsec/keys-on-the-wire
/plugin install kow@keys-on-the-wire
3. Оформите сервис через брокера. Скажите «маршрутизируй Stripe API через Keys on the Wire». Навык создаёт заполнитель и выводит точную заметку для вставки в ваше хранилище. Он никогда не видит ваш ключ.
4. Добавьте реальный ключ в ваше хранилище с этой заметкой, затем маршрутизируйте агента через прокси:
kow env && kow run claude
Готово. Агент всегда отправляет только заполнитель; Keys on the Wire подставляет реальный ключ на лету.
Новичок? Руководство по быстрому старту подробно описывает первый запуск, а Предварительные требования охватывает настройку хранилища. Предпочитаете переменные окружения shell вместо kow run? См. Использование.
Прежде чем направлять на него производственные ключи
- Испытайте за одним процессом.
kow run -- <command>задаёт переменные прокси и CA только в этом процессе; ваша оболочка входа никогда их не наследует. Ограничение одним процессом. - Fail-closed — единственный режим. Если kow недоступен, маршрутизируемые вызовы завершаются сбоем; привязка с запретом возвращает 503, а не пропускает запрос без защиты.
- Он останавливает кражу, а не злоупотребление. kow убирает ключ из контекста агента; он не оценивает, зачем вызывается API. Сужение привязки с помощью
methods:иpaths:— это рычаг, и он применяется. Подходит ли вам? описывает полные границы. - Поддержка аутентификации помимо статических заголовков: OAuth2 refresh и client-credentials, JWT bearer, GitHub App, HMAC и AWS SigV4, с пресетами для Google, Microsoft, Auth0, Slack, Atlassian и Okta.
Оформите MCP-сервер через брокера
Каждый MCP-сервер хранит долгоживущий токен в открытом виде в конфигурации вашего клиента, доступный каждому другому серверу, который загружает клиент. kow mcp install заменяет этот постоянный секрет на заполнитель и маршрутизирует исходящий трафик сервера через прокси:
kow mcp install github --host api.github.com --env-var GITHUB_PERSONAL_ACCESS_TOKEN \
--server-cmd "npx -y @modelcontextprotocol/server-github"
Он выводит заметку для хранилища и точную команду claude mcp add --env. Дизайн и модель угроз: ADR-0040.
Привязка — это одна строка
Подключение учётных данных — это не написанный вручную YAML. Встроенный навык kow спрашивает форму аутентификации и хост, затем сообщает вам точно, что вставить в поле Notes вашего секрета:
# kow-binding
api.acme.com
Эта строка-маркер и делает заметку привязкой; без неё заметка остаётся обычным человеческим описанием и никогда не парсится (ADR-0025). Ассистент предлагает, вы применяете. Он никогда не видит и не хранит секрет.
Документация
Начните здесь — Подходит ли вам?, если вы оцениваете · Предварительные требования для настройки хранилища · Быстрый старт для первого запуска за 10 минут.
Понять — Концепции о заполнителе, привязке, CA и fail-closed простыми словами · Архитектура о модели угроз, инвариантах G1–G9 и остаточных рисках.
Установка и эксплуатация — Linux · Docker · macOS · Использование · Один процесс · Изоляция Linux · Изоляция macOS · Google Secret Manager
Справочник — bindings.example.yaml — полная схема конфигурации · Архитектура адаптеров о бэкендах хранилищ и как добавить свой · Сравнение с Vault Agent, Doppler, op run и другими · CHANGELOG · SECURITY · CONTRIBUTING · CREDITS
Открытый исходный код, без привязки
Каждая функция находится в этом репозитории под лицензией Apache-2.0. Нет платного уровня, нет облачного сервиса, нет телеметрии. Прокси никогда не связывается с домом: его единственные исходящие соединения — это ваше хранилище и вышестоящие API, которые вызывает ваш агент. Если альтернатива лучше подходит под вашу настройку, используйте её.
Одна необязательная зависимость не является открытым исходным кодом — bitwarden-sdk для бэкенда Bitwarden, которую вы устанавливаете только если используете этот бэкенд. См. LICENSE и NOTICE.