libghostty makes it pretty easy to do. I spent about two weeks setting something up until it was advanced enough to daily drive. I wanted to have a modal workflow similar to vim or tmux copy mode, but without having the overhead of using tmux... that's probably a lot more complicated than "I want Ghostty but with $X tweak". You can poke around in the repo to get a feel for what's involved if you want: https://github.com/milch/mistty