[Unit]
Description=Mission Control (lokaler LLM-Stack)
After=network-online.target
Wants=network-online.target

[Service]
Type=simple
User=tobi
WorkingDirectory=/opt/mission-control
# Pfade an deinen Stack anpassen:
Environment=MC_LLAMA_SWAP_URL=http://127.0.0.1:8080
Environment=MC_CONFIG_PATH=/etc/llama-swap/config.yaml
Environment=MC_MODELS_DIR=/srv/models
Environment=MC_DEFAULT_TTL=300
# Befehl zum Starten eines Modells (in config.yaml geschrieben). ${PORT} bleibt stehen!
Environment=MC_CMD_TEMPLATE=llama-server -m {model} --host 127.0.0.1 --port ${PORT} -c {ctx} -ngl 999 -fa 1 --no-mmap
# Update-Befehl (z.B. kyuz0 refresh oder podman pull):
Environment=MC_UPDATE_CMD=/opt/amd-strix-halo-toolboxes/refresh-toolboxes.sh all
# Optionales Token fuer minimale Absicherung im LAN:
# Environment=MC_TOKEN=einlangesgeheimnis
ExecStart=/opt/mission-control/.venv/bin/uvicorn app:app --host 0.0.0.0 --port 9000
Restart=on-failure
RestartSec=3

[Install]
WantedBy=multi-user.target
