Major changes: - Add Pydantic-based configuration system (bot/config.py, bot/config_manager.py) - Add config.yaml with all service URLs, models, and feature flags - Fix config.yaml path resolution in Docker (check /app/config.yaml first) - Remove Fish Audio API integration (tested feature that didn't work) - Remove hardcoded ERROR_WEBHOOK_URL, import from config instead - Add missing Pydantic models (LogConfigUpdateRequest, LogFilterUpdateRequest) - Enable Cheshire Cat memory system by default (USE_CHESHIRE_CAT=true) - Add .env.example template with all required environment variables - Add setup.sh script for user-friendly initialization - Update docker-compose.yml with proper env file mounting - Update .gitignore for config files and temporary files Config system features: - Static configuration from config.yaml - Runtime overrides from config_runtime.yaml - Environment variables for secrets (.env) - Web UI integration via config_manager - Graceful fallback to defaults Secrets handling: - Move ERROR_WEBHOOK_URL from hardcoded to .env - Add .env.example with all placeholder values - Document all required secrets - Fish API key and voice ID removed from .env Documentation: - CONFIG_README.md - Configuration system guide - CONFIG_SYSTEM_COMPLETE.md - Implementation summary - FISH_API_REMOVAL_COMPLETE.md - Removal record - SECRETS_CONFIGURED.md - Secrets setup record - BOT_STARTUP_FIX.md - Pydantic model fixes - MIGRATION_CHECKLIST.md - Setup checklist - WEB_UI_INTEGRATION_COMPLETE.md - Web UI config guide - Updated readmes/README.md with new features
57 lines
1.4 KiB
YAML
57 lines
1.4 KiB
YAML
# ============================================
|
|
# Miku Discord Bot - Configuration
|
|
# ============================================
|
|
# This file contains all non-secret configuration
|
|
# Secrets (API keys, tokens) go in .env
|
|
|
|
# Service Endpoints
|
|
services:
|
|
llama:
|
|
url: http://llama-swap:8080
|
|
amd_url: http://llama-swap-amd:8080
|
|
|
|
cheshire_cat:
|
|
url: http://cheshire-cat:80
|
|
timeout_seconds: 120
|
|
enabled: true # Set to false to disable Cheshire Cat integration
|
|
|
|
face_detector:
|
|
startup_timeout_seconds: 60
|
|
|
|
# AI Models
|
|
models:
|
|
text: llama3.1
|
|
vision: vision
|
|
evil: darkidol # Uncensored model for evil mode
|
|
japanese: swallow # Llama 3.1 Swallow model for Japanese
|
|
|
|
# Discord Bot Settings
|
|
discord:
|
|
language_mode: english # Options: english, japanese
|
|
api_port: 3939 # FastAPI server port
|
|
|
|
# Autonomous System
|
|
autonomous:
|
|
debug_mode: false # Enable detailed decision logging
|
|
# Mood settings can be configured per-server via API
|
|
|
|
# Voice Chat
|
|
voice:
|
|
debug_mode: false # Enable manual commands and notifications
|
|
# When false (production), voice operates silently
|
|
|
|
# Memory & Logging
|
|
memory:
|
|
log_dir: /app/memory/logs
|
|
conversation_history_length: 5 # Messages to keep per user
|
|
|
|
# Server Settings
|
|
server:
|
|
host: 0.0.0.0
|
|
log_level: critical # For uvicorn (access logs handled separately)
|
|
|
|
# GPU Configuration
|
|
gpu:
|
|
prefer_amd: false # Prefer AMD GPU over NVIDIA
|
|
amd_models_enabled: true
|