Sample code to transfer USDT without ETH

I am fairly new to OpenGSN and I 'd like to know if OpenGSN can help me what I am looking for.
Let’s assume that account A has 1000 USDT and no ETH.
I want to transfer A’s 1000 USDT to account B.
Some third account(maybe smart contract (RelayHub or Paymaster in OpenGSN?)) will pay for gas in eth.
Can OpenGSN help me with this problem?
If it can, is there any similar service running so that I can fork?

Gsn can help you, and no other service either …

In order to transfer USDT user A must send a request to transfer, or at least send an approval request to some other address to make this transfer on his behalf.
Gsn relies on that target contract (in this case, USDT) to be gsn-aware and accept the signature (not transaction) of user A.
There is a workaround though it will not work with USDT: they’re is a permit() method which let a user to just sign an approval.
The problem is that USDT doesn’t support this method
DAI and USDC do.