feat: add lidarr-cli — Lidarr music library CLI with skill and references #59

Merged
jasper merged 1 commit from feat/lidarr-cli into main 2026-06-03 23:38:38 -04:00
Contributor

Summary

Adds a complete lidarr-cli following the same patterns as radarr-cli and sonarr-cli, adapted for Lidarr's artist/album/track model (port 8686, MusicBrainz ID lookup, metadata profiles).

Changes

New files

File Lines
lidarr-cli/scripts/lidarr-cli 391
lidarr-cli/SKILL.md 99
lidarr-cli/references/lidarr-commands.md 178
lidarr-cli/references/troubleshooting.md 68
lidarr-cli/scripts/test-lidarr-cli.sh 63

18 CLI subcommands

status, artists, lookup, lookup-album, add, albums, tracks, track-files, quality-profile, metadata-profile, root-folder, calendar, queue, history, wanted, search, disk-space, health

Key design decisions

  • Env vars: ARR_KEY_LIDARR, ARR_SERVER_LIDARR (default http://localhost:8686)
  • Artist add by MusicBrainz ID (--mb-id UUID), not TMDb/TVDb
  • Three-level hierarchy: artist → album → track
  • Metadata profiles (Lidarr-specific, for album tag/artwork handling)
  • Progressive disclosure SKILL.md with trigger-condition table
  • 37 dry-run smoke tests, all pass

Testing

37 passed, 0 failed
## Summary Adds a complete lidarr-cli following the same patterns as radarr-cli and sonarr-cli, adapted for Lidarr's artist/album/track model (port 8686, MusicBrainz ID lookup, metadata profiles). ## Changes ### New files | File | Lines | |------|-------| | `lidarr-cli/scripts/lidarr-cli` | 391 | | `lidarr-cli/SKILL.md` | 99 | | `lidarr-cli/references/lidarr-commands.md` | 178 | | `lidarr-cli/references/troubleshooting.md` | 68 | | `lidarr-cli/scripts/test-lidarr-cli.sh` | 63 | ### 18 CLI subcommands `status`, `artists`, `lookup`, `lookup-album`, `add`, `albums`, `tracks`, `track-files`, `quality-profile`, `metadata-profile`, `root-folder`, `calendar`, `queue`, `history`, `wanted`, `search`, `disk-space`, `health` ### Key design decisions - Env vars: `ARR_KEY_LIDARR`, `ARR_SERVER_LIDARR` (default http://localhost:8686) - Artist add by MusicBrainz ID (`--mb-id` UUID), not TMDb/TVDb - Three-level hierarchy: artist → album → track - Metadata profiles (Lidarr-specific, for album tag/artwork handling) - Progressive disclosure SKILL.md with trigger-condition table - 37 dry-run smoke tests, all pass ## Testing ``` 37 passed, 0 failed ```
Adds a complete lidarr-cli following the same patterns as radarr-cli
and sonarr-cli, adapted for Lidarr's artist/album/track model.

CLI: 18 subcommands (status, artists, lookup, lookup-album, add,
albums, tracks, track-files, quality-profile, metadata-profile,
root-folder, calendar, queue, history, wanted, search, disk-space,
health)

Key differences from Radarr/Sonarr:
- Artist lookup by MusicBrainz ID (UUID), not TMDb/TVDb
- Three-level hierarchy: artist -> album -> track
- Metadata profiles (Lidarr-specific, for album tag handling)

Files:
- scripts/lidarr-cli — 391 lines, argparse-based CLI
- SKILL.md — progressive disclosure thin index with trigger table
- references/lidarr-commands.md — full command reference
- references/troubleshooting.md — pitfalls and FAQs
- scripts/test-lidarr-cli.sh — 37 dry-run smoke tests
magnus force-pushed feat/lidarr-cli from 342e460bcb to 23a88b9523 2026-06-03 23:34:58 -04:00 Compare
jasper merged commit 6d5f1580f9 into main 2026-06-03 23:38:38 -04:00
Sign in to join this conversation.
No reviewers
No milestone
No project
No assignees
2 participants
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
magnus/agent-skills!59
No description provided.