跳转到主要内容

配置说明

核心应用不需要环境变量。只在需要启用某个可选服务时添加对应变量。

环境变量

变量用于作用域
VITE_SUPABASE_URLSupabase 登录和云同步浏览器
VITE_SUPABASE_ANON_KEYSupabase 登录和云同步浏览器
SUPABASE_URLFunctions 使用的 Supabase URL仅服务端
SUPABASE_PUBLISHABLE_KEYFunctions 验证用户 access token仅服务端
SUPABASE_SECRET_KEY定时通知、付费激活、开放 API 和 AI 录入配额仅服务端
SUPABASE_SERVICE_ROLE_KEYSUPABASE_SECRET_KEY 的旧版兼容名仅服务端
VITE_STRIPE_PUBLISHABLE_KEY启用支付界面,不作为 checkout 授权依据浏览器
STRIPE_SECRET_KEY创建 Stripe checkout session仅服务端
STRIPE_WEBHOOK_SECRET校验 Stripe webhook仅服务端
STRIPE_PRICE_ID服务端允许购买的唯一 Stripe Price仅服务端
SITE_URLCheckout 成功和取消回调地址仅服务端
URLNetlify function 回调 URLNetlify 提供
API_FREE_RATE_LIMIT_PER_HOUR普通用户开放 API 每用户每小时请求数,默认 60仅服务端
API_PREMIUM_RATE_LIMIT_PER_HOURPremium 用户开放 API 每用户每小时请求数,默认 1000仅服务端
API_FREE_ACTIVE_KEYS普通用户可用 API Key 数量,默认 1仅服务端
API_PREMIUM_ACTIVE_KEYSPremium 用户可用 API Key 数量,默认 5仅服务端
API_FAILED_AUTH_RATE_LIMIT_PER_HOUR每个客户端身份每小时失败 API Key 鉴权次数,默认 300仅服务端
API_RATE_LIMIT_RETENTION_HOURS限流窗口定时清理前的保留时长,默认 48仅服务端
OPENROUTER_API_KEY通过 OpenRouter 启用 AI 录入仅服务端
ANTHROPIC_API_KEY通过 Anthropic 启用 AI 录入仅服务端
AI_PROVIDER可选 provider 覆盖:openrouteranthropic仅服务端
AI_MODELAI 录入模型覆盖仅服务端
AI_FALLBACK_MODELSOpenRouter fallback 模型,逗号分隔仅服务端
OPENROUTER_SITE_URL可选 OpenRouter referer;默认回退到 SITE_URLURL仅服务端
OPENROUTER_APP_TITLE可选 OpenRouter app title header仅服务端
AI_FREE_DAILY_PARSES普通用户每日 AI 录入次数,默认 20仅服务端
AI_PREMIUM_DAILY_PARSESPremium 用户每日 AI 录入次数,默认 200仅服务端
AI_MAX_INPUT_CHARSAI 录入文本长度上限,默认 20000仅服务端
AI_MAX_IMAGE_BYTESAI 录入图片大小上限,默认 4194304仅服务端
AI_MONTHLY_BUDGET_USD工作区级月度 AI 录入预算,默认 50仅服务端
AI_INPUT_USD_PER_MTOK每百万 input token 的成本估算仅服务端
AI_OUTPUT_USD_PER_MTOK每百万 output token 的成本估算仅服务端

浏览器变量

VITE_ 开头的变量会被打包进浏览器代码。不要把密钥放进这些变量。 浏览器变量只适合公开配置,例如 Supabase URL、Supabase anon key 和 Stripe publishable key。

服务端变量

仅服务端使用的变量需要配置在托管平台中,例如 Netlify environment variables。不要提交 service role key、Stripe secret key、webhook secret 或 AI provider key。 Functions 优先读取不带 VITE_ 的服务端变量,并在迁移期兼容现有的 VITE_SUPABASE_URLVITE_SUPABASE_ANON_KEYSUPABASE_SERVICE_ROLE_KEYVITE_STRIPE_PRICE_ID。其中 VITE_STRIPE_PRICE_ID 只作为旧版服务端回退值,浏览器代码不再读取它。

功能检测

应用会在运行时检查环境变量:
  • Supabase 变量启用登录和云同步。
  • Stripe 变量启用支付流程。
  • 开放 API Key 依赖 Supabase 和 Netlify Functions;API 配额变量只用于覆盖默认值。
  • AI 录入依赖 Supabase、Netlify Functions、AI 录入迁移,以及 OPENROUTER_API_KEYANTHROPIC_API_KEY
  • 缺少可选变量时,应用保持本地优先模式。

Bark 设置

Bark 通知设置在应用界面中配置。用户需要提供 Bark server URL、device key 和提醒时间。