Skip to main content

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_name in Pages DO binding.
  • Keep compatibility_date aligned across configs.