MAESTRO: Add .env.example with all environment variables from spec
Includes all 13 env vars organized into 7 groups: Database, Redis, Server, Auth, Default LLM Endpoint, Limits, Storage, and MCP. Production-only variables are commented out; single-container defaults work out of the box.
This commit is contained in:
parent
cb4af5f707
commit
4a0e4b6c65
2 changed files with 70 additions and 1 deletions
68
.env.example
Normal file
68
.env.example
Normal file
|
|
@ -0,0 +1,68 @@
|
||||||
|
# PromptLooper — Environment Variables
|
||||||
|
# Copy to .env and adjust values for your deployment.
|
||||||
|
|
||||||
|
# =============================================================================
|
||||||
|
# Database
|
||||||
|
# =============================================================================
|
||||||
|
# PostgreSQL connection string for production mode.
|
||||||
|
# When not set, PromptLooper uses SQLite at DATA_DIR/promptlooper.db (single-container mode).
|
||||||
|
# DATABASE_URL=postgresql://promptlooper:promptlooper@promptlooper-db:5432/promptlooper
|
||||||
|
|
||||||
|
# =============================================================================
|
||||||
|
# Redis
|
||||||
|
# =============================================================================
|
||||||
|
# Redis connection string for Celery task queue and pub/sub (live dashboard).
|
||||||
|
# When not set, PromptLooper uses an in-process queue (single-container mode).
|
||||||
|
# REDIS_URL=redis://promptlooper-redis:6379/0
|
||||||
|
|
||||||
|
# =============================================================================
|
||||||
|
# Server
|
||||||
|
# =============================================================================
|
||||||
|
# Bind address and port for the HTTP server.
|
||||||
|
HOST=0.0.0.0
|
||||||
|
PORT=8400
|
||||||
|
|
||||||
|
# =============================================================================
|
||||||
|
# Authentication
|
||||||
|
# =============================================================================
|
||||||
|
# Secret key used to sign JWT tokens. Auto-generated on first boot if not set.
|
||||||
|
# IMPORTANT: Set this to a long random string in production.
|
||||||
|
# JWT_SECRET=change-me-to-a-random-secret
|
||||||
|
|
||||||
|
# Static API key for programmatic access (MCP, scripts, CI).
|
||||||
|
# When not set, API key auth is disabled — only JWT login works.
|
||||||
|
# API_KEY=
|
||||||
|
|
||||||
|
# =============================================================================
|
||||||
|
# Default LLM Endpoint
|
||||||
|
# =============================================================================
|
||||||
|
# Pre-configured LLM endpoint URL (OpenAI-compatible API).
|
||||||
|
# Users can add more endpoints via the UI or API; this is a convenience default.
|
||||||
|
# DEFAULT_ENDPOINT_URL=http://localhost:11434/v1
|
||||||
|
|
||||||
|
# API key for the default endpoint, if required.
|
||||||
|
# DEFAULT_ENDPOINT_KEY=
|
||||||
|
|
||||||
|
# =============================================================================
|
||||||
|
# Limits
|
||||||
|
# =============================================================================
|
||||||
|
# Maximum number of runs executing in parallel.
|
||||||
|
MAX_CONCURRENT_RUNS=4
|
||||||
|
|
||||||
|
# Token budget per sweep. 0 = unlimited.
|
||||||
|
MAX_TOKENS_PER_SWEEP=0
|
||||||
|
|
||||||
|
# =============================================================================
|
||||||
|
# Storage
|
||||||
|
# =============================================================================
|
||||||
|
# Directory for SQLite database and file storage (single-container mode).
|
||||||
|
DATA_DIR=/data
|
||||||
|
|
||||||
|
# =============================================================================
|
||||||
|
# MCP Server
|
||||||
|
# =============================================================================
|
||||||
|
# Enable the Model Context Protocol server for agent-driven workflows.
|
||||||
|
MCP_ENABLED=true
|
||||||
|
|
||||||
|
# Port for the MCP server (separate from the main API).
|
||||||
|
MCP_PORT=8401
|
||||||
|
|
@ -8,7 +8,8 @@ Set up the PromptLooper repository, Docker infrastructure, and basic project ske
|
||||||
- [x] Create the full directory structure as defined in the spec's Project Structure section. Every directory should exist with a placeholder __init__.py or .gitkeep as appropriate. Include backend/, frontend/, docker/, alembic/, and all subdirectories.
|
- [x] Create the full directory structure as defined in the spec's Project Structure section. Every directory should exist with a placeholder __init__.py or .gitkeep as appropriate. Include backend/, frontend/, docker/, alembic/, and all subdirectories.
|
||||||
> Created all directories: backend/ (with routers/, engine/adapters/, engine/scorers/, mcp/, websocket/, tests/), frontend/src/ (pages/, components/, api/), docker/, alembic/versions/. Python packages have __init__.py, non-Python dirs have .gitkeep.
|
> Created all directories: backend/ (with routers/, engine/adapters/, engine/scorers/, mcp/, websocket/, tests/), frontend/src/ (pages/, components/, api/), docker/, alembic/versions/. Python packages have __init__.py, non-Python dirs have .gitkeep.
|
||||||
|
|
||||||
- [ ] Create .env.example with all environment variables from the spec's Environment Variables table, with sensible defaults and comments explaining each group. Include DATABASE_URL, REDIS_URL, JWT_SECRET, DEFAULT_ENDPOINT_URL, MAX_CONCURRENT_RUNS, and all others.
|
- [x] Create .env.example with all environment variables from the spec's Environment Variables table, with sensible defaults and comments explaining each group. Include DATABASE_URL, REDIS_URL, JWT_SECRET, DEFAULT_ENDPOINT_URL, MAX_CONCURRENT_RUNS, and all others.
|
||||||
|
> Created .env.example with all 13 environment variables organized into 7 groups (Database, Redis, Server, Auth, Default LLM Endpoint, Limits, Storage, MCP). Production-only vars (DATABASE_URL, REDIS_URL, JWT_SECRET, API_KEY, DEFAULT_ENDPOINT_*) are commented out with explanatory notes. Single-container defaults work out of the box.
|
||||||
|
|
||||||
- [ ] Create docker-compose.yml following XPLTD conventions: project name xpltd_promptlooper, network promptlooper (172.33.0.0/24), PostgreSQL on port 5434, Redis, API service, worker service, and web service on port 8400. Use bind mounts under /vmPool/r/services/promptlooper_* for persistent data. Model this after Chrysopedia's docker-compose.yml patterns.
|
- [ ] Create docker-compose.yml following XPLTD conventions: project name xpltd_promptlooper, network promptlooper (172.33.0.0/24), PostgreSQL on port 5434, Redis, API service, worker service, and web service on port 8400. Use bind mounts under /vmPool/r/services/promptlooper_* for persistent data. Model this after Chrysopedia's docker-compose.yml patterns.
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue