mesqueeb85 downloadsTranscribes your PDFs, images, and Canvas files into searchable Markdown notes using AI. You control which files get transcribed, with what prompt, and where the transcription is saved. Bring your own key.
AI Attachmate transcribes your PDFs, images, and Canvas files into searchable Markdown notes using AI. You control which files get transcribed, with what prompt, and where the transcription is saved — bring your own key.
Once set up, it runs in the background: attach a file, get a Markdown transcript.
.png, .jpg, .jpeg), and Canvas files (.canvas) are transcribed to Markdown as soon as they appear in your vault./ puts the transcript right next to the attachment)PDFs and images are processed by Google Gemini. Get your API key here — the free tier works fine. Canvas files work without a key.
The free tier has a daily request cap, so a large vault may take several hours or a couple of days to fully process on first run. That's normal — the plugin picks up where it left off each time it runs.
Only Google Gemini is supported as the AI provider for now. Feel free to open an issue if you'd like support for another.
By default, all supported files in your vault are transcribed (**/*.{canvas,pdf,png,jpg,jpeg}). You can narrow this down using a glob pattern in the File Filter setting.
The ** wildcard matches any number of nested folders, while * matches within a single folder only.
| Pattern | Effect |
|---|---|
**/*.{canvas,pdf,png,jpg,jpeg} |
All supported files, anywhere in the vault (default) |
**/*.pdf |
Only PDFs, anywhere in the vault |
**/attachments/**/*.{canvas,pdf,png,jpg,jpeg} |
Files anywhere inside any attachments/ folder, at any depth |
**/attachments/*.{canvas,pdf,png,jpg,jpeg} |
Files directly inside any attachments/ folder, at any depth(not files nested deeper inside attachments/) |
attachments/*.{canvas,pdf,png,jpg,jpeg} |
Files directly inside the top-level attachments/ folder only(not notes/attachments/file.pdf) |
Recommended setup: configure Obsidian's attachment folder to attachments/ (Settings → Files & Links → Default location for new attachments → "In the folder specified below"), then set the file filter to **/attachments/*.{canvas,pdf,png,jpg,jpeg}. Every file you attach to any note gets transcribed automatically.
By default, transcripts are placed in the same folder as the source file (./). You can also use a relative path to go up a level, or an absolute folder name to collect everything in one place.
| Setting | Effect |
|---|---|
./ |
Transcript placed next to the source file (default) |
../ |
Transcript placed in the parent folder of the source file |
../transcripts |
Transcript placed in a transcripts/ folder one level up |
transcripts |
All transcripts collected in /transcripts/ at the vault root |
Relative paths (./, ../) are resolved per file. If a ../ path would go above the vault root, it clamps to the root instead of erroring.
| File type | Requires API key |
|---|---|
Canvas (.canvas) |
No |
PDF (.pdf) |
Yes |
Image (.png, .jpg, .jpeg) |
Yes |
git clone https://github.com/mesqueeb/obsidian-ai-attachmate
cd obsidian-ai-attachmate
npm install
npm run build-and-install -- /path/to/your/obsidian/vault
Then reload the plugin in Obsidian (Settings → Community plugins → AI Attachmate → toggle off and on).
If you love using AI Attachmate, please consider supporting its continued development.
This project is available under the GNU Affero General Public License v3.0 (AGPL-3.0).
Built on original work of https://github.com/iinkov/obsidian-attachments-md-indexer and taken into a new direction to add more features and user agency.