Ускорьте работу AI-кодирующих агентов: запуск нескольких агентов в изолированных контейнерах с container-use от Dagger
container-use от Dagger позволяет запускать нескольких AI-кодирующих агентов в изолированных контейнерах, предотвращая конфликты и обеспечивая прозрачность и контроль разработки.
Управление несколькими AI-кодирующими агентами с помощью контейнеров
AI-кодирующие агенты стали незаменимыми помощниками в разработке, способными самостоятельно писать, тестировать и рефакторить код. Однако одновременная работа нескольких агентов приводит к проблемам: конфликтам зависимостей, утечкам состояния и сложности отслеживания действий каждого агента. Проект container-use от Dagger решает эти задачи, предоставляя контейнеризированные среды для каждого агента. Такая изоляция позволяет запускать несколько агентов параллельно без взаимного влияния, а также наблюдать за их работой в реальном времени и при необходимости вмешиваться напрямую.
Проблемы традиционных сред
Обычно агенты работают в локальной среде разработчика, что приводит к конфликтам при обновлении общих библиотек или оставлению артефактов, мешающих следующим запускам. Контейнеризация решает эти проблемы, изолируя среду каждого агента. Это позволяет создавать новые среды для экспериментов и мгновенно удалять неудачные запуски, сохраняя прозрачность всех операций агента.
Бесшовная интеграция с существующими инструментами
container-use отлично интегрируется с такими инструментами, как Docker, git и стандартными CLI-утилитами, поддерживая различные технологические стеки: виртуальные окружения Python, Node.js, системные пакеты. Такая гибкость позволяет командам использовать привычные инструменты без потери контроля и прозрачности.
Установка и настройка
Для начала необходимо собрать и установить CLI-инструмент на Go под названием 'cu' с помощью простой команды make:
# Сборка CLI
make
# (опционально) Установка в PATH
make install && hash -rПоддерживается кросс-компиляция через переменную окружения TARGETPLATFORM, например, для ARM64:
TARGETPLATFORM=linux/arm64 makeИнтеграция с популярными AI-агентами
container-use поддерживает любых агентов, совместимых с протоколом Model Context Protocol (MCP). Среди примеров — Claude Code, Cursor, GitHub Copilot и Goose. Интеграция обычно сводится к настройке агента на использование 'container-use' в качестве MCP-сервера:
- Claude Code регистрирует сервер через NPM-хелпер:
npx @anthropic-ai/claude-code mcp add container-use -- $(which cu) stdio
curl -o CLAUDE.md https://raw.githubusercontent.com/dagger/container-use/main/rules/agent.md- Конфигурация Goose в ~/.config/goose/config.yaml:
extensions:
container-use:
name: container-use
type: stdio
enabled: true
cmd: cu
args:
- stdio
envs: {}- Cursor требует поместить файл правил в .cursor/rules/container-use.mdc.
- Пользователи VSCode и GitHub Copilot обновляют соответствующие файлы конфигурации, указывая команду 'cu'.
Практические примеры
В репозитории Dagger есть примеры, демонстрирующие возможности container-use:
- Hello World: агент создаёт и запускает простой HTTP-сервер в контейнере.
- Параллельная разработка: два агента запускают версии приложения на Flask и FastAPI в отдельных контейнерах.
- Сканирование безопасности: агент обновляет уязвимые зависимости и создаёт патчи в временном контейнере.
Запуск примера с Claude Code:
cat examples/hello_world.md | claudeИли с Goose:
goose run -i examples/hello_world.md -sКаждый агент сохраняет изменения в отдельной git-ветке для удобства проверки и слияния.
Мониторинг и отладка агентов
container-use ведёт единый журнал всех команд, выводов и изменений файлов в git-истории репозитория под именем удалённого 'container-use'. Для просмотра активности в реальном времени используйте:
cu watchЭта команда показывает активные ветки контейнеров, последние выводы и позволяет перейти в shell агента для ручной отладки.
Настройка пользовательских контейнеров
Можно создавать собственные образы, добавляя Containerfile или Dockerfile в корень проекта. Пример:
FROM ubuntu:22.04
RUN apt-get update && apt-get install -y git build-essential
WORKDIR /workspace
COPY requirements.txt .
RUN pip install -r requirements.txtАгенты, запускаемые с помощью 'cu', будут работать в этих кастомных контейнерах, имея доступ ко всем предустановленным инструментам и библиотекам.
Итог
По мере усложнения задач AI-агентов для разработки растёт потребность в надёжной изоляции и прозрачности. container-use от Dagger предлагает практичное решение — контейнеризированные среды, обеспечивающие стабильность, воспроизводимость и видимость работы агентов в реальном времени. Благодаря использованию стандартных инструментов и протоколов, а также интеграции с популярными MCP-совместимыми агентами, он снижает барьеры для безопасной и масштабируемой работы с несколькими агентами одновременно.
Switch Language
Read this article in English