October's work focused on helping you—and the agents you use—make better sense of your photo library. Search results are better, agents have a new signal for choosing photos, and videos can now be found from their visual information. I also continued improving the everyday work of organizing and uploading your collection.
Better search, with clearer matches
Search ranking for complex queries improved dramatically in October. Gumnut is now much better at connecting your words with photo descriptions and library context, including people and album names, to bring the most relevant photos to the top. Try a search that incorporates names, places, dates, and events to see this in action.

Searching for “flowers in washington last year” with the strongest matches shown first — combining what, where and when
In the web app, results are now separated into Best matches and Possible matches, so you can tell when you're moving beyond the strongest results. Possible matches may be unrelated, and if there are no best matches, the app says so. You can combine your words with People, Date, Album, Favorites, and media-type filters to narrow the collection further.
For the technically curious, Gumnut runs sparse and dense retrieval in parallel: sparse search matches words in descriptions and metadata, while dense search uses embeddings to find photos that fit the visual meaning of your query. It combines those ranked lists using reciprocal rank fusion, then uses TypeSafe's Jev to rerank the leading candidates with context from descriptions, people, album names, and other metadata. This month's work improved how those stages work together, including which context reaches the reranker and how results are judged and ordered. I plan to write a deeper dive into this search pipeline and what I've learned building it in a future post.
A photo quality signal for agents

Finding photos of the right subject is one part of choosing a good set. An agent also needs help deciding which of several similar photos to use.
Gumnut now provides a photographic quality score through the API and MCP. It considers things like focus, exposure, noise, and composition, giving an agent another signal when you ask it to select photos for an album or a story.
The score measures photographic quality. Your favorites and the people and moments that matter to you still provide different, essential context. A blurry photo can be the one you most want to keep. An agent combines the two: a slightly soft photo of your daughter's first steps beats a sharp photo of a random parking lot, and the agent knows that because it has both signals.
I wrote more about how these signals work together in What it means to give agents photo intelligence.
Finding videos by what's in the frame

Videos are also gaining visual context. Gumnut can use a video's stored display frame to generate a description, index its visible content for search, and detect eligible faces.
That means a search for “videos at the beach” can use what's visible in that frame, alongside the video's available metadata. Face analysis follows the library owner's face-detection settings and regional restrictions.

Photos now have a larger, 2880-pixel display option, helping them look sharper on large and high-density screens. The browser editor also works with more formats. You can now crop, rotate, and mirror TIFF, BMP, and AVIF photos. Your original file stays available, while the edit uses that display version.
More control over faces and people
Correcting a mistaken face match should help the library stay organized.
Gumnut now remembers when you remove a face from a named person or reassign it to someone else. Automatic matching respects that correction for that face, helping prevent the same mistaken assignment from returning. You can still explicitly assign the face back if you change your mind.
This applies to the face you've corrected; it doesn't automatically label every other appearance of that person. Your corrections remain useful alongside automatic grouping and the ability to name, merge, and edit people.
You also have more control over automatic face detection. Settings now lets you choose whether Gumnut finds faces in new photos, with clearer explanations when face detection isn't available. Either way, you can still tag people by hand.
You can now hide a person from their page or hide several people at once from the People page. Hidden people stay out of ordinary People listings and photo information, and a Show hidden switch lets you find them again. If you type the name of someone who's hidden while naming or assigning a face, Gumnut explains that they already exist and offers to show them.
Move photos between libraries

You can now move photos and videos between your libraries. For example, you can move photos from a library you own into a shared family library where you're an Owner or Collaborator. Select the photos in the web app and choose Move to library.
The move keeps the files, saved edits, and descriptions together. Albums, person assignments, and stacks belong to the source library, so those associations are cleared during the move.
The libraries guide explains the permissions and details before you move a collection.
Smoother everyday use
Finding an album is easier when you have a large collection. The Albums page now offers a Filter by name field for larger collections, searching across all your albums, including those you haven't scrolled to yet.
There are smaller improvements throughout the web app, too. You can open a completed upload from its thumbnail and step through the uploaded batch in the viewer. Uploads handle expired authentication tokens more reliably, and large downloads can save directly to disk in supported browsers.
Settings received another round of polish, including clearer sections for your account, storage, AI connections, API keys, and Immich.

The updated Settings page brings photo controls, storage, AI connections, and Immich setup together.
I also added a guide to importing from Google Photos or iCloud. It walks through exporting your files, uploading them, and checking dates and locations. The web uploader reads embedded metadata; it doesn't apply Google Takeout JSON or Apple XMP companion files, or recreate albums from folder names. The guide explains those limits and points to an advanced import route using immich-go.
Lots more
For the full list, take a look at the October changelog or the detailed updates.
And of course, I’d love your feedback. Drop me a message at https://gumnut.ai/contact or if you haven’t already, sign up for Gumnut and let me know what you think!


