feat: Initial commit - DAGI Stack v0.2.0 (Phase 2 Complete)
- Router Core with rule-based routing (1530 lines) - DevTools Backend (file ops, test execution) (393 lines) - CrewAI Orchestrator (4 workflows, 12 agents) (358 lines) - Bot Gateway (Telegram/Discord) (321 lines) - RBAC Service (role resolution) (272 lines) - Structured logging (utils/logger.py) - Docker deployment (docker-compose.yml) - Comprehensive documentation (57KB) - Test suites (41 tests, 95% coverage) - Phase 4 roadmap & ecosystem integration plans Production-ready infrastructure for DAARION microDAOs.
This commit is contained in:
117
.env.example
Normal file
117
.env.example
Normal file
@@ -0,0 +1,117 @@
|
||||
# =============================================================================
|
||||
# DAGI Stack Environment Configuration
|
||||
# =============================================================================
|
||||
# Copy this file to .env and fill in your values:
|
||||
# cp .env.example .env
|
||||
#
|
||||
# NEVER commit .env to git - it's already in .gitignore
|
||||
# =============================================================================
|
||||
|
||||
# -----------------------------------------------------------------------------
|
||||
# Bot Gateway Configuration
|
||||
# -----------------------------------------------------------------------------
|
||||
# Telegram bot token (get from @BotFather)
|
||||
TELEGRAM_BOT_TOKEN=123456789:ABCdefGHIjklMNOpqrsTUVwxyz
|
||||
|
||||
# Discord bot token (get from Discord Developer Portal)
|
||||
DISCORD_BOT_TOKEN=your_discord_bot_token_here
|
||||
|
||||
# Gateway port (default: 9300)
|
||||
GATEWAY_PORT=9300
|
||||
|
||||
# -----------------------------------------------------------------------------
|
||||
# LLM Providers
|
||||
# -----------------------------------------------------------------------------
|
||||
# Ollama configuration (local LLM)
|
||||
OLLAMA_BASE_URL=http://localhost:11434
|
||||
OLLAMA_MODEL=qwen3:8b
|
||||
|
||||
# DeepSeek API (optional remote provider)
|
||||
DEEPSEEK_API_KEY=sk-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
|
||||
DEEPSEEK_BASE_URL=https://api.deepseek.com
|
||||
|
||||
# OpenAI API (optional)
|
||||
OPENAI_API_KEY=sk-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
|
||||
|
||||
# -----------------------------------------------------------------------------
|
||||
# DAGI Router Configuration
|
||||
# -----------------------------------------------------------------------------
|
||||
ROUTER_PORT=9102
|
||||
ROUTER_CONFIG_PATH=./router-config.yml
|
||||
|
||||
# Request timeout (milliseconds)
|
||||
ROUTER_TIMEOUT_MS=30000
|
||||
|
||||
# -----------------------------------------------------------------------------
|
||||
# DevTools Backend
|
||||
# -----------------------------------------------------------------------------
|
||||
DEVTOOLS_PORT=8008
|
||||
DEVTOOLS_WORKSPACE=/workspace
|
||||
|
||||
# Max file size for fs_read (bytes)
|
||||
DEVTOOLS_MAX_FILE_SIZE=10485760
|
||||
|
||||
# -----------------------------------------------------------------------------
|
||||
# CrewAI Orchestrator
|
||||
# -----------------------------------------------------------------------------
|
||||
CREWAI_PORT=9010
|
||||
|
||||
# Workflow execution timeout (seconds)
|
||||
CREWAI_WORKFLOW_TIMEOUT=300
|
||||
|
||||
# -----------------------------------------------------------------------------
|
||||
# RBAC Service
|
||||
# -----------------------------------------------------------------------------
|
||||
RBAC_PORT=9200
|
||||
|
||||
# Database URL (SQLite for dev, PostgreSQL for prod)
|
||||
RBAC_DATABASE_URL=sqlite:///./rbac.db
|
||||
# RBAC_DATABASE_URL=postgresql://user:password@localhost:5432/dagi_rbac
|
||||
|
||||
# Session token secret (generate with: openssl rand -hex 32)
|
||||
RBAC_SECRET_KEY=your-secret-key-here-replace-with-random-hex
|
||||
|
||||
# -----------------------------------------------------------------------------
|
||||
# Logging Configuration
|
||||
# -----------------------------------------------------------------------------
|
||||
LOG_LEVEL=INFO
|
||||
LOG_FORMAT=json
|
||||
|
||||
# Log file rotation (MB)
|
||||
LOG_MAX_SIZE=100
|
||||
|
||||
# -----------------------------------------------------------------------------
|
||||
# Docker Network Configuration
|
||||
# -----------------------------------------------------------------------------
|
||||
DAGI_NETWORK=dagi-network
|
||||
|
||||
# -----------------------------------------------------------------------------
|
||||
# Security
|
||||
# -----------------------------------------------------------------------------
|
||||
# CORS allowed origins (comma-separated)
|
||||
CORS_ORIGINS=http://localhost:3000,https://daarion.city
|
||||
|
||||
# Rate limiting (requests per minute)
|
||||
RATE_LIMIT_RPM=60
|
||||
|
||||
# -----------------------------------------------------------------------------
|
||||
# Staging/Production Environment
|
||||
# -----------------------------------------------------------------------------
|
||||
# Set to 'development', 'staging', or 'production'
|
||||
ENVIRONMENT=development
|
||||
|
||||
# Enable debug mode (true/false)
|
||||
DEBUG=true
|
||||
|
||||
# =============================================================================
|
||||
# SECRET GENERATION COMMANDS
|
||||
# =============================================================================
|
||||
# Generate random secret (32 bytes hex):
|
||||
# openssl rand -hex 32
|
||||
#
|
||||
# Generate UUID:
|
||||
# python3 -c "import uuid; print(uuid.uuid4())"
|
||||
#
|
||||
# Generate base64 secret:
|
||||
# openssl rand -base64 32
|
||||
# =============================================================================
|
||||
Reference in New Issue
Block a user