Персональная cli для каждого агента
Перевёл своих агентов с прямого использования внешних cli утилит на персональную cli-обёртку под каждого агента. Под персональный second-brain и рабочий second-brain — по своей утилите с субкомандами для чтения мира и влияния на него: jira, github, gitlab, prometheus, выполнение определённых команд на серверах, облачные провайдеры, внутренние утилиты и так далее.
Плюсы:
- ограничение возможных действий агента
- скрытие ключей, токенов и так далее от агента
- шоткаты для популярных процессов и комбинаций
- подгонка форматов под агента, включая сообщения об ошибках
Причем там гораздо проще делать всякие интересные штуки. Например, у агента есть команда просмотра списка контейнеров, вход на них и чтения их логов. Но:
- он не знает, что под капотом это вход на удалённый сервер и вызов docker cli
- он видит и может зайти только на определенные контейнеры по маске
- из вывода логов вырезаются ключи и секреты
- на попытки обхода ограничений агенту делается напоминание о том, что лучше позвать старшего
Основной агент не может править код утилиты. У него только бинарник и возможность создавать тикеты на её расширение или модификацию. Теоретически он может её дизассемблировать и попробовать достать ключи, но для этого ему нужно сильно захотеть и смочь.
Очевидно, что следующий шаг - это превращение этой утилиты в полноценный API-сервер для всей команды.