Skip to content

What happens between a question and an answer.

Four things, in this order. Nothing is hidden behind the word AI, because the order is the product: retrieval happens before generation, and permission is checked before either.

  1. 01

    Telegram delivers messages to it

    In a group where the bot is an administrator, that means every message, from the moment it joined. Telegram says so plainly, and it is not something we can narrow for you. What we can do, and what the next step is about, is decide how little of it we keep.

    It is never delivered anything sent before it joined. That is not a policy we chose, and no setting can change it.

  2. 02

    It keeps a bounded slice of that

    Messages are retained for a window you set, between fourteen and ninety days. At the end of it the message goes, and so does its search entry, anything derived from it, and its availability as a citation. Deletions land in your audit log with a count.

    Messages carry Telegram's own id, so an edit updates in place and a delete removes ours when Telegram tells us about it.

  3. 03

    It looks for grounding in this group

    A member asks something. Vestry searches what this group has said since it arrived, plus the answers an admin seeded by hand, and ranks by relevance blended with recency. This is a search over your community, not a search over the internet.

    If the search comes back empty, the pipeline stops here. There is nothing after this step that can invent a source.

  4. 04

    It checks whether it is allowed to speak, then cites what it stood on

    Six conditions, evaluated cheapest first, stopping at the first failure. The reply is posted under the bot's own identity, never under yours or a moderator's, with a reference back to the message it came from. The whole exchange, including what it cost, lands in the audit log.

    Cited sources must exist in what was actually retrieved. A fabricated reference is caught before the message is sent.

On the first day it knows nothing, and it will tell you so.

This is the part most worth understanding before you install anything. Because a bot is never given a group's past, a fresh install has no grounding at all. Ask it something on day one and it will decline, correctly.

Two things change that. Your group keeps talking, and the questions that recur start recurring in front of it. And you seed answers by hand: reply to a good message with /vestry answer, or write one in the console, and it becomes a source immediately, attributed to you.

How long the first useful week takes depends entirely on how much your community repeats itself. For most groups it is weeks rather than an afternoon, and anyone who promises otherwise is describing a different platform.

Day one.Nothing has been said in this group since Vestry arrived, and nobody has seeded an answer, so there is nothing to stand on.
Nothing in this group supports an answer yet.
VestryEvery second Tuesday at 18:00 Lisbon time. The link is pinned here an hour before, never sent by email.
Standing onIlya Dorokhov, day one, seeded by an admin

When are the members-only calls? Every second Tuesday at 18:00 Lisbon time, link pinned an hour before.

The same day, after one seeded answer. A seeded answer is a source like any other, and it carries the name of whoever wrote it.

The six conditions, and why each one is there.

These apply when Voice is set to proactive. Every one of them can make the assistant say nothing, and none of them can be overridden by anything a member writes in the chat.

1Is it a question
A cheap heuristic runs first. The model is only asked when the heuristic is genuinely unsure, so classifying never costs more than answering.
2Grounded in this group
Retrieval has to return material from this community above a relevance threshold. That material is either something the group said after Vestry was added, or an answer an admin seeded by hand. No grounding means no unprompted answer.
3Has a person answered
A quiet window passes before Vestry considers speaking. Your moderators always get the first move.
4Cooldown elapsed
A per-chat interval between unprompted messages, so the assistant cannot dominate a busy conversation. The default is deliberately low: a few unprompted messages a day, not a few an hour.
5Chat budget
Each chat has its own hourly and daily reply budget, so one active group can never consume the whole workspace allowance.
6Workspace allowance
The workspace hard cap is on by default. When it is reached, generation stops. Reading and search keep working.

Being asked directly does not lower the bar.

If someone mentions Vestry and the group has never settled that question, it says so. That is a deliberate product decision rather than a limitation. An assistant that guesses convincingly in front of your members is worse than one that admits it does not know, because the guess is the thing that costs you trust.

What your members can check for themselves
Vestry stayed silent.Nothing in this group has settled that yet. A moderator answering it once is all it takes for the next person to get an answer.
Nothing in this group supports an answer yet.

Most of it works from inside Telegram.

Anything that has to happen where the conversation is, happens there. The console is for the things that genuinely need a screen. Nothing commercial is ever offered in a chat.

/ask <question>Anyone
Ask directly, even when Voice is set to silent for unaddressed questions.
/vestry offAny Telegram admin
Immediate silence. Works from inside the group, with no dashboard and no login.
/vestry on_mentionAny Telegram admin
Back to answering only when it is addressed.
/vestry answerAny Telegram admin
Seed an answer by hand, in reply to a message worth keeping. The fastest way to give a new install something to stand on.
/vestry statusAnyone
What Telegram delivers to it, how long messages are kept, when it may speak, and what is left of today's budget.
/vestry aboutAnyone
What it keeps, who runs it, and how to reach them. Members deserve this without leaving the chat.

None of this is running yet. Whether it should be is the open question.

Get early access