-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy path.env.sample
More file actions
101 lines (76 loc) · 4.46 KB
/
.env.sample
File metadata and controls
101 lines (76 loc) · 4.46 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
# --- API Keys ---
# Obtain your API keys from the respective provider websites.
# These will be automatically picked up by the LLM handlers if not overridden in JSON configs.
# Google Gemini API Key
# Get from Google AI Studio: https://aistudio.google.com/app/apikey
GEMINI_API_KEY="YOUR_GEMINI_API_KEY_HERE"
# Groq API Key
# Get from Groq Console: https://console.groq.com/keys
GROQ_API_KEY="YOUR_GROQ_API_KEY_HERE"
# OpenAI API Key (Optional)
# OPENAI_API_KEY="YOUR_OPENAI_API_KEY_HERE"
# Anthropic API Key (Optional)
# ANTHROPIC_API_KEY="YOUR_ANTHROPIC_API_KEY_HERE"
# Google Custom Search API (for WebSearchTool - Optional)
# GOOGLE_SEARCH_API_KEY="YOUR_GOOGLE_SEARCH_API_KEY_HERE"
# GOOGLE_SEARCH_ENGINE_ID="YOUR_GOOGLE_CUSTOM_SEARCH_ENGINE_ID_HERE"
# --- LLM Configuration Overrides (via MINDX_ prefix) ---
# These can override settings from JSON config files due to precedence in Config.get()
# Format: MINDX_SECTION_SUBSECTION_KEY="value"
# Example: Set default LLM provider for the whole system
# MINDX_LLM_DEFAULT_PROVIDER="gemini"
# Example: Override default model for a specific provider
# MINDX_LLM_GEMINI_DEFAULT_MODEL="gemini-1.5-pro-latest"
# Example: Override Ollama base URL if not localhost
# MINDX_LLM_OLLAMA_BASE_URL="http://my-ollama-server:11434"
# --- Logging Configuration ---
# These settings will be read by utils/config.py and used by utils/logging_config.py
# Root logging level for the application (DEBUG, INFO, WARNING, ERROR, CRITICAL)
MINDX_LOGGING_LEVEL="INFO" # Change to "DEBUG" for verbose output
# Console Handler
MINDX_LOGGING_CONSOLE_ENABLED="true" # 'true' or 'false'
# File Handler
MINDX_LOGGING_FILE_ENABLED="true" # SET TO 'true' TO ENABLE FILE LOGGING
MINDX_LOGGING_FILE_DIRECTORY="data/logs" # Relative to PROJECT_ROOT
MINDX_LOGGING_FILE_NAME="mindx_runtime.log" # Name of the log file
MINDX_LOGGING_FILE_LEVEL="DEBUG" # Log level for the file (can be different from console)
MINDX_LOGGING_FILE_ROTATE_WHEN="midnight" # Rotation: 'S', 'M', 'H', 'D', 'W0'-'W6', 'midnight'
MINDX_LOGGING_FILE_ROTATE_INTERVAL="1" # Interval for rotation (e.g., 1 for daily if when='D')
MINDX_LOGGING_FILE_ROTATE_BACKUP_COUNT="7" # Number of backup log files to keep
# --- Agent Specific Configurations (Examples) ---
# Coordinator Agent
MINDX_COORDINATOR_AUTONOMOUS_IMPROVEMENT_ENABLED="false" # 'true' to enable autonomous loop
MINDX_COORDINATOR_AUTONOMOUS_IMPROVEMENT_INTERVAL_SECONDS="3600" # e.g., 1 hour
MINDX_COORDINATOR_MAX_CONCURRENT_SIA_TASKS="1"
MINDX_COORDINATOR_SIA_CLI_TIMEOUT_SECONDS="300"
MINDX_COORDINATOR_REQUIRE_HUMAN_APPROVAL_FOR_CRITICAL="true"
# MINDX_COORDINATOR_LLM_PROVIDER="gemini" # Can override JSON config
# MINDX_COORDINATOR_LLM_MODEL="gemini-1.5-flash-latest"
# Mastermind Agent
MINDX_MASTERMIND_AGENT_AUTONOMOUS_LOOP_ENABLED="false"
MINDX_MASTERMIND_AGENT_TOOLS_REGISTRY_PATH="data/config/official_tools_registry.json" # Relative to PROJECT_ROOT
# MINDX_MASTERMIND_AGENT_LLM_PROVIDER="gemini"
# MINDX_MASTERMIND_AGENT_LLM_MODEL="gemini-1.5-pro-latest"
# BDI Agent Defaults (can be overridden per domain in JSON config)
# MINDX_BDI_DEFAULT_LLM_PROVIDER="gemini"
# MINDX_BDI_DEFAULT_LLM_MODEL="gemini-1.5-flash-latest"
MINDX_BDI_ENABLE_SUBGOAL_DECOMPOSITION="true"
MINDX_BDI_PLAN_MONITORING_LLM_CHECK_ENABLED="false" # Enable for more robust plan validation, but adds LLM calls
# BaseGenAgent (Codebase Documentation Generator)
# Path to its specific JSON config, relative to PROJECT_ROOT.
# If not set, BaseGenAgent uses its internal default (data/config/basegen_config.json).
# MINDX_BASE_GEN_AGENT_CONFIG_FILE_PATH="data/config/my_custom_basegen_settings.json"
# --- Monitoring Configuration ---
MINDX_MONITORING_RESOURCE_ENABLED="true"
MINDX_MONITORING_RESOURCE_INTERVAL="15" # Check resources every 15 seconds
MINDX_MONITORING_RESOURCE_MAX_CPU_PERCENT="90.0"
MINDX_MONITORING_RESOURCE_MAX_MEMORY_PERCENT="90.0"
# For disk paths, JSON config is more suitable for lists/objects, but an override could be complex.
# Example (not directly supported by simple Config.get() for lists of dicts from env):
# MINDX_MONITORING_RESOURCE_DISK_PATHS_JSON="[{\"path\":\"/\",\"threshold\":90.0},{\"path\":\"/mnt/data\",\"threshold\":85.0}]"
MINDX_MONITORING_PERFORMANCE_ENABLED="true"
MINDX_MONITORING_PERFORMANCE_SAVE_PERIODICALLY="true"
MINDX_MONITORING_PERFORMANCE_PERIODIC_SAVE_INTERVAL_SECONDS="300"
MINDX_MONITORING_PERFORMANCE_SAVE_ON_REQUEST_COUNT="20"
# --- Development/Testing Flags ---
# MINDX_TEST_MODE="false" # Set to "true" for test-specific behaviors if implemented