Прокси-агент

Один вход ко всем ИИ-моделям: ключи, лимиты, расходы и журналы — в одном месте, а программы работают как раньше

Все ваши программы обращаются не к десятку поставщиков моделей по отдельности, а к одному адресу на вашем сервере. Ключи поставщиков лежат в одном месте и не разъезжаются по компьютерам сотрудников, у каждого человека или подрядчика свой ключ доступа со своими пределами расхода и разрешёнными моделями, а расход видно в деньгах, а не в токенах. Дополнительно продукт умеет преобразовывать форматы запросов (программа под одного поставщика работает с моделью другого), скрывать секреты из запросов до отправки в модель, пропускать обычный трафик по HTTP и SOCKS5 через свои каналы связи — свой прокси, SOCKS5, VPN и подписки Happ — и даёт чат с ИИ-агентом прямо в интерфейсе. Это самостоятельное приложение на вашем сервере: оно обслуживает все ваши программы сразу, а не только Pastukhov Agent — не путайте его с встроенным прокси-сервером агента, который работает внутри одного продукта.

Один адрес вместо десятка: программы обращаются к прокси, а не к каждому поставщику напрямую

Ключи поставщиков лежат на вашем сервере и не расходятся по компьютерам сотрудников

Свои ключи доступа для команд и подрядчиков: имя, право отзыва, перегенерация одной кнопкой

OpenAI, Anthropic и DeepSeek за одним адресом — какая бы программа ни использовалась

Преобразование форматов: программа, написанная под один поставщик, работает с моделью другого

Список доступных моделей по стандартному адресу — программа сама покажет их в своём списке

Смена модели или поставщика для всех программ сразу, без перенастройки каждой

Конфигурация едет вместе с проектом: модели, каналы и ключи доступа лежат в понятных файлах

У каждой модели своя цена за миллион «порций текста» (токенов) — расходы видно в деньгах, а не в токенах

Лимиты на день, неделю, месяц и всего: подрядчик или сорвавшийся скрипт не выключит бюджет

Ограничение по моделям: ключу можно разрешить только те модели, которые ему положены

Повторно использованный текст считается по своей цене — счёт совпадает с реальным расходом

Журнал запросов: кто, когда, какая модель, сколько токенов и сколько денег

Тексты запросов и ответов не сохраняются — переписка с ИИ не копится в базе

Аналитика: объём запросов, задержки, разбивка по моделям и ключам, часы пик, ошибки

Скрытие секретов: пароли и ключи из запросов заменяются условными обозначениями и возвращаются на место

Отчёты об утечках: видно, какие правила и модели чаще всего задевают секреты

Прокси для обычного трафика: HTTP и SOCKS5 на одном порту — со своим портом и своим входом у каждого канала

Подписки Happ как канал: вставьте ссылку на подписку, выберите сервер из списка — остальное делает вшитое ядро Xray

Свои HTTP-прокси, SOCKS5 и VPN как каналы — с проверкой связи и своим портом для подрядчиков

Чат с ИИ-агентом внутри продукта: подключите Pastukhov Agent и спрашивайте про интерфейс в чате

Всё на вашем сервере: приложение, файлы конфигурации и журналы остаются у вас

Лицензия закрывает трафик, а не интерфейс: без ключа запросы не проходят, но настроить можно всё

Экономия ресурсов в простое: пока трафик не идёт, приложение не нагружает процессор, а память освобождается через 15 минут без работы

Один адрес вместо десяти поставщиков

Раздел «Ключи доступа»: список ключей и карточка «Адрес API» с единым адресом прокси и подсказкой ANTHROPIC_BASE_URL

Программы обращаются не к каждому поставщику по отдельности, а на один адрес вашего сервера — настроить каждую программу нужно один раз

Три привычных адреса: /api/chat/completions (формат OpenAI), /api/v1/messages (формат Anthropic) и /api/models со списком моделей

Вход по ключу доступа: Authorization: Bearer или x-api-key — подходит и OpenAI-программам, и Anthropic-программам

Даже отказ по ключу приходит в привычном формате OpenAI, поэтому программа покажет понятную ошибку, а не «неизвестный ответ»

Ключи доступа: кому что можно

Окно «Ограничения доступа» ключа: флажки разрешённых моделей и разрешённых HTTP-прокси

Ключ доступа — ваш собственный ключ для входа в прокси, он не связан с ключами поставщиков и выдаётся каждому человеку или программе отдельно

Ключ выглядит как proxyagent-имя-24 знака; в базе хранится только отпечаток SHA-256 и последние 8 знаков, а сам ключ показывается один раз

Перегенерация мгновенно отзывает прежний ключ: если ключ утёк, старая копия перестаёт работать сразу

Ключ можно «Деактивировать», «Клонировать» и «Проверить» — а его настройки открываются в разделе «Ключи»

Модели и цены за миллион токенов

Окно «Редактировать модель»: раздел «Тарифы» с ценами входных и выходных токенов и работы с кэшем за 1 млн токенов

Модель — единица маршрутизации: у каждой своё подключение к поставщику, своя метка и свои цены за миллион «порций текста» (токенов)

Для каждой модели указываются цены на ввод, вывод и повторно использованный ввод — по ним и считаются расходы

Кнопка «Проверить» обращается к реальному адресу модели и показывает, отвечает ли поставщик; ключ при этом маскируется

Модель можно клонировать; удалить её нельзя, если после этого у какого-то ключа не останется ни одной разрешённой модели

Любая программа — любая модель: преобразование форматов

Раздел «Модели»: у каждой модели указан тип провайдера (Anthropic DeepSeek, Anthropic) и вышестоящая модель — запрос одной программы уходит в модель другого поставщика

Внутри работают три движка: OpenAI, Anthropic и DeepSeek — программа одного поставщика свободно работает с моделью другого

Для DeepSeek запрос дополнительно пересобирается: поле max_completion_tokens переименовывается в max_tokens, а блоки «мыслей» вычищаются из текста

«Размышления» DeepSeek сохраняются на 7 дней: чтобы продолжить диалог, модель находит сохранённое и подставляет обратно

Если подходящей записи нет, настройка модели решает: понятный отказ «Start a new chat» либо подстановка фиксированной заглушки

Лимиты расходов: день, неделя, месяц, всего

Окно «Лимиты расходов» ключа: пределы за день, неделю, месяц и всего, рядом — потраченные суммы

У каждого ключа доступа — четыре предела расхода: за день, за неделю (с понедельника), за месяц и за всё время; суммы считаются в долларах

Пределы проверяются по очереди — день, неделя, месяц, всего; первое достигнутое останавливает запросы с понятным текстом ошибки

Предел 0 полностью блокирует ключ; запрос, который уже «перешагнул» предел, доводится до конца и списывается целиком

Сама блокировка денег не тратит, а обычный трафик прокси-службы этими пределами не ограничивается вообще

Журнал запросов: кто, что и за сколько

Детальный вид записи журнала: модель, провайдер и его тип, ключ доступа, токены (ввод, вывод, кэш), внутренняя стоимость и стоимость провайдера, длительность

В журнале по каждому запросу видно: время, модель, ключ, канал или прямой выход, токены (ввод, вывод, повторно использованный ввод), длительность

Рядом две суммы: «внутренняя» по ценам модели — по ней работают лимиты и аналитика — и цена поставщика из ответа, только для сверки

Тексты запросов и ответов не сохраняются никогда: переписка с ИИ не копится в базе и не может утечь из неё

Заблокированные и сорвавшиеся запросы тоже пишутся в журнал, но с нулевой стоимостью; трафик прокси-службы в этот журнал не попадает

Запросы, отклонённые по лицензии, в журнал не попадают вовсе — они останавливаются до обращения к модели

Настройки: внешний вид, язык и служебное

Окно «Настройки»: карточки «Оформление» и «Выйти», внизу строка лицензии

Шестерёнка в шапке сразу открывает окно «Настройки»: в нём карточка «Внешний вид» и «Выход» из учётной записи

Во «Внешнем виде» — язык интерфейса и размер шрифта, оба выбора сохраняются и переживают перезагрузку. Светлая и тёмная тема переключаются отдельной кнопкой в шапке

Только здесь есть смысл настраивать ещё две вещи: мастер-переключатель скрытия секретов и срок хранения отчётов об утечках — по умолчанию 90 дней

Служебные кнопки: «Проверка связи» и — если статистика отправляется во внешнее хранилище — «Восстановить статистику ClickHouse». Внизу окна строка лицензии, нажатие открывает сведения о ней

Аналитика: объём, задержки, разбивки

Раздел «Аналитика»: выбор периода и подробности, сводные плитки и графики объёма запросов и использования токенов

Готовые диапазоны от «сегодня» до «365 дней» плюс произвольный период; подробность — часы, дни, недели (с воскресенья) или месяцы

Видно объём запросов и задержку — среднюю, медиану и 95-й процентиль (значение, в которое уложилось 95 % запросов)

Есть разбивка по моделям, ключам и каналам, распределения, распределение по часам суток, анализ ошибок и сравнение с предыдущим периодом

Сводные плитки на «Главной» показывают картину дня сразу; статистику можно отправлять в ClickHouse и восстанавливать пропущенные дни

Скрытие секретов: условные обозначения и возврат на место

Раздел «Anonymiser», вкладка «Правила»: включение скрытия секретов и таблица правил с образцом поиска, шаблоном вывода и числом найденных секретов

Правило — это имя, образец поиска (регулярное выражение) и шаблон вывода: секреты из списка заменяются условными обозначениями до отправки в модель

Заменяются только значения из списка; нумерация сквозная и постоянная, а перед моделью секретов не видно

Возврат на место работает во всех ответах, включая потоковые, и продолжает работать даже после изменения или удаления правила

Если проверка правила не удалась, запрос поставщику не уходит — безопасный отказ вместо утечки; для этого есть «Тестер правила»

Отчёты об утечках: где секреты уходят наружу

Раздел «Anonymiser», вкладка «Отчёты об утечках»: плитки замен и уникальных секретов, разбивки по правилам и моделям и таблица событий утечек с замаскированными секретами

Каждое срабатывание правила фиксируется как событие утечки — в отчёте видно, где именно секрет мог уйти в модель

Секреты в отчётах замаскированы: по записи нельзя восстановить само значение

Срок хранения отчётов задаётся в настройках, по умолчанию — 90 дней, дальше записи удаляются

Чат с ИИ-агентом и обычный трафик прокси-службы через скрытие секретов не проходят — это осознанное ограничение

Прокси для обычного трафика: HTTP и SOCKS5

Окно HTTP-провайдера, блок «Входящий слушатель»: порт слушателя, требование аутентификации и оговорка, что клиенты передают токен доступа как пароль прокси

Прокси-служба принимает HTTP и SOCKS5 на одном порту — подходит браузерам, скриптам и программам, которые не связаны с ИИ

Ни на свежей установке, ни после обновления не слушает никто: слушатель принадлежит каналу, и у каждого канала свой порт, свой включатель и своё требование входа

Кто подключился к порту канала, тот и выходит через этот канал — например, поддержка через один канал, а скрипты через другой

Вход — по ключу доступа: в HTTP это обычная авторизация, где пароль равен ключу, в SOCKS5 проверяется тот же ключ; проверку можно отключить, но продукт предупредит о риске

До 256 одновременных соединений на слушателя, 30 секунд на установку соединения, а дальше — без ограничений по времени

В Docker каждый предоставленный порт публикуется отдельной строкой; такой трафик пишется в отдельный журнал (байты, длительность, статус, ошибка) и никогда не считается в деньгах и не тратит лимиты

Каналы связи: свои прокси, SOCKS5, VPN и подписки Happ

Раздел «HTTP-прокси»: каналы связи — SOCKS5 nl-exit и HTTP ru-exit со своими адресами, включателями и кнопкой проверки связи

Канал связи — это то, через что ваш трафик выходит в интернет: свой HTTP-прокси, SOCKS5, VPN (WireGuard) или подписка Happ

Трафик идёт только через выбранный канал: автоматического перебора и прямого запасного выхода нет — привязка означает «только отсюда»

Есть проверка связи и маскировка пароля; удалить канал нельзя, пока на него ссылаются модели или ключи

VPN-канал требует прав внутри контейнера и WireGuard; подключение поднимается по требованию и гаснет после 60–75 секунд простоя

Подписка Happ — тоже канал: ссылка запрашивается заново при каждом запуске ядра, сервер подбирается по имени, а сервер, который ядро не умеет запускать, помечается как неподдерживаемый

Чат с ИИ-агентом внутри продукта

Открытый чат с ИИ-агентом в панели: ответы агента и вызовы инструментов, внизу поле ввода с выбранным навыком proxy-manager

Чат — необязательная надстройка: он подключается к внешнему Pastukhov Agent по адресу и ключу и без настройки просто скрыт

Ключ агента остаётся на сервере и в браузер не попадает; ответы приходят в реальном времени

В чате можно спросить про интерфейс, разобрать ошибку и попросить подсказку по настройке — всё не выходя из продукта

Без чата работает всё остальное: ключи, модели, журналы, лимиты, аналитика, скрытие секретов и прокси-служба

Размещение: конфигурация, рабочее состояние и журналы

Панель управления: сводка по установке — активные модели, токены доступа, всего запросов, расходы и прокси-трафик

Вся установка — один контейнер, который обслуживает и интерфейс, и адреса /api/*; единственная обязательная настройка — внешняя база PostgreSQL

Для интерфейса и адресов /api/* нужен один порт; порты прокси-службы публикуются отдельно, по одному на каждый предоставленный канал, а HTTPS настраивается снаружи

Настройки, модели, каналы, ключи доступа и правила скрытия секретов лежат в понятных файлах папки конфигурации: их можно хранить вместе с проектом, править руками и переносить на другой сервер — правка подхватывается примерно за 300 мс

Рабочее состояние (сохранённые «размышления», ключ подписи сессий, соответствия секретов, конфигурации VPN и рабочие файлы подписок Happ) живёт в отдельном томе, а журналы и расходы остаются в PostgreSQL

Без тома теряются соответствия секретов и сохранённые «размышления», а без постоянного ключа подписи — все выданные сессии входа

Секреты можно держать в одном файле .env рядом с проектом: продукт подмешивает его при запуске и следит за правками на ходу

Лицензия: интерфейс работает, трафик — по ключу

Окно «Информация о лицензии»: кому выдана, тип, область, продукты, срок действия и статус

Ключ лицензии задаётся на сервере переменной AGENT_LICENSE — это либо сам ключ, либо путь к файлу с ним. Ключ читается при запуске, поэтому после его смены контейнер нужно перезапустить

Без действующего ключа трафик не проходит: запросы к моделям получают понятный отказ, а прокси-служба не пропускает соединения — каждый такой отказ виден в журнале

Интерфейс, настройки, журналы и управление по API лицензией не закрыты: войти, посмотреть состояние и всё настроить можно всегда. Строка о лицензии видна внизу окна «Настройки» — нажатие открывает сведения о ней

Срок проверяется на ходу: когда у ключа заканчивается срок, трафик прекращается сразу и без перезапуска. Пробный ключ по возможностям не отличается от платного

Подписки Happ: чужой VPN за вашим прокси

Форма нового канала типа Happ: ссылка на подписку, кнопка загрузки серверов, ID устройства и порт слушателя; список серверов в демо не загружен

Подписка Happ — это готовый доступ в интернет, который продают для программы Happ: одна ссылка вместо адреса, логина и пароля

Ссылку вставляют в новый канал: ядро Xray забирает её при запуске и само поднимает соединение — в образе продукта оно уже есть

Сервер выбирается из списка, который продукт показывает по самой ссылке: там же видно, сколько трафика осталось и до какой даты подписка действует; серверы, которые ядро запустить не может, помечены

Если подписка перестала отвечать, остаются рабочие файлы последней удачной загрузки; ядро поднимается только при обращении и гаснет после 60 секунд простоя

Персональная лицензия

Все возможности Прокси-агента без ограничений для частных лиц: неограниченное количество установок на любых ваших компьютерах и серверах. 19 700 ₽ единоразовый платёж за пожизненную лицензию. 12 месяцев бесплатных обновлений, затем (по желанию) скидка 50% на следующие 12 месяцев обновлений от начальной цены покупки. Здесь всё как у соседних продуктов: ключ лицензии нужен, чтобы пошёл трафик, и задаётся он на сервере переменной AGENT_LICENSE. Интерфейс, настройки, журналы и управление по API работают и без ключа — закрыт только трафик, поэтому продукт можно спокойно осмотреть до покупки.

Корпоративная лицензия

Все возможности Прокси-агента без ограничений для всех сотрудников компании или команды, включая внешних подрядчиков. 49 700 ₽ единоразовый платёж за пожизненную лицензию с 12 месяцами бесплатных обновлений, затем (по желанию) скидка 50% на следующие 12 месяцев обновлений от начальной цены покупки. Лицензия — это право использования, обновления и поддержка, а также ключ, который пропускает трафик: закрыт именно он, а интерфейс и настройки доступны всегда.

Сервисная лицензия

Неограниченное количество экземпляров Прокси-агента под вашим доменом + полный исходный код с правом изменять его как угодно, обновлять оформление или брендинг под вашу компанию или домен, тесно интегрировать с вашей инфраструктурой. Может использоваться любым посетителем вашего домена как часть ваших сервисов. 97 000 ₽ единоразовый платёж за пожизненную лицензию с 12 месяцами бесплатных обновлений, затем (по желанию) скидка 50% на следующие 12 месяцев обновлений от начальной цены покупки. Для бесшовных обновлений рекомендую изменять только брендинг и интеграцию, чтобы минимизировать усилия при слиянии с новыми функциями и исправлениями.

Пробная лицензия

Чтобы спокойно оценить продукт, на 30 дней выдаётся бесплатный пробный ключ. По возможностям он ничем не отличается от платного: те же модели, лимиты, журналы, аналитика, скрытие секретов и прокси-служба. Пробный ключ выдаётся по запросу — напишите мне в Telegram с указанием имени и email.

Что ограничивает лицензия

Честно: ключ лицензии нужен для трафика. Без действующего ключа приложение запускается и выглядит как обычно — работают вход, настройки, модели, ключи доступа, журналы, аналитика, скрытие секретов и управление по API, — но ни один запрос к моделям не проходит и прокси-служба не пропускает соединения. Отказ приходит с понятным текстом, а состояние лицензии видно строкой внизу окна «Настройки»: «Лицензия выдана: имя», сколько дней осталось или почему ключ не принимается.

Ключ задаётся на сервере переменной AGENT_LICENSE — это либо сам ключ, либо путь к файлу с ним. Значение читается при запуске, поэтому после его смены контейнер нужно перезапустить. Срок действия проверяется на ходу: у ключа, у которого закончился срок, трафик прекращается сразу, без перезапуска. Проверка идёт на вашем сервере по подписи ключа — без обращений к внешним серверам и без привязки к оборудованию.

Лицензия даёт право использования продукта, 12 месяцев бесплатных обновлений и поддержку, а затем скидку 50% на продление обновлений. Пробный ключ по возможностям не отличается от платного.