When I was trying to write about this, I realize that I don't have full understanding of the whole tech behind it. BUT, based on what we've discussed, here are some of the options I believe can help to make the UX better considering the technical constraints:
Use electron-store to save a readable label for sessions
we can leave the session label empty and use the session key or id to identify it. but then in the app when we list sessions, we can create a new store that creates a key-value for this ids within electron store. this way users can change the session "name" or "label" later, when in reality they are just changing the session name inside the app, which is (AFAIK) the only place in where sessions will be listed
Use the Device User-Agent to add more descriptive data about the session if the flow starts on another device
this will give us info about the domain and the device where the delegated key will be. and makes the live of users easier to identify the session.
I know this is not ideal, but the ideal UX for this, IMHO would be:
From the desktop app:
User clicks on the key button
User see the QR code and the text token (to copy) + a input to name the session if he/she wants to.
scans or paste code on other device
confirmation screen on new device
after confirming, success screen on both the desktop app and the device.
From the other device:
click on link device button
see instructions, and go to the app to follow the steps above