Michael Naumov6k downloadsHandles renames made outside of the app.
Rename a note inside Obsidian and every link to it is updated. Rename the same file in your file manager, from a script, or through a sync client, and Obsidian sees a delete followed by a create — so the links are not updated, and every note that pointed at it is left pointing at nothing.
This plugin recognizes those external renames for what they are and reports them to Obsidian as a single rename, so the file keeps its identity instead of arriving as a stranger. Rewriting the links that pointed at the old name is then done by Advanced Rename and Delete Handler — see Renames below.
[!WARNING]
A rename is recognized only where the file keeps its identity on disk (its inode), and not every file system keeps it: see 05 File systems.
Only files and folders inside the vault that Obsidian tracks are handled, and never those whose names start with
.(dot). See 03 How it works for every limit.
The documentation is a demo vault. Every feature has a note that explains what it does and why you would want it, with a note ready to rename and backlinks ready to watch.
Start reading here — it is plain markdown, so it works on GitHub with nothing installed.
A copy of the vault ships with every release. You can access it via any of the following:
External Rename Handler: Open demo vault command.external-rename-handler-demo-vault.zip from the Releases. It unzips into a single external-rename-handler-demo-vault-<version> folder.demo-vault/ in this repository.Since 4.0.0 this plugin no longer rewrites links itself: Advanced Rename and Delete Handler owns rename and delete handling for the whole vault. This plugin sees the rename your file manager made, that one updates the notes pointing at the old name. This plugin offers to install it, once, and carries your old Should update links value over for you to approve. Decline, and external renames are still detected — the file keeps its identity, its open tab and the file explorer follow it — but the links are left as they were.
| Plugin | Features | How External Rename Handler differs |
|---|---|---|
Auto Refresh Explorer |
Polls selected folders; adds externally created files | Different event scope: recognizes external renames |
Link Keeper |
Unlisted/experimental; pairs create/delete within 0.5 seconds by name/folder; updates links; mobile | Alternative detection: inodes; catches offline renames too; delegates link updates |
Vault File Refresh |
Polls for externally added/changed files; Flatpak/network-drive use | Different event scope: recognizes external renames |
Last searched for similar plugins on 2026-10-26.
The plugin is available in the official Community Plugins repository.
To install the latest beta release of this plugin (regardless if it is available in the official Community Plugins repository or not), follow these steps:
Add plugin button once and wait a few seconds for the plugin to install.By default, debug messages for this plugin (id: external-rename-handler) are hidden.
If you need to enable them refer to the documentation.
All notable changes to this project will be documented in the CHANGELOG.
Contributions are welcome — see CONTRIBUTING to get set up.
Open issues through the issue forms, not as blank issues.
To report a bug from inside Obsidian, run the External Rename Handler: Report a bug command. It opens the bug form with the plugin version, the Obsidian version and your operating system already filled in.
Filing from the CLI or the API (gh issue create --body, or an AI agent filing for you) skips the form, and gh issue create --template cannot load an issue form. In that case, open the matching form in .github/ISSUE_TEMPLATE/, copy every field as a ### <label> heading in the form's order, and fill in each one. Always state the plugin version, the Obsidian version and your operating system.