← All posts

The data-rooms plugin

One room per engagement — a deal, a project — holding everything ingested about it and everything written from it: the sources filed with a weight and a score, the rules the agent reads first, the notes, the timeline, the open items on Review. A collector files clear matches after every sync and asks about plausible ones. What it is, who it is for, and the line that turns it on.

Vocion Team

Status: shipped, at version 1.0.0 in vocion-core (packages/core/templates/plugins/data-rooms/). Moved out of a sample workspace into a plugin on 2026-09-18 (vocion-core#451, Data rooms and proposals, as plugins); the collector's first production filing is A data room that fills itself (2026-09-19). Docs: Data rooms.

# workspace.yaml
plugins: [data-rooms]

What it is

Documents are only as good as the room they are written from. A room is a data_room record — a business object — anchored to one entity (a CRM deal, a project, an engagement) and collecting everything about it:

PartWhat it holds
SourcesTranscripts, threads, shared documents, each with a weight (three stars: read this before writing anything), the channel, the date, who filed it and the match score when the collector did
RulesWhat the agent reads first about this room; a correction a person gives becomes a rule
Notes, status, timelineThe room's working notes; one dated status paragraph; milestones
HighlightsA quote, a metric, a win, a risk — kept for the case study
Open itemsAsks on the room, decided on Review
ArtifactsDecision logs, documents, working files written from the room, with versions

A sales room persists into delivery: the stage moves, the collection stays.

Who it is for

A team that asks where the transcript, the thread or the document about a client was filed. A document that has to be written from what is known about one engagement. The same client coming up across several conversations with nothing collecting it. A deal reaching a proposal or negotiation stage in the CRM. Those are the plugin's recommend.when lines; it works better with the HubSpot, Zoom, Gmail, Drive and Granola connectors.

What turning it on adds

The collector

This is the part that makes a room grow without anyone filing. After every source sync, the collector scores each candidate document against the open rooms from evidence a person can read back — a sender or attendee domain the room collects, the client or codename in the title or the body, someone on the room's cast on the thread — and acts on the confidence rather than asking:

The candidate set is the source's last thirty days, not only what the sync just touched — a room is usually opened long after most of its material arrived. Re-reading the same documents every hour is safe: a filed document is skipped, and an ask is an upsert on the document, so the same question is never raised twice. A deal reaching Proposal stage opens its own room.

What it measures

Rooms opened. Sources filed. The team report grades it from the day it is on.

Where it fits

The proposals plugin depends on this one: a document is written from a room, and turning proposals on turns data rooms on. The wiki keeps what is true of the workspace; a room keeps what is true of one engagement.

Customise it in the workspace: patch the keeper with agents/room-keeper.yaml + extends: core, replace the skill whole-file at skills/data-rooms/SKILL.md, add rules to a room from chat, or tell the keeper what a good status reads like — it becomes a learning. Every fixture in the plugin and on this page is fictional; Metacto is the seller.