-
Notifications
You must be signed in to change notification settings - Fork 6
Expand file tree
/
Copy path.env.example
More file actions
166 lines (128 loc) · 6.51 KB
/
.env.example
File metadata and controls
166 lines (128 loc) · 6.51 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
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
# Local development placeholders for Mastra
# Google / Gemini API key (embedding + LLM)
GOOGLE_GENERATIVE_AI_API_KEY='your-google-api-key'
GOOGLE_API_KEY='your-google-api-key'
WORKSPACE_PATH='./workspace' # default local workspace path for tools that write to disk, can be overridden by tools with custom paths or when using AgentFS
BETTER_AUTH_URL='http://localhost:3000' # Base App URL
NEXT_PUBLIC_BETTER_AUTH_URL='http://localhost:3000' # Browser-side Better Auth base URL
BETTER_AUTH_SECRET='your_better_auth_secret_here' # Generate a new secret locally with: openssl rand -base64 32
DEV_AUTH_ENABLED=true # Set to false to disable authentication in development (not recommended, but can be useful for quick testing)
# Next.js + Mastra Client SDK
NEXT_PUBLIC_MASTRA_API_URL='http://localhost:4111'
# used by server-side code
MASTRA_API_URL='http://localhost:4111'
# Example placeholders for local testing
LOCAL_DEV='true'
# Chrome / browser automation
# Start Chrome with remote debugging enabled before using the browser agent:
# chrome.exe --remote-debugging-port=9222 --user-data-dir="C:\temp\chrome-debug"
CHROME_CDP_URL='http://127.0.0.1:9222'
CHROME_REMOTE_DEBUGGING_URL='http://127.0.0.1:9222'
# Discord Bot Token https://discordapp.com/developers/applications/
DISCORD_BOT_TOKEN='your_discord_bot_token_here'
DISCORD_PUBLIC_KEY='your_discord_public_key_here'
DISCORD_CLIENT_ID='your_discord_client_id_here'
DISCORD_SECRET_KEY='your_discord_secret_key_here'
DISCORD_WEBHOOK_URL='your_discord_webhook_url_here'
DISCORD_APPLICATION_ID='your_discord_application_id_here'
# Moltbook API key for axios-backed Moltbook tools
MOLTBOOK_API_KEY='your_moltbook_api_key_here'
GOOGLE_CLIENT_ID="******************-**********************.apps.googleusercontent.com"
NEXT_PUBLIC_GOOGLE_CLIENT_ID="******************-**********************.apps.googleusercontent.com"
GOOGLE_CLIENT_SECRET="fake_google_client_secret_for_local_dev"
GOOGLE_CLIENT_CALLBACK_URL="http://localhost:3000/api/auth/callback/google"
#Authorized redirect URIs
#http://localhost:3000/api/auth/callback/google
#http://127.0.0.1:3000/api/auth/callback/google
#https://your-domain.com/api/auth/callback/google
# Opencode Zen API Key
OPENCODE_API_KEY='your_opencode_zen_api_key_here'
# Ollama Cloud API Key
OLLAMA_API_KEY='your-api-key'
# Kilo Code API Key
KILO_API_KEY='your-api-key'
# OpenAI (alternative provider)
# OpenAI API Configuration
# Can also use gemini must set OPENAI_BASE_URL and OPENAI_MODEL, OPENAI_EMBEDDING_BASE_URL, and EMBEDDING_MODEL
OPENAI_API_KEY='your_openai_api_key_here'
OPENAI_BASE_URL='https://api.openai.com/v1'
OPENAI_MODEL='gpt-5-mini'
# Gemini OAuth Cache Directory
GEMINI_OAUTH_CACHE='~/.gemini/oauth_creds.json'
# Anthropic API Configuration
ANTHROPIC_API_KEY='your_anthropic_api_key_here'
# OpenRouter Configuration
OPENROUTER_API_KEY='your_openrouter_api_key_here'
# AI Ga
AI_GATEWAY_API_KEY='your_api_key_here'
# Lamina Configuration
LMNR_PROJECT_API_KEY='your_project_api_key_here'
# Database (Postgres / PgVector) - Supabase Configuration
# Get from Supabase Dashboard > Project Settings > Database > Connection String (Session Pooler)
SUPABASE='postgresql://user:password@your-supabase-url.supabase.co:5432/mastra'
# Authentication for Supabase { to be used by lib/auth.ts not used directly by Mastra }
SUPABASE_KEY='your_supabase_anon_key_here'
SUPABASE_URL='https://your-project.supabase.co'
USER_EMAIL=''
USER_PASSWORD=''
# SMTP mailer for Better Auth verification/reset emails
SMTP_HOST='smtp.example.com'
SMTP_PORT='587'
SMTP_SECURE='false'
SMTP_USER='your-smtp-username'
SMTP_PASS='your-smtp-password'
SMTP_FROM='AgentStack <no-reply@example.com>'
# Database Configuration (Storage) Local SQLite or Remote LibSQL (Turso)
# For local development, use file-based database
DATABASE_URL='file:./database.db'
#TURSO_URL='libsql://your-database.turso.io'
#TURSO_AUTH_TOKEN='your_turso_auth_token_here'
# For local SQLite, use the following format:
# DATABASE_URL="sqlite:///path/to/your/database.db"
# For remote LibSQL (Turso), use the connection URL and auth token
# DATABASE_URL="libsql://your-database.turso.io"
# DATABASE_AUTH_TOKEN="your-auth-token"
# Vector Database Configuration (separate from storage if needed)
VECTOR_DATABASE_URL="file:./vector-store.db"
# VECTOR_DATABASE_AUTH_TOKEN=""
DB_SCHEMA='mastra'
DB_MAX_CONNECTIONS='20'
DB_IDLE_TIMEOUT='30000'
DB_CONNECTION_TIMEOUT='2000'
# Embedding & RAG (Lists is ivf lists for PgVector)
EMBEDDING_MODEL='gemini-embedding-2-preview'
EMBEDDING_MAX_RETRIES='3'
MEMORY_LAST_MESSAGES='500'
# PgVector HNSW Index Configuration (for high-dimensional embeddings)
# HNSW index type supports dimensions > 2000 (IVFFlat is limited to 2000)
LISTS='3072' # IVF lists for PgVector (adjust based on dataset size, default: 3072 for gemini-embedding-001 1-4k limits, this so can use 3072 dims)
#PG_HNSW_M=16 # HNSW connections per layer (default: 16, higher = better recall, more memory)
#PG_HNSW_EF_CONSTRUCTION=64 # HNSW build-time candidates (default: 64, higher = better quality, slower build)
PG_M='32'
PG_EF='79' # HNSW query-time candidates (default: 100, higher = better recall, slower queries)
PG_MIN_SCORE='0.65' # Minimum similarity score for vector search results (default: 0.7, lower = more results, less relevant)
# Graph-based Retrieval Configuration
GRAPH_THRESHOLD='0.7' # Graph similarity threshold for random walk connections (0.0 - 1.0 range high to low)
GRAPH_RANDOM_WALK_STEPS='10' # Number of random walk steps for graph-based retrieval (default: 10, higher = more exploration, slower)
SEMANTIC_TOP_K='4' # Number of top semantic results to retrieve (default: 5 higher = more results, slower)
# SerpAPI
SERPAPI_API_KEY='your_serpapi_api_key_here'
# Financial APIs
ALPHA_VANTAGE_API_KEY='your_alpha_vantage_api_key_here'
FINNHUB_API_KEY='your_finnhub_api_key_here'
POLYGON_API_KEY='your_polygon_api_key_here'
# Smithery Configuration (optional, for advanced mcp)
SMITHERY_API_KEY='your_smithery_api_key_here'
SMITHERY_PROFILE='your_smithery_profile_here'
# Convex Configuration
CONVEX_URL=''
CONVEX_ADMIN_KEY=''
# Other optional, but helpful values
LOG_LEVEL='debug'
# Enable Next.js Bundle Analyzer
ANALYZE='false'
# UPSTASH Configuration (for Redis and Vector DB) as an alternative to Supabase
UPSTASH_REDIS_REST_URL='your_upstash_redis_rest_url_here'
UPSTASH_REDIS_REST_TOKEN='your_upstash_redis_rest_token_here'
UPSTASH_VECTOR_REST_URL='your_upstash_vector_rest_url_here'
UPSTASH_VECTOR_REST_TOKEN='your_upstash_vector_rest_token_here'