Environment & Bindings
Pages (wrangler.toml):
pages_build_output_dir = "./build/client"
[[d1_databases]]
binding = "DB"
database_name = "chyperai_db"
database_id = "<your-d1-id>"
migrations_dir = "db/migrations"
[[durable_objects.bindings]]
name = "DO_WORKSPACE"
class_name = "WorkspaceLock"
script_name = "chyperai-worker"
[vars]
VITE_CLERK_PUBLISHABLE_KEY = "<pub-key>"
CLERK_ISSUER = "<issuer-url>"
CLERK_JWKS_URL = "<jwks-url>"
GITHUB_CLIENT_ID = "<oauth-client-id>"
Worker (wrangler.worker.toml):
name = "chyperai-worker"
main = "src/worker.ts"
[[durable_objects.bindings]]
name = "DO_WORKSPACE"
class_name = "WorkspaceLock"
[[migrations]]
tag = "v1"
new_classes = ["WorkspaceLock"]
[[d1_databases]]
binding = "DB"
database_name = "chyperai_db"
database_id = "<your-d1-id>"
Secrets (Pages):
npx wrangler pages secret put ANTHROPIC_API_KEY
npx wrangler pages secret put OPENROUTER_API_KEY
npx wrangler pages secret put DEEPSEEK_API_KEY
npx wrangler pages secret put GITHUB_CLIENT_SECRET
Notes:
- Vars are readable to the client if prefixed with
VITE_; keep sensitive values as Secrets. - Ensure the Worker script name matches
script_namein Pages DO binding. - Keep
compatibility_datealigned across configs.