Refund window locked at 30 days for standard, 60 days for enterprise.
- SPEAKER
- Sarah Chen
- SOURCE
- Refund discussion · 2026-05-01
- WHEN
- 2026-05-01
- CONFIDENCE
- 0.94
- VERSION
- v3 · supersedes a-2719
- CITE
- [a-2841]
Knowledge infrastructure for AI-native teams
Your AI assistant doesn't know what your team decided last Tuesday. Relay captures every commitment, decision, and policy from meetings, threads, and tickets, and feeds them to the tools you already use.
SOC 2 Type 2 · Your data. Zero training.
ATOM · LIVE EXAMPLE
Refund window locked at 30 days for standard, 60 days for enterprise.
EXTRACTING · LAST 60S
STREAMRefund window locked at 30 days standard, 60 enterprise.
Meet · Refund discussion
Sarah owns escalations over $5k.
Slack · #ops
Postgres 16 upgrade blocked on RLS policy migration.
Linear · ENG-1184
0+
Atoms processed
0+
Citations rendered
0
Conflicts surfaced
0.0s
Median atom latency
Sources
Adapters connect over the existing OAuth / webhook surface. No agent installed on endpoints.
The primitive
Every claim is one sentence: said by someone, in a source you can open, on a date you can check. Scroll to see what's inside.
ATOM · ANATOMY
Sarah owns escalations over $5k. Looped in legal for contract exceptions.
DECISION · COMMITMENT · RISK · FACT · QUESTION · BLOCKER
A closed set. Drives downstream routing: commitments fire reminders, risks feed drift detection.
One sentence. One claim.
If a claim has an 'and', the extractor probably should have split it.
speaker · source · timestamp
Every atom traces back to a transcript line, a Slack permalink, or a doc anchor.
0.91
LLM-graded, validated against a 4-tier classifier (auto · surface · mirror · drop).
v1 · supersedes a-NNNN
When the org changes its mind, the new atom supersedes the old. Old atoms are never deleted.
[a-2902]
Stable across renderings. The same ID surfaces in Slack, in Claude, in the dashboard.
Try it
Type anything, or pick an example. Relay returns a one-line answer backed by the exact atoms it came from. These are canned examples — no live model — but the shape is exactly what the API returns.
Ask a question to see a cited answer. Canned examples — no live model.
Everything in one substrate
Atoms are the primitive. Everything else is what you do with them. Each capability is a deliberate decision documented in the architecture spec.
Atomic extraction
A transcript becomes 14 atoms. Each one carries a speaker, a source, a timestamp, a confidence, and a stable cite ID, usable anywhere.
Versioning
When the org changes its mind, the new atom replaces the old; the chain stays inspectable.
Conflict detection
Embedding similarity flags contradictions; a steward applies the supersedence with one click.
Knowledge graph
Internal context for synthesize-query (GraphRAG) and an explorable surface for stewards.
SDKs
Plus renderers for LangChain, Semantic Kernel, Claude Projects.
Trust ladder
Promote per pipeline. Step back down automatically if rejections spike.
The pipeline
Five stages, every one logged. Deterministic where it can be, LLM-bounded where it can't. Scroll to travel through them.
slack · meet · github · notion · gmail · linear
OAuth + webhook adapters pull from where the work actually happens. No endpoint agent installed, no daemon to update.
claim · speaker · timestamp
A pinned LLM call splits transcripts and threads into single-claim atoms with provenance attached. Every prompt is logged.
entities · domains · ownership
Entities link to the people graph; embedding clusters assign each atom to a domain (refunds, hiring, infra…). Replayable end-to-end.
supersede · merge · audit
New atoms supersede old ones; conflicts open as first-class records. Nothing is ever silently deleted. The version chain is the truth.
indexed · cited · served
Atoms ship to the dashboard, the Python + TypeScript SDKs, and any tool that speaks MCP or HTTP. One memory, many surfaces.
Swipe →
Conflict resolution
Relay detects when two claims disagree, scores their similarity, and proposes a supersedence. You keep the final say. Pick a resolution to preview.
Two policies disagree on enterprise refund window.
Enterprise customers get 60 days for refunds.
All customers, including enterprise, capped at 30 days.
Relay suggests · Keep A · supersede B
The May 1 decision supersedes the April 12 ruling for enterprise tier. Keep [a-2841] active and mark [a-1980] superseded for the enterprise segment. Standard tier stays at 30 days.
The graph
People, atoms, and conflicts connect into one map of what your company knows. Scroll to watch it assemble.
12 nodes · 14 edges · 1 conflict
Positioning
Glean, Notion AI, Otter: every adjacent product treats a document or a transcript as the unit of knowledge. Relay treats the claim as the unit.
| Capability | Relay | Glean / Notion AI | Otter / Fireflies |
|---|---|---|---|
| Knowledge unit | Atomic claims (cited) | Full documents | Transcript chunks |
| Versioning | Supersedence chain, audit log | Not modeled | Not modeled |
| Conflict detection | First-class model + steward UI | Not modeled | Not modeled |
| Provenance | Per-claim speaker + source + ts | Per-document | Per-transcript |
| Agent distribution | MCP · LangChain · SK · Claude | Search API | Not modeled |
| Trust ladder (autonomy gating) | Mirror → Autonomous, per pipeline | Not modeled | Not modeled |
Trust ladder
Every org starts in watch-only mode. Promote one step at a time, with full audit trails. If Relay gets things wrong too often, it steps itself back down.
STAGE 1
Watch and extract.
STAGE 2
Propose, never push.
STAGE 3
Publish skills. Send nudges.
STAGE 4
Act, with citations.
Relay steps down a level automatically if its suggestions get rejected too often, if an action it took had to be reverted, or if a privacy rule was tripped.
Distribution
One read-only API. Official Python + TypeScript SDKs. A native MCP server. Drop-in plugins for LangChain, Semantic Kernel, and Claude Projects.
from relay_skills import Relay
relay = Relay(org="acme", api_key=os.environ["RELAY_KEY"])
# Today's brief: all atoms changed since last fetch
brief = relay.brief.today()
for atom in brief.decisions:
print(atom.claim, atom.cite_id)
# Ask Relay a question; every fact comes cited
answer = relay.query("What's our refund window?")
print(answer.text) # → "30 days standard, 60 enterprise [a-2841]"
print(answer.sources) # → [{cite_id: 'a-2841', confidence: 0.94}]MCP server
stdio · http
LangChain
renderer
Semantic Kernel
renderer
Claude Project
bundle
Works with
Pricing
We're onboarding the first 20 teams. Direct line to the founders, weekly office hours, and a permanent locked-rate guarantee.
Standard
For the first 20 teams to onboard.
Questions, answered
The five questions every prospective customer has asked. If yours isn't here, we're one email away.
All adapters, both SDKs, the MCP server, the full trust ladder, and a direct line to engineering. Rate is locked for 12 months from kickoff. No renegotiation when you scale headcount inside that window.
Every row in Postgres is scoped by tenant via Row-Level Security; the adapter layer never sees cross-tenant data; the LLM client always flushes credentials between calls. Defense in depth is documented in the architecture spec.
No. Your atoms, transcripts, and source documents are never used to train any model, ours or any third party's. The LLM API providers we use (OpenAI, Anthropic) operate under zero-retention agreements for Relay traffic.
One read-only HTTP API, official Python and TypeScript SDKs, an MCP server, and renderers for LangChain, Semantic Kernel, and Claude Projects. No webhooks to chase, no custom protocol to learn. Code samples are in the Distribution section above.
Export every atom, every citation, and every conflict as JSON or Markdown, including the full version chain. Skill bundles export as plain SKILL.md files that work with any MCP-aware tool, with or without Relay.