Skip to content

GraceKelly

A FastAPI orchestrator that dispatches requests across pluggable execution adapters: a Playwright-driven Perplexity Pro browser proxy alongside OpenAI-compatible and Anthropic HTTP backends.

Orchestrator

FastAPI app exposing /api/v1/smart, /api/v1/orchestrate, /healthz/ready, /api/metrics. The smart-vs-orchestrate dispatcher picks an execution profile and routes the request to the matching adapter.

Execution adapters

Pluggable adapters under src/gracekelly/adapters/ — Perplexity browser automation (Playwright), OpenAI-compatible / Anthropic HTTP APIs, and an in-process dry-run. All implement the ExecutionAdapter contract with execute / execute_async / execute_stream / healthcheck / close lifecycle hooks.

Browser proxy

PerplexityBrowserAdapter drives a Chromium profile through Playwright against Perplexity Pro to expose Claude / GPT / Gemini / Sonar without paid API keys. Threadpool-isolated, circuit-breaker-guarded, with cold-start nav budgeted at ~30s and session reset on exception.

Operations

Frozen Settings dataclass with GRACEKELLY_* env vars, validated at startup. Postgres or in-memory storage. Optional Redis-backed rate limiting. Sentry / OTel / usage-telemetry hooks behind feature flags.

The pages below are regenerated on every npm run dev / npm run build from the live source tree:

The latest operational state lives in the operator runbook and the phased roadmap.