Files
microdao-daarion/services/comfy-agent/app/main.py
Apple c41c68dc08 feat: Add Comfy Agent service for NODE3 image/video generation
- Create comfy-agent service with FastAPI + NATS integration
- ComfyUI client with HTTP/WebSocket support
- REST API: /generate/image, /generate/video, /status, /result
- NATS subjects: agent.invoke.comfy, comfy.request.*
- Async job queue with progress tracking
- Docker compose configuration for NODE3
- Update PROJECT-MASTER-INDEX.md with NODE2/NODE3 docs

Co-Authored-By: Warp <agent@warp.dev>
2026-02-10 04:13:49 -08:00

27 lines
740 B
Python

# services/comfy-agent/app/main.py
import asyncio
from fastapi import FastAPI
from fastapi.staticfiles import StaticFiles
from .config import settings
from .api import router
from .worker import worker_loop
from .nats_client import start_nats
from .storage import ensure_storage
app = FastAPI(title="Comfy Agent Service", version="0.1.0")
app.include_router(router)
@app.on_event("startup")
async def startup():
ensure_storage()
# Static files for result URLs: /files/{job_id}/...
app.mount("/files", StaticFiles(directory=settings.STORAGE_PATH), name="files")
asyncio.create_task(worker_loop())
await start_nats()
@app.get("/healthz")
async def healthz():
return {"ok": True, "service": settings.SERVICE_NAME}