Well, if there’d be a way to have the browser ask just once for the target directory would be very nice. But I could imagine, that the way an extension is interacting with the browser, won’t offer that much options for handling downloads.
But then again:
I didn’t take a look at the source code. But as a wild guess I’d think, after the markdown file processing, you gather the images, which need to be downloaded. Furthermore I’d wildly guess, that each find triggers a download. At least so it appears.
But maybe the browser API supports getting a list of sources to download. In that case, the markdown file and the image sources would need to find their way on this list, and then the browser would process the downloads in one go.
The only thing that might happen, and I notice that once in a while on web pages, if they trigger multiple downloads: You might get an info box informing you, that multiple files are going to be downloaded, and whether or not you’d like to allow this.
I do hope you don’t mind all this guess work of mine 
Oh, one more thing, because I just noticed it again:
I have my Chrome configured to always ask for the download directory. For me this is more usefull, than dealing with one cluttering default download directory after the fact. Chrome on its own remembers the last used directory. Your extension does not. So you always again have to navigate to your desired target directory. Always starting in the user’s default download directory.
This happens on Windows (10) and MacOS. The switch in your extension for always showing the “save as dialog” doesn’t seem to have any influence on that.
Cheers,
John