Добавить FastAPI endpoint запуска сценария через AgentOS base_app.

Подключен верхний HTTP-слой с POST /api/runs и обновлены схемы/README, чтобы запуск сценариев шел через единый API-контракт поверх Agno workflow.
This commit is contained in:
Barabashka
2026-04-21 17:37:36 +03:00
parent d341941f87
commit 0fbd7dce1a
4 changed files with 73 additions and 3 deletions
+34 -1
View File
@@ -6,7 +6,7 @@
## Требования
- Python 3.11+
- Python 3.10+
- Запущенный Ollama endpoint (по умолчанию: `http://localhost:11435`)
- Доступная модель в Ollama (по умолчанию: `gemma4:31b`)
@@ -23,11 +23,13 @@ prisma_platform/
│ └── v1.json
└── src/
├── __init__.py
├── api_routes.py
├── agent_os.py
├── agent_runner.py
├── main.py
├── observability.py
├── scenario_store.py
├── schemas.py
├── stub_tools.py
└── workflow_runner.py
```
@@ -76,6 +78,37 @@ python -m src.agent_os
- `http://127.0.0.1:7777/docs`
- `http://127.0.0.1:7777/redoc`
Верхний слой сервиса реализован как кастомные FastAPI роуты (`src/api_routes.py`), подключенные через `AgentOS(base_app=...)`.
### Запуск сценария через HTTP
- `POST http://127.0.0.1:7777/api/runs`
- Тело запроса (JSON):
```json
{
"scenario_id": "news_source_discovery_v1",
"input": {
"url": "https://example.com/news"
}
}
```
Пример запроса:
```bash
curl -X POST "http://127.0.0.1:7777/api/runs" \
-H "Content-Type: application/json" \
-d '{
"scenario_id": "news_source_discovery_v1",
"input": {
"url": "https://example.com/news"
}
}'
```
Endpoint возвращает структурированный ответ со статусом `success` или `failed`.
Проверка, что сервер поднят:
```bash