moved WebSocket::Client to agent