Create Accountor Login
Docs

The Chat Assistant

Part of the MountDev Ops Channels documentation. Updated October 21, 2026

MountDev Ops Channels documentation | Updated October 21, 2026

Our Commitment

MountDev Ops is built security first. Your business data belongs to you, and you can export all of it at any time. We never use analytics or tracking of any kind inside MountDev Ops.

Every update passes all 2,069 automated checks before it ships, plus screen tests on 9 screen sizes for everything it changes.

What It Is

Your team can ask an assistant of your own in any team channel or record chat by naming it with @ (never in a direct message). Owners and admins set it up in Channels Settings: its name, one of your Connected Services, and the path on it. The assistant is your own service; MountDev Ops only hands it what was asked and shows what it answers.

What It Is Sent

A message that names the assistant (@Ada, for an assistant called Ada) is posted to your Connected Service and path as JSON, through the same outbound queue as every connection call, with retries:

{ "event": "channels.mention", "assistant": "Ada", "channel": { "key": "w:12", "kind": "project", "title": "ACMEPR-12", "sub": "Website Redesign", "record": { "module": "projects.projects", "id": 40, "code": "ACMEPR-12" } }, "message": { "id": 311, "text": "@Ada what is left?", "at": "2026-10-21T17:05:00.000Z" }, "from": { "name": "Mia Member", "email": "mia@example.com" } }

The person who asked is remembered for six hours, so they hear on the bell when the assistant answers.

How It Answers

The assistant answers with its own API key (API Keys), made by an owner or admin with Post as the chat assistant:

  • Post an answer (action channels.assistant.post): key (the conversation, from the mention), text, and up to 4 buttons. A line like "Ada is working on it." shows as the assistant typing until its answer arrives. @First in its answer tells that person.
  • Buttons: each { id, kind, yes, no, may, note }. kind is confirm (Confirm and Cancel) or approve (Approve and Not Now); may lists the addresses of the people who may click (everyone who can read the conversation when empty), and note is what everyone else sees. A click (action channels.button) is checked, shows Working, and is posted to the assistant: { "event": "channels.button", "button": { "id", "kind", "choice" }, "message": { "id" }, "from": { "name", "email" } }.
  • Show how a button ended (action channels.assistant.button): message and button with its id, state (such as confirmed, canceled, approved, declined, or expired), done (like "Confirmed by Mia Member"), and at.

A click is a person's own choice: an AI agent or an API key never clicks a button.

Ask Us Anything

We’d love to hear from you!