Contacts and channels
How to add a contact
Ugolok has no phone numbers or nicknames that let people "find" you — instead, every person has a public key (it starts with npub1...). This is both an address and something that can't be forged: a message sent with this key is guaranteed to come from it, and not from anyone else.
Steps:
- Ask the person you want to talk to for their public key (
npub...) — it can be copied from the "Profile" screen and sent any way you like (by voice, in another messenger, shown in person). - Open the "Contacts" section → "Add contact" and paste the key you received.
- The person will receive a request. They need to accept it on their side.
- After mutual agreement, you become contacts and can message each other.
A request can be cancelled or declined at any time — nothing happens without explicit consent from both sides.
Important: until you've exchanged keys through some independent channel (in person, by phone, in another messenger), you can't be completely sure that a key really belongs to the person you want to talk to — this is a general rule for any key-based system, not a quirk of Ugolok specifically.
How contact groups work
All your contacts can be organized into groups (for example, "Family", "Work", "Friends") — this is useful on its own, and also because access to your channels directly depends on groups (see below).
How channel access works
A channel is your own personal space (something between a feed of posts and a group chat) that you, its creator, control.
When you create a channel, you immediately choose which of your contact groups will be able to see it. This is a deliberate design decision of the project: a stranger can't "knock" on a channel directly — first they have to become your contact and end up in one of the groups you've given access to.
This might seem like an excessive restriction to some — you don't always want to add someone to your contacts in advance just to let them read a channel. We deliberately chose this model: it's simpler to understand ("either I have access, or I don't — and I know exactly through which group") and doesn't leave accidental "holes" through which access could end up with someone unintended.
Separate from the right to read a channel, there's the right to comment — even if a person already has read access (through a group), commenting requires a separate request, which you approve. This is an additional layer, not a replacement for the group rule described above.