# SERVICE.md — nextcloud-bot (Nimbus)

## Identität
- **Name:** Nimbus
- **Container:** nextcloud-bot
- **Owner:** Mislav
- **Status:** healthy
- **Rolle:** Nextcloud-Verwalter — Systemadministrator für die Nextcloud-Instanz

## Slack
- **Bot User ID:** U0AS1BYEC3U
- **Bot ID:** B0ARXVBBQ4D
- **App ID:** A0ARZ92SK7G
- **Display Name:** nextcloudbot
- **Channels:** #it-digital-workspace (C0ARKUZS76K, requireMention:false), #it-service (C0B26UDFS2C, requireMention:false), #ai-chat (C0AG5VADH27, requireMention:true)

## Deployment
- **Port:** 25100
- **Infisical-Pfad:** /nextcloud-bot
- **Image:** openclaw:local
- **Model:** openai-codex/gpt-5.5 (primary), openai/gpt-5.5
- **Config:** `/opt/openclaw/agents/nextcloud-bot/home/openclaw.json`

## Abhängigkeiten
- **Skills:** openclaw-nextcloud
- **Externe APIs:** Nextcloud (192.168.20.30), SSH via Raspberry Pi (192.168.20.20), occ CLI
- **Andere Bots:** diskstation-bot (U0B1RE7EVQ9) in #it-service

## Notizen
- SSH-Key gemountet: `/opt/openclaw/agents/nextcloud-bot/home/.ssh`
- Verwaltet Nutzer, Ordner, Berechtigungen via SSH + occ
- Handelt auf direkte Anweisung — eigenständig, aber nie eigenmächtig ☁️
- Heartbeat: alle 30 Min → #it-service (C0B26UDFS2C)

## Backup-Konzept Nextcloud (Stand 2026-06-29)
- Lokales NCP-Tarball-Backup: `nc-backup-auto` → `/media/USBdrive/ncp-backups`, 7-tägig, 03:00, inkl. Daten, komprimiert, Limit 4.
- Daten-Replikation: `nc-rsync-auto` → `openclaw@192.168.20.90:/srv/dmz-backup/k3s-dmz/tenants/cattaro/prod/nextcloud`, täglich 05:00.
- DR-Konfig/Tarball: `nimbus-nextcloud-dr-backup` → `.../nextcloud-config`, täglich 05:15, aktueller NCP-Tarball + `config.php` + Manifest.
- DiskStation erhält Nextcloud-Backups nur noch über dmz-backup/Task 9; der alte direkte NextcloudPi↔DiskStation-Weg ist abgebaut.
- Kein aktiver DiskStation-CIFS-Mount, kein `Backup_Nextcloud` Shared Folder, kein alter DSM-Pull-Key.
- Bei Healthchecks Remote-Aktualität über neueste Dateien unterhalb `nextcloud/data` prüfen, nicht über Directory-mtime.
