# Локальный MAX + platform-agent из исходников (аналог docker-compose.fullstack.yml для Matrix). # Продакшен: только max-bot из docker-compose.prod.yml; AGENT_BASE_URL — URL агента, который поднимает команда платформы. services: max-bot: build: context: . target: development env_file: .env environment: MAX_BOT_TOKEN: ${MAX_BOT_TOKEN:?set MAX_BOT_TOKEN in .env} MAX_API_URL: ${MAX_API_URL:-https://platform-api.max.ru} MAX_AGENT_REGISTRY_PATH: ${MAX_AGENT_REGISTRY_PATH:-/app/config/max-agents.yaml} AGENT_BASE_URL: http://platform-agent:8000 SURFACES_WORKSPACE_DIR: ${SURFACES_WORKSPACE_DIR:-/agents} PYTHONUNBUFFERED: "1" depends_on: platform-agent: condition: service_healthy volumes: - agents:/agents - ./config:/app/config:ro command: python -m adapter.max.bot restart: unless-stopped platform-agent: build: context: ./external/platform-agent target: development additional_contexts: agent_api: ./external/platform-agent_api env_file: .env environment: PYTHONUNBUFFERED: "1" AGENT_ID: ${AGENT_ID:-max-dev} PROVIDER_MODEL: ${PROVIDER_MODEL:-openai/gpt-4o-mini} PROVIDER_URL: ${PROVIDER_URL:-} PROVIDER_API_KEY: ${PROVIDER_API_KEY:-} COMPOSIO_API_KEY: ${COMPOSIO_API_KEY:-} volumes: - ./external/platform-agent/src:/app/src - ./external/platform-agent_api:/agent_api - agents:/workspace command: > sh -lc " mkdir -p /workspace && chown -R agent:agent /workspace && exec /app/.venv/bin/uvicorn src.main:app --host 0.0.0.0 --port 8000 --no-access-log " ports: - "8000:8000" healthcheck: test: - CMD-SHELL - python -c "import urllib.request; urllib.request.urlopen('http://127.0.0.1:8000/openapi.json', timeout=2).read()" interval: 60s timeout: 5s retries: 5 start_period: 15s restart: unless-stopped volumes: agents: name: ${SURFACES_SHARED_VOLUME:-surfaces-agents}