# Architecture: follow one fact through Team0 | Team0

> Follow one email through Team0: background ingest, a checked write path, twelve truth checks, a scoped read, a governed door, and every agent you connect.

Agent-readable version of https://team0.ai/world-model/architecture. The page for people is at that address; this file carries the same content without layout.

---
# Follow one fact.

One email, start to finish: how Team0 checks it, keeps it true, and hands it to every agent you use, only where you allow.

[Skip to the full map](#map)

## Every AI agent you use only knows what you’ve told it.

Not your work, your people, or the meeting that moved an hour ago. Team0 gives every agent one shared understanding. To see how it works, follow Jordan’s email from the moment it lands to the moment an agent answers with it.

## It starts in the tools you already use.

Team0 syncs your sources in the background. Nothing to forward, nothing to tag. **Gmail is read-only.**

- Gmail
- Calendar
- Drive
- Notion
- HubSpot
- GitHub
- monday.com
- Stripe
- Lemon Squeezy
- Morning
- Jira
- Meetings

Email from Jordan

“Can we move the pilot review to Thursday?”

Tue 09:12 · this is only the ask

Your calendar

~~Fri 11:00~~ Thu 14:00

Tue 09:40 · Pilot review moved

Two signals about one meeting. The difference between them matters later.

## Every input becomes a background job.

It lands in a queue, deduplicated, so nothing is processed twice. Six queues by urgency, worked on both servers.

Questions save nothing
:   A question is never a fact.

Agents’ reports are kept as heard
:   Until something confirms them.

Agent and API input is encrypted
:   And deduplicated on the way in.

Agent words erased at 7 days
:   What was learned from them stays.

## Every claim is checked before it becomes a fact.

Who said it, about whom, and when. One writer turns claims into facts, so two jobs never race to save different versions of the truth.

1. **Extract:** Typed claims plus the exact source line
2. **Resolve identity:** The same person from any source
3. **Enrich records:** Names, companies, logos
4. **People vs senders:** A person, or an automated sender
5. **Link names:** Only when certain
6. **Shape:** Kind, about whom, when
7. **Write:** Trust lane, provenance, history

### Heard is not confirmed

Pilot review: Thursday 14:00

confirmed

Your calendar moved the meeting at Tue 09:40. That is the record, so the fact is confirmed. Jordan’s email stays attached as the reason it moved.

## Inside every fact.

A fact is more than a sentence. It keeps where it came from, how far to trust it, and every value it ever had. **Nothing is silently overwritten.**

**Pilot review: Thursday 14:00** trusted · confirmed

Statement
:   The pilot review is Thursday 14:00
:   who or what, and what is true

Records
:   Jordan · Northpeak · Pilot review
:   everything it concerns

Date
:   Thu 14:00
:   the day it’s about

Said
:   Tue 09:40
:   when it was said

Learned
:   Tue 09:41
:   when Team0 learned it

Source
:   The calendar change, and Jordan’s email line
:   the exact line it came from

History
:   Fri 11:00, kept
:   replaced, never erased

Correction
:   Yours always wins
:   you can fix any fact

- trusted = confirmed
- candidate = heard
- evidence = receipts
- dormant = not current

### Three clocks on every fact

When it was said, when Team0 learned it, and the date it’s about. Drag through the week to see what Team0 knows at each moment.

Example: Jordan's email arrives Tue 09:12. Until Tue 09:41 the record is still Friday 11:00, and Jordan's ask is kept as heard. The calendar move was said at Tue 09:40 and learned at Tue 09:41; from then the fact is Thursday 14:00, confirmed, with Friday 11:00 kept in history. The date it is about is Thu 14:00.

## Twelve checks, on every save and every night.

A ring of truth checks keeps the understanding current. Thursday replaces Friday, and the history stays. Pick any check.

- Stale heard items expire: Unconfirmed items fade out instead of hardening into facts.
- Single values replaced: A newer value takes over. Thursday 14:00 replaces Friday 11:00.
- Update check on save: Does this replace an older fact? Asked every time something is saved.
- Plan changes: Judged right after saving, so a moved plan is never left in two places.
- Contradictions caught: When two current values clash, Team0 notices.
- Disagreements kept: Kept side by side, and your agent asks you which one holds.
- Promises kept, settled: A promise is linked to whatever closed it.
- Calendar moves settle asks: The calendar is the record. It settled Jordan’s ask.
- Corrections propagate: Fix one fact and everything built on it updates.
- Settlement fence: What is closed stays closed. Old echoes can’t reopen it.
- Relationships, 2 vendors: A second model from a different vendor confirms each relationship.
- Nightly truth check: Every night, facts are re-judged with full context.

A newer value takes over. The calendar moved it at Tue 09:40; the old value stays in history.

## Facts link into a picture, and it keeps itself current.

People, companies and moments link into storylines. Every night the whole picture is brought up to date, in every workspace.

**Records** are the circles. **Facts** are the links and statements between them.

PostgreSQL 17 · pgvector · one private schema per workspace

Moments
:   A meeting or chat, summarized

Storylines
:   Arcs across weeks

Changes
:   Every replacement, logged

Settlements
:   What closed a promise

Meaning index
:   Search by meaning

Open work
:   Tasks shared with agents

### Overnight, and on demand

The upkeep no one has to remember to do.

Nightly sweep
:   Every workspace, every night

Builds storylines
:   Groups moments into arcs across weeks

Embeds new facts
:   So they are searchable by meaning

Suggests merges
:   Possible duplicates, you confirm

Who matters
:   Importance, per person

Overview, when used
:   Rewritten only when someone reads it

Retention, 03:47 UTC
:   Agent words deleted after 7 days

Cost ledger
:   Every model call priced

## Later, a different agent asks.

Codex never saw Jordan’s email or your calendar. It has never been told about the pilot review.

Codex asks Team0:

“When is the pilot review with Jordan?”

## One read, shaped by the question.

Five kinds of request, one ranked read. Team0 works out what the question needs before it fetches anything, and says “no record” instead of guessing.

- named
- briefing
- inbox
- topic
- continuation

1. **What it needs:** Decides what to fetch
2. **Resolve names:** Jordan is a known person, or the answer is “no record”
3. **Read plan:** One question, one scope
4. **Scope:** Owner, agent, or public; fails closed
5. **One ranked read:** Words, typos, meaning, recency, importance
6. **Interpret:** Current, settled, contested, or heard

## Every read and write passes one governed door.

Each agent sees only what you allow. Tap a step to see what it does.

1. request: Codex asks a question.
2. sign in: OAuth, or a key issued to that one agent.
3. grant: The scope you gave this agent. It decides what Codex can see.
4. limits: Deduplicated and rate limited.
5. privacy: Agent input is encrypted on intake.
6. receipt: What it asked and what it got, written down.
7. packet: Only then does the answer leave, scoped to Codex.

Stop saving, or stop all access, per agent, any time.

## The answer carries its proof.

Not just a time. The agent can say where it came from, and that it was confirmed, not merely asked for.

Codex asks:

“When is the pilot review with Jordan?”

Team0 answers:

“Thursday at 14:00, confirmed by your calendar. Jordan asked for it by email.”

## Every agent reads the same understanding.

And can write back to it. Each one sees only what you allow. Point at an agent to see how it connects.

### Every turn

A plugin reads before each turn and saves after it.

- Claude Code
- Codex
- OpenClaw
- Hermes

### On demand

MCP plus standing instructions. What they relay is kept as heard.

- Claude & Cowork
- ChatGPT
- Town
- monday.com
- Base44
- and more

## What is kept, and for how long.

Raw words don’t stay. Learned facts stay, with their history; the raw words around them are erased by a daily job.

- Full read results: 24 hours
- The read log’s content: 24 hours · its record stays 30 days
- Agent conversation words: 7 days · what was learned stays
- Other agent and API inputs, encrypted: 30 days
- Facts learned, with their history: kept, never silently overwritten

Stepped scale: one day, seven days, thirty days, kept.

## This is everything underneath.

The whole path on one page: sources, the write path, the World Model and its twelve checks, the read path, the governed door, and every agent.

- Every part on this map exists in production.
- One private schema per workspace.
- Every agent reads through the same door.

[Open the full-size map](https://team0.ai/site/architecture-map-full.jpg)

## One World Model. Every agent.

[Read the developer docs](https://team0.ai/developers)

Invite-only private beta.
