2025-10-25 14:50:14 -03:00
# config.csv Format
2025-11-22 16:12:32 -03:00
2025-11-24 13:02:30 -03:00
The `config.csv` file is the heart of bot configuration in General Bots. Located in each bot's `.gbot` package, it uses a simple, human-readable format that anyone can edit.
2025-11-22 16:12:32 -03:00
2025-11-24 13:02:30 -03:00
## Why CSV?
2025-11-22 16:12:32 -03:00
2025-11-24 13:02:30 -03:00
We chose CSV because:
- **No syntax errors** - Just name,value pairs
- **Spreadsheet compatible** - Edit in Excel, Google Sheets, or any text editor
- **Human readable** - No brackets, no indentation wars
- **Git friendly** - Clean diffs, easy merges
2025-11-22 16:12:32 -03:00
2025-11-24 13:02:30 -03:00
## Basic Format
2025-11-22 16:12:32 -03:00
2025-11-24 08:42:58 -03:00
```csv
2025-11-24 13:02:30 -03:00
name,value
server-port,8080
llm-model,../../../../data/llm/model.gguf
2025-11-22 16:12:32 -03:00
```
2025-11-24 13:02:30 -03:00
That's it. No quotes, no special characters, just names and values.
2025-11-24 08:42:58 -03:00
2025-11-24 13:02:30 -03:00
## Visual Organization
2025-11-24 08:42:58 -03:00
2025-11-24 13:02:30 -03:00
Use empty rows to group related settings:
2025-11-22 16:12:32 -03:00
2025-11-24 08:42:58 -03:00
```csv
2025-11-24 13:02:30 -03:00
name,value
2025-11-22 16:12:32 -03:00
2025-11-24 13:02:30 -03:00
# Server settings
server-host,0.0.0.0
server-port,8080
2025-11-22 16:12:32 -03:00
2025-11-24 13:02:30 -03:00
# LLM settings (see Configuration Management for details)
llm-url,http://localhost:8081
llm-model,model.gguf
2025-11-22 16:12:32 -03:00
2025-11-24 13:02:30 -03:00
# Email settings
email-from,bot@example .com
email-server,smtp.example.com
2025-11-24 08:42:58 -03:00
```
2025-11-22 16:12:32 -03:00
2025-11-24 13:02:30 -03:00
## Key Points
2025-11-22 16:12:32 -03:00
2025-11-24 13:02:30 -03:00
- **Case matters**: `server-port` not `Server-Port`
- **No spaces**: Around commas or in names
- **Paths**: Can be relative or absolute
- **Booleans**: Use `true` or `false`
- **Numbers**: Just write them directly
2025-11-22 16:12:32 -03:00
2025-11-24 13:02:30 -03:00
## Quick Example
2025-11-22 16:12:32 -03:00
2025-11-24 13:02:30 -03:00
A complete working configuration:
2025-11-22 16:12:32 -03:00
2025-11-24 08:42:58 -03:00
```csv
name,value
2025-11-24 13:02:30 -03:00
server-port,8080
2025-11-24 08:42:58 -03:00
llm-url,http://localhost:8081
2025-11-24 13:02:30 -03:00
llm-model,../../../../data/llm/DeepSeek-R1-Distill-Qwen-1.5B-Q3_K_M.gguf
prompt-compact,4
2025-11-24 08:42:58 -03:00
```
2025-11-22 16:12:32 -03:00
2025-11-24 13:02:30 -03:00
Four lines. Bot configured. That's the General Bots way.
2025-11-24 08:42:58 -03:00
2025-11-24 13:02:30 -03:00
## LLM Configuration
2025-11-24 08:42:58 -03:00
2025-11-24 13:02:30 -03:00
Basic LLM settings in config.csv:
- `llm-url` - Where your LLM server is (local or cloud)
- `llm-model` - Which model to use
- `llm-key` - API key if using cloud services like Groq
2025-11-24 08:42:58 -03:00
2025-11-24 13:02:30 -03:00
For detailed LLM configuration including GPU settings, cache, performance tuning, and hardware-specific recommendations, see [Configuration Management ](./context-config.md#llm-configuration---overview ).
2025-11-24 08:42:58 -03:00
2025-11-24 13:02:30 -03:00
## Where to Find Settings
2025-11-24 08:42:58 -03:00
2025-11-24 13:02:30 -03:00
For the complete list of available settings and detailed explanations, see [Configuration Management ](./context-config.md ).
2025-11-24 08:42:58 -03:00
2025-11-24 13:02:30 -03:00
## Philosophy
2025-11-24 08:42:58 -03:00
2025-11-24 13:02:30 -03:00
Configuration should be boring. You should spend time on your bot's personality and capabilities, not fighting with config files. CSV keeps it simple so you can focus on what matters.