Pre-launch — Gluecron is in final validation. Public signups and git hosting for non-owner users open after launch review.
CodeIssuesDiscussionsWikiPull RequestsProjectsCommitsActionsReleasesContributorsPulse● GatesSecuritySettingsDeploymentsPipelineInsightsAgents✨ Explain✨ Ask AI✨ Workspace✨ Spec✨ Tests▓ Debt Map✨ NL Search🏛 Archaeology
Blame · Line-by-line history

.env.example

Each line is annotated with the commit that last touched it. Click any SHA to jump to that commit and see the surrounding change.

.env.exampleBlame91 lines · 4 contributors
fc1817aClaude1DATABASE_URL=postgresql://user:password@host/gluecron
2GIT_REPOS_PATH=./repos
3PORT=3000
a4e1564Claude4GATETEST_URL=https://gatetest.ai/api/events/push
e883329Claude5GATETEST_API_KEY=
ad6d4adClaude6# Inbound GateTest callback auth — set one so GateTest can POST results back.
7# See GATETEST_HOOK.md for payload + endpoint details.
8# Generate a secret with: openssl rand -hex 32
9GATETEST_CALLBACK_SECRET=
10GATETEST_HMAC_SECRET=
0ec4eceTest User11# ─── For the GateTest side, NOT Gluecron ─────────────────────────────────
12# When you point GateTest at gluecron.com to scan the live site, GateTest
13# needs the two values below in ITS environment (set them in the gatetest.ai
14# scanner config, not here). Issue the token from /admin/ops → "GateTest
15# scanner credentials" while signed in as site admin.
16# GLUECRON_BASE_URL=https://gluecron.com
17# GLUECRON_API_TOKEN=<paste from /admin/ops, shown once>
18# ─────────────────────────────────────────────────────────────────────────
ba93444Claude19CRONTECH_DEPLOY_URL=https://crontech.ai/api/webhooks/gluecron-push
20# BLK-016 — only fire the Crontech deploy webhook for pushes to this
21# `<owner>/<name>` (default `ccantynz-alt/crontech`). All other repo pushes
22# are ignored.
23CRONTECH_REPO=ccantynz-alt/crontech
24# Shared HMAC secret used to sign the outbound Crontech deploy webhook.
25# Sent as `X-Gluecron-Signature: sha256=<hex>` of the JSON body. Must match
26# the `GLUECRON_WEBHOOK_SECRET` configured on the Crontech deploy-agent
27# (Vultr box). Unset → header omitted and Crontech rejects with 401.
43cf9b0Claude28GLUECRON_WEBHOOK_SECRET=
9e1e93aClaude29# Inbound bearer token Crontech MUST present on deploy.succeeded /
30# deploy.failed callbacks to POST /api/events/deploy (Signal Bus P1 — E3/E4).
31# Generate with: openssl rand -hex 32. Unset → endpoint refuses every call.
32CRONTECH_EVENT_TOKEN=
e883329Claude33ANTHROPIC_API_KEY=
24cf2caClaude34# Email (Block A8). Provider=log just writes to stderr (safe default).
35# Switch to "resend" in prod and set RESEND_API_KEY.
36EMAIL_PROVIDER=log
37EMAIL_FROM=gluecron <no-reply@gluecron.local>
38RESEND_API_KEY=
39# Used to build absolute URLs in outbound emails + webhooks.
40APP_BASE_URL=http://localhost:3000
ccf9eefDictation App41# Cross-product platform-status endpoints (Crontech / Gluecron / GateTest).
42# Used by the /admin/platform widget. Defaults point at production hosts.
43CRONTECH_STATUS_URL=https://crontech.ai/api/platform-status
44GLUECRON_STATUS_URL=https://gluecron.com/api/platform-status
45GATETEST_STATUS_URL=https://gatetest.io/api/platform-status
80bed05Claude46# Error tracking (optional). If unset, errors are logged to stderr only.
47# ERROR_WEBHOOK_URL — POST JSON {timestamp,message,stack,context,env} on unhandled errors.
48ERROR_WEBHOOK_URL=
49# SENTRY_DSN — if set, errors POST to the Sentry envelope endpoint directly (no SDK).
50SENTRY_DSN=
ea52715copilot-swe-agent[bot]51# CLI: gluecron server host for remote commands (default: localhost).
52GLUECRON_HOST=localhost
53# Preflight script: port the running server listens on (default matches PORT).
54PREFLIGHT_PORT=3000
55# Preflight script: set to 1 to run the backup drill check.
56PREFLIGHT_BACKUP_DRILL=
57# Set to 1 to enable verbose AI review debug output.
58DEBUG_AI_REVIEW=
59# Autopilot: poll interval in milliseconds (default: 60000).
60AUTOPILOT_INTERVAL_MS=60000
61# Set to 1 to disable the autopilot background task entirely.
62AUTOPILOT_DISABLED=
63# WebAuthn / Passkey relying-party settings.
64WEBAUTHN_RP_ID=localhost
65WEBAUTHN_ORIGIN=http://localhost:3000
66WEBAUTHN_RP_NAME=gluecron
67# Set to 1 to enable verbose PR triage debug output.
68DEBUG_PR_TRIAGE=
69# Voyage AI API key for semantic (vector) code search.
70VOYAGE_API_KEY=
71# AES-256-GCM key (hex, 64 chars) for encrypting workflow secrets at rest.
72WORKFLOW_SECRETS_KEY=
783dd46Claude73# AES-256-GCM key (hex, 64 chars) for encrypting server-target SSH private
74# keys and per-target env vars at rest (Block ST — /admin/servers).
75# Generate with: openssl rand -hex 32. If unset, all server-target
76# operations refuse cleanly (no panics, no plaintext fallbacks).
77SERVER_TARGETS_KEY=
90c7531Claude78# Block CW — Claude on the web (/:owner/:repo/claude).
79# Per-session working directories live under this dir on the web server.
80# Default: /var/lib/gluecron/claude-web. Should be on a disk with room
81# for full repo clones and writable by the gluecron service user.
82CLAUDE_WEB_WORKDIR=
83# Path to the Claude Code CLI binary. Default: `claude` (i.e. on PATH).
84# Override if `claude` is installed somewhere non-standard on the box.
85CLAUDE_BIN=
ea52715copilot-swe-agent[bot]86# Set to "production" or "test" to override NODE_ENV for Bun.
87BUN_ENV=
88# Injected at build time; the deployed git commit SHA for the platform-status endpoint.
89APP_VERSION=
90# Injected at build time; the deployed git commit SHA shown on the status page.
91GIT_COMMIT=