PageClear17k downloadsDeal batch notes from search results,current file, or Dataview query string.
Cook your notes like a chef: pick the ingredients, fire the pan, confirm before it's served ✅
File Cooker is an Obsidian plugin for batch file operations. Treat a batch of files (from search results, clipboard, current file links, Dataview / Bases queries …) as ingredients, then run a single command to move, rename, edit properties, delete, merge, sync to flomo, or add to Canvas — like cooking them in one pan.
isDesktopOnly: false)tags / alias / cssclasses support comma-separated multi-value edits and - prefix to remove a single value; no MetaEdit plugin needed (built-in since v1.8.0)Demo: search results + clipboard + Dataview query — all sources share the same "Select → Cook → Confirm" flow.

| Source | How to use | Notes |
|---|---|---|
| 📋 Clipboard | Copy file links (e.g. search results) first, then run clipboard commands | Plain text content can also be added to Canvas |
| 📄 Current file | Open a file, then run current-file-link commands | Reads links / unresolved links / content / selection |
| 🔍 Search results | Open the Obsidian search panel, then run search results commands | Operates directly on the results in the panel |
| 📊 Dataview query | Select a DQL or DataviewJS query in the editor, then run Dataview commands | Requires the Dataview plugin; DataviewJS supported since v1.7.1 |
| 🗄️ Bases query | Open a Bases view, then run Bases commands | New in v2.0.0; only rows mappable to real files are processed |
| 🖱️ Context menu | Right-click in the editor or file explorer | New in v2.0.0 |
| Operation | Example command | Notes |
|---|---|---|
| 📁 Move | Move ... to folder | Batch move to a target folder |
| ✏️ Rename | Rename ... | Batch rename |
| 🏷️ Edit properties | Edit Properties ... | Add / modify / delete frontmatter, multi-value supported |
| 🗑️ Delete | Delete ... ! | Destructive — highlighted red in the confirmation modal |
| 🔗 Merge | Merge ... to ... | Merge into a target file |
| 🆕 Create | Create links ... | Create files from unresolved links |
| 📤 Sync to flomo | Sync ... to flomo | File links / content / selection |
| 📋 Copy links | Copy ... links! | Copy result links to the clipboard |
| 🖼️ Add to Canvas | Add ... to canvas | Files / text / tasks |
When a Bases data source is available, File Cooker provides a Bases command group aligned with the Dataview file commands (move / rename / edit properties / delete / merge / sync to flomo / copy links / add to canvas / add task).
Behavior boundaries:
File Cooker > Selection: sync the selection to flomo / add it to a canvas (only when a selection exists)File Cooker > Current file links: run link-based batch operations from the current fileFile Cooker > Target file: rename / edit properties / delete the right-clicked fileNotes: destructive actions (like delete) still require confirmation. If no active file exists, current-file-link operations are safely blocked with a notice.
Every batch write operation — edit properties / move / rename / delete / merge / create — now takes a snapshot before applying, so you can undo a whole batch or revert selected files individually afterwards.
Undo last batch operation ... opens history and focuses the most recent record; Open backup & undo history ... lists all records (time / type / file count / status)N records (default 20) and cleans up older backups automaticallyBackup folder: backups are stored inside your vault (default
.file-cooker/backups). The dot prefix hides it from the file explorer by default; you can also add it to Settings → Files and links → Excluded files (e.g..file-cooker) to keep it out of search and graph. Out of scope: Canvas operations and flomo sync are not backed up (they write through internal APIs / the network and don't touch vault files).
| Setting | Purpose | Default |
|---|---|---|
| Limit | Maximum number of files processed per batch | 300 |
| flomoAPI | flomo API endpoint, used to sync notes to flomo | empty |
| Enable backup | Create a snapshot for every batch write so it can be reverted | on |
| Backup folder | Vault folder where backups are stored (dot-prefix hides it) | .file-cooker/backups |
| Retention | Number of recent backup records to keep | 20 |
flomo sync commands will notify "Please config flomoAPI first!" when the API is not configured.
obsidian-file-cooker folder into <vault>/.obsidian/plugins/Note: on some machines the
.obsidianfolder is hidden. On macOS pressCommand+Shift+Dotto reveal it.
Questions or suggestions? Feel free to add me on WeChat: IvyOdds, or open an issue on GitHub Issues.
If File Cooker helps you, please share it with your Obsidian friends 🙏
tags / alias / cssclasses batch add/remove via comma-separated values