Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Component Reference

This reference provides detailed information about each component in the botserver stack, including current versions, alternatives, and configuration options.


Core Components

Vault (Secrets Management)

PropertyValue
ServiceHashiCorp Vault
Current Version1.15.4
Default Port8200
Binary Pathbotserver-stack/bin/vault/vault
Config Pathbotserver-stack/conf/vault/
Data Pathbotserver-stack/data/vault/
Log Filebotserver-stack/logs/vault.log

Download URL:

https://releases.hashicorp.com/vault/1.15.4/vault_1.15.4_linux_amd64.zip

Purpose:

  • Stores all service credentials (database, drive, cache)
  • Manages encryption keys
  • Provides secrets rotation
  • Issues short-lived tokens

Alternatives:

AlternativeLicenseNotes
OpenBaoMPL-2.0Fork of Vault, fully open source
InfisicalMITModern secrets management
SOPSMPL-2.0File-based encryption
DopplerProprietaryCloud-based alternative

PostgreSQL (Tables/Database)

PropertyValue
ServicePostgreSQL
Current Version17.2.0
Default Port5432
Binary Pathbotserver-stack/bin/tables/
Config Pathbotserver-stack/conf/tables/
Data Pathbotserver-stack/data/tables/
Log Filebotserver-stack/logs/postgres.log

Download URL:

https://github.com/theseus-rs/postgresql-binaries/releases/download/17.2.0/postgresql-17.2.0-x86_64-unknown-linux-gnu.tar.gz

Purpose:

  • Primary relational database
  • Stores bot configurations, users, conversations
  • Supports full-text search
  • Handles transactions and ACID compliance

Alternatives:

AlternativeLicenseNotes
CockroachDBBSL/CCLDistributed SQL, PostgreSQL-compatible
YugabyteDBApache-2.0Distributed PostgreSQL
NeonApache-2.0Serverless PostgreSQL
SupabaseApache-2.0PostgreSQL with extras

Zitadel (Directory/Identity)

PropertyValue
ServiceZitadel
Current Version2.70.4
Default Port8080
Binary Pathbotserver-stack/bin/directory/zitadel
Config Pathbotserver-stack/conf/directory/
Data PathUses PostgreSQL
Log Filebotserver-stack/logs/zitadel.log

Download URL:

https://github.com/zitadel/zitadel/releases/download/v2.70.4/zitadel-linux-amd64.tar.gz

Purpose:

  • User authentication and authorization
  • OAuth2/OIDC provider
  • Single Sign-On (SSO)
  • Multi-factor authentication
  • Service credential provisioning

Alternatives:

AlternativeLicenseNotes
KeycloakApache-2.0Java-based, feature-rich
AuthentikCustom OSSPython-based, modern UI
AutheliaApache-2.0Lightweight, Nginx integration
OryApache-2.0Modular identity infrastructure
CasdoorApache-2.0Go-based, UI-focused

MinIO (Drive/Object Storage)

PropertyValue
ServiceMinIO
Current VersionLatest
Default Ports9000 (API), 9001 (Console)
Binary Pathbotserver-stack/bin/drive/minio
Config Pathbotserver-stack/conf/drive/
Data Pathbotserver-stack/data/drive/
Log Filebotserver-stack/logs/minio.log

Download URL:

https://dl.min.io/server/minio/release/linux-amd64/minio

Purpose:

  • S3-compatible object storage
  • Stores bot packages (.gbai, .gbkb, etc.)
  • File uploads and downloads
  • Static asset hosting

Alternatives:

AlternativeLicenseNotes
SeaweedFSApache-2.0Distributed, fast
GarageAGPL-3.0Lightweight, geo-distributed
CephLGPL-2.1Enterprise-grade, complex
LakeFSApache-2.0Git-like versioning for data

Valkey (Cache)

PropertyValue
ServiceValkey
Current Version8.0.2
Default Port6379
Binary Pathbotserver-stack/bin/cache/valkey-server
Config Pathbotserver-stack/conf/cache/
Data Pathbotserver-stack/data/cache/
Log Filebotserver-stack/logs/valkey.log

Download URL:

https://github.com/valkey-io/valkey/archive/refs/tags/8.0.2.tar.gz

Note: Valkey requires compilation from source. Build dependencies: gcc, make

Purpose:

  • In-memory caching
  • Session storage
  • Rate limiting
  • Pub/Sub messaging
  • Queue management

Alternatives:

AlternativeLicenseNotes
KeyDBBSD-3Multi-threaded Redis fork
DragonflyBSLHigh-performance, Redis-compatible
GarnetMITMicrosoft’s cache store
SkytableAGPL-3.0Modern NoSQL

llama.cpp (LLM Server)

PropertyValue
Servicellama.cpp
Current Versionb7345
Default Ports8081 (LLM), 8082 (Embedding)
Binary Pathbotserver-stack/bin/llm/llama-server
Config Pathbotserver-stack/conf/llm/
Data Pathbotserver-stack/data/llm/ (models)
Log Filebotserver-stack/logs/llm.log

Download URLs by Platform:

PlatformURL
Linux x64https://github.com/ggml-org/llama.cpp/releases/download/b7345/llama-b7345-bin-ubuntu-x64.zip
Linux x64 Vulkanhttps://github.com/ggml-org/llama.cpp/releases/download/b7345/llama-b7345-bin-ubuntu-vulkan-x64.zip
macOS ARM64https://github.com/ggml-org/llama.cpp/releases/download/b7345/llama-b7345-bin-macos-arm64.zip
macOS x64https://github.com/ggml-org/llama.cpp/releases/download/b7345/llama-b7345-bin-macos-x64.zip
Windows x64https://github.com/ggml-org/llama.cpp/releases/download/b7345/llama-b7345-bin-win-cpu-x64.zip
Windows CUDA 12https://github.com/ggml-org/llama.cpp/releases/download/b7345/llama-b7345-bin-win-cuda-12.4-x64.zip
Windows CUDA 13https://github.com/ggml-org/llama.cpp/releases/download/b7345/llama-b7345-bin-win-cuda-13.1-x64.zip

SHA256 Checksums:

llama-b7345-bin-ubuntu-x64.zip:        91b066ecc53c20693a2d39703c12bc7a69c804b0768fee064d47df702f616e52
llama-b7345-bin-ubuntu-vulkan-x64.zip: 03f0b3acbead2ddc23267073a8f8e0207937c849d3704c46c61cf167c1001442
llama-b7345-bin-macos-arm64.zip:       72ae9b4a4605aa1223d7aabaa5326c66c268b12d13a449fcc06f61099cd02a52
llama-b7345-bin-macos-x64.zip:         bec6b805cf7533f66b38f29305429f521dcb2be6b25dbce73a18df448ec55cc5
llama-b7345-bin-win-cpu-x64.zip:       ea449082c8e808a289d9a1e8331f90a0379ead4dd288a1b9a2d2c0a7151836cd
llama-b7345-bin-win-cuda-12.4-x64.zip: 7a82aba2662fa7d4477a7a40894de002854bae1ab8b0039888577c9a2ca24cae
llama-b7345-bin-win-cuda-13.1-x64.zip: 06ea715cefb07e9862394e6d1ffa066f4c33add536b1f1aa058723f86ae05572

Purpose:

  • Local LLM inference
  • Text embeddings for semantic search
  • OpenAI-compatible API
  • Supports GGUF model format

Alternatives:

AlternativeLicenseNotes
OllamaMITUser-friendly, model management
vLLMApache-2.0High throughput, production-grade
Text Generation InferenceApache-2.0HuggingFace’s solution
LocalAIMITDrop-in OpenAI replacement
LM StudioProprietaryDesktop GUI application

Supporting Components

Stalwart (Email Server)

PropertyValue
ServiceStalwart Mail Server
Current Version0.10.7
Default Ports25 (SMTP), 993 (IMAPS), 587 (Submission)
Binary Pathbotserver-stack/bin/email/stalwart-mail
Config Pathbotserver-stack/conf/email/
Data Pathbotserver-stack/data/email/
Log Filebotserver-stack/logs/stalwart.log

Download URL:

https://github.com/stalwartlabs/mail-server/releases/download/v0.10.7/stalwart-mail-x86_64-linux.tar.gz

Purpose:

  • Full email server (SMTP, IMAP, JMAP)
  • Email sending and receiving
  • Spam filtering
  • DKIM/SPF/DMARC support

Alternatives:

AlternativeLicenseNotes
MaddyGPL-3.0Composable mail server
Mail-in-a-BoxCC0All-in-one solution
PostalMITSending-focused
HarakaMITNode.js SMTP

Caddy (Proxy)

PropertyValue
ServiceCaddy
Current Version2.9.1
Default Ports443 (HTTPS), 80 (HTTP)
Binary Pathbotserver-stack/bin/proxy/caddy
Config Pathbotserver-stack/conf/proxy/Caddyfile
Data Pathbotserver-stack/data/proxy/
Log Filebotserver-stack/logs/caddy.log

Download URL:

https://github.com/caddyserver/caddy/releases/download/v2.9.1/caddy_2.9.1_linux_amd64.tar.gz

Purpose:

  • Automatic HTTPS with Let’s Encrypt
  • Reverse proxy for all services
  • Load balancing
  • HTTP/2 and HTTP/3 support

Alternatives:

AlternativeLicenseNotes
NginxBSD-2Industry standard
TraefikMITCloud-native, auto-discovery
HAProxyGPL-2.0High performance
EnvoyApache-2.0Service mesh ready

CoreDNS (DNS)

PropertyValue
ServiceCoreDNS
Current Version1.11.1
Default Port53
Binary Pathbotserver-stack/bin/dns/coredns
Config Pathbotserver-stack/conf/dns/Corefile
Log Filebotserver-stack/logs/coredns.log

Download URL:

https://github.com/coredns/coredns/releases/download/v1.11.1/coredns_1.11.1_linux_amd64.tgz

Purpose:

  • Local DNS resolution
  • Service discovery (*.botserver.local)
  • DNS-based load balancing

Alternatives:

AlternativeLicenseNotes
PowerDNSGPL-2.0Feature-rich, authoritative
UnboundBSDValidating resolver
dnsmasqGPL-2.0Lightweight

Forgejo (ALM/Git)

PropertyValue
ServiceForgejo
Current Version10.0.2
Default Port3000
Binary Pathbotserver-stack/bin/alm/forgejo
Config Pathbotserver-stack/conf/alm/
Data Pathbotserver-stack/data/alm/
Log Filebotserver-stack/logs/forgejo.log

Download URL:

https://codeberg.org/forgejo/forgejo/releases/download/v10.0.2/forgejo-10.0.2-linux-amd64

Purpose:

  • Git repository hosting
  • Issue tracking
  • CI/CD pipelines
  • Code review

Alternatives:

AlternativeLicenseNotes
GiteaMITOriginal project
GitLabMIT (CE)Full DevOps platform
GogsMITLightweight
OneDevMITBuilt-in CI/CD

LiveKit (Meeting/Video)

PropertyValue
ServiceLiveKit
Current Version2.8.2
Default Ports7880 (HTTP), 7881 (RTC)
Binary Pathbotserver-stack/bin/meeting/livekit-server
Config Pathbotserver-stack/conf/meeting/
Log Filebotserver-stack/logs/livekit.log

Download URL:

https://github.com/livekit/livekit/releases/download/v2.8.2/livekit_2.8.2_linux_amd64.tar.gz

Purpose:

  • Real-time video/audio communication
  • WebRTC infrastructure
  • Screen sharing
  • Recording

Alternatives:

AlternativeLicenseNotes
JitsiApache-2.0Full-featured, established
BigBlueButtonLGPL-3.0Education-focused
JanusGPL-3.0WebRTC gateway
mediasoupISCNode.js SFU

Optional Components

Qdrant (Vector Database)

PropertyValue
ServiceQdrant
Current VersionLatest
Default Ports6333 (HTTP), 6334 (gRPC)
Binary Pathbotserver-stack/bin/vector_db/qdrant

Download URL:

https://github.com/qdrant/qdrant/releases/latest/download/qdrant-x86_64-unknown-linux-gnu.tar.gz

Purpose:

  • Vector similarity search
  • Knowledge base embeddings
  • Semantic search

Alternatives:

AlternativeLicenseNotes
MilvusApache-2.0Distributed, scalable
WeaviateBSD-3GraphQL API
ChromaApache-2.0Simple, embedded
pgvectorPostgreSQLPostgreSQL extension

InfluxDB (Time Series)

PropertyValue
ServiceInfluxDB
Current Version2.7.5
Default Port8086
Binary Pathbotserver-stack/bin/timeseries_db/influxd

Download URL:

https://download.influxdata.com/influxdb/releases/influxdb2-2.7.5-linux-amd64.tar.gz

Purpose:

  • Metrics storage
  • Time-series analytics
  • Monitoring dashboards

Alternatives:

AlternativeLicenseNotes
TimescaleDBApache-2.0PostgreSQL extension
VictoriaMetricsApache-2.0Prometheus-compatible
QuestDBApache-2.0High-performance SQL
PrometheusApache-2.0Monitoring-focused

Default LLM Models

DeepSeek R1 Distill Qwen 1.5B

PropertyValue
FilenameDeepSeek-R1-Distill-Qwen-1.5B-Q3_K_M.gguf
Size~1.1 GB
RAM Required4 GB
Use CaseDefault conversational model

Download URL:

https://huggingface.co/bartowski/DeepSeek-R1-Distill-Qwen-1.5B-GGUF/resolve/main/DeepSeek-R1-Distill-Qwen-1.5B-Q3_K_M.gguf

BGE Small EN v1.5

PropertyValue
Filenamebge-small-en-v1.5-f32.gguf
Size~130 MB
RAM Required512 MB
Use CaseText embeddings for semantic search

Download URL:

https://huggingface.co/CompendiumLabs/bge-small-en-v1.5-gguf/resolve/main/bge-small-en-v1.5-f32.gguf

Configuration Files Reference

FilePurpose
3rdparty.tomlComponent download URLs and checksums
config/llm_releases.jsonPlatform-specific LLM builds
botserver-stack/conf/*/Per-component configuration
.envEnvironment variables (generated)

See Also