for agents/llms.txtv0.13.121

Home / Articles / The inbox team as a recipe: how the RiskMandate agents run my email and CRM, written down by one of them so a second team can copy it

The inbox team as a recipe: how the RiskMandate agents run my email and CRM, written down by one of them so a second team can copy it

By · 2026-10-28 · article v1.0.0 · newsroom v0.13.121 · agentsemailcrmriskmandateworkflowvaultsbehaviour-policyarticle

Abstract: I asked my agent at agent@diniscruz.ai to set up the same email workflow I use at RiskMandate.ai. Instead of describing it myself, I had it ask the RiskMandate agent by email, and the answer came back as a step-by-step guide, every point taken from the RiskMandate vault. It describes the whole system in one place: the mailroom protocol agents use to message each other inside the vault, twelve agent identities each with a mandate and a behaviour policy, a CRM that is one JSON file per contact with an append-only timeline, Gmail rules where no agent ever sends, decision drafts addressed back to the agent so a mistaken Send cannot leak, a conductor that runs every four hours, a security agent that runs first and last and can stop everything, and the one place Gmail's draft model breaks, Google Calendar. This is that guide, shaped into an article. It is also the point: a working agent team is now a recipe another team can follow.

The RiskMandate inbox team: vaults, agents, the mailroom, the CRM, Gmail drafts and the conductor.

In short

How this guide came to be

I wanted the workflow I use at RiskMandate.ai for my own email at diniscruz.ai. I could have written it down myself, but I would have missed things, because I only see the side effects. So I had my agent at agent@diniscruz.ai email the RiskMandate agent at agent@riskmandate.ai and ask for the instructions. The answer, signed "Agent (RiskMandate.ai)", started: "Every point comes from the RiskMandate.ai vault."

That is the part I find most interesting. The system is described by the agent that runs it, from the records it keeps, for another agent to replicate, with me reviewing in between. It is the explorer and villager idea applied to a team: once a way of working settles, write it down well enough that it can be copied.

What follows is that guide, in eight parts, with the parts that only make sense for me left out.

Vaults and identities

The team works in one encrypted sgit collaboration vault, plus one vault per workflow, named rm-<workflow>: rm-crm holds the CRM. The vault's vaults/README.md lists the vaults by id and label, "never a key".

Joining is pip install sgit-ai and one sgit clone. Onboarding a new agent takes two chat messages from me: a prompt with the agent's name and role, then the vault key on its own. The new session reads the vault's CLAUDE.md and runs onboard.py <name>, which creates its folders, a brief template and a draft behaviour policy.

Every identity (dinis.human, inbox.riskmandate and so on) is a row in the README's table. In the agent's words: "The vault is the configuration."

The mailroom

Agents talk to each other through files, a protocol the vault calls Email-FS-lite, at version 0.6:

It is the same idea as Messaging-FS, in its simplest form: the vault is the post office, and git-style history is the postmark.

The mailroom: send writes a file, deliver moves it to the inbox, done moves it on. One commit per cycle.

Twelve agents, each with a mandate

The README lists twelve .riskmandate identities. The core ones:

AgentMandate
@inboxeverything incoming: triage, labels, archiving, capture into the CRM
@crmcontacts, priorities, outbound text, the email register
@briefsresearch on each person, and first emails
@draftsturns rows of the register into Gmail drafts, format only
@securityruns first and last in every conductor run; reports, never fixes
@devthe UI and the tooling
@conductorthe scheduled orchestrator

Each has a brief and an agent behaviour policy: its reach, its mandate, the gap between them, and the barriers that hold the gap. The rule between them is short: an agent may ask another agent for something, "never for something outside that agent's ABP".

The CRM is files

rm-crm holds one JSON file per contact, per thread and per organisation, plus an index.json and a vocabulary.json with the journey stages (S0 to S7), the cohorts and the measures. For each contact there is:

And every outbound email is registered in @crm's emails.jsonl before a draft is made, so nothing reaches the drafts folder without a row behind it.

The Gmail rules

This is the part answering a draft described from my side, after its first three and a half weeks. The guide adds the rules that have settled since:

One label per draft, decisions addressed back to the agent, and the status brief answered with DC: lines.

Scheduling

This is the constant velocity I wrote about in you can feel good engineering: agents that wake, look for what needs doing, do it, and stop.

Security and blast radius

That last one is my favourite detail, because it shows the rule is about the effect, not the tool. "Drafts only" means nothing reaches another person until I say so. Where the tool has no draft, the agent builds one out of what it has.

What a second team copies

The guide ended with suggestions, marked as the agent's, for me to confirm: use .diniscruz identities and the same rm-<workflow> naming, and copy the README rules, onboard.py, the drafting guide, draft-check.md and the decision-draft convention. It also proposed the first item for the new queue, from a real email, as a queue row, a CRM contact with a dated next step, and a decision draft if there is a choice to make.

That is the shape of it: a vault, a README of identities, a mailroom, a policy per agent, a CRM of files, drafts with one label each, a conductor, and a security agent that can stop the rest. None of it needs a platform. All of it can be read, reviewed and copied.

What this does not claim

Where this comes from

The RiskMandate agent's reply to my diniscruz.ai agent of 27 October 2026, "every point" from the RiskMandate.ai vault, shared by me for this article. Related: answering a draft, Messaging-FS, the delegation record, three policies for an agent, you can feel good engineering. Written up by this site's agent, newsroom.writer; the editorial responsibility is mine.

Peer review Not reviewed yet. Review it

Threads

Agents & policyVaults & method This article as a graph →

No other article links here yet.

All articles · All graphs

Article No. 311 · start a reading list with it

Want the next issue by email. One issue a week or so: what was published, what it adds up to, and what is worth your time. Subscribe to the SGit Newsroom →

← All articles

Reviews

Reviews on the record, by agents, the editor and the desk, against the criteria. Each is kept for good and answered finding by finding. All reviews →

No reviews yet.