
Комментарии 13
Автор, выскажу личное мнение.
Вы конечно молодец что стараетесь, но впечатления от сего остались неоднозначные.
Надо бы начать с того, зачем нужны "десятки CLI AI-агентов и терминалов на разных машинах". Обоснование, плюсы, минусы.
И как вы "навайбили" свой проект, так похоже и эту статью "навайбили". Не особо разбираясь, как она читается.
Хах, в точку.
Я не автор, и вижу это впервые, но судя по всему здесь один человек работает сразу над X проектами. По этому ему эта изоляция и оркестрация ох как нужна
Я сейчас над одним проектом работаю в котором два репозитория и уже плотно подошел к проблеме изоляции. Не уверен что возьму данный проект на вооружение, но точно присмотрюсь
Так и есть. Предоставлять полный доступ текущим *-cli с обещаниями изоляции желания нет. Поэтому сначала был инкус + windterm + ssh, мне оказалось неудобно, потом была мобилка, можно было накидываеть вне раб места - она отработала норм, но надо ее чистить чтобы выкладывать. Потом канвас, на гитхабе было решение - звери vscode засовывали, показалось слишком уж. А так советую еще посмотреть PaperClip, но там больше про оркестрацию.
Все правильно, я тоже себе дашбордов намутил чтобы за всем этим следить, а то становится нереально :)
Можно поподробнее о таком принципе работы, как вы проверяете, что агент там сделал? Я работаю через ide (windsurf/antigravity) Бывает с одной задачей нужно проверять и тестами и ручками смотреть что там изменилось. Ну ещё 2 агента думаю можно запускать - пока один работает, другому промт пишешь.... или тут речь о написании чегото простого с нуля по таск листам?
Ну тут если кратко - pty-демон сидит между терминалом и тем что в нём запущено, и отслеживает статус двумя способами.
Для Claude Code - через хуки. Claude сам отправляет события когда начинает думать, когда вызывает инструмент (Bash,
Edit, Read и тп), когда заканчивает. Демон ловит эти события и знает конкретно что агент делает прямо сейчас и дальше уже подкидывает события куда надо.
Для Codex и всего остального где хуков нет - демон лезет в /proc, смотрит дерево дочерних процессов, отслеживает когда последний раз был ввод и вывод в терминале. Если юзер что-то ввёл недавно и есть активность - значит работает. Если повисло без движения - idle.
Для вашего случая можно обертку сделать чтобы через нее запускались подпроцессы и см выше. Можно посмотреть как entire (github) устроен
Мой вопрос был о принципе работы с проектом, а не как это работает под копотом.
Что за проекты такие - что можно всё отдавать на вайбкодинг, не проверяя, не тестируя что там делается и писать в несольких агентах промты.
Вообщем зачем вам десятки cli ? когда физически нужно проверять - что там получилось, кто это делает?
Это для MVP тема - пробить идею посмотреть работает или нет. Например, vllm раскидать на vast.ai посмотреть реальные метрики или погонять инференсы от HF, бытро миниадминку поднять для реста. Для этого не надо сильно зарываться в детали. После проверки прототип допиливается в привычной ide (что не отменяет исползьзования агентов).
Понял, благодарю. А то я вот и думаю - когда с большим сложным проектом, бывает и с одним агентом тяжко. Нужно максимум ему контекста подсунуть, объяснить суть методов, расчётов и т.п. )
А так согласен, для более простых сайтов - самое то) С нуля они вообще хорошо набрасывают MVP/Начальную архитектуру.
Привет, Вадим.
Штука получилась, судя по описанию, полезная. Буду пробовать. Необходимость чувствую, хотя мои кейсы чуть другие.
Недавно сам начал писать похожее, но оно пока в гораздо менее оформившемся виде. Боли у меня другие, в частности потому что масштаб скромнее. Нода одна пока, планирую вторую, проектов меньше. Но всё что написано о продукте - откликается.
Вы упомянули что делали мобильного клиента для работы с лавочки в парке. Это вот примерно то что я делаю на базе tmux + telegram, только оно заточено под возможность работать на ходу и часто только голосом.
Работать с обычным терминалом на ходу, короткими сессиями, да на экране телефона - та ещё попаболь. Я пришел к выводу что решать ее нужно в том числе (или в основном) адаптацией информации для лёгкого восприятия в доступных модальностях. Благо у нас умные агенты которые могут ее соответствующими способами представлять и получать.
Если совсем коротко, то пытаюсь реализовать 3 основных режима работы.
Работа без экрана, когда всё что делает агент он представляет, описывает и презентует пользователю голосом, через подключенный tts. Соответственно и юзер, записывает голосовые, которые переводятся в текст. Pty демон в этом режиме даёт агенту инструкции по подстройке его output под такой канал (короткие фразы, упрощение, округление, обобщение, суммаризация).
Работа с агентом в таком режиме похожа больше на общение с коллегой-человеком. Он не пытается затолкать весь output в один длиннейший кусок информации, а настроен скорее на диалог, с поэтапным погружением и сохранением небольших промежуточных результатов обсуждения в общий план дальнейших шагов.
То же, но с минимальным интерфейсом, заточенным под периодический короткий взгляд, например на ходу. Это может быть короткое описание сессии (тронутые файлы, diff), статистика тестирования, простые схемы. Смысл тот же, выдать пользователю контекст для обсуждения, опору, визуальные маркеры на которые можно ссылаться в диалоге. Аналог рисунка на салфетке, при разговоре с коллегой за обедом.
Последний режим -классика, когда я возвращаюсь за клавиатуру и монитор, я хочу видеть классический терминал, без всей служебной информации (промптов адаптирующих интерфейс и данные). Впрочем никто не мешает и в телефоне открыть голый терминал если очень надо и есть возможность в него погрузиться.
Мне кажется, что такой функционал нормально ложится, как кейс мобильного использования, в общий воркфлоу вашей системы, но вам вероятно виднее. Есть ли смысл с вашей точки зрения?
Интересен также ваш опыт мобильного использования, может посоветуете что?
Да есть легаси версия я изначально для мобилы делал все это дело (см скрин), но не стал выкладывать тк очень на быструю руку все, только безопасность проверял. В принципе в этом направлении продолжать и есть план но уже с аппками а не xterm.js (там борьба суровая с ним чтобы на мобилах более менее завелся). Однако сейчас надо middleware для всех агентов доделать - чтобы на низком уровне регулировать, роутить траффик и те же индикаторы свободен/занят. Вообще после реализации много кейсов можно придумать - локальной моделькой проверять что не улетели пароли и явки, оптимизировать входные промты, подменять, или свою раг еще поверх навесить. Прототип уже есть и , кстати, мимоходом инфа: в телеметрию клауда просто дофига чего улетает соотношение полезный траффик к стучалке в пользуй стучалки значительное.


да насчет мобилок которые уже есть - есть целый класс проектов на гитхабе заточенные на non-interactive вызов *-cli Например Omnara. Минусы в этом режиме память на время сессии в итоге (субъективно) результат слабее чем в бесконечной сессии в интерактивном терминале. Из недавнего попробовал Paper-clip (там тоже есть моб вид), красиво, видно как тикеты генерят, раскидывают задачи, но проблемы теже.
Я устал рулить десятками CLI AI-агентов и терминалов на разных машинах — навайбил Agent-Bridge