server: host: "0.0.0.0" port: 8080 # Basic Auth for Web UI access username: "admin" password: "CHANGE_ME" # Externally-reachable base URL for links in Telegram digests (e.g. behind a # reverse proxy). If omitted, links are derived from host:port — but when host # is 0.0.0.0 (the unspecified bind address) no link is emitted, since it is # not reachable from outside the host. public_url: "https://naviwatcher.example.com" navidrome: url: "http://localhost:4533" user: "watcher_service" password: "CHANGE_ME" musicbrainz: user_agent: "NaviWatcher/1.0 ( your-email@example.com )" cache_ttl: 24h telegram: enabled: true token: "bot_token" chat_id: "your_chat_id" cron_schedule: "0 10 * * *" scanner: fuzzy_threshold: 0.85 # Periodic sync+scan pipeline: how often NaviWatcher pulls artists/albums from # Navidrome, resolves MusicBrainz discographies, and re-runs the scanner. # Accepts any duration Go's time.ParseDuration understands (e.g. "6h", "30m"). # Defaults to 6h when omitted. sync: interval: 6h