featkpr
Private demo

What each of Immich's goals does, in plain words.

A mechanic is the kind of action behind something an app lets you do, named the same way in every app. Here every Immich goal sits under its mechanic, and each row opens the goals behind it. See what that means on one book.

Immich's Bin screen: Empty bin and Restore all at the top right, lettered A and B
/trash · Immich, as featkpr's crawl of 2 Oct 2026, signed in as admin (screen ecbf89db)

Immich's Bin screen, and what its buttons do

  1. Empty bin Deletes it for good

    LikelyEmpty trash

  2. Restore all Brings it back

    From the codeRestore trash

featkpr reads Immich's “Delete assets” goal as “Moves it to the bin” (Likely): this screen's “Restore all” is another goal that brings the same assets back. “Empty bin” is still “Deletes it for good”, the bin's own permanent delete. A run will settle how sure.

Seven families, the same rows for every app #

A bar per mechanic Immich uses, counted in goals. A family Immich has nothing in still gets its row, so the gaps show.

Nothing in Immich: Amounts

Bring in or send 5 goals · 3 of 4 mechanics #

not used here: Notes down what happened

Amounts none in Immich #

not used here: Sets an amount aside · Moves an amount from one to another

Every mechanic on every thing #

One row is one mechanic on one thing in Immich. Type a word, or pick a family or how sure; each row opens its goals.

  • 2

    Deletes it for good on asset metadata #

    A guess2
    its 2 goals
    • Delete asset metadataA guess
    • Delete asset metadata by keyA guess
  • 1

    Deletes it for good on activity #

    A guess1
    its goal
    • Delete an activityA guess
  • 1

    Deletes it for good on album #

    A guess1
    its goal
    • Delete an albumA guess
  • 1

    Deletes it for good on asset edits #

    A guess1
    its goal
    • Remove edits from an existing assetA guess
  • 1

    Deletes it for good on asset file #

    A guess1
    its goal
    • Delete an asset fileA guess
  • 1

    Deletes it for good on asset from stack #

    A guess1
    its goal
    • Remove an asset from a stackA guess
  • 1

    Deletes it for good on database backup #

    A guess1
    its goal
    • Delete database backupA guess
  • 1

    Deletes it for good on duplicates #

    A guess1
    its goal
    • Delete duplicatesA guess
  • 1

    Deletes it for good on face #

    A guess1
    its goal
    • Delete a faceA guess
  • 1

    Deletes it for good on integrity report #

    A guess1
    its goal
    • Delete integrity report itemA guess
  • 1

    Deletes it for good on library #

    A guess1
    its goal
    • Delete a libraryA guess
  • 1

    Deletes it for good on memory #

    A guess1
    its goal
    • Delete a memoryA guess
  • 1

    Deletes it for good on notification #

    A guess1
    its goal
    • Delete a notificationA guess
  • 1

    Deletes it for good on notifications #

    A guess1
    its goal
    • Delete notificationsA guess
  • 1

    Deletes it for good on partner #

    A guess1
    its goal
    • Remove a partnerA guess
  • 1

    Deletes it for good on people #

    A guess1
    its goal
    • Delete peopleA guess
  • 1

    Deletes it for good on person #

    A guess1
    its goal
    • Delete personA guess
  • 1

    Deletes it for good on profile image #

    A guess1
    its goal
    • Delete user profile imageA guess
  • 1

    Deletes it for good on queue #

    Likely1
    its goal
    • Empty a queueLikely
  • 1

    Deletes it for good on session #

    A guess1
    its goal
    • Delete a sessionA guess
  • 1

    Deletes it for good on sessions #

    A guess1
    its goal
    • Delete all sessionsA guess
  • 1
    A guess1
    its goal
    • Delete a shared linkA guess
  • 1

    Deletes it for good on stack #

    A guess1
    its goal
    • Delete a stackA guess
  • 1

    Deletes it for good on stacks #

    A guess1
    its goal
    • Delete stacksA guess
  • 1

    Deletes it for good on sync ack #

    A guess1
    its goal
    • Delete acknowledgementsA guess
  • 1

    Deletes it for good on tag #

    A guess1
    its goal
    • Delete a tagA guess
  • 1

    Deletes it for good on trash #

    Likely1
    its goal
    • Empty trashLikely
  • 1

    Deletes it for good on user from album #

    A guess1
    its goal
    • Remove user from albumA guess
  • 1

    Deletes it for good on user license #

    A guess1
    its goal
    • Delete user product keyA guess
  • 1

    Deletes it for good on workflow #

    A guess1
    its goal
    • Delete a workflowA guess
  • 1

    Makes a new one on album #

    Likely1
    its goal
    • Create an albumLikely
  • 1

    Makes a new one on cluster group request #

    Likely1
    its goal
    • Create a cluster group requestLikely
  • 1

    Makes a new one on duplicates resolve #

    Likely1
    its goal
    • Create a duplicates resolveLikely
  • 1

    Makes a new one on face #

    Likely1
    its goal
    • Create a faceLikely
  • 1

    Makes a new one on job #

    Likely1
    its goal
    • Create a manual jobLikely
  • 1

    Makes a new one on library #

    Likely1
    its goal
    • Create a libraryLikely
  • 1

    Makes a new one on memory #

    Likely1
    its goal
    • Create a memoryLikely
  • 1

    Makes a new one on notification #

    Likely1
    its goal
    • Create a notificationLikely
  • 1

    Makes a new one on partner #

    Likely1
    its goal
    • Create a partnerLikely
  • 1

    Makes a new one on partner deprecated #

    Likely1
    its goal
    • Create a partner deprecatedLikely
  • 1

    Makes a new one on person #

    Likely1
    its goal
    • Create a personLikely
  • 1

    Makes a new one on predict #

    Likely1
    its goal
    • Create a predictLikely
  • 1

    Makes a new one on profile image #

    Likely1
    its goal
    • Create user profile imageLikely
  • 1

    Makes a new one on session #

    Likely1
    its goal
    • Create a sessionLikely
  • 1
    Likely1
    its goal
    • Create a shared linkLikely
  • 1

    Makes a new one on stack #

    Likely1
    its goal
    • Create a stackLikely
  • 1

    Makes a new one on tag #

    Likely1
    its goal
    • Create a tagLikely
  • 1

    Makes a new one on user admin #

    Likely1
    its goal
    • Create a userLikely
  • 1

    Makes a new one on workflow #

    Likely1
    its goal
    • Create a workflowLikely
  • 1

    Brings it back on assets #

    Likely1
    its goal
    • Restore assetsLikely
  • 1

    Brings it back on database restore flow #

    From the code1
    its goal
    • Start database backup restore flowFrom the code
  • 1

    Brings it back on trash #

    From the code1
    its goal
    • Restore trashFrom the code
  • 1

    Brings it back on user admin #

    From the code1
    its goal
    • Restore a deleted userFrom the code
  • 1

    Moves it to the bin on assets #

    Likely1
    its goal
    • Delete assetsLikely
  • 1

    Moves it to the bin on user admin #

    Likely1
    its goal
    • Delete a userLikely
  • 1

    Puts it away, still readable on archive #

    Likely1
    its goal
    • Download asset archiveLikely
  • 1

    Makes a copy of it on asset #

    From the code1
    its goal
    • Copy assetFrom the code
  • 2

    Changes it on asset #

    Likely1A guess1
    its 2 goals
    • Apply edits to an existing assetA guess
    • Update an assetLikely
  • 2

    Changes it on asset metadata #

    A guess2
    its 2 goals
    • Update asset metadataA guess
    • Upsert asset metadataA guess
  • 1

    Changes it on admin config #

    A guess1
    its goal
    • Update the system configurationA guess
  • 1

    Changes it on album info #

    Likely1
    its goal
    • Update an albumLikely
  • 1

    Changes it on album user #

    Likely1
    its goal
    • Update user roleLikely
  • 1

    Changes it on api key #

    Likely1
    its goal
    • Update an API keyLikely
  • 1

    Changes it on assets #

    A guess1
    its goal
    • Update assetsA guess
  • 1

    Changes it on config #

    A guess1
    its goal
    • Update system configurationA guess
  • 1

    Changes it on library #

    Likely1
    its goal
    • Update a libraryLikely
  • 1

    Changes it on maintenance mode #

    A guess1
    its goal
    • Set maintenance modeA guess
  • 1

    Changes it on memory #

    Likely1
    its goal
    • Update a memoryLikely
  • 1

    Changes it on my preferences #

    A guess1
    its goal
    • Update my preferencesA guess
  • 1

    Changes it on my user #

    A guess1
    its goal
    • Update current userA guess
  • 1

    Changes it on notification #

    Likely1
    its goal
    • Update a notificationLikely
  • 1

    Changes it on notifications #

    A guess1
    its goal
    • Update notificationsA guess
  • 1

    Changes it on partner #

    Likely1
    its goal
    • Update a partnerLikely
  • 1

    Changes it on password #

    A guess1
    its goal
    • Change passwordA guess
  • 1

    Changes it on people #

    A guess1
    its goal
    • Update peopleA guess
  • 1

    Changes it on person #

    Likely1
    its goal
    • Update personLikely
  • 1

    Changes it on session #

    Likely1
    its goal
    • Update a sessionLikely
  • 1
    Likely1
    its goal
    • Update a shared linkLikely
  • 1

    Changes it on stack #

    Likely1
    its goal
    • Update a stackLikely
  • 1

    Changes it on tag #

    Likely1
    its goal
    • Update a tagLikely
  • 1

    Changes it on tags #

    A guess1
    its goal
    • Upsert tagsA guess
  • 1

    Changes it on user admin #

    Likely1
    its goal
    • Update a userLikely
  • 1

    Changes it on user license #

    A guess1
    its goal
    • Set user product keyA guess
  • 1

    Changes it on user preferences admin #

    A guess1
    its goal
    • Update user preferencesA guess
  • 1

    Changes it on workflow #

    Likely1
    its goal
    • Update a workflowLikely
  • 2

    Turns it on or off on user onboarding #

    From the code2
    its 2 goals
    • Delete user onboardingFrom the code
    • Update user onboardingFrom the code
  • 1

    Turns it on or off on admin onboarding #

    From the code1
    its goal
    • Update admin onboardingFrom the code
  • 1

    Turns it on or off on auth session #

    From the code1
    its goal
    • Lock auth sessionFrom the code
  • 1

    Turns it on or off on queue #

    From the code1
    its goal
    • Update a queueFrom the code
  • 1

    Turns it on or off on session #

    From the code1
    its goal
    • Lock a sessionFrom the code
  • 2

    Moves it to its next step on cluster group request #

    From the code1A guess1
    its 2 goals
    • Accept a cluster group requestFrom the code
    • Decline a cluster group requestA guess
  • 1

    Moves it to its next step on duplicate #

    A guess1
    its goal
    • Dismiss a duplicate groupA guess
  • 1

    Moves it to its next step on o auth #

    Likely1
    its goal
    • Finish OAuthLikely
  • 1

    Moves it to its next step on sync ack #

    A guess1
    its goal
    • Acknowledge changesA guess
  • 1

    Joins or splits them on people #

    From the code1
    its goal
    • Merge the peopleFrom the code
  • 1

    Joins or splits them on person legacy #

    From the code1
    its goal
    • Merge the person legacyFrom the code
  • 2
    From the code2
    its 2 goals
    • Tag the assetsFrom the code
    • Tag the assets (bulk)From the code
  • 1
    From the code1
    its goal
    • Add assets to an albumFrom the code
  • 1
    From the code1
    its goal
    • Add assets to albumsFrom the code
  • 1
    From the code1
    its goal
    • Add assets to a memoryFrom the code
  • 1
    Likely1
    its goal
    • Link OAuth accountLikely
  • 1
    From the code1
    its goal
    • Add assets to a shared linkFrom the code
  • 1
    From the code1
    its goal
    • Remove assets from an albumFrom the code
  • 1
    From the code1
    its goal
    • Untag assetsFrom the code
  • 1
    Likely1
    its goal
    • Leave a cluster groupLikely
  • 1
    From the code1
    its goal
    • Remove assets from a memoryFrom the code
  • 1
    Likely1
    its goal
    • Unlink OAuth accountLikely
  • 1
    Likely1
    its goal
    • Unlink all OAuth accountsLikely
  • 1
    From the code1
    its goal
    • Remove assets from a shared linkFrom the code
  • 1

    Gives it to someone on faces #

    Likely1
    its goal
    • Reassign facesLikely
  • 1

    Gives it to someone on faces by id #

    Likely1
    its goal
    • Reassign a face to another personLikely
  • 1

    Lets someone else see it on users to album #

    Likely1
    its goal
    • Share album with usersLikely
  • 1

    Finds the matching ones on asset statistics #

    From the code1
    its goal
    • Search asset statisticsFrom the code
  • 1

    Finds the matching ones on assets #

    From the code1
    its goal
    • Search assets by metadataFrom the code
  • 1

    Finds the matching ones on large assets #

    From the code1
    its goal
    • Search large assetsFrom the code
  • 1

    Finds the matching ones on random #

    From the code1
    its goal
    • Search random assetsFrom the code
  • 1

    Finds the matching ones on smart #

    From the code1
    its goal
    • Search the smartFrom the code
  • 2

    Checks that it is right on library #

    From the code1Likely1
    its 2 goals
    • Scan a libraryLikely
    • Validate library settingsFrom the code
  • 1

    Checks that it is right on access token #

    Likely1
    its goal
    • Validate access tokenLikely
  • 1

    Checks that it is right on upload #

    Likely1
    its goal
    • Check bulk uploadLikely
  • 1

    Shows it on download info #

    Likely1
    its goal
    • Retrieve download informationLikely
  • 1

    Shows it on notification template admin #

    Likely1
    its goal
    • Get the notification template adminLikely
  • 1

    Shows it on sync stream #

    Likely1
    its goal
    • Get the sync streamLikely
  • 1

    Builds a result from what is there on people #

    Likely1
    its goal
    • Regenerate people of users in cluster groupLikely
  • 1

    Brings rows in from a file on asset #

    A guess1
    its goal
    • Upload assetA guess
  • 1

    Brings rows in from a file on database backup #

    A guess1
    its goal
    • Upload database backupA guess
  • 1

    Starts a job on asset jobs #

    A guess1
    its goal
    • Run an asset jobA guess
  • 1

    Starts a job on queue command legacy #

    A guess1
    its goal
    • Run jobsA guess
  • 1

    Sends a message on test email admin #

    From the code1
    its goal
    • Send test emailFrom the code
  • 3

    Sets a password or key on api key #

    From the code1Likely2
    its 3 goals
    • Create an API keyLikely
    • Delete an API keyLikely
    • Rotate an API keyFrom the code
  • 2

    Sets a password or key on pin code #

    From the code2
    its 2 goals
    • Change pin codeFrom the code
    • Reset pin codeFrom the code
  • 1

    Sets a password or key on auth pin code #

    Likely1
    its goal
    • Create an auth pin codeLikely
  • 1

    Signs you in on admin maintenance #

    From the code1
    its goal
    • Login the admin maintenanceFrom the code
  • 1

    Signs you in on auth #

    From the code1
    its goal
    • LoginFrom the code
  • 1

    Signs you in on auth session #

    Likely1
    its goal
    • Unlock auth sessionLikely
  • 1

    Signs you in on o auth #

    Likely1
    its goal
    • Start OAuthLikely
  • 1
    From the code1
    its goal
    • Login the shared linkFrom the code
  • 1

    Signs you out on auth #

    From the code1
    its goal
    • LogoutFrom the code
  • 1

    Signs you out on o auth #

    Likely1
    its goal
    • Logout the o authLikely
  • 1

    Signs you out on video stream #

    From the code1
    its goal
    • Delete the video streamFrom the code
  • 2

    Changes a setting on server license #

    From the code1Likely1
    its 2 goals
    • Delete server product keyLikely
    • Set server product keyFrom the code
  • 1

    Adds a comment or reaction on activity #

    Likely1
    its goal
    • Create an activityLikely
  • 1

    Makes a new account on auth admin sign up #

    Likely1
    its goal
    • Register adminLikely

What works today, and what does not yet #

Works today

Every goal namedeach of Immich's goals has a mechanic, from production's records
How sure, per goalfrom the code, likely or a guess, as the app shows it

Not yet

Checked by a personno owner has confirmed or corrected one of Immich's yet
Tests chosen by mechanicbeing built: today a test is not picked from these

Your app, row by row like this #

On the call we open Immich's rows, then read your app the same way. Tim replies by hand.

Ask for a private demo

↑ ↓ to move, Enter to open, Esc to close