not sure if Go pls supports moving between files, but it does have some sophisticated edit features
https://go.dev/gopls/features/transformation
it does look to have a method for moving a function to a new file
I give my agent access to go pls and find it overall beneficial, based on vibes eval. Its way easier to ask LSP everywhere a function or field is used versus grep, saves a lot of tokens