Skip to content

feat: add vibe-aware continuous playback #71

Description

@kylejschultz

Goal

Keep listening going when the current track ends by selecting a suitable next track from the local library, instead of stopping playback.

Desired behavior

  • When a track finishes and no explicit queue item follows it, Prism selects and plays another track that fits the current listening context.
  • Matching should consider available signals such as genre, artist, album, and related metadata.
  • Avoid immediate repeats and favor variety while maintaining a coherent vibe.

Acceptance criteria

  • Continuous playback starts a suitable next track when normal playback would otherwise end.
  • Explicit user queue and playlist ordering continue to take priority.
  • The recommendation pool excludes the just-played track and handles a small or sparse library gracefully.
  • The selection rationale is modular and tunable, so matching weights/signals can evolve without rewriting playback flow.
  • Users can turn the behavior off.

Discovery questions

  • Which local metadata signals produce the best first-pass matches?
  • How should album context differ from artist, genre, or playlist context?
  • What history window best prevents repetition without exhausting smaller libraries?

Out of scope

  • A network-hosted recommendation service.
  • Changing the behavior of an explicitly ordered queue or playlist.

Metadata

Metadata

Assignees

No one assigned

    Labels

    area: desktopDesktop-shell or native-app behaviorarea: libraryLibrary browsing, metadata, search, and playlistsarea: playbackPlayer controls, queue, and listening behaviortype: featureNew user-facing capability

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions