Skip to content

Chat and threads

Chat is part of Arugula control: a team’s channels and direct messages, and a thread about each pane and each session. Control keeps the messages, so chat works with every machine asleep. A machine on its own, not joined to control, has no chat.

Chat is on for a whole team, and its owners turn it on: Teams… in the account menu, then the team’s Chat switch. Everyone in the team gets its channels, direct messages, issues and the threads on its machines’ panes. Members who aren’t owners see the switch but can’t change it.

On the platform page, a project whose team has chat off says so: an owner gets Turn on chat, which goes to that switch, and anyone else gets Ask an owner, which copies a note to send them. A personal project has no chat; chat comes with a team.

Chat on the rail, in the phone’s sheet or in the command palette opens the Chat page, which is part of the platform page. It lists your teams’ channels and direct messages, then the threads on panes and sessions, by machine. Activity lists what mentions you, and search looks through every room you can read. The rail’s Chat shows how many messages are unread.

  • Messages are Markdown, with emoji (:joy:), code with colours and a copy button. Enter sends; Shift+Enter is a new line.
  • Paste, drop or 📎 a file: up to 10 files of 10 MB on a message. Pictures show inline, and video and audio play.
  • Links become previews. Control reads the page for you, so your browser never contacts the site.
  • React with emoji, pin messages, give a channel a topic, star rooms and sort them into sections of your own, and save a message for later, with a reminder.

@name notifies that person, on their phone too, and a tap opens the room at the message. @channel notifies everyone in the room, and @here only those who are active now. A team’s owners can keep those two for owners.

  • Each room has a level: all messages, mentions only or nothing. By default, direct messages notify you of everything, and channels and threads only of mentions.
  • Do not disturb pauses chat notifications for a while, or on a weekly schedule. A pane that needs you still notifies you.
  • Keywords notify you as a mention would.

Every pane and every session has a thread: a conversation about it, beside the panes (the whole screen on a phone). Open a pane’s from Thread › Thread in its menu, or from the bubble on the pane, and a session’s from Session thread in the session menu. The bubble and the session button show unread counts.

Thread › Quote selection in thread puts the selected output in your message, so it still reads when the machine is asleep. Its chip opens the pane, for someone who may reach the machine.

The machine decides who reads a thread: the same people as the pane or the session. A private pane’s thread is only its owner’s, and someone you shared a session with from now on reads from when you shared it.

Team chat can sit in a pane, beside your work, like any other block: Open beside › Team chat in a pane’s menu, or Open team chat on the + button’s menu for a tab of its own. Open beside › Pin a chat room… shows one room alone, without the sidebar. From a terminal:

Terminal window
arugula chat # the newest unread room, in a new tab
arugula chat ch_… --pin # one room, pinned
arugula chat --split right # beside the pane this runs in

The block keeps only where it is: the messages are control’s, read as the person looking. A thread’s drawer can move into a chat block too.

Agents stay out of chat until the machine’s owner lets them in, per machine and per project (a team’s channels belong to its default project), or for your direct messages:

Terminal window
arugula grants add geek threads.read threads.post --project acme
arugula grants add geek threads.read --dms
arugula grants revoke geek threads.post --project acme

Or use the switches in the platform page’s Settings, under Agents on your machines. Then the MCP tools read_thread, search_threads and post_thread work there.

  • An agent never reaches more than its owner can.
  • What it posts is labelled as its owner’s agent on that machine (“Jake’s agent on geek”), and every room a grant reaches says so to everyone in it.
  • @geek in a room the agents may read is a mention of that machine’s agents. It notifies nobody and wakes nothing: agents read their mentions when they look.
  • Teams: make a team and add people.
  • Sharing: share a session with someone.
  • Native issues: a project’s issues, with a thread each.