I'm not quite sure what you mean by "the right way" to get back channels. Are you suggesting that SSH has some sort of generic support for agent forwarding? I'm familiar with SSH's authentication agent forwarding (and in fact couldn't get by without it) but it looks to me to be 'baked in' to SSH and in particular the ssh daemon on the target host. I don't think I'd get very far trying to deploy bcvi by requiring a customised version of the SSH daemon on target hosts. Are you aware of some way to configure support for agents other than SSH's own authentication agent?
Is there some functionality you think bcvi lacks that would be made possible by using an 'agent' implementation?