docs(agents): Pro gate is enabled in production (SASQUATCH_REQUIRE_PRO=1)

This commit is contained in:
SkateSpots 2026-09-27 14:32:30 +07:00
parent 8d272a9c76
commit 70440c4bce

View file

@ -112,13 +112,16 @@ session with **no other memory of this project**. So:
Retention, so gemini/anthropic/gpt-4o-mini are **not** routable) — keep
`ALLOWED_MODELS` in the function in sync with `PROXY_MODELS` in
`sasquatchBrain.ts`. Keyless **Pollinations** is the fallback.
The proxy has an **env-gated Pro paywall**: set `SASQUATCH_REQUIRE_PRO=1` and
it requires `x-sasquatch-auth` (a NIP-98 kind-27235 event) plus
`x-sasquatch-pro` (the Pro zap receipt, verified offline incl. paid-amount→
tier); platform owners bypass. Off by default. The client (`src/lib/proAuth.ts`)
signs NIP-98 once per session and attaches the receipt — **but the per-crew
agent (`useCrewAgentChat`) does not yet**, so don't enable the gate until it
does. The pay-to address is single-sourced in `src/lib/platform.ts`.
The proxy has an **env-gated Pro paywall** and it is **ENABLED in production**
(`SASQUATCH_REQUIRE_PRO=1`): `/api/ai` requires `x-sasquatch-auth` (a NIP-98
kind-27235 event) plus `x-sasquatch-pro` (the Pro zap receipt, verified
offline incl. paid-amount→tier); platform owners bypass. Disable with
`netlify env:unset SASQUATCH_REQUIRE_PRO`. The client (`src/lib/proAuth.ts`)
signs NIP-98 once per session (no Amber pop per message) and attaches the
receipt — used by BOTH `SasquatchGuide` and the crew agent
(`useCrewAgentChat`). Callers without credentials 401 and fall back to
keyless **Pollinations**. The pay-to address is single-sourced in
`src/lib/platform.ts`.
**AI answers are Pro-only**: free users get the static FAQ/glossary + local
relay lookups only (`if (isPro)` gates the AI block in `SasquatchGuide`).
Pro access (`useSasquatchPro`) is granted by a provider-authored zap receipt,