Проксі облікових даних
Ваші агенти роблять виклики API.
Вони ніколи не повинні зберігати ключі.
Clavitor Proxy знаходиться між Вашими ШІ-агентами та API, до яких вони звертаються. Облікові дані вставляються на мережевому рівні — агент ніколи не бачить, не зберігає та не реєструє справжній секрет. Один бінарний файл. Одна змінна середовища. Нуль змін у коді.
Проблема, яка вже існує у Вас
Секрети у змінних середовища
Ваші агенти читають OPENAI_API_KEY із середовища. Цей ключ видно в /proc, у дампах збоїв, у логах CI, у кожному інструменті, який викликає агент. Один витік рядка логу — і ключ стає загальнодоступним.
Секрети в пам'яті агента
Навіть якщо агент отримує ключ під час виконання, він зберігає його в пам'яті протягом усього процесу. Компрометована навичка, ін'єкція підказок, дамп налагодження — ключ доступний для зловмисника.
Відсутність аудиту використання
Коли ключ API передається як рядок, немає запису про те, який агент його використовував, коли або для чого. Якщо ключ витече, Ви його ротуєте і сподіваєтеся. Немає криміналістичного сліду.
Проблеми, яких ми сподіваємося у Вас не буде
Ключі API у вихідному коді
Жорстко закодовані у файлі конфігурації, зафіксовані в git, клоновані кожним розробником та CI-раннером у команді. Один публічний форк — і він потрапляє на панель моніторингу сканування секретів GitHub — або, що гірше, не потрапляє.
Облікові дані в Slack
«Можеш надіслати мені ключ Stripe?» Надіслано в особистому повідомленні, доступне для пошуку назавжди, експортовано в кожному архіві відповідності. Slack — це не сховище. Так само як і електронна пошта, Google Docs або стікер на моніторі.
Файли .env на кожному ноутбуці
Дванадцять розробників, дванадцять копій виробничих облікових даних у файлах відкритого тексту, які ніколи не ротуються. Один вкрадений ноутбук, один витік ~/.bash_history, один надто корисний інструмент резервного копіювання — і Ви ротуєте кожен ключ у компанії о 2 годині ночі.
Повністю вилучіть облікові дані з агента.
Проксі знаходиться між агентом та API. Агент записує посилання — clavitor://OpenAI/key — туди, де має бути секрет. Проксі розпізнає його локально, вставляє справжні облікові дані у запит HTTPS і пересилає його. Логи агента показують плейсхолдер. API отримує ключ. Ніщо між ними не зберігає його.
Жодних змінних середовища. Жодних секретів у пам'яті агента. Жодних облікових даних у командному рядку. Справжній ключ ніколи не потрапляє в середовище агента, його пам'ять чи журнали, тож агенту немає чого вставити, надрукувати чи розкрити під умовляння. Це стосується ключів, що йдуть через проксі. Той, хто контролює машину, усе одно може користуватися проксі або прочитати ключ із пам'яті проксі з правами root, а скомпрометований агент усе одно може зловживати наданим йому доступом. Обсяг, обмеження частоти та аудит це обмежують.
# proxy-auth is the proxy's access token, the file beside the binary
$ export HTTPS_PROXY="http://clavitor:$(cat proxy-auth)@127.0.0.1:1983"
$ curl -H "Authorization: Bearer clavitor://OpenAI/key" \
https://api.openai.com/v1/chat/completions
# The proxy resolved the placeholder. The agent never saw sk-EXAMPLE_not_a_real_key.
# Neither did the logs, the crash dump, or the conversation history.Працює з будь-яким агентом, який робить виклики HTTPS: Claude Code, Codex, OpenClaw, CrewAI, LangChain, власні скрипти. Встановіть одну змінну середовища, і виклики API агента проходитимуть через проксі. Жодного SDK, жодного плагіна, жодних змін у коді.
Що відбувається під капотом
Розшифровує локально, за запитом
Проксі отримує зашифровані облікові дані зі сховища та розшифровує їх на пристрої. Відкритий текст існує в пам'яті процесу для одного запиту HTTP, а потім зникає. Нічого не кешується. Нічого не записується на диск. Кожен запит розшифровується заново.
Зіставляє поля з заголовками
Токени Bearer, ключі API, Basic auth — проксі автоматично зіставляє мітки полів сховища з правильними заголовками HTTP. Або агент вибирає точне поле за допомогою посилання clavitor://. У будь-якому випадку облікові дані потрапляють у потрібне місце, не розкриваючись агенту.
Області дії, ліміти швидкості, аудит
Сховище забезпечує межі області дії та ліміти швидкості. Агент, який отримує доступ до занадто багатьох різних облікових даних, автоматично блокується. Кожен доступ реєструється. Включіть ідентифікатор агента в плейсхолдер — clavitor://agentid@Entry/field — для індивідуальних журналів аудиту та лімітів швидкості через спільний проксі.
Розгортання
Один бінарний файл. Сайдкар для агента. Жодних змін у мережевій інфраструктурі.
Хост з одним агентом
Завантажте двійковий файл, запустіть clavitor-proxy init із blob реєстрації та ключем, задайте HTTPS_PROXY на агенті. Готово. Проксі прив'язується до 127.0.0.1:1983 (sidecar для одного агента). Сам він не прив'яжеться до жодної іншої адреси: порт несе токен доступу відкритим текстом, тож поза loopback він відмовляється запускатися, доки Ви не задасте CLAVITOR_PROXY_LISTEN на цю адресу і також не створите поруч із двійковим файлом файл із доступом лише для власника з іменем proxy-allow-private. Це Ви робите лише тоді, коли ця адреса є довіреною приватною мережею (VPN або Tailscale).
Хост з кількома агентами
Кожен агент отримує власну копію бінарного файлу з власним файлом конфігурації сайдкара. Кожна копія має власну область дії, власні ліміти швидкості, власний журнал аудиту. Агент А не може бачити облікові дані Агента Б. Ізоляція закладена в архітектуру.
Кожен проксі облікових даних, що працює в хмарі — Ваш або чийсь інший — є ціллю. Зламайте проксі, отримайте облікові дані кожного клієнта. Це не теоретичний ризик. Це бізнес-модель кожного сервісу "проксі облікових даних як послуга".
Проксі Clavitor працює на Вашій інфраструктурі. Розшифровує локально. Облікові дані існують у пам'яті процесу на час одного запиту. Жодна хмарна служба не зберігає Ваші ключі у відкритому тексті. Жодна кінцева точка API не видає Ваші секрети. Хмарної копії Ваших ключів для зламу немає.
Ваші агенти вже роблять виклики API.
Тримайте їх у їхній власній смузі.
Ваше сховище, Ваші області дії, Ваш журнал аудиту. Проксі додає точку примусового виконання на мережевому рівні без жодних змін у коді агента.