200 lines
5.7 KiB
Bash
200 lines
5.7 KiB
Bash
DB_USER=postgres
|
|
DB_PASS=your-super-secret-and-long-postgres-password
|
|
DB_NAME=postgres
|
|
DB_PORT=5432
|
|
DB_HOST=localhost
|
|
DB_CONNECTION_LIMIT=12
|
|
DB_CONNECT_TIMEOUT=60
|
|
DB_POOL_TIMEOUT=300
|
|
DB_SCHEMA=platform
|
|
DATABASE_URL="postgresql://${DB_USER}:${DB_PASS}@${DB_HOST}:${DB_PORT}/${DB_NAME}?schema=${DB_SCHEMA}&connect_timeout=${DB_CONNECT_TIMEOUT}"
|
|
DIRECT_URL="postgresql://${DB_USER}:${DB_PASS}@${DB_HOST}:${DB_PORT}/${DB_NAME}?schema=${DB_SCHEMA}&connect_timeout=${DB_CONNECT_TIMEOUT}"
|
|
PRISMA_SCHEMA="postgres/schema.prisma"
|
|
|
|
# EXECUTOR
|
|
NUM_GRAPH_WORKERS=10
|
|
NUM_NODE_WORKERS=3
|
|
|
|
BACKEND_CORS_ALLOW_ORIGINS=["http://localhost:3000"]
|
|
|
|
# generate using `from cryptography.fernet import Fernet;Fernet.generate_key().decode()`
|
|
ENCRYPTION_KEY='dvziYgz0KSK8FENhju0ZYi8-fRTfAdlz6YLhdB_jhNw='
|
|
UNSUBSCRIBE_SECRET_KEY = 'HlP8ivStJjmbf6NKi78m_3FnOogut0t5ckzjsIqeaio='
|
|
|
|
REDIS_HOST=localhost
|
|
REDIS_PORT=6379
|
|
REDIS_PASSWORD=password
|
|
|
|
ENABLE_CREDIT=false
|
|
STRIPE_API_KEY=
|
|
STRIPE_WEBHOOK_SECRET=
|
|
|
|
# What environment things should be logged under: local dev or prod
|
|
APP_ENV=local
|
|
# What environment to behave as: "local" or "cloud"
|
|
BEHAVE_AS=local
|
|
PYRO_HOST=localhost
|
|
SENTRY_DSN=
|
|
|
|
# Email For Postmark so we can send emails
|
|
POSTMARK_SERVER_API_TOKEN=
|
|
POSTMARK_SENDER_EMAIL=invalid@invalid.com
|
|
POSTMARK_WEBHOOK_TOKEN=
|
|
|
|
## User auth with Supabase is required for any of the 3rd party integrations with auth to work.
|
|
ENABLE_AUTH=true
|
|
SUPABASE_URL=http://localhost:8000
|
|
SUPABASE_SERVICE_ROLE_KEY=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyAgCiAgICAicm9sZSI6ICJzZXJ2aWNlX3JvbGUiLAogICAgImlzcyI6ICJzdXBhYmFzZS1kZW1vIiwKICAgICJpYXQiOiAxNjQxNzY5MjAwLAogICAgImV4cCI6IDE3OTk1MzU2MDAKfQ.DaYlNEoUrrEn2Ig7tqibS-PHK5vgusbcbo7X36XVt4Q
|
|
SUPABASE_JWT_SECRET=your-super-secret-jwt-token-with-at-least-32-characters-long
|
|
|
|
# RabbitMQ credentials -- Used for communication between services
|
|
RABBITMQ_HOST=localhost
|
|
RABBITMQ_PORT=5672
|
|
RABBITMQ_DEFAULT_USER=rabbitmq_user_default
|
|
RABBITMQ_DEFAULT_PASS=k0VMxyIJF9S35f3x2uaw5IWAl6Y536O7
|
|
|
|
## GCS bucket is required for marketplace and library functionality
|
|
MEDIA_GCS_BUCKET_NAME=
|
|
|
|
## For local development, you may need to set FRONTEND_BASE_URL for the OAuth flow
|
|
## for integrations to work. Defaults to the value of PLATFORM_BASE_URL if not set.
|
|
# FRONTEND_BASE_URL=http://localhost:3000
|
|
|
|
## PLATFORM_BASE_URL must be set to a *publicly accessible* URL pointing to your backend
|
|
## to use the platform's webhook-related functionality.
|
|
## If you are developing locally, you can use something like ngrok to get a publc URL
|
|
## and tunnel it to your locally running backend.
|
|
PLATFORM_BASE_URL=http://localhost:3000
|
|
|
|
## == INTEGRATION CREDENTIALS == ##
|
|
# Each set of server side credentials is required for the corresponding 3rd party
|
|
# integration to work.
|
|
|
|
# For the OAuth callback URL, use <your_frontend_url>/auth/integrations/oauth_callback,
|
|
# e.g. http://localhost:3000/auth/integrations/oauth_callback
|
|
|
|
# GitHub OAuth App server credentials - https://github.com/settings/developers
|
|
GITHUB_CLIENT_ID=
|
|
GITHUB_CLIENT_SECRET=
|
|
|
|
# Google OAuth App server credentials - https://console.cloud.google.com/apis/credentials, and enable gmail api and set scopes
|
|
# https://console.cloud.google.com/apis/credentials/consent ?project=<your_project_id>
|
|
|
|
# You'll need to add/enable the following scopes (minimum):
|
|
# https://console.developers.google.com/apis/api/gmail.googleapis.com/overview ?project=<your_project_id>
|
|
# https://console.cloud.google.com/apis/library/sheets.googleapis.com/ ?project=<your_project_id>
|
|
GOOGLE_CLIENT_ID=
|
|
GOOGLE_CLIENT_SECRET=
|
|
|
|
# Twitter (X) OAuth 2.0 with PKCE Configuration
|
|
# 1. Create a Twitter Developer Account:
|
|
# - Visit https://developer.x.com/en and sign up
|
|
# 2. Set up your application:
|
|
# - Navigate to Developer Portal > Projects > Create Project
|
|
# - Add a new app to your project
|
|
# 3. Configure app settings:
|
|
# - App Permissions: Read + Write + Direct Messages
|
|
# - App Type: Web App, Automated App or Bot
|
|
# - OAuth 2.0 Callback URL: http://localhost:3000/auth/integrations/oauth_callback
|
|
# - Save your Client ID and Client Secret below
|
|
TWITTER_CLIENT_ID=
|
|
TWITTER_CLIENT_SECRET=
|
|
|
|
# Linear App
|
|
# Make a new workspace for your OAuth APP -- trust me
|
|
# https://linear.app/settings/api/applications/new
|
|
# Callback URL: http://localhost:3000/auth/integrations/oauth_callback
|
|
LINEAR_CLIENT_ID=
|
|
LINEAR_CLIENT_SECRET=
|
|
|
|
# To obtain Todoist API credentials:
|
|
# 1. Create a Todoist account at todoist.com
|
|
# 2. Visit the Developer Console: https://developer.todoist.com/appconsole.html
|
|
# 3. Click "Create new app"
|
|
# 4. Once created, copy your Client ID and Client Secret below
|
|
TODOIST_CLIENT_ID=
|
|
TODOIST_CLIENT_SECRET=
|
|
|
|
## ===== OPTIONAL API KEYS ===== ##
|
|
|
|
# LLM
|
|
OPENAI_API_KEY=
|
|
ANTHROPIC_API_KEY=
|
|
GROQ_API_KEY=
|
|
OPEN_ROUTER_API_KEY=
|
|
|
|
# Reddit
|
|
# Go to https://www.reddit.com/prefs/apps and create a new app
|
|
# Choose "script" for the type
|
|
# Fill in the redirect uri as <your_frontend_url>/auth/integrations/oauth_callback, e.g. http://localhost:3000/auth/integrations/oauth_callback
|
|
REDDIT_CLIENT_ID=
|
|
REDDIT_CLIENT_SECRET=
|
|
REDDIT_USER_AGENT="AutoGPT:1.0 (by /u/autogpt)"
|
|
|
|
# Discord
|
|
DISCORD_BOT_TOKEN=
|
|
|
|
# SMTP/Email
|
|
SMTP_SERVER=
|
|
SMTP_PORT=
|
|
SMTP_USERNAME=
|
|
SMTP_PASSWORD=
|
|
|
|
# D-ID
|
|
DID_API_KEY=
|
|
|
|
# Open Weather Map
|
|
OPENWEATHERMAP_API_KEY=
|
|
|
|
# SMTP
|
|
SMTP_SERVER=
|
|
SMTP_PORT=
|
|
SMTP_USERNAME=
|
|
SMTP_PASSWORD=
|
|
|
|
# Medium
|
|
MEDIUM_API_KEY=
|
|
MEDIUM_AUTHOR_ID=
|
|
|
|
# Google Maps
|
|
GOOGLE_MAPS_API_KEY=
|
|
|
|
# Replicate
|
|
REPLICATE_API_KEY=
|
|
|
|
# Ideogram
|
|
IDEOGRAM_API_KEY=
|
|
|
|
# Fal
|
|
FAL_API_KEY=
|
|
|
|
# Exa
|
|
EXA_API_KEY=
|
|
|
|
# E2B
|
|
E2B_API_KEY=
|
|
|
|
# Mem0
|
|
MEM0_API_KEY=
|
|
|
|
# Nvidia
|
|
NVIDIA_API_KEY=
|
|
|
|
# Apollo
|
|
APOLLO_API_KEY=
|
|
|
|
# SmartLead
|
|
SMARTLEAD_API_KEY=
|
|
|
|
# ZeroBounce
|
|
ZEROBOUNCE_API_KEY=
|
|
|
|
## ===== OPTIONAL API KEYS END ===== ##
|
|
|
|
# Logging Configuration
|
|
LOG_LEVEL=INFO
|
|
ENABLE_CLOUD_LOGGING=false
|
|
ENABLE_FILE_LOGGING=false
|
|
# Use to manually set the log directory
|
|
# LOG_DIR=./logs
|