-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy path.env.example
More file actions
64 lines (55 loc) · 3.19 KB
/
Copy path.env.example
File metadata and controls
64 lines (55 loc) · 3.19 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
# ─────────────────────────────────────────────────────────────
# OpsForge AI — environment configuration
# Copy this file to `.env` and fill in the values.
# The stack is designed to run fully on FREE services.
# ─────────────────────────────────────────────────────────────
# App Configuration
APP_NAME=OpsForge AI
DEBUG=true
ENVIRONMENT=development
# ── Database ──────────────────────────────────────────────────
# PostgreSQL is required for RAG (pgvector). SQLite works for quick
# local dev but disables vector search.
# Docker Compose builds DATABASE_URL from the DB_* vars below.
DATABASE_URL=postgresql://opsforge:opsforge@localhost:5432/opsforge
DB_USER=opsforge
DB_PASSWORD=opsforge
DB_NAME=opsforge
# ── LLM (FREE: Groq) ──────────────────────────────────────────
# Get a free key at https://console.groq.com
LLM_PROVIDER=groq
GROQ_API_KEY=your_groq_api_key_here
GROQ_MODEL=llama-3.1-70b-versatile
# OpenAI is optional (fallback only). Leave blank to stay fully free.
OPENAI_API_KEY=
# ── Embeddings (FREE: local) ──────────────────────────────────
# Runs locally via fastembed — no API key, downloaded once on first use.
EMBEDDING_MODEL=BAAI/bge-small-en-v1.5
EMBEDDING_DIM=384
# ── Email (optional) ──────────────────────────────────────────
# Resend free tier (3k emails/mo): https://resend.com — or use SMTP/Gmail.
EMAIL_PROVIDER=resend
RESEND_API_KEY=
FROM_EMAIL=noreply@yourcompany.com
# SendGrid (alternative)
SENDGRID_API_KEY=
SENDGRID_FROM_EMAIL=
# SMTP (alternative, e.g. Gmail)
SMTP_HOST=
SMTP_PORT=587
SMTP_USER=
SMTP_PASSWORD=
# ── Security ──────────────────────────────────────────────────
# Generate one with: python -c "import secrets; print(secrets.token_urlsafe(48))"
SECRET_KEY=your_secret_key_here
ACCESS_TOKEN_EXPIRE_MINUTES=30
REFRESH_TOKEN_EXPIRE_DAYS=7
# ── CORS ──────────────────────────────────────────────────────
# Comma-separated list of allowed frontend origins.
CORS_ORIGINS=http://localhost:3000,http://localhost
# ── Slack (optional) ──────────────────────────────────────────
# Incoming webhook URL for outbound notifications (leave, task assignments).
# Create one free at https://api.slack.com/messaging/webhooks
SLACK_WEBHOOK_URL=
# ── Google Calendar (optional) ────────────────────────────────
GOOGLE_CALENDAR_CREDENTIALS_FILE=