This is the same help that ships inside the app, under Help → ArtFetcher Help.
This documentation covers searching the provider collections, following a search as it runs, choosing what to keep and moving it into your library, and where downloaded images are stored and what they are named. It also covers the application settings, the licences the images carry and what you may do with them, and what to do when a search goes wrong.
ArtFetcher finds high-resolution images of public-domain paintings. You give it an artist and a title; it asks museum and cultural-heritage collections around the world whether they hold that painting, downloads the best versions it finds, and lets you keep the ones you want in your own library.
Nothing else is needed to use it. There is no account to create, no credit card details to enter, no in-app purchase.
Open the Search window with File → Search.
There is also a shortcut that works from any macOS application (set to ⇧⌘8 by default) so you can go from whatever you are reading straight to a search. Settings → General is where you can pick a different key combination.
The Search window contains an upper search pane and a lower status pane. The search pane contains text fields for the artist and the painting. The status pane contains a number of rows that summarise the status of a search.
In the search pane, fill in the Artist name and the Painting title, then press Search for Painting. The optional Painting year field is worth filling in when an artist painted the same subject more than once, or when two painters share a name, because ArtFetcher uses the year to tell those apart.
Give the artist's full name as a museum would list it - Pierre-Auguste Renoir rather than Renoir - and the title in its most common English form.
The Clear button empties the search fields and deletes any files downloaded by the last search.
The first row in the status pane is the status line. ArtFetcher displays various status messages in this row. For example, when you launch the application the images in your library are scanned and the number found is displayed here. ArtFetcher will also update the status line while a search is in progress.
The second row in the status pane is the artist row. Before any collection is queried, ArtFetcher resolves the name you typed to a specific painter on Wikidata, so that a search for Bruegel asks the collections about the person rather than the word. The row shows the full name of the artist it finds, followed by the birthdate and the year of their death in brackets. Then in square brackets is the unique number that identifies the artist in Wikidata. It is called the QID, the Q-ID or the Q number. Next are two clickable icons, the first opens the artist's page in Wikidata and the second opens their Wikipedia page.
The remaining rows are called the provider rows. There is one for each provider and they report the current status of that provider's search: waiting, searching, downloading, or the answer it gave.
Click any row to read the detailed log for that provider - every request and response, every decision, and the reason behind whatever the row is telling you.
When a request to a provider fails, the provider row shows the reason why.
Provider responses, and what they mean:
If the name you typed matches more than one painter, ArtFetcher stops and asks Which one is the painter?, listing the candidates with their dates.
Before it downloads anything, ArtFetcher looks through your library folders for a painting by the same artist and same title. If it finds something, it stops and shows you.
A confident match is announced as already in your library; a weaker one as a possible match. Clicking Search Online goes ahead anyway - worth doing when what you own is a small copy and you want a larger one.
Thumbnails of every downloaded image are displayed in the Search Results window (Window → Search Results, ⌘2).
Most collections return their single best match. Wikimedia Commons is the exception: it often holds several scans of one painting, so ArtFetcher downloads up to three of the largest ones and lets you choose which one to keep.
The top section of the window is called the gallery. Below the gallery is the action bar. And under that, the lower section of the window is called the info panel.
Any matches already in your library are marked In Library. Images that have been downloaded to your computer are marked Downloaded. Images that are too big to automatically download are marked Large file. Instead, a preview is downloaded so you can see if the painting is what you want. If it is, click the download badge.
When you click on a tile, the buttons in the action bar become active. These buttons are:
⌘delete).
Deleting a downloaded file is undoable from Edit → Undo; deleting
a painting that was already in your library is confirmed first.In the top right of the gallery are the zoom controls.
The − and + buttons resize
the gallery tiles, not the downloaded images. There are keyboard shortcuts: - to shrink,
+ or = to expand, with or without ⌘. Each window
remembers its own zoom.
Below the action bar, in the info panel, the selected tile's own details are listed: pixel dimensions, file size, format, and then every block of metadata the file carries - the licence, the collection it came from, and the URL for that painting. URLs are clickable links.
Downloads are temporary. They go to the folder you chose during setup, shown in Settings → Downloads, and stay there until you move them into your library or delete them. ArtFetcher never picks that folder for you: until one is set, searching for a painting says so instead of starting.
Each file is named Artist - Title (Year) [Provider].extension, so
several collections' versions of one painting sit side by side without colliding.
The [Provider] tag is deleted when the file is moved to
your library.
Museum scans can be very large. Hold downloads larger than keeps anything over the size you set from downloading by itself: the search carries on, and the file appears in the results as a small preview with its size on a badge - click the badge when you decide you want the full image. A collection that offers no preview asks with a Download/Cancel prompt instead.
Tell ArtFetcher where you already keep art in Settings → Library.
These folders are listed in the Search Results window's move menu.
Choose one folder at a time, or choose a parent folder to add all subfolders in one go (click the Remove button to remove a subfolder you don't want listed.) The order of folders in this list is reflected in that menu - drag the rows to put your usual destination at the top.
ArtFetcher checks these folders before downloading any images. It reads these folders when it launches and after you add or remove images.
ArtFetcher is more than happy with a single folder for all your artwork. However, if you use these images as wallpaper for your displays, having separate folders makes it easier to pick and choose what painting to display and where. See System Settings → Wallpaper.
For example, if you have a laptop and an external display rotated 90 degrees, you may choose landscape artwork for your laptop and portraits for your display.
Alternatively, you may have separate folders for period or style, so Dutch interiors don't sit among the Impressionists; or by artist, when you collect a few painters deeply. Whatever you choose, the folder names are what the move menu shows, so name them for the way you'll read them there.
Settings → Providers lists every provider's collection, what it holds, and the licence terms it publishes under. A green tick means it is switched on and will be queried.
We are always looking for collections to add. To qualify, a museum needs a public API that ArtFetcher can search, and that API has to say what licence each work is published under, so only freely reusable images are offered to you. Plenty of galleries and museums are online; few meet both conditions.
Most of them are ready the moment you install ArtFetcher. The Smithsonian is one you add yourself, and it is worth adding: its Open Access collection runs to millions of works, and the API that serves them asks for a free key of your own. Its page in this tab links to the form that issues the key. Paste the key into API key and press Test; once the Smithsonian accepts it, the collection joins your searches and takes its place among the provider rows. Remove takes it out again.
You can also switch a collection off deliberately - with Enable this provider - if it is slow, or if you simply don't want its results. A collection switched off here is removed from the status pane.
View → Suggested Artworks is a good place to start when you don't have a particular painting in mind. We have collected a handful of works from each of the providers; clicking one fills in the Search window's fields and starts a search.
Every file ArtFetcher saves is public domain or CC0 (Creative Commons Zero). It will not download an image whose licence it has not checked. Most collections are asked for public-domain or CC0 records and return nothing else; Wikimedia Commons and Wikidata report a licence per file, and each one is read before the download starts. Anything carrying an obligation - CC BY, CC BY-SA - is passed over, as is anything whose licence cannot be read at all.
That is a deliberate restriction rather than an oversight. A share-alike licence travels into whatever you make from the image, and a picture you set as a wallpaper today may end up somewhere else a year later. Restricting to public domain and CC0 means you can use the image however you like, with no strings attached. And in most cases, the very largest and best quality scans - the ones ArtFetcher exists to find - are public domain almost without exception.
Everything ArtFetcher knows about a work travels with the file. Each JPEG, TIFF and PNG is stamped with the title, the artist, the collection it came from, a link to that collection's page for the work, and the licence. Those values go in the standard IPTC and TIFF fields, in a PNG's own text chunks, and as XMP, so Preview.app, Get Info and photo software can all show them.
This is not legal advice. ArtFetcher reports what a collection says about a work; it cannot tell you what is lawful where you are. Copyright terms differ by country, a photograph of a painting may be treated differently from the painting, and some institutions attach terms of their own on top of the licence. If you intend to publish, sell or build on an image, read the source collection's terms first.
The Settings → General tab is where you control how the app looks and works.
Appearance follows the system, or sets the application to light or dark mode.
Search holds the system-wide shortcut that opens the Search window from whatever app you happen to be in.
Startup: opening at login is there for the search shortcut, which will not work unless the ArtFetcher is running. Hide the app after a login launch starts it out of the way; opening ArtFetcher yourself always shows it. Show in menu bar puts a paint palette in the menu bar and switches the application into accessory mode, meaning ⌘Q only closes windows, it does not quit the application. Hide the Dock icon takes ArtFetcher out of the Dock and out of the ⌘-Tab switcher, leaving the menu bar item as the way back to the application. It can only be set while the menu bar item is showing, since an app with neither would have nothing left to click.
Logs are kept by ArtFetcher, with each day saved in a separate file. You can specify how many days worth of logs you wish to keep. And if you come across a bug, you can Turn on debug logging for next 5 minutes then send us the log. This helps us find and squish those bugs.
The introduction shown on first launch is always available from File → Run Onboarding. It walks through the same settings as the Settings window, and nothing it collects is saved until you press Finish. Just close the window if you want to stop.
ArtFetcher writes one log file a day, named for the date, holding everything that happened that day. The quickest way to see the log messages is inside the app - click the provider row in the status pane when something goes wrong. The complete day's log entries are under the Help menu: Open Today's Log shows it in a window that keeps up as lines arrive, Open Today's Log in TextEdit hands it to TextEdit, and Open Log Folder in Finder - or in Terminal.app - shows every day being kept.
The searches to all the providers run in parallel, so the log file shows all those messages interleaved.
Every line begins with the date, the time, and a four-letter tag naming what
wrote it - ANCL for Claude, WKMC for Wikimedia
Commons, STAT for Statens Museum for Kunst, and so on - so
searching the file for one tag pulls out that one thread.
Logs are kept for a certain number of days and then deleted at the next launch. Settings → General sets how many days to keep.
You can also Turn on debug logging for next 5 minutes,
which adds a great deal more to the day's file: the collections' raw replies,
and the score of every candidate they offered. Switch it on, reproduce whatever
went wrong, then read the log - the extra lines are marked
debug. It unticks itself when the five minutes are up, so it cannot
be left on by accident.
Identifying a painting from a picture of it - what the feature does, what it costs, and what leaves your Mac.
ArtFetcher needs an artist's name and a title, something you already know. AI Mode is for when you don't: you might have a photograph, a screenshot or a scrolled-past image, and no idea who painted it.
Give ArtFetcher the picture and it uploads it to an AI service of your choosing - Anthropic, OpenAI or Google. These AI services use Large Language Models (LLMs) to determine the name of the artist and the painting's title. From there the ordinary search runs: the collections are asked for a high-resolution version, and the results arrive in the same window as always.
LLMs can make mistakes, so if a search fails you should check the results they returned.
Three things are worth being clear about before you switch on AI Mode.
The rest of the app works without it, and it is off until you turn it on.
Open ArtFetcher → AI Mode, read the summary, and click the switch. The same switch lives in Settings → AI Mode.
Turning on AI Mode changes the app in three visible ways:
Turning off AI Mode reverses all of that.
Settings → LLMs lists the three supported services and a fourth option, None. Selecting a row shows what that service is; the radio button in the pane is what actually turns it on.
Each service's pane links to the page where that company issues API keys and to its API terms, which you are asked to acknowledge once before the key is used. Paste the key into the field then pick a model and press Test to confirm the key works. The refresh button re-reads the list of models the service currently offers.
Your key is stored on this Mac, in ArtFetcher's own settings file inside its sandbox container. It is sent to that company and to nobody else, and never to the developer.
Choosing None keeps AI Mode's windows and the screenshot shortcut but does no identification: you type the artist and title yourself when the picture is in front of you. It is a reasonable setting if you want the screenshot workflow without the uploads.
There are three ways to do this, and they end in the same place: your picture appears in the gallery of the AI Search window (File → AI Search, or Window → AI Search, ⌘3).
Settings → AI Preferences is where you can change this screenshot shortcut. It is set to ⇧⌘9 by default.
Press the keyboard shortcut and the screen dims so you can drag a rectangle around the painting, on any display. ArtFetcher moves to the background while you do this.
The capture is written as a PNG into the folder named on the AI Preferences tab, and a thumbnail of it appears in the gallery. Two options change what happens next:
The screenshot shortcut is system-wide, which has two consequences.
Drop an image file - or an image dragged straight out of a web page - onto the AI Search window's gallery. Dropping an image onto ArtFetcher's Dock icon does the same thing.
ArtFetcher can also pick up pictures on its own.
Settings → Watched Folders lists folders it keeps
an eye on; anything appearing in one of them whose filename starts with
Screenshot is added to the gallery, and ArtFetcher brings the gallery to
the front automatically. That is the naming macOS itself
uses, so pointing ArtFetcher at wherever your Mac saves screenshots means the system
shortcut feeds ArtFetcher too.
A watched folder does not automatically upload. The image stays on your Mac until you ask for it to be identified.
Select a picture in the gallery and press Search for Painting. The Identifier row in the status pane reports what the AI service made of the image. When the LLM determines an artist and title, ArtFetcher begins a search. When the search finishes, successfully or otherwise, the status pane in the AI Search window shows you what happened. If it succeeded, the AI Search Results window will appear, and its gallery will contain thumbnails of all the downloaded images.
The gallery's other buttons - Preview, Edit,
Move and Delete - are for looking
after the pictures themselves (not the downloads). You can crop a screenshot before identifying it, file one
away, or delete it. Its
− and + buttons size the thumbnails, and
the keyboard does the same: - to shrink, + or
= to grow, with or without ⌘.
When the gallery in the AI Search window is empty it shows something of your choosing, set at the bottom of the AI Preferences tab: a quote from an artist, the app's logo, nothing at all, or a random painting from your own library.
An AI service's LLM can misname a painting, return a partial answer, or decline altogether - and it can be confidently wrong. If the LLM gets it wrong, you can give it a helping hand. In the Identifier row after the painting title are three clickable glyphs:
If nothing is identified at all, the usual causes are a picture that is mostly frame, wall or reflection, a heavy crop, or a painting obscure enough that the model has never seen it. Recapturing the painting alone, tightly, is the fix that works most often.
With AI Mode off, ArtFetcher only sends the artist's name, painting title and year to the providers' collections. It doesn't send anything else anywhere else.
With AI Mode on, one thing changes: when you ask for a picture to be identified, that picture is uploaded to the service you selected, as well as your API key and a prompt to the LLM asking it to identify the painting. That is the only upload, and it happens only when you start an identification.
An upload cannot be taken back. What the company keeps, and for how long, is governed by their terms, not by ArtFetcher - the LLMs tab links to them for each service. ArtFetcher itself has no account, no analytics and no telemetry, and sends nothing to its developer. The privacy policy sets all of this out in full.
ArtFetcher charges nothing for AI Mode and takes no part in the billing. Each identification is one request to your own account with Anthropic, OpenAI or Google, priced by them, and it is a single image and a short answer - small, but not free. Set spending limits in that account if you want a ceiling; ArtFetcher cannot see or enforce one.
Identifying the same picture twice does not cost twice. An LLM's answer is remembered against the file itself, so clicking Search for Painting again about a picture that has not changed costs nothing because the LLM is not asked again. Editing the picture, or switching to a different AI service, discards what was remembered and so another API call will be made.
Switch it off in ArtFetcher → AI Mode or Settings → AI Mode. The AI windows close, the three extra Settings tabs disappear, the screenshot shortcut stops listening, and no image can be uploaded again until you turn it back on. Your API keys stay where they are, so if you switch on AI Mode again you won't have to copy/paste them back.