Skip to content

0.7.0

Choose a tag to compare

@github-actions github-actions released this 14 Aug 00:48
· 29 commits to master since this release

A picture in the question: screenshots, files and images from the vault.

Some questions are about something you can only point at — a screenshot of an error, a photo
of a page, a diagram sitting in a note. Until now the chat could only be told about them in
words.

Four ways in

  • From the clipboard. Take a screenshot, press Ctrl+V in the input field, ask. The
    detour through "save the file, find the file, attach the file" is gone entirely. A pasted
    image has no name of its own, so it is given one the way Obsidian names them: what it is,
    plus a timestamp.
  • Dragged into the panel. A file from the desktop, or a note from Obsidian's own file
    explorer — the panel takes both. While something is being dragged over it, it says what it
    will do with it.
  • The paperclip in the footer. The ordinary file dialog. It is a label with an input
    inside rather than a button, because a file dialog opened from code does not appear while
    no note is open in Obsidian — which is exactly when the chat gets opened.
  • Right-click on the paperclip — or the menu, which is the way to it on a phone:
    from the vault, any image in it, searchable by name and folder; and from this note,
    by the images embedded in the note you have open. That last one matters more than it
    sounds: a note goes to the model as text, and ![[diagram.png]] is a line of text to it,
    not a picture.

Up to four pictures per question. Not a limit the provider imposes — the limit is the bill.

The bill is what shapes the rest

A picture is scaled down to 1200 px before it leaves. A phone photo at full size is megabytes
of base64 and a visible line on the bill, while what can be read on it is exactly the same.
PNG is kept when it weighs no more than half again over JPEG: what is usually attached is a
screenshot, and what has to stay legible on it is letters. Transparency gets white put under
it — in JPEG it would otherwise go black, and nothing is visible on black.

The weight of each picture is shown on its chip, because that is the price of the
question.

Pictures from earlier replies are not carried into a new request. Each one is paid for on
every question, and a conversation that began with a photo would otherwise haul it along to
the end. Only the most recent picture in the conversation goes; about the others the model is
told, in words, that there was one — without that the conversation reads as questions about
nothing.

A provider known to be blind to images says so before you send. DeepSeek takes no images
in any of its models, and the chip bar says it outright, with the button that fixes it right
there in the warning. For everyone else it cannot be known in advance — with the aggregators
it depends on the model chosen — so a refusal from the provider now comes with a plain-spoken
hint instead of a bare "the request was rejected".

Where the picture lives

With "Keep images brought into the chat" switched on, the picture lands in the vault's
attachment folder — the same one Obsidian itself uses when you paste into a note, wherever
you have pointed that setting. It goes there as the question is sent, never before: a
picture attached and then taken back leaves nothing behind at all.

With the setting off it lives until the next restart and never touches the disk.

A private chat writes nothing either way, and says so when a picture is attached rather
than leaving you to find out later.

Pictures survive the panel being closed, sit above the question in the feed, and are opened
by a click when they are files in the vault. Editing a question brings its pictures back to
the chip bar with it; asking again sends the same ones. Saving the conversation into a note
writes a vault picture out as a link — and one that only lived in memory as a note saying so,
rather than as a link to a file that does not exist.

Things that were quietly going wrong

Found while going over the new code, and over the rest of the plugin after it:

  • Retry after an error sent the question without its pictures — and, if new ones had been
    attached while the error sat on screen, with somebody else's instead. The same fault the
    attached fragment had in 0.6.0, in the same place.
  • The "does not take images" warning did not go away when the model was switched — not
    even by the button inside the warning itself, which exists for nothing else. Switching to
    a blind model went unannounced in the same way.
  • Pictures stayed in memory for the whole session, including after the conversation they
    belonged to had been cleared, where nothing could reach them any more. Ones that are in the
    vault are now released as the conversation goes; the disk brings them back.
  • A dropped file that was not an image did nothing at all — no picture, no message, which
    reads as a broken plugin rather than as "not that kind of file".
  • A failed save went unmentioned. The setting promised the vault; if it did not work out,
    you would have found out after a restart, when the question could no longer be repeated.
  • Finishing a cut-off answer said nothing about the picture the question had been about,
    so the model carried on writing while pointing at nothing.
  • Editing a question overwrote pictures already on the chip bar without a word.