Thanks for sharing, Sorry, I didn't realise you were using Emacs in a terminal. I got clj-kondo working via LSP thanks to your efforts, so thanks for that too.
Updated: ways to refresh and reload Clojure code without restarting the REPL - https://practicalli.github.io/spacemacs/clojure-repl/reset-the-repl.html
New: Calling component lifecycle services when refreshing the REPL - with an example from the mount library - https://practicalli.github.io/spacemacs/clojure-repl/component-lifecycle.html