# GoClaw Control Center > **Mission Control для вашего AI-агентского кластера.** Веб-интерфейс для мониторинга Docker Swarm, управления AI-агентами и общения с оркестратором через реальный LLM (Ollama Cloud API). --- ## Запуск одной командой ```bash curl -fsSL https://git.softuniq.eu/UniqAI/GoClaw/raw/branch/main/install.sh | bash ``` Или вручную через Docker Compose: ```bash git clone https://git.softuniq.eu/UniqAI/GoClaw.git && cd GoClaw && cp .env.example .env && docker compose up -d ``` После запуска откройте: **http://localhost:3000** --- ## Быстрый старт (без Docker) ```bash # 1. Клонировать репозиторий git clone https://git.softuniq.eu/UniqAI/GoClaw.git cd GoClaw # 2. Установить зависимости pnpm install # 3. Настроить переменные окружения cp .env.example .env # Отредактируйте .env — укажите OLLAMA_BASE_URL и OLLAMA_API_KEY # 4. Запустить базу данных pnpm db:push # 5. Запустить dev-сервер pnpm dev ``` --- ## Архитектура ``` GoClaw Control Center ├── client/ # React 19 + Tailwind 4 + shadcn/ui (фронтенд) │ └── src/ │ ├── pages/ # Dashboard, Agents, Nodes, Chat, Settings │ └── components/ # DashboardLayout, UI-компоненты ├── server/ # Express 4 + tRPC 11 (бэкенд) │ ├── ollama.ts # Прокси-клиент для Ollama API │ ├── routers.ts # tRPC роуты (ollama.health, models, chat) │ └── _core/ # Auth, DB, LLM, Storage хелперы ├── drizzle/ # Схема БД и миграции (MySQL/TiDB) ├── docker/ # Docker Stack для Swarm-деплоя │ ├── docker-stack.yml # Полный стек: Gateway + Agents + Control Center │ ├── Dockerfile.gateway # Образ основного шлюза GoClaw │ ├── Dockerfile.agent # Образ AI-агента │ └── Dockerfile.control-center # Образ веб-интерфейса (nginx) └── docs/ # Документация и спецификации ├── swarm_architecture.md └── goclaw_swarm_cloud_guide.md ``` --- ## Возможности | Раздел | Что умеет | | :--- | :--- | | **Dashboard** | Мониторинг Swarm-нод, статус агентов, лента активности, live-статус Ollama API | | **Agents** | Просмотр всех AI-агентов с их ролями, моделями и текущими задачами | | **Nodes** | Мониторинг Docker Swarm нод: CPU, RAM, контейнеры, статус | | **Chat** | Терминальный чат с оркестратором через реальный LLM (34 модели Ollama) | | **Settings** | Управление API-провайдерами, сканирование доступных моделей, настройки Telegram | --- ## Переменные окружения Скопируйте `.env.example` в `.env` и заполните: ```env # Ollama API (обязательно) OLLAMA_BASE_URL=https://ollama.com/v1 OLLAMA_API_KEY=your_api_key_here # База данных (обязательно для production) DATABASE_URL=mysql://user:password@host:3306/goclaw # JWT (сгенерируйте случайную строку) JWT_SECRET=your_random_secret_here # Telegram Bot (опционально) TELEGRAM_BOT_TOKEN=your_bot_token ``` --- ## Docker Swarm деплой ```bash # Инициализировать Swarm (если ещё не сделано) docker swarm init # Задать секреты export OLLAMA_API_KEY=your_key export DATABASE_URL=mysql://... export JWT_SECRET=your_secret # Развернуть стек docker stack deploy -c docker/docker-stack.yml goclaw # Проверить статус docker stack services goclaw ``` Добавление новой ноды в кластер: ```bash # На manager-ноде получить токен docker swarm join-token worker # На новой ноде выполнить команду из вывода выше docker swarm join --token SWMTKN-... manager-ip:2377 ``` --- ## Технологический стек | Слой | Технологии | | :--- | :--- | | **Фронтенд** | React 19, Tailwind CSS 4, shadcn/ui, Framer Motion, tRPC Client | | **Бэкенд** | Node.js, Express 4, tRPC 11, Drizzle ORM, Zod | | **База данных** | MySQL / TiDB (через Drizzle) | | **LLM** | Ollama Cloud API (OpenAI-совместимый, 34+ модели) | | **Оркестрация** | Docker Swarm, Overlay Network | | **Агенты (Go)** | gRPC, Docker SDK, Goroutines, Channels | | **Тесты** | Vitest | --- ## Структура GoClaw Swarm ``` ┌─────────────────────────────────┐ │ goclaw-net (Overlay Network) │ └─────────────────────────────────┘ │ ┌─────────────────────┼─────────────────────┐ │ │ │ ┌─────────▼──────┐ ┌──────────▼──────┐ ┌─────────▼──────┐ │ Control Center │ │ Gateway │ │ Agents │ │ (Web UI :3000) │ │ (Orchestrator) │ │ (Docker Svc) │ │ React + tRPC │ │ Go + gRPC │ │ Coder/Browser │ └────────────────┘ └─────────────────┘ │ Mail/Monitor │ │ └─────────────────┘ ┌───────────▼──────────┐ │ Ollama Cloud API │ │ (34 LLM Models) │ └──────────────────────┘ ``` --- ## Разработка ```bash # Запустить тесты pnpm test # Проверить типы pnpm check # Форматировать код pnpm format # Применить миграции БД pnpm db:push ``` --- ## Дорожная карта - [x] Dashboard с мониторингом кластера - [x] Реальная интеграция Ollama API (34 модели) - [x] Терминальный чат с LLM - [x] Docker Swarm Stack - [x] gRPC API для агентов (Go) - [ ] Стриминг ответов LLM в чате - [ ] CRUD агентов через UI - [ ] Подключение реального Docker API для нод - [ ] Telegram-коннектор - [ ] Система скиллов (Self-Evolution) - [ ] Аутентификация и RBAC --- ## Лицензия MIT — используйте свободно для личных и коммерческих проектов. --- *Разработано в рамках проекта **GoClaw** — распределённой системы AI-агентов на Go + Docker Swarm.*