Claude-skill-registry jellyfin
install
source · Clone the upstream repo
git clone https://github.com/majiayu000/claude-skill-registry
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/majiayu000/claude-skill-registry "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/data/jellyfin" ~/.claude/skills/majiayu000-claude-skill-registry-jellyfin && rm -rf "$T"
manifest:
skills/data/jellyfin/SKILL.mdsource content
Jellyfin - Media Server Management
Overview
The
jellyfin command manages Jellyfin media server instances using Podman Quadlet containers. It supports hardware transcoding and FUSE filesystem compatibility for network mounts.
Key Concept: Multi-instance support allows running multiple media libraries. FUSE compatibility enables rclone/sshfs mounts for cloud or remote storage.
Quick Reference
| Action | Command | Description |
|---|---|---|
| Config | | Configure Jellyfin |
| Delete | | Remove instance config and container |
| Logs | | View container logs |
| Restart | | Restart server |
| Shell | | Open shell or execute command in container |
| Start | | Start Jellyfin media server |
| Status | | Show instance status |
| Stop | | Stop Jellyfin media server |
| URL | | Show web UI access URL |
Configuration
Parameters
| Parameter | Long Flag | Short | Required | Description |
|---|---|---|---|---|
| Config Dir | | | Yes | Configuration directory |
| Cache Dir | | - | Yes | Cache directory (transcoding) |
| Media Dir | | - | Yes | Media library path |
| Instance | | | No | Instance number (default: 1) |
| GPU Type | | | No | GPU: nvidia, amd, intel, auto |
| Image | | | No | Container image |
| Tag | | | No | Image tag (default: stable) |
| Workspace | | | No | Optional mount to /workspace |
| Bind | | | No | Bind address |
| Port | | | No | Service port |
| Lines | | | No | Log lines to show |
Configuration Examples
# Basic installation (long form) ujust jellyfin config --config-dir=~/jellyfin/config --cache-dir=~/jellyfin/cache --media-dir=~/media # With NVIDIA GPU for transcoding ujust jellyfin config -c ~/jellyfin/config --cache-dir=~/jellyfin/cache --media-dir=~/media --gpu-type=nvidia # Second instance for different library ujust jellyfin config -c ~/jellyfin2/config --cache-dir=~/jellyfin2/cache --media-dir=~/videos --instance=2 # With short forms ujust jellyfin config -c ~/config --cache-dir=~/cache --media-dir=~/media -n 1 -g nvidia
Update Existing Configuration
Running
config when already configured will update the existing configuration, preserving values not explicitly changed.
Shell Access
# Interactive bash shell ujust jellyfin shell # Run specific command (use -- separator) ujust jellyfin shell -- df -h # Shell in specific instance ujust jellyfin shell --instance=2 -- ls /media
Lifecycle Commands
Start/Stop
# Single instance ujust jellyfin start --instance=1 ujust jellyfin stop --instance=1 # Short form ujust jellyfin start -n 1 ujust jellyfin stop -n 1 # All instances ujust jellyfin start --instance=all ujust jellyfin stop --instance=all
View Logs
# Follow logs ujust jellyfin logs # Specific instance with line count ujust jellyfin logs --instance=1 --lines=100 # Short form ujust jellyfin logs -n 1 -l 100
Get URL
ujust jellyfin url # Output: http://localhost:8096 # Specific instance ujust jellyfin url --instance=2
Port Allocation
| Instance | Port |
|---|---|
| 1 | 8096 |
| 2 | 8097 |
| 3 | 8098 |
| N | 8095+N |
Hardware Transcoding
GPU Types
| GPU | Flag Value | Transcoding |
|---|---|---|
| NVIDIA | or | NVENC/NVDEC |
| AMD | or | VAAPI |
| Intel | or | QuickSync |
Enable GPU
ujust jellyfin config -c ~/config --cache-dir=~/cache --media-dir=~/media --gpu-type=nvidia
Verify GPU
# Check inside container ujust jellyfin shell -- nvidia-smi # or vainfo for AMD/Intel
FUSE Filesystem Support
Jellyfin containers support FUSE mounts (rclone, sshfs) for remote storage.
Mount Before Starting
# Mount cloud storage rclone mount gdrive:media ~/media --daemon # Then start Jellyfin ujust jellyfin start 1
Why Host Networking?
Jellyfin uses host networking for:
- DLNA discovery
- mDNS/Bonjour
- Chromecast
Configuration Files
| File | Purpose | Location |
|---|---|---|
| Quadlet unit | Service definition | |
| Instance config | Settings | |
| Jellyfin data | Libraries, users | |
| Transcoding cache | Temp files | |
Common Workflows
Initial Setup
# 1. Create directories mkdir -p ~/jellyfin/{config,cache} # 2. Configure Jellyfin ujust jellyfin config -c ~/jellyfin/config --cache-dir=~/jellyfin/cache --media-dir=~/media --gpu-type=nvidia # 3. Start it ujust jellyfin start # 4. Access web UI ujust jellyfin url # Open http://localhost:8096
Multiple Libraries
# Movies library ujust jellyfin config -c ~/jellyfin-movies/config --cache-dir=~/jellyfin-movies/cache --media-dir=~/movies -n 1 # TV library ujust jellyfin config -c ~/jellyfin-tv/config --cache-dir=~/jellyfin-tv/cache --media-dir=~/tv -n 2 # Start both ujust jellyfin start --instance=all
Cloud Storage
# 1. Mount cloud storage rclone mount gdrive:media ~/cloud-media --daemon --vfs-cache-mode writes # 2. Configure Jellyfin pointing to mount ujust jellyfin config -c ~/jellyfin/config --cache-dir=~/jellyfin/cache --media-dir=~/cloud-media # 3. Start ujust jellyfin start
Initial Configuration
First-time setup via web UI:
- Open
http://localhost:8096 - Create admin user
- Add media libraries
- Configure transcoding (if GPU)
- Set up remote access
Troubleshooting
Jellyfin Won't Start
Check:
ujust jellyfin status ujust jellyfin logs --lines=50
Common causes:
- Port conflict (8096 in use)
- Invalid paths
- GPU driver issues
Transcoding Fails
Check:
# View logs for transcoding errors ujust jellyfin logs | grep -i transcode
Common causes:
- GPU not passed through
- Missing codec support
Fix:
# Reconfigure with GPU ujust jellyfin delete ujust jellyfin config -c ~/config --cache-dir=~/cache --media-dir=~/media --gpu-type=nvidia
Media Not Found
Check:
- Media directory exists
- Correct path in config
- Permissions
Fix:
# Verify path ls ~/media # Reconfigure with correct path ujust jellyfin delete ujust jellyfin config -c ~/config --cache-dir=~/cache --media-dir=/correct/path
DLNA Not Working
Cause: Network isolation
Jellyfin uses host networking, but ensure:
- Firewall allows mDNS (5353/udp)
- Same network as clients
Cross-References
- Related Skills:
(GPU setup)configure gpu - Jellyfin Docs: https://jellyfin.org/docs/
- Web UI: http://localhost:8096
When to Use This Skill
Use when the user asks about:
- "install jellyfin", "setup media server"
- "jellyfin not working", "jellyfin transcoding"
- "jellyfin GPU", "hardware transcoding"
- "multiple jellyfin", "jellyfin instances"