Scaffold all modules, route stubs, data models, and config. No logic implemented yet — all core methods raise NotImplementedError. Establishes the full directory layout matching the architecture in CLAUDE.md. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
36 lines
727 B
Python
36 lines
727 B
Python
"""
|
|
Fellowship — entry point.
|
|
Run with: uvicorn main:app --reload
|
|
"""
|
|
|
|
import logging
|
|
|
|
from fastapi import FastAPI
|
|
|
|
from fellowship.api.routes import sessions
|
|
from fellowship.config import settings
|
|
from fellowship.logger import setup_logging
|
|
|
|
setup_logging()
|
|
logger = logging.getLogger(__name__)
|
|
|
|
app = FastAPI(
|
|
title="Fellowship",
|
|
description="Multi-bot LLM session orchestration API.",
|
|
version="0.1.0",
|
|
docs_url="/docs",
|
|
openapi_url="/openapi.json",
|
|
)
|
|
|
|
app.include_router(sessions.router, prefix="/v1")
|
|
|
|
|
|
@app.on_event("startup")
|
|
async def startup() -> None:
|
|
logger.info("Fellowship starting up")
|
|
|
|
|
|
@app.on_event("shutdown")
|
|
async def shutdown() -> None:
|
|
logger.info("Fellowship shutting down")
|