T8: compose.cloud.yml — multi-tenant cloud stack on port 8505, CLOUD_MODE=true, per-user encrypted data at /devl/menagerie-data, joins caddy-proxy_caddy-internal network; .env.example extended with five cloud-only env vars. T10: app/telemetry.py — log_usage_event() is the ONLY entry point to usage_events table; hard kill switch (all_disabled) checked before any DB write; complete no-op in local mode; swallows all exceptions so telemetry never crashes the app; psycopg2-binary added to requirements.txt. Event calls wired into 4_Apply.py at cover_letter_generated and job_applied. 5 tests, 413/413 total passing.
36 lines
1.2 KiB
Text
36 lines
1.2 KiB
Text
# .env.example — copy to .env
|
|
# Auto-generated by the setup wizard, or fill in manually.
|
|
# NEVER commit .env to git.
|
|
|
|
STREAMLIT_PORT=8501
|
|
OLLAMA_PORT=11434
|
|
VLLM_PORT=8000
|
|
SEARXNG_PORT=8888
|
|
VISION_PORT=8002
|
|
VISION_MODEL=vikhyatk/moondream2
|
|
VISION_REVISION=2025-01-09
|
|
|
|
DOCS_DIR=~/Documents/JobSearch
|
|
OLLAMA_MODELS_DIR=~/models/ollama
|
|
VLLM_MODELS_DIR=~/models/vllm
|
|
VLLM_MODEL=Ouro-1.4B
|
|
OLLAMA_DEFAULT_MODEL=llama3.2:3b
|
|
|
|
# API keys (required for remote profile)
|
|
ANTHROPIC_API_KEY=
|
|
OPENAI_COMPAT_URL=
|
|
OPENAI_COMPAT_KEY=
|
|
|
|
# Feedback button — Forgejo issue filing
|
|
FORGEJO_API_TOKEN=
|
|
FORGEJO_REPO=pyr0ball/peregrine
|
|
FORGEJO_API_URL=https://git.opensourcesolarpunk.com/api/v1
|
|
# GITHUB_TOKEN= # future — enable when public mirror is active
|
|
# GITHUB_REPO= # future
|
|
|
|
# Cloud multi-tenancy (compose.cloud.yml only — do not set for local installs)
|
|
CLOUD_MODE=false
|
|
CLOUD_DATA_ROOT=/devl/menagerie-data
|
|
DIRECTUS_JWT_SECRET= # must match website/.env DIRECTUS_SECRET value
|
|
CF_SERVER_SECRET= # random 64-char hex — generate: openssl rand -hex 32
|
|
PLATFORM_DB_URL=postgresql://cf_platform:<password>@host.docker.internal:5433/circuitforge_platform
|