Skip to content

Bringing people in

There is no directory of people in Kunuleco: nothing to search for a person by name. People reach you because you handed them a way in: an invite code across the network, or a peer seed face to face.

Invites and short codes

Create an invite to your current space:

invite garden
→ tiger-castle-7

The invite prints your full join line and a memorable short code (pass -noshort if you want the long form only). A short code like tiger-castle-7 is a lookup key. Behind it sits your connection info, signed by your key so it cannot be forged. Anyone holding the code can use it, and it stops working after a day. Treat it like a door code, not a personal key. Your guest joins with:

join tiger-castle-7

They can also join by your canonical name if they already know it: join Mira#472913 reaches your lobby, and join Mira#472913 room:garden reaches a room you have shared. In the Urchin client, /join-wiz walks a newcomer through joining with a code.

Meeting in person

Sometimes the person is right next to you: same room, same Wi-Fi, maybe no internet at all.

  • meet shows your peer seed (a kunul1… code) and a QR. Someone with you in person runs join <seed> and connects to your node directly over the local network: no internet, no directory. The connection is verified against the key inside the seed, so what you scanned is who you get.
  • meet guest shows this node's address and a QR so a phone running the Urchin app can join it as a thin client.

Friends and petnames

Once you have met someone (seen them connect or discovered them), keep them:

@friend add Mira#472913 my-bandmate

That befriends them and sets a petname, your own private alias, in one step. Petnames are bound to a specific identity by its key, so an impostor reusing a display name cannot inherit the alias. From then on:

Command What it does
contacts List your friends
friends online See who is reachable right now
finger my-bandmate Full detail on one contact
tell my-bandmate Hey, you around? One-to-one message, saved to history
tell my-bandmate Show your recent history together

tell, whisper, and @chat are the same command; use whichever you prefer.

If your friend is offline when you send, the message waits in your outbox:

outbox          see what is queued
outbox flush    retry delivery now

Manage aliases with petname <identity> <name>, list them with petnames, clear one with petname <name> --clear. To stop following someone, unfriend <identity>; to cut them off entirely, block <identity>, which also drops any connection open between you. unblock <identity> lifts it.

You can only befriend someone you have met

Friends anchor to a real identity your node has seen on the network, so you cannot friend a name it has never encountered. Petnames are looser. You can name anything, and the alias stays pinned to whatever it first pointed at, so re-pointing it takes an explicit --clear first. That is what keeps the trust signal meaningful.

Where to go from here