- Create src/lib/ai-proxy.ts: routes OpenAI chat completions requests
to backend providers (opencode.ai, surfsense.com, deep-seek.ai)
based on model name with request/response translation
- Add POST /v1/chat/completions route to server with streaming (SSE)
support, CORS, and proxy pool fallback on failure
- Add GET /v1/models route returning available model list
- Direct-first strategy: try backend directly, fall back to proxy pool
on network failure (consistent with relay behavior)
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>