This is pretty cool. I wonder though if the tree sitter query syntax is the right thing to directly expose. This is definitely useful beneath the hood for people writing specific refactoring patterns, but it would seem overkill for general dev. Is there some syntax that looks closer to regexes for this (tree sitter inside regex rather than regex inside tree sitter)?
I wonder if attacking this problem at one level up say the LSP level could be a good idea.