Talk where the
work lives.
Every node has its own chat — people and Lifebot in the same room. The conversation structures itself into your graph, so decisions live in the node, not in an endless scroll.
A chat that builds your graph.
Lifebot listens — it doesn’t barge in.
Alone in a node, Lifebot is on by default. The moment someone joins, you flip assist on yourself — and even then it reads the room before it speaks. Every message carries one small switch that tells it how to behave:
auto — it decides
The default. Lifebot reads the last few messages and who’s in the room, and answers only when the message is for it — or when you @Lifebot. Teammates talking to each other stay uninterrupted.
on — it always answers
A guaranteed reply, no guessing. This is what automation uses: a contract or a script that asks a question and needs the answer back — even in a busy node full of people.
off — it stays quiet
Just a message in the log. Bots, integrations and system notes post this way so the chat keeps its history without waking the AI for every line.
In the app you never touch the switch — it’s auto, and @Lifebot is how you call it over. It matters when your code talks to the chat: a contract that must get an answer sends on; a bot that just files a log sends off. See it inside a contract →
Invite, discuss, build — in one place.
Invite people into a node to run a project together. Upload documents, drop links, spin up sub-nodes — every “channel” is a node in a graph you actually own, and every message stays findable forever.
Stop losing decisions.
Where you talk is where it’s documented.
Start your graph →