Treg — OpenRouter для инструментов ИИ-агента

· 7 мин чтения
ai-agents tools proxy mcp self-hosted
📂 Исходный код на GitHub

Реестр инструментов для ИИ-агентов в духе OpenRouter: каталог API-эндпоинтов с оплатой за вызов и прокси, который внедряет учётные данные на стороне сервера.

Treg — OpenRouter для инструментов ИИ-агента

Treg — это «OpenRouter для инструментов агента». OpenRouter даёт агенту одну точку входа к сотням языковых моделей. Treg решает ту же задачу для инструментов: агент обращается к одному базовому URL с одним токеном и получает доступ к каталогу из тысяч API-эндпоинтов разных поставщиков — SEO и обратные ссылки, соцсети и тренды, поиск рабочих email и телефонов, данные о компаниях, реклама, скрейпинг, генерация изображений и видео. Оплата — за вызов, от одного цента, без регистрации у каждого поставщика. Проект создан командой Superdesign. Публичный сервис живёт на treg.to, но каждый может развернуть собственный экземпляр.

Главный принцип: спрашивайте про задачу, а не про инструмент. Вам не нужно знать, какой вендор продаёт данные по обратным ссылкам, и заводить у него аккаунт. Вы ищете по тому, что хотите сделать, смотрите цену и вызываете.

Зачем он нужен

Инструменты, которые нужны агенту для настоящей работы, спрятаны за подписками, которые никто не купит ради одного запуска: Semrush — $139 в месяц, Moz — $99, Crunchbase — $99, Apollo — $59 за место. Часть сервисов требует обязательной регистрации, часть вообще не имеет публичного API — доступ только по приглашению или через партнёрскую программу. Treg держит эти аккаунты у себя и берёт доли цента за каждый вызов.

Два вида инструментов, один токен

  • Каталог — внешние эндпоинты, которые treg обслуживает своим ключом или через проверенный публичный маршрут без ключа поставщика. Вызовы через ключ treg списываются с предоплаченного баланса команды; анонимные вызовы бесплатны. Аккаунт у поставщика не нужен. Новые подтверждённые аккаунты получают $1.00 на старт при создании команды.
  • Свои инструменты — всё, что зарегистрировал коллега: платный API-аккаунт, OAuth-подключение, CLI вендора или файл SKILL.md. Ваш ключ всегда сильнее ключа treg, и такие вызовы никогда не списываются с баланса.

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

Быстрый старт

# 1. install the CLI — it also points it at the registry
curl -fsSL https://treg.to/install.sh | sh

# 2. sign in (GitHub by default, --email for a one-time code, --token for agents/CI)
treg login

# 3. do something useful right away — no key, nothing registered
treg catalog search "backlinks for a domain"     # find a tool by what it DOES
treg call tikhub.tiktok.user.profile --query uniqueId=tiktok
treg balance                                     # exactly what that cost

Токен передаётся в заголовке X-Treg-Token и одинаков для всех инструментов. Посмотреть, чем поделилась команда: treg tool ls. Проверить состояние учётных данных: treg health.

Установка плагином для Claude Code

/plugin marketplace add superdesigndev/treg
/plugin install treg@treg

Это ставит скилл treg и его инструменты без токена и без настройки. После установки выполните /mcp, выберите treg и войдите — инструменты появятся после входа. Для других агентов есть npx skills add superdesigndev/treg -s treg. Подробности — в документации плагина.

Treg также отдаёт инструменты по протоколу MCP: https://treg.to/mcp/, а для каталога Claude Connectors — https://treg.to/mcp/v2/. Второй вариант отдаёт только проверенные эндпоинты каталога и разделяет операции чтения и записи, чтобы Claude получал корректные сигналы безопасности. Архитектура MCP и OAuth описана отдельно.

Готовые скиллы

Вместе с treg идут готовые рецепты, которые агент выполняет от начала до конца — каждый вызов идёт через treg:

Скилл Что умеет агент
treg Найти и вызвать любой инструмент каталога плюс свои
web-access Читать живой веб, когда собственных веб-инструментов агента не хватает
lead-signals Находить потенциальных покупателей по публичным сигналам и следить за темой или списком аккаунтов
recruit Превратить вакансию с LinkedIn в короткий список кандидатов с доказательствами и проверенными контактами
make-ugc Делать AI UGC-видео: хуки, ведущий, говорящие головы, субтитры

Каталог скиллов ставится и напрямую через skills.sh: npx skills add superdesigndev/treg --skill lead-signals.

Каталог: спросить про задачу

Каталог сгруппирован по тому, что делают эндпоинты: отслеживание позиций и ключевых слов, обратные ссылки и авторитетность, видимость в AI-поиске, тренды, публикация в соцсетях, данные о людях и компаниях, реклама, измерение результатов.

treg catalog                                    # all platforms, busiest first
treg catalog search "find a work email"         # by the job, not the vendor
treg catalog get hunter.people.email.find       # params, price, example response
treg call hunter.people.email.find --query domain=reddit.com --query full_name="Alexis Ohanian"

Как обслуживается вызов из каталога — порядок выбора источника учётных данных:

  1. у команды зарегистрирован свой инструмент для этого поставщика → используется он и его ключ;
  2. команда сохранила секрет для поставщика → он внедряется через виртуальный инструмент;
  3. ничего из этого, но у эндпоинта есть проверенный публичный маршрут → без ключа поставщика, бесплатно;
  4. иначе → ключ treg, оплата с баланса команды.

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

Нехватка баланса приходит как HTTP 402 с кодом insufficient_balance и полями balance_micro, estimated_cost_micro, topup_url. Агент понимает такое без чтения текста: сумма пополнения и ссылка на оплату лежат прямо в ответе.

Каждый вызов попадает в журнал: treg calls показывает историю, а treg balance — остаток и текущие расходы.

Свои инструменты: три вида

Самый простой путь — treg scan (сначала показывает, что будет зарегистрировано, ничего не меняя) и treg upload (регистрирует, шифруя всё на сервере). Утилита treg upload сканирует файл .env, сопоставляя ключи примерно с 80 известными поставщиками, папки скиллов и установленные CLI каталога.

Эндпоинты (HTTP API)

treg secret add STRIPE_KEY --value sk_live_123
treg add stripe --base-url https://api.stripe.com --secret STRIPE_KEY

Использование — «агентный» способ: собрать настоящий upstream-запрос и заменить в нём базовый URL на адрес прокси. Treg находит инструмент по хосту, внедряет учётные данные и передаёт всё остальное дословно:

Real request:   GET https://api.intercom.io/conversations?per_page=5
Through treg:   GET https://treg.to/call/https://api.intercom.io/conversations?per_page=5

CLI

treg run выполняет CLI вендора с учётными данными команды, внедрёнными автоматически, — вы никогда не держите ключ и не логинитесь:

treg run stripe -- get /v1/balance
treg run gh -- pr list

По умолчанию команда выполняется на вашей машине; запуск CLI на сервере отключён глобально. Для целой сессии treg shell start открывает подоболочку, где каждый зарегистрированный CLI внедряется сам — пользуйтесь stripe, gh как обычно.

Скиллы

Скилл — это целая способность: рецепт SKILL.md, его секреты и его инструменты, зарегистрированные вместе. Так вся команда выполняет один и тот же скилл, поддерживаемый в одном месте:

treg upload skills --dir ~/.claude/skills --all   # register a folder of skills
treg skill install seo-blog-writer                # pulls it into ./.claude/skills/

API-вызовы установленного скилла идут через treg с вашим токеном, поэтому ключ остаётся на сервере и никогда не попадает внутрь скилла.

Команды

Всё принадлежит организации: токен — это членство пользователя в организации, и каждый секрет, инструмент и скилл привязан к активной организации. Роли: owner / admin / member / viewer. Есть приглашения по почте, переключение организаций и выдача доступа к конкретным инструментам каждому участнику. Для корпоративных команд есть SSO через WorkOS.

Как устроен внутри

Стек — Python, FastAPI, SQLModel; SQLite в разработке и Postgres в проде. Запрос к /call проходит путь: найти инструмент по хосту URL или имени → расшифровать его секреты → применить все привязки учётных данных → передать поток байтов в upstream → сохранить запись в журнал аудита.

Контракт «передачи без искажений»: прокси меняет только три вещи — hop-by-hop заголовки транспорта, свои контрольные заголовки (они зачищаются и никогда не утекают upstream) и внедрённые учётные данные. Всё остальное уходит дословно. Поэтому treg не ломается, когда поставщик меняет свой API: прокси ничего про этот API не знает.

Четыре формы авторизации: env (строка или API-ключ), secret_file (JSON-файл токена), oauth (OAuth-токен с автообновлением), cli_auth (данные из keychain CLI). Есть проверки состояния учётных данных: периодический прогон валидирует все учётные записи, обновляет OAuth и отправляет вебхук владельцу сломавшегося подключения. Секреты шифруются Fernet-ключом; потеряете ключ — потеряете все сохранённые секреты, поэтому его нужно бэкапить вместе с базой.

Лицензия и self-hosting

Лицензия — Apache 2.0 с дополнительными условиями. Используйте свободно, в том числе коммерчески и внутри своей организации; развернуть свой реестр прямо поощряется. Ограничение одно: нельзя перераспространять код третьим лицам как конкурирующий облачный сервис реестра без письменного разрешения. Для самостоятельного запуска достаточно uv sync и python -m treg — все настройки имеют рабочие значения по умолчанию. Полная справка по CLI — в USAGE.md, сообщество — в Discord.

Источник: https://github.com/superdesigndev/treg