Пропуск для агента на 20 вызовов и 10 минут.
Агент пишет, зачем ему доступ. Вы одобряете в Telegram или на сайте. Шлюз сам подставляет ключ в каждый вызов и закрывает пропуск, когда лимит кончился.
Бесплатно, открытый код, Apache-2.0. Работает на вашем сервере.
sales-agent просит доступ к Bitrix24
- На срок
- 10 мин
- Вызовов, до
- 20
Агент увидит: сделки и лиды без имён, телефонов, e‑mail и комментариев
Отчёт за неделю: лиды, у которых с понедельника сменился статус
Написал агент, не проверено
Пример заявки. В Telegram и Slack приходит то же: агент, сервис, срок, число вызовов, причина.
Агент может всё, что может его ключ.
- Агенты читают
.env, даже когда правила это запрещают.issue #24846 в claude-code - Чужая инструкция на сайте или в тикете может попросить агента отправить ключи на сторону.Prompt injection
- Ключ с полными правами даёт агенту полные права, пока ключ жив.Широкий ключ
- Песочница не поможет, если ключ уже в памяти агента.Песочница
- Ссылка вебхука CRM тоже ключ: у кого ссылка, у того и права.Вебхуки CRM
Как проходит вызов
- 1Агент просит
Называет сервис, срок, число вызовов и причину.
- 2Вы решаете
Заявка приходит в Telegram, Slack или на почту со всеми подробностями. Разрешить или отказать можно в Telegram или на сайте.
- 3Шлюз делает вызов
Подставляет ключ, считает вызовы, фильтрует ответ. Когда кончились время или вызовы, пропуск перестаёт работать.
Пропуск или агента целиком можно отозвать в любой момент. Отзыв действует со следующего вызова.
Вы решаете, что агент получит из CRM.
Ключи CRM по умолчанию только на чтение. Вы отмечаете типы данных и поля, которые агенту можно видеть, остальное шлюз вырезает из ответа.
{
"result": [{
"ID": "4182",
"TITLE": "Анна Ли, редизайн сайта",
"STATUS_ID": "IN_PROCESS",
"ASSIGNED_BY_ID": "12",
"OPPORTUNITY": "980000.00",
"CURRENCY_ID": "RUB",
"NAME": "Анна",
"LAST_NAME": "Ли",
"PHONE": [{ "VALUE": "+7 900 000-00-00" }],
"EMAIL": [{ "VALUE": "anna@example.com" }],
"COMMENTS": "Просила скидку, звонить после 17:00"
}]
}
{
"result": [{
"ID": "4182",
"STATUS_ID": "IN_PROCESS",
"ASSIGNED_BY_ID": "12",
"OPPORTUNITY": "980000.00",
"CURRENCY_ID": "RUB"
}]
}
Если открываете агенту поле со свободным текстом, включите маску: e‑mail, телефоны с +, номера карт и IBAN превращаются в ****. Перед одобрением заявки вы видите строку «Агент увидит».
От чего защищает и от чего нет
Защищает
- Ключи остаются на вашем сервере.Хранятся зашифрованными в AWS SSM или в файловом хранилище. Агент получает пропуск, ключ ему не выдаётся.
- У каждого ключа своя политика.Всегда, спрашивать или запрещать, с нужными каналами и часами.
- Ключи CRM и поддержки по умолчанию только на чтение.Запись получает 403 и не тратит лимит.
- Ослабить правило можно только с новым кодом 2FA.Ужесточить можно без кода.
- В журналах нет секретов.Значения ключей не попадают в журналы, адреса, ответы и ошибки.
- При сбое доступ закрыт.Если недоступны хранилище или база, агент получает 503.
Не защищает
- От root на сервере.Тот, у кого root или права администратора облака, может прочитать ключи.
- От злоупотреблений внутри пропуска.В пределах лимитов агент может сделать любой вызов, который разрешает ключ. Давайте узкие ключи.
- От сервиса, к которому идёт вызов.Он видит ключ и данные, которые вы отправляете.
- От всех видов личных данных.Маска не находит имена и адреса, а также телефоны без +.
- От взлома ваших аккаунтов.Кто завладел вашим Telegram или почтой, тот может одобрять заявки.
Подключается к агентам, которыми вы уже пользуетесь
Через MCP (Streamable HTTP с токеном в заголовке) или обычный HTTP. Подойдёт и любой скрипт, который умеет отправить HTTP-запрос.
Claude Code
Codex CLI
Cursor
Copilot в VS Code
Gemini CLI
Hermes Agent
OpenClaw
Установка на ваш сервер
Нужны Debian 12 или Ubuntu 24.04 и домен, направленный на сервер. Скрипт ставит Node.js 22, Caddy и службы systemd, потом печатает одноразовую ссылку для настройки.
curl -fsSL https://raw.githubusercontent.com/maximskorohod/agentkeygate/v1.0.1/scripts/setup.sh -o setup.sh
echo "40c9cc59c14ca795263b537325f624f709f3e2e670d93221d8e99ddd76147a15 setup.sh" | sha256sum -c -
sudo bash setup.sh --domain gw.example.com
# не в AWS добавьте: --vault file
Похожие инструменты
Прятать ключи от агентов умеют и другие проекты. Ниже то, что каждый пишет о себе на своих страницах.
| AgentKeyGate | OneCLI | TAP | Infisical Agent Vault | |
|---|---|---|---|---|
| Лицензия | Apache-2.0 | Apache-2.0, папка ee/ под отдельной лицензией | Apache-2.0 | Ядро MIT, часть функций платная |
| На своём сервере | Да | Да, есть и облако | Да, есть и хостинг | Да, есть и облако |
| Владелец одобряет заявку | Каждую, в Telegram или на сайте | Да, в чате | Да: панель, Telegram, Matrix, passkey | Правила задаются заранее |
| Лимит по числу вызовов | Да, и по времени | Не описано | Не описано | Сессии с ограниченным сроком |
| Фильтр полей и маска в ответе | Да, для CRM и некоторых других сервисов | Не описано | Убирает токен из ответов | Не описано |
| Цена | Бесплатно | Есть бесплатный и платные тарифы | Не указана | Цена отдельно |
Проверено 7 ноября 2026. «Не описано» значит, что на их страницах мы этого не нашли.
Нужно настроить под вашу CRM?
Настраиваю ИИ-агентов для Bitrix24, amoCRM и других CRM на вашем сервере, ключи закрываю этим шлюзом.
Написать в Telegram