Skip to content

FEATURE_* flags

Every FEATURE_* flag resolves through the config layer’s live precedence chain (admin-set value → environment variable → built-in default). It’s read fresh on each access, not cached once at boot; some flags are documented as safe to flip with no restart (FEATURE_PUBLIC_SHOWCASE is one example). Without a feature-specific note saying otherwise, treat a flag change as needing a container restart, since no admin-UI control writes most of these flags live. Most also appear as a read-only, lock-icon toggle on the matching Settings page for visibility, but can’t be edited there; a small number are infrastructure-only and have no admin-UI surface at all (noted below).

This is a reference list, not a how-to. For the concepts and setup behind any one feature, follow the linked guide.

FlagDefaultGates
FEATURE_LIVETVfalseThe Live TV section (M3U/XMLTV sources plus the stream proxy). See Administering Lumastra.
FEATURE_AUDIOBOOKStrueAudiobookShelf integration.
FEATURE_KAVITAtrueBooks/manga (Kavita) integration.
FEATURE_CALENDARtrueThe release calendar widget.
FEATURE_SHOW_UNAIRED_EPISODEStrueListing episodes that haven’t aired yet.
FEATURE_SHOW_MISSING_EPISODEStrueListing episodes not yet in your library.
FlagDefaultGates
FEATURE_AI_RECOMMENDATIONStrueEmbedding-based recommendations and Quick Picks.
FEATURE_AI_ASSISTANTtrueThe RAG-powered chat assistant. A source-available supporter module, free during early access. See Editions & Licensing.
FEATURE_ASSISTANT_TOOLStrueAgentic tool-calling for the assistant instead of single-shot retrieval; falls back automatically for models without tool-calling.
FEATURE_ASSISTANT_WRITESfalseLetting the assistant change a user’s own data (watchlist, ratings, watched state, requests) on request.
FEATURE_ASSISTANT_SHARED_HISTORYfalseLetting the assistant use another consenting user’s watch history for joint recommendations.
FEATURE_ASSISTANT_INCLUDE_REQUESTABLEfalseIncluding not-yet-in-library (Seerr) titles in assistant recommendation cards.
FEATURE_TWO_PHASE_ANNtrueThe HNSW-accelerated two-phase similarity search path for recommendations. Env-only, no admin-UI surface; falls back to a full scan automatically on error.
FlagDefaultGates
FEATURE_JELLYFIN_SYNCtrueBackground watch-state sync with a Jellyfin server (distinct from the /j client API below).
FEATURE_JELLYFIN_COMPATtrueThe /j Jellyfin-compatible client API. Serves Lumastra’s own catalog; no Jellyfin server required. More than one concurrent /j stream per server is a source-available supporter module, free during early access. See Editions & Licensing.
FEATURE_SUBSONIC_COMPATfalseThe OpenSubsonic-compatible API. Per-client credentials are stored recoverable (plaintext at rest) by protocol design. See the self-check note in Administration operations.
FEATURE_MEDIA_DOWNLOADfalseDownloading the original, untranscoded file.
FEATURE_DOWNLOAD_RENDITIONSfalseOffline download renditions at a chosen quality.
FEATURE_PLAYER_AUTO_QUALITYfalseAutomatic quality switching in the player.
FEATURE_WATCH_TOGETHERtrueWatch Together.
FEATURE_YOUTUBE_HEROtrueYouTube trailers on the home hero.
FEATURE_YOUTUBE_MODALStrueYouTube trailers in modals.
FEATURE_MEDIA_HOVER_POPUPtrueThe hover-preview popup on media cards.
FEATURE_MEDIA_HOVER_POPUP_TRAILERSfalseYouTube trailers inside the hover popup.
FEATURE_MEDIA_HOVER_VIDEO_PREVIEWfalseVideo (not just image) previews in the hover popup.
FEATURE_MEDIA_HOVER_VIDEO_PREVIEW_LIVETVfalseVideo previews for Live TV channels specifically.
FEATURE_FEATURED_PICK_VIDEOfalseVideo preview on the featured-pick hero slot.
FEATURE_TOPSHELF_PREVIEWSfalsetvOS Top Shelf previews.
FlagDefaultGates
FEATURE_MUSIC_TRANSCODEtrueMusic transcoding.
FEATURE_MUSIC_CLUSTERINGtrueMulti-mode taste clustering for Quick Picks.
FEATURE_MUSIC_CLUSTERSfalseSonic Collections (KMeans auto-playlists).
FEATURE_MUSIC_FIRSTfalseMusic-first mode.
FEATURE_MUSIC_SONICfalseSonic embeddings (CLAP-based).
FEATURE_MUSIC_SONIC_QUEUEfalseSonic smart queue.
FEATURE_MUSIC_SONIC_TASTEfalseSonic taste profile (personalised Quick Picks).
FEATURE_MUSIC_TEXT_SOUNDfalseText-to-sound search.
FEATURE_MUSIC_MAPfalseMusic map (UMAP projection).
FEATURE_MUSIC_ALCHEMYfalseMusic Alchemy.
FEATURE_AUTO_LYRICStrueAutomatic lyrics fetching.
FEATURE_MUSIC_LYRICS_FETCHfalseManual on-demand lyrics fetch action.
FEATURE_MUSIC_LYRICS_SEARCHfalseLyrics search.
FEATURE_SAVE_LYRICS_TO_DISKfalseWriting fetched lyrics to a sidecar file next to the track.
FlagDefaultGates
FEATURE_SOCIALtrueSocial features (activity, presence).
FEATURE_SOCIAL_REVIEWStrueCommunity reviews.
FEATURE_COMMENTSfalseComments and emoji reactions on media, playlists, and people. No moderation queue: a comment is removable only by its author or an operator. Leave it off unless your users know each other.
FEATURE_SESSIONStrueThe Streaming Sessions widget.
FEATURE_SESSIONS_PUBLICtrueOther users seeing your active sessions (subject to Sharing & privacy settings).
FEATURE_SESSIONS_DEVICE_INFO_PUBLICfalseIncluding device info in the public session view.
FEATURE_PLAYLISTStruePlaylists.
FEATURE_PLAYLIST_CHATtrueChat on a shared playlist.
FEATURE_MEDIA_ANNOTATIONSfalsePer-item annotations.
FEATURE_MEDIA_CHATfalseChat on a media item’s page.
FEATURE_PERSONAL_STATStruePersonal watch/listen statistics.
FEATURE_TRENDINGtrueThe trending widget.
FEATURE_FORYOU_SECTION_RANKERfalseEngagement-based ranking of For You home sections.
FEATURE_FORYOU_ABANDONMENT_DEMOTEfalseDemoting recommendations a user repeatedly abandons early.
FEATURE_REQUEST_MODALfalseThe in-app Seerr request modal.
FEATURE_QUICK_CONNECTtrueQuick Connect pairing.
FlagDefaultGates
FEATURE_USER_NOTIFICATION_WEBHOOKSfalsePer-user notification webhooks (distinct from the admin task-system webhooks in Administration operations).
FEATURE_PUSH_NOTIFICATIONStrueiOS push notifications via the Lumastra relay. Works without setup; see iOS push notifications.
FEATURE_CLIENT_DIAGNOSTICStrueAutomatic client diagnostic reports.
FEATURE_CLIENT_DIAGNOSTICS_LOG_TAILtrueIncluding a log tail in automatic client reports.
FEATURE_CLIENT_LOG_BUNDLEStrueDownloadable client log bundles.
FEATURE_AUDIT_TAMPER_EVIDENCEfalseTamper-evidence hashing on the audit log.
FEATURE_AVATAR_UPLOADtrueUser avatar upload.
FEATURE_GRAVATARfalseFalling back to Gravatar for users without an uploaded avatar.
FlagDefaultGates
FEATURE_SIDEBARtrueSidebar navigation (vs. mega-menu).
FEATURE_DOCK_TOGGLEtrueThe dock-vs-sidebar toggle itself, dependent on FEATURE_SIDEBAR.
FEATURE_STARS_BACKGROUNDtrueThe animated starfield background.

Custom CSS/JS injection, custom themes, and the default theme are configured (not feature-flagged) at /admin/settings/appearance via APPEARANCE_CUSTOM_CSS, APPEARANCE_CUSTOM_JS, APPEARANCE_CUSTOM_THEMES, and APPEARANCE_DEFAULT_THEME (default warp).

FlagDefaultGates
FEATURE_DEVICE_AUTHtrueThe Public API: the /api/v1/* token surface, the OAuth2 Device Authorization flow (/oauth/*) the Lumastra iPhone/iPad/Apple TV apps sign in with, and service-token management. Needs JWT_SECRET (derived from LUMASTRA_MASTER_KEY when unset). Offered as a switch in the setup wizard; editable later under Settings → Access → Public API & Device Auth. See Authentication.
FEATURE_USER_PATSfalseSelf-service personal access tokens (Settings → Account → API tokens, or POST /api/v1/me/pats). Needs JWT_SECRET.
FlagDefaultGates
FEATURE_ASSESSMENTfalseThe native quiz & certificate (LMS assessment) module.
FEATURE_TRAINING_ASSIGNMENTSfalseTraining assignments.
FEATURE_PUBLIC_SHOWCASEfalseThe public showcase surface. See Administering Lumastra.

These have no admin-UI surface and are meant for advanced operators debugging a rollout, not everyday configuration:

FlagDefaultPurpose
FEATURE_PER_TASK_QUEUEStruePer-task queue isolation in the task runner, rather than one shared in-process queue.
FEATURE_PIPELINE_EVENT_OUTBOXtrueRouting pipeline invalidation through the durable event outbox.
FEATURE_PLUGIN_WORKER_ISOLATIONtrueRunning external plugin tasks in an isolated worker rather than in-process.