diff --git a/config.example.jsonc b/config.example.jsonc
index e3ecabc..9bd6fe1 100644
--- a/config.example.jsonc
+++ b/config.example.jsonc
@@ -262,6 +262,40 @@
"accessToken": ""
},
+ // ==========================================
+ // Jellyfin
+ // Optional Jellyfin integration for auth, browsing, and playback launch.
+ // Access token is stored in config and should be treated as a secret.
+ // ==========================================
+ "jellyfin": {
+ "enabled": false,
+ "serverUrl": "",
+ "username": "",
+ "accessToken": "",
+ "userId": "",
+ "deviceId": "subminer",
+ "clientName": "SubMiner",
+ "clientVersion": "0.1.0",
+ "defaultLibraryId": "",
+ "remoteControlEnabled": true,
+ "remoteControlAutoConnect": true,
+ "autoAnnounce": false,
+ "remoteControlDeviceName": "SubMiner",
+ "pullPictures": false,
+ "iconCacheDir": "/tmp/subminer-jellyfin-icons",
+ "directPlayPreferred": true,
+ "directPlayContainers": [
+ "mkv",
+ "mp4",
+ "webm",
+ "mov",
+ "flac",
+ "mp3",
+ "aac"
+ ],
+ "transcodeVideoCodec": "h264"
+ },
+
// ==========================================
// Immersion Tracking
// Enable/disable immersion tracking.
@@ -269,6 +303,18 @@
// ==========================================
"immersionTracking": {
"enabled": true,
- "dbPath": ""
+ "dbPath": "",
+ "batchSize": 25,
+ "flushIntervalMs": 500,
+ "queueCap": 1000,
+ "payloadCapBytes": 256,
+ "maintenanceIntervalMs": 86400000,
+ "retention": {
+ "eventsDays": 7,
+ "telemetryDays": 30,
+ "dailyRollupsDays": 365,
+ "monthlyRollupsDays": 1825,
+ "vacuumIntervalDays": 7
+ }
}
}
diff --git a/docs/index.md b/docs/index.md
index 153a6cb..8efeeba 100644
--- a/docs/index.md
+++ b/docs/index.md
@@ -176,22 +176,6 @@ features:
-## CLI Quick Reference
-
-```bash
-subminer # Default picker + playback workflow
-subminer jellyfin -d # Jellyfin cast discovery mode (foreground)
-subminer jellyfin -p # Jellyfin play picker
-subminer yt -o ~/subs URL # YouTube subcommand with output dir shortcut
-subminer doctor # Dependency/config/socket health checks
-subminer config path # Active config file path
-subminer config show # Print active config
-subminer mpv status # MPV socket readiness
-subminer texthooker # Texthooker-only mode
-```
-
-See [Usage](/usage) for full command and option coverage.
-
## See It in Action