Eric48 downloadsAutomatically update paths in Bases when folders are renamed or moved, with reviewable undo history.
Automatically update path references in Obsidian Bases after folders are moved or renamed.
For example, when Work/Research is moved to Archive/Research, a Base that filters by that folder automatically uses the new path instead of requiring manual edits.
Requires Obsidian 1.9.0 or later and the built-in Bases plugin. The plugin can currently be installed manually and is not yet listed in the Community Plugins directory.
dist/base-path-updater folder generated by this project to .obsidian/plugins/ in your vault.main.js, manifest.json, and styles.css.If you downloaded the source code, follow the development notes to generate the installation files first.
Once enabled, move or rename a folder in Obsidian. The plugin updates matching Base paths and shows a notice when updates or errors occur.
You can open the history in three ways:
Expand an entry to see how each Base path changed, then select Undo Base changes to restore it. History persists across restarts and keeps up to 30 operations, with a snapshot budget of approximately 5 MiB. When the budget is reached, the oldest entries are removed first. If one operation is too large, files that would exceed the budget are skipped and reported.
Undo restores Base content only; it does not move folders back. To keep a filter valid, move the folder back to its original location. When undoing multiple operations, start with the newest entry. If a file was manually edited, changed by a later operation, or deleted, the plugin skips it instead of overwriting newer content; other files from the same operation can still be undone.
| Form | Example |
|---|---|
| Folder filter | file.inFolder("Work/Research") |
| Full file path filter | file.path == "Work/Research/Notes.md" |
| Path prefix filter | file.path.startsWith("Work/Research/") |
Single and double quotes are supported, as is placing the path on the left side of an equality comparison. Matching is case-sensitive. Only the original folder and paths below it are updated: moving Work/Research does not modify Work/Researcher.
When using startsWith for a folder, keep the trailing / as shown in the example to avoid matching similarly named folders.
.base files are processed. Base code blocks embedded in Markdown are not processed.See the implementation notes for design decisions, references, and acceptance checks. 中文说明请见 README.zh-CN.md。