⚠️ Проект-эксперимент. С момента его создания мои взгляды на агентские системы изменились — этот код не отражает мой текущий подход. Оставлен как история исследования.
Инструмент для визуального проектирования, симуляции и исполнения многоуровневых AI-агентов с динамической маршрутизацией запросов.
- Bun (последняя версия)
bun install# Запуск backend (порт 3000)
cd apps/backend
bun run dev
# В другом терминале - запуск frontend (порт 5173)
cd apps/frontend
bun run devИли используйте команду из корня:
bun run dev/workspace
├── apps/
│ ├── frontend/ # React + Vite + xyflow
│ └── backend/ # Bun + Hono API
├── packages/
│ ├── domain/ # Типы и доменная логика
│ └── engine/ # Движок исполнения графов
├── contract.md # Контракт проекта
└── package.json # Workspace конфигурация
GET /api/graphs- Список всех графовPOST /api/graphs- Создать графGET /api/graphs/:id- Получить графPUT /api/graphs/:id- Обновить графDELETE /api/graphs/:id- Удалить графPOST /api/validate- Валидировать графPOST /api/execute- Исполнить граф
{
"id": "uuid",
"name": "Simple Agent",
"version": "1.0.0",
"nodes": [
{
"id": "input-1",
"type": "input",
"position": { "x": 100, "y": 100 },
"data": { "label": "User Input" }
},
{
"id": "llm-1",
"type": "llm",
"position": { "x": 300, "y": 100 },
"data": {
"label": "Processor",
"model": "gpt-4o",
"prompt": "Process: {{input}}"
}
},
{
"id": "output-1",
"type": "output",
"position": { "x": 500, "y": 100 },
"data": { "label": "Result" }
}
],
"edges": [
{
"id": "edge-1",
"source": "input-1",
"target": "llm-1"
},
{
"id": "edge-2",
"source": "llm-1",
"target": "output-1"
}
],
"metadata": {
"createdAt": "2024-01-01T00:00:00Z",
"updatedAt": "2024-01-01T00:00:00Z"
}
}- ✅ Визуальный редактор графов (xyflow)
- ✅ Создание узлов 5 типов (input, output, llm, condition, tool)
- ✅ Соединение узлов связями
- ✅ Сохранение графов в памяти
- ✅ Валидация графов
- ✅ Базовый движок исполнения
- ✅ Режим симуляции (mock LLM ответы)
- Интеграция с реальными LLM (OpenAI, Anthropic, Ollama)
- WebSocket для стриминга событий исполнения
- Панель свойств узла (редактирование промптов, условий)
- Тепловая карта выполнения (визуализация путей)
- История исполнений
- Экспорт/импорт графов
См. contract.md для полной спецификации.
- Frontend: React, Vite, xyflow, Zustand, TailwindCSS
- Backend: Bun, Hono
- Domain: TypeScript, DDD
- Engine: Кастомный обход графов на TS