Bifrost is an application to bridge Ehereum or Bitcoin blockchain to Stellar to do an initial coin offiering (ICO) or build an anchor/exchange for these coins for example.
So the counterpart is always you.
Bifrost is watching the Ethereum and Bitcoin blockchain for transactions matching a derived key [BIP32]. When the tokens are transfered it sends a matching amount of assets issued by you on the Stellar network to the sender (anchor/ exchange case).
The next step is to exchange them into your your_ico_token
asset on the stellar network when you use bifrost for an ICO. This is done via an sell offer on the distributed exchange (that you created before).
These are only the high level steps of course. It's important to note that bifrost has a client and a server side. The client is responsible for creating a key pair for the stellar network, setting trustlines and sending the buy offer for the your_ico_token
.
The server side watches the networks and sends the asset amounts. There are also steps involved to assure tokens are not lost. You may want to read the Design Document for all the details.
There is an online bifrost demo
running that you can use to play a bit on the testnet.
To setup your own bifrost instance, follow the official docs and maybe my notes are helpful.