Files
DevConsole/backend/main.py
T

62 строки
1.2 KiB
Python

from fastapi import FastAPI
from fastapi.middleware.cors import CORSMiddleware
from pydantic import BaseModel
from backend.config_store import (
get_openai_model,
has_openai_key,
set_setting,
)
app = FastAPI(title='DevConsole', version='0.1.0')
app.add_middleware(
CORSMiddleware,
allow_origins=['*'],
allow_credentials=True,
allow_methods=['*'],
allow_headers=['*'],
)
class OpenAIConfigRequest(BaseModel):
api_key: str
model: str = 'gpt-5'
@app.get('/')
async def root():
return {
'project': 'DevConsole',
'version': '0.1.0',
'status': 'running',
'openai_configured': has_openai_key(),
}
@app.get('/health')
async def health():
return {
'status': 'ok',
'openai_configured': has_openai_key(),
}
@app.get('/api/settings/openai')
async def openai_status():
return {
'configured': has_openai_key(),
'model': get_openai_model(),
}
@app.post('/api/settings/openai')
async def save_openai_settings(payload: OpenAIConfigRequest):
set_setting('OPENAI_API_KEY', payload.api_key.strip())
set_setting('OPENAI_MODEL', payload.model.strip())
return {
'success': True,
'message': 'OpenAI settings saved',
}