Holstead
Internal

System

Status & integrations

Where each integration stands right now. AI advisors run live when the key is present and fall back to deterministic mocks otherwise — nothing breaks if a key is missing.

AI advisors

Live

Anthropic key detected — every advisor calls Claude.

Supabase

Connected

Project URL + anon key set. Phase 1 will start writing here.

Build

production

Runtime mode reported by the Next.js server.

Environment keys

VariableStatusFallback

ANTHROPIC_API_KEY

Anthropic API keyRequired for live AI

Powers every AI advisor (cash, accounting, profitability, risk consult, website intel, structure workshop).

Detected

verc…tion

Mock advisor responses are returned with seed-data hedging.

NEXT_PUBLIC_SUPABASE_URL

Supabase URL

Tenant-scoped persistence — Phase 1 mirrors localStorage state into Postgres + RLS.

Detected

http…e.co

Falls back to local state per browser.

NEXT_PUBLIC_SUPABASE_ANON_KEY

Supabase anon key

Pairs with the URL above for client-side reads.

Detected

sb_p…j15c

Falls back to local state per browser.

Set keys in apps/web/.env.local and restart the dev server. The page reflects what the Next.js process can read on this request.

Local browser state

Reading local storage…

Phase 1 migration

Mirror localStorage → Supabase

One-time per-browser sweep. Reads every Holstead user-data + structure key, upserts into the corresponding Postgres tables. Idempotent — safe to re-run. Switches the platform from localStorage-backed to cloud-backed when the per-call swap lands.

What ships in Phase 1

  • Auth via Supabase + RLS — every read is tenant-scoped. See /audit for the corresponding write trail.
  • Mirror of localStorage scenarios + completion state into Postgres so switching browsers / devices keeps your work.
  • Live key health check against the Anthropic and Supabase APIs (right now this page only verifies presence, not validity).