Skip to main content

CLI Reference

This page is auto-generated from the Click command definitions. Run make docs-cli to regenerate.

Global options

These apply to every subcommand:

FlagTypeDescription
--config, -cpathPath to config file (default: ~/.immich-memories/config.yaml)
--versionflagShow version and exit
--helpflagShow help and exit

cache

Manage the analysis cache (LLM scores, video metadata).

immich-memories cache [COMMAND]

cache stats

Show cache statistics: total scored assets, breakdown by type, oldest/newest entries.

immich-memories cache stats

cache export

Export asset scores to JSON. Safe to run while the pipeline is active.

immich-memories cache export scores.json

cache import

Import asset scores from a JSON backup. Useful for migrating between hosts.

immich-memories cache import scores.json

cache backup

Full SQLite backup using the safe backup API (no corruption risk, even during writes).

immich-memories cache backup cache-backup.db

analyze

Analyze videos and cache metadata.

immich-memories analyze [OPTIONS]
FlagTypeDefaultDescription
--year, -yinteger-Year to analyze
--force, -fbooleanfalseForce re-analysis of cached videos

config

Configure Immich connection settings.

immich-memories config [OPTIONS]
FlagTypeDefaultDescription
--url, -utext-Immich server URL
--api-key, -ktext-Immich API key
--show, -sbooleanfalseShow current configuration

export-project

Export project state for later editing.

immich-memories export-project [OPTIONS]
FlagTypeDefaultDescription
--year, -yinteger-Year
--person, -ptext-Person name
--output, -opath-Output JSON file

generate

Generate a video compilation.

immich-memories generate [OPTIONS]
FlagTypeDefaultDescription
--year, -yinteger-Year to generate video for (calendar year by default)
--starttext-Start date (YYYY-MM-DD or DD/MM/YYYY)
--endtext-End date (use with --start)
--periodtext-Period from start date (e.g., 6m, 1y, 2w)
--birthday, -bflag/text-Birthday-based year. Bare flag auto-detects from Immich; or pass MM/DD
--memory-typechoice-year_in_review, season, person_spotlight, multi_person, monthly_highlights, on_this_day, trip
--person, -ptext-Person name to filter by (repeatable)
--seasonchoice-spring, summer, fall, autumn, winter
--monthinteger-Month 1-12 (narrows yearly types; selects trip by month)
--hemispherechoicenorthnorth or south (for season calculation)
--years-backintegerallYears to look back for on_this_day
--duration, -dinteger-Target duration in seconds
--orientation, -ochoicelandscapeOutput orientation
--resolution, -rchoiceconfigauto, 4k, 1080p, 720p (default: from config, or auto to match source)
--scale-mode, -schoiceblurScaling mode
--transition, -tchoicesmartTransition style
--quality, -qchoicehighOutput quality (high, medium, low)
--formatchoicemp4mp4 or prores
--output, -Opath-Output file path
--titletext-Override title screen text
--subtitletext-Override subtitle text
--add-dateflagfalseAdd date overlay to clips
--music, -mtext-Path to audio file, or auto to generate
--no-musicflagfalseDisable all music
--music-volumefloat0.5Music volume 0.0-1.0
--analysis-depthchoicefastfast (metadata gap-fill) or thorough (LLM gap-fill for top candidates)
--include-photosflagfalseInclude photos alongside videos
--photo-durationfloat4.0Seconds per photo clip
--include-live-photosflagfalseInclude Live Photo video clips
--privacy-modeflagfalseBlur all video and mute speech
--keep-intermediatesflagfalseKeep intermediate files for debugging
--upload-to-immichflagfalseUpload generated video back to Immich
--albumtext-Album name for uploaded video
--trip-indexinteger-Select a specific trip by index
--all-tripsflagfalseGenerate for every detected trip
--near-datetext-Select trip closest to this date (YYYY-MM-DD)
--dry-runflagfalseShow what would be done without generating
--quietflagfalseSuppress interactive progress, emit log lines

auto

Smart automation: detect, score, and generate memory candidates from your library.

immich-memories auto [COMMAND]

auto suggest

Show ranked memory candidates with scores and reasons.

FlagTypeDefaultDescription
--jsonflagfalseMachine-readable JSON output
--limitinteger10Max candidates to show
--typetextallFilter by memory type

auto run

Generate the top-ranked candidate.

FlagTypeDefaultDescription
--dry-runflagfalseShow what would be generated
--forceflagfalseSkip cooldown check
--cooldowninteger24Min hours since last auto-run
--uploadflagfalseUpload result to Immich
--quietflagfalseMachine-friendly output

auto install

Set up OS scheduler (launchd/systemd/cron).

FlagTypeDefaultDescription
--hourinteger9Hour to run (0-23)
--minuteinteger0Minute to run (0-59)
--cooldowninteger24Cooldown hours between runs
--uninstallflagfalseRemove installed scheduler
--showflagfalsePrint config without installing

auto history

Show recent auto-generated memories.

FlagTypeDefaultDescription
--limitinteger10Max entries to show

auto test-notification

Send a test notification through configured Apprise URLs.

See auto CLI docs for detailed usage and detector documentation.

hardware

Show hardware acceleration information.

immich-memories hardware [OPTIONS]

music

Music and audio commands.

immich-memories music [OPTIONS]

music add

Add background music to a video with automatic ducking.

immich-memories music add [OPTIONS]
FlagTypeDefaultDescription
--music, -mpath-Music file (auto-select if not provided)
--moodtext-Override mood for music selection
--genre, -gtext-Override genre for music selection
--volume, -vfloat-6.0Music volume in dB
--fade-infloat2.0Fade in duration in seconds
--fade-outfloat3.0Fade out duration in seconds

Arguments:

  • video_path (path)
  • output_path (path)

music analyze

Analyze a video to determine its mood for music selection.

immich-memories music analyze [OPTIONS]
FlagTypeDefaultDescription
--ollama-urltext-Ollama API URL (default: from config)
--ollama-modeltext-Ollama vision model (default: from config)

Arguments:

  • video_path (path)

Search for music in local library.

immich-memories music search [OPTIONS]
FlagTypeDefaultDescription
--mood, -mtext-Mood (happy, calm, energetic, etc.)
--genre, -gtext-Genre (acoustic, electronic, cinematic, etc.)
--tempo, -tchoice-Tempo
--min-durationfloat60Minimum duration in seconds
--limit, -ninteger10Number of results

people

List all people in Immich.

immich-memories people [OPTIONS]

preflight

Run preflight checks to validate all provider connections.

immich-memories preflight [OPTIONS]
FlagTypeDefaultDescription
--verbose, -vbooleanfalseShow detailed output

runs

Browse and manage pipeline run history.

See runs CLI docs for detailed usage.

scheduler

Manage the background scheduler.

See scheduler CLI docs for detailed usage.

titles

Title screen generation and testing commands.

See titles CLI docs for detailed usage.

ui

Launch the interactive NiceGUI UI.

immich-memories ui [OPTIONS]
FlagTypeDefaultDescription
--port, -pinteger8080Port to run the UI on
--host, -htext0.0.0.0Host to bind to
--reloadbooleanfalseEnable hot reload (for development only)

years

List years with video content.

immich-memories years [OPTIONS]