Describe your product; we automatically watch every regulation and vendor policy that affects you, and ticket your team the second something changes.
- Backend: FastAPI (Python), Supabase (Postgres + Auth + Storage), Claude (orchestrator), Browser-Use (automation), Linear + Slack (notifications).
- Frontend: Next.js 14 (App Router), TypeScript, Tailwind — black/green SaaS theme.
Copy .env.example to .env and fill in keys (see API keys). Never commit .env (it’s gitignored).
cp .env.example .env# Install Supabase CLI (macOS)
brew install supabase/tap/supabase
# Start local Supabase (Postgres, Auth, Realtime, Storage)
supabase startAfter supabase start, copy the printed API URL, anon key, and service_role key into .env:
SUPABASE_URLSUPABASE_ANON_KEYSUPABASE_SERVICE_ROLE_KEY
(Optional) For the frontend, create frontend/.env.local:
NEXT_PUBLIC_API_URL=http://localhost:8000
NEXT_PUBLIC_SUPABASE_URL=<from supabase start>
NEXT_PUBLIC_SUPABASE_ANON_KEY=<from supabase start>cd backend
python -m venv .venv
source .venv/bin/activate # or .venv\Scripts\activate on Windows
pip install -r requirements.txt
uvicorn app.main:app --reload --port 8000API docs: http://localhost:8000/docs
cd frontend
npm install
npm run devAdd these to the project root .env (or backend .env). Backend reads them at runtime.
| Variable | Purpose |
|---|---|
SUPABASE_URL, SUPABASE_SERVICE_ROLE_KEY |
Database and storage (required for backend). |
ANTHROPIC_API_KEY |
Claude — orchestrator plans and semantic diff. |
CLAUDE_MODEL |
Claude model name (e.g. claude-sonnet-4-20250514). Optional; has a default. |
BROWSER_USE_API_KEY |
Browser-Use — real browser automation. Without this, runs use mock data. |
LINEAR_API_KEY |
Create Linear issues when a change is detected. |
SLACK_BOT_TOKEN |
Send Slack notifications. |
EVIDENCE_SIGNING_KEY |
HMAC signing for evidence integrity (use a random secret). |
Frontend only needs NEXT_PUBLIC_API_URL (and optionally Supabase keys if you add auth later).
backend/— FastAPI app, Supabase client, orchestrator, diff/evidence/notification services.frontend/— Next.js app: Dashboard, Watches (list/create/detail + run), History, Evidence viewer, Settings.supabase/— Config, migrations, seed. Run withsupabase start.
- You provide a product description and/or explicit watch list.
- Each watch has targets (e.g. “GDPR Article 25”, “Vendor X ToS”) and a schedule.
- The orchestrator (Claude) assigns tasks to browser-use agents, which search and navigate multi-step flows, capture text + screenshot + hash.
- On each run, we diff against the previous snapshot; on change we generate an evidence bundle (impact memo, diff, screenshots, hash) and notify (Linear ticket, Slack).
- Retries and self-healing at the orchestrator level keep runs reliable.
Private / as per your repo.