openvibers/openvibe.space .env.example

.env.example

main 5.2 KB · 114 lines · plaintext

1# ═══════════════════════════════════════════════════════════════
2# openvibe.space — Environment Configuration
3# Copy to .env and fill in values.
4# In production this lives at /etc/openvibe/space.env (0600).
5# ═══════════════════════════════════════════════════════════════
6
7# Server
8PORT=4940
9HOST=127.0.0.1
10NODE_ENV=development
11BASE_URL=http://localhost:4940
12# Proxy hops that set X-Forwarded-For (Cloudflare → nginx → Node = 2)
13TRUST_PROXY=2
14
15# Identity provider — OpenVibe.Network (OAuth2 authorization server + JWKS)
16OV_NETWORK_URL=https://openvibe.network
17OV_NETWORK_INTERNAL_URL=http://127.0.0.1:4000
18
19# OAuth2 client credentials (client `space` registered in the Network DB,
20# redirect https://openvibe.space/auth/callback)
21OV_OAUTH_CLIENT_ID=space
22OV_OAUTH_CLIENT_SECRET=change-me-to-the-registered-space-secret
23# Production: https://openvibe.space/auth/callback
24OV_OAUTH_REDIRECT_URI=http://localhost:4940/auth/callback
25
26# Cookies — production default is Secure; set false for plain-http local dev
27#COOKIE_SECURE=false
28
29# OpenVibe.Community — the hub, and where the forum lives (owner decision, 2026-10-08): every
30# forum URL on this site redirects to the same path and query there.
31OV_COMMUNITY_URL=https://openvibe.community
32
33# OpenVibe.Live — the legal pages the shared footer links
34OV_LIVE_URL=https://openvibe.live
35
36# PostgreSQL (ADR-035), written by OpenVibe.Host roles/data/add-service.sh space. Space owns static hosting
37# state as well as the historical forum schema and feeds /api/ready.
38# Without DATABASE_URL, development uses an embedded PGlite database in data/pglite.
39DATABASE_URL=
40DATABASE_DIRECT_URL=
41
42# Static hosting engine (Stage B). Public project creation remains off until launch.
43SPACE_PUBLIC_HOSTING=off
44# Spaces (server/spaces/, docs/spaces.md): the AI builder and spaces' AI go through OpenVibe.AI (space.* workflows).
45#SPACE_AI=on
46# Who builds a space when a person describes one (plan 2026-10-22 §Z, stage Z1).
47# legacy Space's own AI loop (the way it was)
48# agent a task of the person's own agent (OpenVibe.Actor), with the space_* tools
49# The old path stays until the new one is proven; nothing is deleted.
50#SPACE_BUILDER=legacy
51# OpenVibe.Actor, the person's one agent (the task Space starts, and the tools it works with).
52#OV_ACTOR_INTERNAL_URL=http://127.0.0.1:4950
53# OpenVibe.Events → Space (account export and deletion, server/account-data.js): signs deliveries to /internal/events (32+ characters).
54#SPACE_EVENTS_SECRET=
55#OV_AI_INTERNAL_URL=http://127.0.0.1:4700
56#SPACE_SPACES_PER_OWNER=25
57#SPACE_AI_BUILDS_PER_DAY=20
58#SPACE_AI_ASKS_PER_SPACE_PER_DAY=500
59SPACE_SITES_DOMAIN=openvibe.website
60SPACE_STORAGE_DIR=./data/objects
61# SPACE_OBJECT_STORE=media
62# OV_MEDIA_URL=http://127.0.0.1:4100
63# OV_MEDIA_NAMESPACE=space
64# SPACE_FORM_SECRET= # set a stable random value for dashboard forms
65# SPACE_WORKER=off # off only for tests; default on
66# SPACE_PGLITE_DIR= # development-only embedded database path
67# SPACE_MAX_UPLOAD_BYTES=104857600
68# SPACE_MAX_UNPACKED_BYTES=268435456
69# SPACE_MAX_CONCURRENT_UPLOADS=2
70# SPACE_MIN_FREE_BYTES=5368709120
71# SPACE_MAX_PROJECTS_PER_OWNER=10
72# SPACE_QUOTA_STORAGE_BYTES=1073741824
73# SPACE_QUOTA_DEPLOYS_PER_DAY=50
74# SPACE_QUOTA_MAX_FILES=10000
75# SPACE_QUOTA_MAX_FILE_BYTES=26214400
76# SPACE_QUOTA_SITES=10
77# SPACE_QUOTA_CUSTOM_DOMAINS=5
78# SPACE_SANDBOX_QUOTA_STORAGE_BYTES=104857600
79# SPACE_SANDBOX_QUOTA_DEPLOYS_PER_DAY=20
80# SPACE_SANDBOX_QUOTA_MAX_FILES=2000
81# SPACE_SANDBOX_QUOTA_MAX_FILE_BYTES=10485760
82# SPACE_SANDBOX_QUOTA_SITES=3
83# SPACE_SANDBOX_QUOTA_CUSTOM_DOMAINS=0
84# SPACE_CNAME_TARGET=
85# SPACE_ORIGIN_IPV4=
86# SPACE_ORIGIN_IPV6=
87# SPACE_DNS_SERVERS=
88# SPACE_DOMAIN_RECHECK_MS=600000
89# SPACE_DOMAIN_PENDING_DAYS=7
90# SPACE_DOMAIN_LAPSE_DAYS=7
91# SPACE_RESERVED_DOMAINS=
92# SPACE_RESERVED_SITE_NAMES=
93# SPACE_ACTOR_LIMITS=on
94# EVENTS_URL=
95# EVENTS_RELAY_INTERVAL_MS=2000
96# SPACE_BILLING_INTERVAL_MS=0 # >0: daily gb-month storage readings to Billing (local store only)
97# OV_BILLING_URL= # Billing base URL; unset keeps readings queued
98# OV_BILLING_AUDIENCE=openvibe.billing
99# SPACE_BILLING_TIMEOUT_MS=10000
100# INDEXNOW_KEY=
101# VALKEY_URL=
102# VALKEY_PREFIX=ov:space:
103# API_CORS_ORIGINS=https://openvibe.network,https://openvibe.codes
104
105# Guest drafts (openvibe.website, plan 5.9): a visitor makes a draft on openvibe.space without an account and
106# edits it with a secret link; a signed-in person claims it later. These limits are the abuse screen's first half.
107#SPACE_GUEST_DRAFTS=on # off: no guest drafts at all
108#SPACE_GUEST_DRAFTS_PER_IP_PER_DAY=3 # drafts one address may make a day
109#SPACE_GUEST_AI_BUILDS_PER_IP_PER_DAY=2 # AI builds (and changes) one address may ask for a day
110#SPACE_GUEST_AI_EDITS_PER_DRAFT=20 # AI changes one draft may have
111#SPACE_GUEST_DRAFTS_PER_DAY=500 # drafts the whole service makes a day
112#SPACE_GUEST_TTL_DAYS=7 # a draft lives this long after its last edit
113#SPACE_GUEST_CLEANUP_INTERVAL_MS=3600000 # the job that removes the drafts whose time is up
114