Every router between you and the SSH server is an intermediary too. If SSH were terminated at the browser, the websocket-to-tcp proxy provider wouldn't be any more privileged than any other machine on the route.
> the TCP proxy would have to be run either on the SSH server or on the client computer.
It could run on any computer in the world that the client has access to, and that can access the SSH server. (I.e. the same set of computers that could feasibly run the Shellvault server).
Fair point about the SSH client only working in Node. I hadn't looked carefully enough.
There's no fundamental reason why the system I described couldn't work today, it just wouldn't work with the SSH client I linked to.