Rooms that stay open
A new room is a group by default. It can sit empty for days and still let the next person in from the link. Come back to the messages, the files and the channels inside it.
Your people. Your rooms. Your agents.
Rooms, threads, files and calls for your team. AI agents that join as members and hear only what you switch on. Encrypted end to end, with no company in the middle and nothing to pay per seat.
Free and open source. No account, nothing to install: an invitation is all anyone needs.
Already on Nostr? Sign in with Nostr and your rooms follow you.

A team of five and the agents that work for them. A family. A community group. A project and its contributors. An agency and the clients it would rather not put on somebody else's platform. Anyone you would send a link to.
Not a meeting link
The conversation, the files and the people stay put between calls. Answer in threads, fix what you said, take a message back, and pick up where you left off from whichever device is in your hand.
A new room is a group by default. It can sit empty for days and still let the next person in from the link. Come back to the messages, the files and the channels inside it.
An agent joins from the same link a person does, labelled as an agent and carrying proof of whose it is. It hears your microphone only when you switch that on, and it asks permission in the room, where everybody sees the answer. A scribe can write the minutes.
Reply to a message and your answer sits under it. Change what you said and everyone sees the newer words, marked edited. Take a message back and what's left says so.
Start a private conversation from a person's row in Room details. It's a room of two: the link is sealed to the pair of you and nobody else can be let in, and it works like any other room, calls and files included.
Type @ and pick a name. The message carries who it's for, so it lights up for them on every device, and an agent answers to exactly what you see highlighted. @everyone reaches the room and not the agents.
Turn on your microphone or camera from the room you're already in, or share your screen from a supported desktop browser. Calls go device to device where the network allows, and anything that has to carry them in between is never given the room's key.
Files are encrypted on your device before upload. Their keys travel inside the room's encrypted messages. Opening a conversation doesn't download its files.
Use your phone for the camera and your laptop for a screen share. Pair them from Room details and appear together as one participant, with one active microphone.
Sign in with Nostr and your rooms follow you, encrypted through your signer. Where you've read to follows too, so unread means the same on your phone and your laptop. Search a conversation by words, person or file name and jump back to the message.
Room's open. Send the link.
Open KithMoot, give your room a name if you like, and choose what people should call you. It's a group by default, so it stays open when everybody leaves.
Go in, open Room details and share the invitation. Anyone who receives it can request admission, so send it through a conversation you trust.
Write a message, drop in a file, invite an agent or open the call controls. Camera and microphone start off. A group admits the next person with nobody online; a temporary meeting needs a member around to answer its link.
Know what you're sharing
KithMoot uses infrastructure you can choose. A room names its relays and connection helpers, none of them holds the guest list, and the code is open to inspect.
Read how it worksRelays can't read room messages or participant names from room events. They can still see device keys, opaque room identifiers, timing and traffic volume.
The part after the # stays out of ordinary website requests. Whoever receives the full link can use it. Changing the invitation stops future use by cooperating clients; it doesn't remove people already admitted.
Camera and microphone start off, and agents hear neither until you switch that on. Public profile lookups and notifications are optional. Background blur can miss edges and movement, and a failed effect can show the unmodified camera.
Use the screen you've got
The web app is the quickest way into a room. The native Android client is an earlier implementation with fewer features.
Web app
Rooms, files and calls in your browser, with desktop screen sharing where supported. Install KithMoot from your browser's menu to keep it on your home screen or dock.
Open the web appAn internet connection is needed to reach the room. Installation caches the app's shell, not an offline copy of your conversations.
Android · preview
Android 8.0 or later. Version 0.5.12 adds paired private conversations through your Bothy. A signed-in participant can create a sealed two-person conversation, pair its own route and switch only after Bothy confirms custody. Disconnecting retires that authority before local pairing material is removed, including recovery after an interrupted response. Shared projects and agent work remain available for standard rooms on your signing device.
Debug-signed preview. This is a development build with incomplete feature coverage. It updates version 0.5.11 without clearing saved app data.
Download Android previewRelease notes and sourceA few practical questions
Something isn't behaving as expected? Room details has a bug-report tool. You can also report an issue on GitHub.
That's the aim: rooms, threads, private conversations, files, calls and agents, with no company running it. What isn't there yet: a full archive (a conversation loads the last 30 days and 500 messages, and search covers what's loaded), notifications to a phone in your pocket, and channels, roles and removals without a keeper. The wire format is not yet frozen, so an early workspace should expect an update along the way. The changelog says what has shipped.
You can take back one you sent, and correct one too. A retracted message is marked retracted everywhere, but it isn't erased: every device that received it keeps its copy, and relays keep the encrypted event. Nothing here claims to delete what it can't.
No. Follow an invitation and choose a name. If you already have a Nostr key, sign in through your signer to use that identity and save room bookmarks across devices. Signers without encryption support keep bookmarks local.
The invitation may have expired or been replaced, or there may be nobody online to answer it. Ask the person who sent it to open the room and send you a current link. Saving a room bookmark doesn't guarantee future access.
You can open the web app for chat and calls. Screen sharing from iOS isn't supported by this app. There isn't a native iOS app yet.
A group does: it admits the next person from the link with nobody online. A temporary meeting needs an admitted member online to answer its link. A keeper can run a room with named channels, removals and nudges; it runs on somebody's own computer or server.
A room run by a keeper can name hosts who remove members or close the room. Removal changes the room key for the remaining devices. It can't erase messages somebody already received. Changing a normal invitation alone doesn't remove members.
Chat loads up to 500 messages from the last 30 days, edits and reactions counted; relays may retain older encrypted events. Search covers what the conversation has loaded. Read positions follow a Nostr signer that can encrypt; a visitor's stay in one browser. Large calls depend on available bandwidth and routing, and haven't been validated at arbitrary room sizes. Android shows threads, edits and retractions but sends plain messages, and has incomplete support for room key changes. These are limits to check for your use, not promises covered by a green test suite.