АГЕНТ 01 / 07
Исследователь
Универсальный воркер для флота. Собирает контекст, анализирует источники и код, возвращает находки со ссылками для любых последующих задач; веб-исследование — лишь одна из многих миссий.
researcher · autonomous
01Что делает
Один цикл, созданный для сбора правды
Агентный цикл
LLM → инструменты → повтор, до 50 итераций на агента — с настоящим потоковым выводом токенов: текстовые дельты приходят в реальном времени, вызовы инструментов собираются из фрагментов потока, а при обрыве потока автоматически переключается на обычное завершение вместо ошибки.
Рабочий процесс миссии, формализованный
Воркер выстраивает фиксированную дугу: обнаружение контекста → сбор и анализ источников → проверка ключевых деталей → сохранение структурированных результатов. Исследование — один из сценариев; тот же цикл подходит для кода, операций и работы со знаниями.
Иерархическое распределение
spawn_agent наращивает дерево подагентов до max_depth с явной передачей контекста и наследованием токеновых бюджетов. Фоновый режим отсоединяет дочерний процесс и доставляет его результат позже как уведомление — родитель продолжает работу.
Без источника не считается
Иерархия качества источников: академические выше официальных выше новостей выше блогов выше форумов. Каждая находка сохраняет свой URL; sources.md дедуплицирует цитаты по всему флоту.
Многоформатный ввод
web_fetch и web_crawl для страниц, web_feed для RSS / Atom / карт сайта, analyze_image для скриншотов и документов, pdf_extract для отчётности, code_symbols + repo_map для кодовых баз.
Недоверие по дизайну
Полученные страницы рассматриваются как недоверенные данные и сканируются на паттерны промпт-инъекций перед попаданием в контекст; SSRF-защита блокирует внутренние IP при каждом запросе и каждом перенаправлении.
02Как это работает
От миссии к устойчивым находкам
Планирование
Координатор декомпозирует запрос на непересекающиеся подзадачи и сохраняет их; каждая задача получает явный контекст, ограничения и требования к проверке.
Распределение
Каждая подзадача становится воркером с учётом роли — задачей JoinSet в процессе или изолированным процессом ОС — с долей бюджета токенов сессии.
Цикл воркера
Инспекция → трансформация → проверка → запись с инструментами, выбранными для миссии. Дочерние процессы создаются через spawn_agent до max_depth; фоновые дочерние процессы отчитываются как уведомления.
Анализ
LLM-судья Goal Mode сравнивает работу с исходной целью и может запрашивать ограниченные раунды заполнения пробелов до достижения цели.
Передача
Резюме с ограничением бюджета, структурированные находки и дедуплицированные источники поступают в синтез, память и базу контактов — топливо персонализации для аутрича.
03Под капотом
Рантайм в основе
| агентный цикл | LLM → вызовы инструментов → повтор, max_iterations по умолчанию 50; управляющие сообщения и фоновые уведомления подставляются на границах ходов |
| стриминг | stream: true — текстовые дельты в реальном времени, вызовы инструментов собираются из фрагментов, автоматическое переключение на нестриминговый режим при обрыве или пустом потоке |
| spawn_agent | иерархия до max_depth (по умолчанию 2); роли researcher / analyst / verifier / writer; явная передача контекста; фоновый режим |
| распределение | координатор разбивает запрос на 2–5 подзадач; JoinSet или процессы ОС (use_multiprocess); max_agents 20 |
| бюджеты | session_token_limit распределяется по каждому пакету (минимум 4096 токенов); дочерние процессы наследуют остаток лимита родителя |
| бесконечный цикл | 3 одинаковых вызова инструмента подряд → первое нарушение предупреждает агента, второе — останавливает |
| режим цели | LLM-судья сравнивает результаты с целью; до replan_rounds (по умолчанию 1) раундов заполнения пробелов, не более 3 новых подзадач в каждом |
| безопасность загрузки | Ограничение тела 2 МБ, обрезка текста до 50 000 символов, сканирование на инъекции, SSRF-защита с ≤ 5 перенаправлениями, перепроверяемыми на каждом шаге |
| промпт | 3 уровня кеша (stable / context / volatile) для попаданий в префикс-кеш; дайджест памяти подставляется на глубине 0 |
| защита от простоя | нет прогресса 450 с → предупреждение; 1200 с → агент отменяется |
04Инструменты
Что может вызывать Researcher
Работает на флот воркеров
Цитируемые факты становятся персональными строками
Всё, что собирает Researcher, — это материал для персонализации: цитируемые факты, URL источников, сырые контакты с историей происхождения. Извлечённые контакты автоматически сохраняются вместе со страницей, с которой они были получены; верифицированные email и телефоны попадают в базу контактов и синхронизируются с CRM без дубликатов. Далее этап аутрича пишет каждое сообщение на основе именно этих фактов — найм, раунд финансирования, технологическая миграция — так что первая строка никогда не бывает шаблонной.
finding #7 person: Jane Doe — CTO, Acme
email [email protected] [verified: MX + SMTP 250]
sources acme.com/team · news: "Acme closes Series B"
signal hiring 6 platform engineers (posted Aug 3)
status saved to contacts → CRM (dedup by crm_id)