I

Iris

Personal AI assistant · Stella module

Your inbox, managed.
Your voice, preserved.
Your time, returned.

Iris is a dedicated AI personal assistant for every manager in your school. She reads your email, drafts replies in your voice, and sends nothing without your approval — while learning your style, your relationships, and your patterns every single day.

🌈

Why Iris? In Greek mythology, Iris was the goddess of the rainbow and divine messenger — carrying communications between gods and humans with precision and grace. Clean, international, and easy to pronounce in Italian, English, Irish, and every language across our markets.

I
Iris · Approval request

#iris-rosanna · personal approval channel

Iris · 08:14
New email from Lorenzo Bianchi — Università di Bologna. He's asking about accommodation options for 12 students arriving 14 July. I've pulled the group record from Stella.

Draft ready — reads as you, references the accommodation options we have confirmed for that window.
✅ Send
✏ Edit
Skip
You
Send it. Also ask him to confirm dietary requirements.
Iris
Updated and sent ✓ — added dietary question. Monitoring for reply. I'll flag if he confirms or asks anything else.
The concept

Not a shared inbox tool.
A personal assistant for each manager.

Every manager who uses Iris gets their own dedicated PA instance — not a shared service, not a chatbot anyone can access. Stella spins up a private "job shadow" for each person: an agent that knows their role, their contacts, their writing style, and their recurring patterns.

Iris operates with delegated authority. She can send email on your behalf — but only after you tap ✅. That is a meaningfully higher trust level than any other Stella module, and it is why Iris is designed the way she is: every action visible, every draft reviewable, every send logged.

The more Iris works with someone, the better she gets. Every approved draft she sends without edit reinforces her model of that person. Every edit teaches her something new. Over time, the gap between what she drafts and what you would have written closes — until the approval tap becomes genuinely effortless.

What each Iris instance owns
📬
A dedicated email presence

Either a dedicated PA address (e.g. rosanna.pa@school.ie) or monitoring the manager's own inbox via IMAP alongside them — transparent, auditable, always visible.

🧠
Personal knowledge base

Role, contacts, writing style, recurring topics, relationship map — built from the sent folder and continuously updated from live inbox and Stella context.

💬
A private approval channel

One Zulip thread (or Telegram chat) exclusively for that manager. Every draft, every notification, every briefing arrives there — and only there.

🔗
Stella context inheritance

Iris knows your school because she inherits Stella's knowledge layer — policies, timetables, group records, room availability, pricing, staff contacts.


What Iris does autonomously

Running in the background.
Always watching. Never overstepping.

Iris monitors the inbox continuously and acts on what she finds — drafting, classifying, and briefing — all before the manager opens their laptop in the morning.

📥

Classifies every incoming email

Action needed · FYI only · Ignore safely. Each classification is logged. The manager sees a triage, not a flood. Iris learns which calls she gets right and adjusts.

✍️

Drafts replies in your voice

Using your sent folder history, your relationship with this contact, and Stella's organisational context, Iris drafts a reply that sounds like you wrote it — because in every meaningful sense, you taught her how.

📲

Sends to your approval channel

Draft + original email + research summary arrive in your private Zulip thread. One tap to send. One tap to edit. Nothing goes without your sign-off.

📋

Produces a morning briefing

"You have 7 unread. 2 need action: Lorenzo Bianchi re July group and Ana re room 3 change. 3 are FYI. 2 can safely wait." Five bullets. Every morning. Ready before you arrive.

🗓️

Monitors calendar and CRM for context

When an email arrives from a contact who has a group arriving next Monday, Iris already knows. Her draft reflects that context — before you have to explain it to her.

📈

Learns from every correction

Few-shot style: every edit you make to a draft is stored in Iris's per-user memory. Over weeks, her drafts require less editing. Over months, the approval tap becomes a formality.


On-command capabilities

Tell Iris what you need.
She handles the rest.

Beyond autonomous monitoring, Iris responds to direct requests through your approval channel — pulling from Stella, CRM, and calendar to act immediately.

What you can say to Iris

"Organise a welcome meeting for the Bologna group arriving Monday"

Iris pulls the group record from Stella CRM, identifies who needs to be notified, drafts the coordination emails, and sends them all to your approval channel — one tap per email.

"Tell Ana the B2 class is moving to room 3"

Iris looks up Ana's email, drafts a short message in your voice, sends it to approval. Tap ✅. Done. Total time: 4 seconds.

"Summarise what's unread"

A structured five-bullet briefing arrives within seconds — sender, topic, urgency, and whether a draft is already waiting.

"What do we know about Lorenzo Bianchi?"

Iris queries the Stella CRM, your email history, and any outstanding context — returning a structured summary of the relationship before you reply.

"Draft a follow-up to anyone we haven't heard from this week"

Iris reviews outstanding threads, identifies non-responses, and queues follow-up drafts in your approval channel — batched, reviewable, ready to send.

What Iris does without being asked

Morning briefing, every day

Delivered before 8am: unread count, action items, FYI items, and anything Iris flagged as time-sensitive overnight.

Real-time draft on every new email

Within minutes of an email arriving, Iris has read it, classified it, cross-referenced it with Stella, drafted a reply, and sent it to your approval channel — waiting for you.

Escalation flagging

Anything that looks urgent — a complaint, a visa question, a group change with less than 48 hours notice — is flagged immediately, not batched into the morning briefing.

Memory compression loop

Every 20 minutes, Iris runs a quiet background update — compressing new inbox and calendar signals into her per-user knowledge base, so her context never goes stale.


How Iris learns you

The founding moment.
And everything that follows.

Every Iris instance begins with a one-time ingestion of the manager's sent folder — the purest available signal of how that person communicates. From there, learning never stops.

P1

Sent folder ingestion — the founding scan

On setup, Iris connects to the manager's email via IMAP and pulls every message ever sent. Signatures, quoted text, and forwarded content are stripped away. What remains is pure voice — every word that person chose to write, to every person they chose to write it to, in every context they have faced over years of work.

This corpus is embedded into a private Qdrant namespace under iris:{user_id}:sent — chunked, searchable, owned exclusively by that Iris instance.

From this corpus Iris learns: writing style (formal or casual, sentence length, sign-off patterns, emoji use or deliberate absence) · relationship map (who they email most, how they address different people — "Hi James" vs "Dear Prof. Murphy") · decision patterns (what they approve, what they delegate, what they escalate) · recurring topics and how they are typically handled.

P2

Stella context inheritance

Alongside the personal knowledge base, every Iris instance pulls from the shared Stella namespace — the organisational brain of the school. Policies, room layouts, class schedules, group records, agent contacts, pricing, Erasmus programme details — everything Stella knows, Iris inherits.

An Iris instance for an accommodation manager inherits different context from one for a Director of Studies. Stella's RAG is role-aware, not flat.

P3

Ongoing inbox monitoring and learning

From go-live, Iris watches the live inbox continuously. Every approved draft she sends without edit reinforces her model of that person. Every edit teaches her something new — a preferred phrase, a corrected tone, a relationship nuance she had missed.

A memory compression loop runs every 20 minutes server-side — compressing new signals from inbox, calendar, and CRM into the per-user knowledge base so context stays current without growing unbounded.

The goal: over weeks, drafts require fewer edits. Over months, the approval tap becomes genuinely effortless for known contact types. Trust is earned, not assumed.

The approval loop

Iris never sends
without your thumbs-up.

The approval loop is the core UX of Iris — and it is non-negotiable at launch. Every draft, every action, every send requires explicit human sign-off. This is not a limitation — it is the feature that makes delegated authority trustworthy.

The approval channel — a private Zulip thread or Telegram chat — is the manager's single pane of glass. Every Iris action arrives there: the original email, the draft reply, the research context. One tap to send. One tap to edit. One tap to skip.

Edits are not wasted. Every correction flows back to Iris as a learning signal. The more consistently a manager approves without editing, the more accurately Iris reflects them.

Over time, as trust is established for specific contact types or message categories, certain actions can be promoted to auto-send — for example, FYI-only acknowledgement emails after a month of zero corrections. Each promotion is explicit and reversible.

L1
Always approve (launch default)

Every draft requires explicit approval. Nothing is sent automatically. Full human control.

L2
Auto-send FYI category

After 30 days of zero corrections on FYI-only replies, that category may be promoted to auto-send. Explicit opt-in per manager.

L3
Auto-send known contacts (future)

Specific recurring contacts — where the pattern is well-established and corrections have been zero — may be trusted fully. Roadmap feature.

Live approval example
#iris-rosanna · Iris personal approval channel
Iris · 08:22
New email — Lorenzo Bianchi, Università di Bologna.
Confirming 12 students, arriving 14 July. Asking about accommodation options and airport transfer.

I've pulled the group record. Accommodation is confirmed at East Wall Road residence. Airport transfer — we use Dublin Express, I have their current rates from Stella.

To: lorenzo.bianchi@unibo.it
Re: Bologna group July — accommodation & transfer
"Dear Lorenzo, great news on the group confirmation. We have accommodation confirmed for all 12 students at our partner residence on East Wall Road — single and twin rooms as discussed. For airport transfer, we recommend Dublin Express who we work with regularly; current rate is €18 per person from Terminal 1. I'll have a full welcome pack ready for your group leader on arrival..."
✅ Send
✏ Edit
Rosanna · 08:24
✅ Send — and add that we'll send a detailed arrival guide next week.
Iris · 08:24
Sent ✓ — added the arrival guide note. I'll remind you Thursday to prepare it. Monitoring for reply from Lorenzo.

Technical architecture

Per-person. Private. Inside Stella.

Every Iris instance is fully isolated. No shared model. No shared memory. No shared namespace. Each manager has their own private AI — running inside the school's Stella deployment.

Per-user Qdrant namespace

Each Iris instance writes to its own isolated vector namespace in the school's Qdrant instance. No manager's sent folder, relationship map, or correction history is visible to any other Iris instance.

iris:{user_id}:sent · iris:{user_id}:memory

Per-user SQLite memory

Correction history, approval patterns, contact relationship data, and trust level configuration are stored in a per-user SQLite database. Compact, portable, and fully owned by the school.

iris_{user_id}.db

Stella shared namespace

Alongside the personal namespace, every Iris instance can query the school's shared Stella RAG — for organisational context, policies, schedules, and group records — without cross-contaminating personal data.

stella:{school_id}:shared

IMAP inbox monitoring

Iris connects via IMAP to monitor the inbox. This can be a dedicated PA address or the manager's own account. Either way, the connection is read-write (for draft saving) but sends only happen through the approval loop.

IMAP · SMTP · OAuth2 where supported

Memory compression loop

Every 20 minutes, a server-side process compresses recent inbox, calendar, and CRM signals into a rolling summary stored in the personal namespace. Context stays current; storage stays bounded.

20-min cycle · LLM summarisation · Qdrant update

Approval channel integration

Drafts and notifications flow through Zulip (for schools on the Stella platform) or Telegram. The approval channel is per-user, private, and the exclusive communication path between Iris and her manager.

Zulip DM · Telegram · Extensible

Iris in action

What a conversation with Iris looks like

you → Organise a welcome meeting for the Bologna group arriving Monday
Iris: I've pulled the Bologna group record — 12 students, arriving 14 July, contact is Lorenzo Bianchi. I'm drafting: (1) welcome email to Lorenzo with arrival instructions, (2) internal note to reception, (3) room assignment email to accommodation. Three drafts arriving in your channel now — approve in any order.
you → Summarise what's unread
Iris: 9 unread. Action needed: Lorenzo Bianchi (Bologna arrival logistics, draft ready) · Spanish agency re new group Sept (needs price quote, pulling rates now). FYI: 3 booking confirmations, 1 Erasmus circular. Safely ignorable: 2 newsletters. Morning briefing sent separately.
you → Tell Ana the B2 class is moving to room 3
Iris: Draft ready in your channel — short, friendly, signed as you. Ana is in your "close colleague" relationship group so I've kept it informal. Tap ✅ and it fires immediately.
you → What do we know about the Valencia university contact?
Iris: Dr. María López, International Office, Universitat de València. Last contact 3 months ago — you sent a follow-up that she didn't reply to. Leo has her in the Erasmus campaign (sent 6 weeks ago, opened, no reply). Group history: sent 8 students in 2024. Warm but slow to respond — suggest a personal note from you rather than another Leo template.
What makes Iris different

The first Stella module that learns an individual.

Every other Stella module operates from a fixed policy or shared knowledge base. Iris is different.

Rachel knows how to assess a student. Sarah knows how to explain grammar. CLARA knows how to plan a lesson. Leo knows how to run a campaign. All of them operate from a shared understanding of the school — not from a personal understanding of an individual.

Iris learns a specific person — their voice, their relationships, their patterns, their preferences. The per-user namespace, the sent folder ingestion, the correction-based learning: these are architectural decisions that exist precisely because no two managers communicate the same way.

That is also why the trust model matters. Iris operates with delegated sending authority — the first Stella module to do so. That requires a more careful, more explicit, more auditable approval architecture than any other module in the suite.

Before and after Iris
Before

Open 40 emails, decide what needs a reply, draft each one, send

After Iris

Open your approval channel, tap ✅ eight times, done

Before

Look up group arrival details before replying to a coordinator

After Iris

Iris already pulled the group record and wrote it into the draft

Before

Someone emails on a Saturday — no reply until Monday morning

After Iris

Draft ready in your channel within minutes — send when you're ready

Before

Remember to follow up on four outstanding threads from last week

After Iris

Iris flagged them in Tuesday's briefing with follow-up drafts queued

Before

Write a welcome meeting coordination email across six recipients

After Iris

"Organise a welcome meeting for the Bologna group" — drafts arrive in 30 seconds

Privacy & data

Personal data. Treated personally.

Iris handles the most sensitive data in your school — personal emails, relationship context, individual communication patterns. That is why the architecture is as strict as it is.

🔒

Per-user namespace isolation

Each manager's Iris instance writes to an isolated Qdrant namespace. No data leaks between users. No shared context. Complete separation at the vector store level.

🖥️

On-premises NVIDIA hardware

All AI processing happens on the school's own hardware. Sent folder embeddings, inbox classification, draft generation — none of it touches an external AI provider.

📋

Full audit trail

Every draft, every approval, every send, every correction is logged. You always know what Iris sent, when, and whether it was edited. Permanent, local, auditable.

🇪🇺

GDPR by architecture

Email data is processed locally. No personal communication leaves the school's infrastructure. Consent and data access rights are manageable at the per-user level.

👁️

Always visible to the manager

Iris's approval channel means the manager always sees every action before it happens. There are no background sends, no hidden decisions, no invisible automation.

🗑️

Deletable on request

The per-user namespace and SQLite database can be fully deleted at any time — wiping all learned context while leaving other Iris instances and Stella unaffected.

Iris

The Buongiorno data commitment — applied to Iris

Every Iris deployment runs on your school's own NVIDIA hardware. Sent folder data, inbox content, personal communication patterns, and relationship context are processed on-site and stored locally — never transmitted to external AI providers, never shared between schools, never used to train any model outside your infrastructure.

Ready to give your team
their own Iris?

Iris is a Stella module available to any Buongiorno deployment. Get in touch to discuss an implementation at your school.

iris@buongiorno.ie See the full Stella platform