YouMind
Войти

Как подключить Jev к Grok Bot: лучший агент, который я создал

@0x_rody
АНГЛИЙСКИЙ20 окт. 2026 г.
153K
250
22
27
854

Суть

В этом руководстве показано, как интегрировать модель Jev от TypeSafe с Grok Bot для создания маршрутизатора решений, который предотвращает избыточные действия ИИ, такие как ненужные повторные попытки или дублирование исследований, тем самым оптимизируя производительность и снижая затраты.

Grok Bot даёт каждому пользователю один облачный компьютер и позволяет ботам запускать на нём shell. Большинство просто направляет его на задачи и смотрит, как он раз за разом повторяет одну и ту же ошибку.

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

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

Вот полная инструкция по настройке 👇

Прежде чем мы начнём: я публикую полные руководства в своём Substack: https://zodchiii.substack.com/ 🧠

rody - inline image

Что Jev возвращает в качестве ответа

Jev — это модель System One от TypeSafe. Она отвечает типизированным значением, а не текстом, и предоставляет три примитива:

  • Choice выбирает один вариант из заданного вами списка и возвращает выбор, вероятности и уверенность
  • Score оценивает состояние по заданным критериям
  • Noul отвечает, истинно ли утверждение, числом от 0 до 1

Поскольку ответ приходит в виде значения, его можно логировать, сравнивать решения за две недели между собой и прогонять их на вчерашнем трафике.

Вызов выглядит так:

text
1from typesafe_sdk import Choice, TypeSafeClient
2
3with TypeSafeClient(model="jev-latest") as client: # reads TYPESAFE_API_KEY
4 r = client.system_one(
5 state=f"goal: {goal}\ntask: {task_type}\nlast error: {err} x{repeats}",
6 questions={
7 "action": Choice(
8 instructions="What should the agent do next",
9 criteria={
10 "proceed": "Nothing suggests the next step will fail",
11 "reuse_cache": "A fresh artifact for this already exists",
12 "stop_retry": "The same approach failed the same way",
13 "research_capped": "Enough sources are already gathered",
14 "ask_human": "The step sends, publishes, pays or deletes",
15 },
16 )
17 },
18 )
19
20print(r.choices["action"].choice, r.choices["action"].confidence)

Маршрутизатор выбирает один из этих пяти вариантов и физически не может ответить что-то другое.

Шаг 1: получите API-ключ

Откройте панель управления TypeSafe и создайте API-ключ. Не отправляйте его в чат, не кладите в репозиторий и не добавляйте ни в один навык, которым планируете делиться.

Шаг 2: передайте ключ на компьютер

Используйте процесс запроса маскированного секрета. Ключ никогда не должен проходить через чат.

Один важный момент перед добавлением: облачный компьютер Grok Bot — это одна машина на аккаунт, и каждый запущенный на ней бот видит одни и те же файлы, сессии и авторизации. Ключ, который вы туда поместите, будет доступен всем им.

text
1Мне нужно передать тебе учётные данные API для TypeSafe. Используй процесс запроса маскированного секрета, а не чат. Значение должно попасть в переменную окружения TYPESAFE_API_KEY на твоём компьютере и не должно появиться ни в одном файле, логе, навыке или репозитории, которые ты создашь. Подтверди только то, что переменная установлена и доступна для чтения, но никогда не называй её значение.

Шаг 3: установите SDK и проверьте его работу

text
1На своём компьютере выполни: pip install typesafe-sdk
2
3Затем напиши /work/jev/smoke.py, который открывает TypeSafeClient(model="jev-latest") и отправляет один вызов system_one с единственным вопросом Choice. Состояние: "goal: file a support ticket. task: routing. last error: none x0". Критерии: billing, technical, sales.
4
5Запусти его и покажи мне сырой объект ответа: выбор, вероятности и уверенность. Если TYPESAFE_API_KEY отсутствует, остановись и скажи мне, ничего не хардкодь.

В выводе вы ищете три вещи: значение из вашего собственного списка, распределение вероятностей и показатель уверенности. Если чего-то из этого нет, значит SDK общается с чем-то другим.

Шаг 4: соберите маршрутизатор

text
1Создай модуль маршрутизатора в /work/jev/router.py с одной функцией:
2
3 route(goal: str, task_type: str, last_error: str, repeats: int) -> dict
4
5Он отправляет Jev ровно эти четыре поля в качестве состояния вместе с одним вопросом Choice под названием "action" и следующими критериями:
6
7 proceed ничто не указывает на то, что следующий шаг завершится ошибкой
8 reuse_cache свежий артефакт для этого уже существует
9 stop_retry тот же подход завершился той же ошибкой
10 research_capped уже собрано достаточно источников
11 ask_human шаг отправляет, публикует, оплачивает или удаляет
12
13Возвращай выбор, уверенность и вероятности. Добавляй каждый вызов в /work/jev/decisions.jsonl с меткой времени, четырьмя входными параметрами и полным ответом. Читай поведение из /work/jev/config.json с двумя ключами: "enabled" и "mode" ("shadow" или "active"). По умолчанию enabled равен false.
14
15Никакого текста промпта в состоянии, кроме этих четырёх полей. Покажи мне файл до того, как запустишь его.
rody - inline image

Эти четыре поля — всё состояние, которое видит Jev. Он никогда не получает ваш промпт, ваш репозиторий или вашу переписку, поэтому вызов остаётся компактным, а лог — читаемым.

rody - inline image

Шаг 5: добавьте навык

text
1Создай навык с названием jev-usage-router.
2
3Триггер: перед любой браузерной сессией, любым проходом исследования, любой повторной попыткой неудачного шага и перед запуском дополнительного бота.
4
5Шаги: вызови route() из /work/jev/router.py с текущей целью, типом задачи, текстом последней ошибки и количеством её повторений. Затем выполни действие:
6
7 proceed продолжай как планировалось
8 reuse_cache используй существующий артефакт, пропусти работу
9 stop_retry откажись от этого подхода и объясни почему
10 research_capped остановись на 5 источниках и опиши то, что есть
11 ask_human остановись и спроси меня, не действуй самостоятельно
12
13Граница согласования: ask_human никогда не переопределяется, какой бы ни была уверенность. Вывод: по одной строке на каждое решение в отчёте о запуске.

Храните эталонную копию этого навыка в собственной системе контроля версий. Grok Bot сохраняет только 20 последних записей о запусках для каждой рутины, поэтому сразу отправляйте всё важное в собственное хранилище.

Шаг 6: запустите в теневом режиме на неделю

text
1Установи в /work/jev/config.json значение {"enabled": true, "mode": "shadow"}.
2
3В теневом режиме вызывай маршрутизатор при каждом триггере и логируй решение, затем игнорируй его и делай то, что сделал бы в любом случае. Ничего не меняй в своей работе.
4
5В конце каждого дня добавляй в /work/jev/report.md: количество вызовов, распределение действий, среднюю уверенность и все случаи, когда залогированное действие расходилось с тем, что ты сделал на самом деле.

Теневой режим нужен потому, что дешёвый судья может ошибаться. Изучайте лог на предмет расхождений. Если stop_retry срабатывает на подходе, который сработал бы с четвёртой попытки, вы должны узнать об этом до того, как ему разрешат действовать.

Недели реального трафика вполне достаточно для анализа. Меньший срок даст слишком маленькую выборку, чтобы сделать выводы.

rody - inline image

Шаг 7: переходите в активный режим, но оставьте аварийный выключатель

text
1Установи mode в "active". С этого момента выполняй действие, а не просто логируй его.
2
3Два аварийных выключателя всегда остаются доступны мне:
4 1. фраза "bypass jev" в любом сообщении, которая игнорирует маршрутизатор для этого запуска
5 2. {"enabled": false} в config.json, что полностью его отключает
6
7ask_human по-прежнему ставит всё на паузу и ждёт меня. Продолжай вести decisions.jsonl точно так же, как раньше.

Продолжайте вести логи после переключения. Именно по ним вы отличите маршрутизатор, который экономит деньги, от того, который тихо останавливает работу, которую следовало закончить.

Что маршрутизировать в первую очередь

Начните с той единственной рутины, которая постоянно уходит в повторные попытки, а остальную настройку не трогайте.

Рутины, которые стоит маршрутизировать первыми, объединяет одно: агент не знает того, что уже знает. Он заново открывает браузер ради файла, лежащего на диске, читает четырнадцатый источник, когда пять уже ответили на вопрос, или пробует тот же подход в третий раз, потому что никто не сказал ему, что второй провалился по той же причине.

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

Сколько это стоит

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

Измеряйте стоимость на собственном трафике, а не верьте чужим цифрам, включая мои. Логируйте решение, логируйте пропущенный шаг и сравните неделю в теневом режиме с неделей в активном.

Несколько ограничений, о которых стоит помнить

  • Один компьютер на аккаунт. Все запущенные вами боты видят одни и те же файлы и авторизации, поэтому не храните на этой машине то, что не дали бы им всем.
  • Двадцать записей о запусках на рутину. Отправляйте всё важное в собственное хранилище.
  • Лимиты использования всё ещё существуют. Маршрутизатор сокращает дорогие действия, но не снимает потолок.

И что в итоге получается?

Grok Bot думает и работает, Jev отвечает одним из пяти действий, а вы сохраняете последнее слово во всём, что нельзя отменить.

Начните с рутины, которая постоянно падает одинаковым образом, неделю гоняйте её в теневом режиме, а затем переключайте.

Спасибо за прочтение!

Полные руководства и остальные части серии: https://zodchiii.substack.com/

Сохранение в один клик

Используйте YouMind для глубокого чтения вирусных статей с помощью ИИ

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

Исследовать YouMind
Для авторов

Превратите ваш Markdown в аккуратную статью для 𝕏

Когда вы публикуете длинные тексты, изображения, таблицы и блоки кода, форматирование в 𝕏 становится мучением. YouMind превращает полный черновик в Markdown в чистую статью, готовую к публикации в 𝕏.

Попробовать Markdown для 𝕏

Другие паттерны для анализа

Недавние виральные статьи

Смотреть другие виральные статьи