Machinist: создание инфраструктуры для кодирующих агентов на локальной машине

Machinist: создание инфраструктуры для кодирующих агентов на локальной машине

Machinist — это open-source решение для создания инфраструктуры программных фабрик, ориентированной на продвинутые AI-потоки разработки кода. Проект предлагает возможность запуска агентов кодирования на локальной машине или инфраструктуре с использованием виртуальных машин и Kubernetes, аккуратно управляя доступом к репозиториям и учетным данным.

Основная задача Machinist — обеспечить контролируемую среду для запуска кодирующих агентов, таких как Codex или Claude Code, с возможностью записи всего рабочего процесса от запроса до передачи результата. Главное отличие от альтернатив — это возможность сохранять конфиденциальную информацию, такую как учетные данные и настройки модели, локально на рабочем узле, что повышает безопасность и управляемость.

Проект написан на Go, и его можно запустить следующим образом: клонируй репозиторий, затем собери и инициализируй Machinist с помощью команды go build. Имей в виду, что это ранняя версия, и программное обеспечение может изменяться.

Проект Machinist представляет собой реализацию программной фабрики с открытым исходным кодом. Он работает на твоем компьютере и обеспечивает локальный доступ к репозиториям и учетным данным, а также фиксирует работу от запроса до завершения. С его помощью можно запускать команды, которые вызывают Codex, Claude Code, другие CLI-агенты, тестовые раннеры и скрипты. Первоначальное состояние программного продукта все еще на стадии доступа и может изменяться.

Зачем нужен Machinist

  • Контролируемая точка входа. Работники предоставляют доступные команды и репозитории, исключая произвольные текстовые команды и пути на локальных машинах.
  • Приведи свое окружение. Можно использовать любое исполняемое приложение, которое принимает ввод через стандартный поток.
  • Храни полномочия локально. Все настройки, учетные данные и конфигурации остаются на стороне работника.
  • Мониторинг каждой операции. Система фиксирует результаты выполнения, события и артефакты, а также оценивает временные затраты и использование ресурсов.
  • Рецензия перед слиянием. По мере необходимости можно утверждать спецификации и проводить независимый обзор перед слиянием pull request.

Как установить и запустить

Чтобы начать работу с Machinist, выполни следующие команды:

git clone https://github.com/owainlewis/machinist.git
cd machinist
mkdir -p ./bin && go build -o ./bin/machinist ./cmd/machinist
./bin/machinist init

Затем, чтобы запустить приложение, используй:

./bin/machinist start

После этого открой указанный локальный URL, подключи свой GitHub App, выбери репозиторий и агента, и проверь соединение с PING. Агенты могут работать на твоем компьютере, виртуальной машине (VM) или на кластере Kubernetes.

Работа с несколькими проектами

Чтобы добавить новый репозиторий, открой раздел Projects → Add project. Эта операция сохранит существующие проекты и настройки. Каждый репозиторий будет иметь отдельную копию, а запуски и автоматизации будут выбирать из уже настроенного списка. Для обновления списка репозиториев и доступа ты можешь использовать функцию Manage GitHub access.

Как осуществляется выполнение задач

Выбери опцию New run для описания работы или связывания с GitHub issue. Доступны два режима выполнения:

  • Стандартный конвейер: включает этапы Triage, необязательную спецификацию, сборку и независимый обзор. Спецификации требуют утверждения, а результаты обзора отправляются обратно в тот же репозиторий.
  • Единый агент: один агент завершает задачу с начала до конца. Такой режим подходит для одноразовых задач и автоматизаций.

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

Ограничения и специальные возможности

Machinist предлагает различные настройки и функции, такие как управление проектами через GitHub, но нет возможности редактирования пользовательских рабочих процессов. Также необходимо учитывать, что это программное обеспечение находится на раннем этапе развития, и некоторые функции могут изменяться. Важно делать резервные копии рабочей директории, включая выходные данные рабочих процессов. Если возникает необходимость в автоматизации, поддерживаются функции сохранения и запуска работ вручную или по расписанию.

Открыть на GitHub: owainlewis/machinist →

Что нового на GitHub — короткие обзоры на русском Новые обзоры приходят в Telegram. Без спама, по делу.
Подписаться

Похожие статьи

Популярные темы на сайте