Automatic/inline update of links to headers and blocks when they are modified (no extra dialog window)

I would just like to add my strong +1!

i.e., my support for automatically updating links when section/headers change. I completely agree that having to use a command or right-click is totally unnatural, unintuitive, easy to forget, and makes your vault fragile.


Human 1:

A penny for your thoughts?

Human 2:

Sorry, I spent all my thoughts on clicks…


To click, or not to click?

That is NOT the question – as it ascribes value-added to an insinuated-action, which itself devalues actions!


Does the thinking-mind have to click to stream its thoughts? Or remember to right click each time an idea (heading) is updated by mind?

We need not “suffer the [right clicks] and [left clicks] of outrageous fortune”… nor “take arms against a sea of [clicks]” to oppose them.




Hi! Any updates on this? +1 here!


#antifragile_vault - Love it!

Any newz?



This is so annoying. I hope it happens soon.

1 Like

Make sure you have upvoted the OP at the top of this page.

1 Like

Yes this if def needed.

For now my workaround is the “create link to line” command of the carry forward plugin. it adds a ^identifier to the heading that it references.

I would suggest that the Obsidian team adds a warning notice to the documentation about internal links to headers about this behaviour.

I started using this in various places and just found out that auto-update won’t work. If the team says that it is not possible due to performance reasons I won’t argue against that, but as a user I would rather have known that before changing links all over the place.

As someone said, the current state feels broken. Unsure if I will use these kinds of links at all for now. Sparingly, at most.


That should definitely be documented. The main help page has a link to the docs’ GitHub where you can post an issue about it.


Currently, for links to headings to be updated, we need to the right-click menu (or command) to rename the header for the links to update. I can live with that happily for performance reason.

However, if we want to move a referenced block to another note, the only way to update block references in previous notes is to look up the block reference ID in Search and manually update each link with the new note name.

Can we have a dialog window similar to renaming headings? Something such as right click → “Move block to another note”, choose a new note, and all links to that block will be updated.

Pinging @Sentiment because you had a similar FR (Auto-update block references when target block is moved to another note) that was closed. I agree that it should remain open but I’m proposing using a dialog that needs to be manually triggered to preserve Obsidian performance (see @Klaas comment above — it’s for headings, but similarly I think Obsidian performance will tank if it has to monitor block movement when users just cut and paste).

1 Like

Did you check obsidian-persistent-links by ivan-lednev

If a file got updated in some other way, and you’ve noticed some broken links, you can use the > “Repair links in file” command to fix them. The plugin will search through the metadata cache and try to find a file that contains the block or heading in the link.


  • Partially relies on internal Obsidian APIs, so it may break. If you noticed that, please create an issue
  • Automatically works only with cut & paste events
  • Only works with Wiki links

If you’d like the plugin to support other workflows, don’t hesitate to create an issue: Issues · ivan-lednev/obsidian-persistent-links · GitHub.


Thank you so much! It really does work! This definitely solves a huge pain point. I can live happily with links in Obsidian now.

Side note: I came across this plugin a month ago and put it in my Obsidian vault but then I forgot it lol.

1 Like

I just run into this issue, and inadvertently broke a number of internal links in my notes. I guess intuitively one expects this to just work.

Would love if this was fixed in Obsidian (without needing a plugin).


+1 to this FR. I maintain a personal wiki full of pages describing a concept / topic (e.g. [[Application Server]]). Sometimes I rename the titles, and backlinks get automatically renamed too (yay!).

However, some topics are not worthy of their own page and exist as sections of a bigger page (e.g. [[Application Server#GlassFish]]). Intuitively I expected a rename on a section to correct all existing links, but that doesn’t seem to be the case. A hidden manual dialog is kinda obscure from a UX perspective.

In any case, love the app and product, keep it up!


Somewhat related, I created a plugin to help find any broken links or un-used block identifiers/references: GitHub - dashed/obsidian-find-orphan-block-identifiers: Obsidian plugin to find orphaned block references and broken links.

It helps me maintain and keep the digital garden cleaner. :farmer:


We need more of those clean-keeper-plugins :smile: I like the idea. Thanks!

1 Like

Related API feature request:

1 Like

Yes, having recently discovered inline block links (an obsidian superpower!) it would be really helpful if those links could update automatically when headings are updated. Otherwise the flow of editing, renaming, sorting feels broken & slightly disjointed.

In the interim, the suggestion of adding a tag/indicator in the margin of linked headings would be really helpful.

Other than that I’m loving the app! Many thanks to the team and keep up the great work :slight_smile:

1 Like

I don’t really understand this “performance problem” related to this. Can somebody please explain?
For ex. when you add, change or delete a tag, that is updated almost instantly, so it’s monitoring for that at every keystroke. How is this different?
How about when you change a Header and you move away from that line, a dialog would pop up asking if you want to update links (if any)?
Or at least warn you that it has links and you should rename it with the context menu.

1 Like

This is hugely important. If the user is able to right-click and change the header text in a modal dialog box, and the links to it are (in my experience with 5K+ notes) instantaneous, why is there a “performance” issue to detecting whether a header has been modified (in regular editing mode) and do the same thing?

I would add a side-feature-request, which is that, when creating a link to a header section, by using the # key in, it autofills the full header path, not just the header pointed to.
Full header paths inserted when auto-filling internal links to headers in a note

1 Like