Overview
Flower Engine uses aconfig.yaml file for configuration. This file stores your API keys, database paths, and model settings. The config file is gitignored to protect your credentials.
Initial Setup
Edit config.yaml with your API keys
Open
config.yaml in your text editor and replace placeholder values with real credentials.Configuration File Structure
Database Settings
The
database_path specifies where the ChromaDB vector database stores world lore and memory embeddings. This is separate from the SQLite database (engine.db).LLM Provider API Keys
OpenRouter (Recommended)
OpenRouter provides access to multiple models through a single API:Get an OpenRouter API Key
Sign up at OpenRouter to access GPT-4, Claude, Gemini, and more through one API.
DeepSeek
For DeepSeek Chat and DeepSeek Reasoner models:Google Gemini
For direct Gemini API access:Model Configuration
The
supported_models list is sent to the TUI on connection. The engine also fetches additional models from OpenRouter and Groq APIs at startup.Complete Example
config.yaml
Configuration Loading
The engine loads configuration in this order:- Read
config.yamlusing YAML parser - Fall back to environment variables if keys are missing
- Use default values if neither config nor env vars exist
engine/config.py:22:
Troubleshooting
Config file not found
If you see “Failed to load config.yaml”, ensure:- The file exists in the project root (same directory as
engine/) - The file is named exactly
config.yaml(notconfig.yml) - The file has valid YAML syntax
API key errors
If you get authentication errors:- Verify your API keys are correct and active
- Check for extra spaces or quotes around keys
- Ensure keys start with the correct prefix (
sk-or-v1-for OpenRouter,sk-for DeepSeek)
Model not available
If a model fails to load:- Verify the model ID matches the provider’s format
- Check that you have the correct API key for that provider
- Review engine startup logs for model fetch errors
Next Steps
Creating Worlds
Define worlds with lore, scenes, and starting messages
Creating Characters
Create characters with unique personas