owner
The person whose context this is. Only they can approve it.
namerequiredidcontactHow the audience reaches the human, not the agent.
A relay is one JSON document, relay.context-package.v1. It carries what you’re sharing, why, with whom, and the rules for how their agent may speak for you. The product is Relay’s; the format is open, so anyone can see exactly what is shared and how it may be used.
Your intent is quoted, never paraphrased. The model’s reading sits in its own block, and you confirm it.
Stated by you, inferred by a model, or taken from a named source. Nothing unmarked.
The recipient’s agent loads the mandate before the content: what it may say, what it must ask you, what it must never do.
Every package answers the same four questions. Pick one to see its blocks and fields.
The owner, the one audience it’s written for, and what the owner wants to happen, in their own words.
owneraudienceintentThe model’s interpretation, kept apart from what the owner said, and reviewed by the owner before anything is shared.
interpretationThe context itself, and, at deeper levels, how the owner thinks about it.
contextreasoningjudgementprocessThe mandate the recipient’s agent loads first: its role, how it opens, what it must never do, and where unanswered questions go.
representationinteractionlifecycleIdentity and approval. The server overwrites the version and approval fields: an agent can draft a package, but only the owner can approve one.
schemaidtitleversiondepthapprovedByapprovedAtproducedByThe owner, the one audience it’s written for, and what the owner wants to happen, in their own words.
ownerThe person whose context this is. Only they can approve it.
namerequiredidcontactHow the audience reaches the human, not the agent.
audienceOne named recipient (a person, a team or an app), with what they already know and what they care about, so their agent pitches it right.
namerequiredkindWho receives it. An app (an integration) receives through its own agent, under the same grant, mandate, and receipts as a person.
emailConfirmed by the owner before sharing. Grants are issued to this identity.
relationshiprequirede.g. co-founder, investor, hiring manager, client
roleorganizationknowsAlready[ ]Shared ground the agent can assume. Prevents over-explaining and wrong framing.
caresAbout[ ]The owner's model of what matters to them.
likelyQuestions[ ]registerTone and level, e.g. 'direct, technical, skip the pitch'
intentWhat the owner wants to happen. statement is kept verbatim; the outcome, the ask and the priorities sit next to it.
statementrequiredThe owner's own words, unedited.
outcomerequiredtextrequiredprovenancerequiredstated = the owner's words. confirmed = drafted by an agent, accepted unchanged by the owner. corrected = drafted by an agent, changed by the owner. inferred = the agent's reading, not reviewed. sourced = taken from a named source. derived = computed by the system.
agentReadingWhen corrected: what the agent first proposed. Kept so drift between model and owner is visible.
successLooksLike[ ]textrequiredprovenancerequiredstated = the owner's words. confirmed = drafted by an agent, accepted unchanged by the owner. corrected = drafted by an agent, changed by the owner. inferred = the agent's reading, not reviewed. sourced = taken from a named source. derived = computed by the system.
agentReadingWhen corrected: what the agent first proposed. Kept so drift between model and owner is visible.
askrequiredtyperequireddetailrequiredbyWhenwhyNowtextrequiredprovenancerequiredstated = the owner's words. confirmed = drafted by an agent, accepted unchanged by the owner. corrected = drafted by an agent, changed by the owner. inferred = the agent's reading, not reviewed. sourced = taken from a named source. derived = computed by the system.
agentReadingWhen corrected: what the agent first proposed. Kept so drift between model and owner is visible.
whyThisAudiencetextrequiredprovenancerequiredstated = the owner's words. confirmed = drafted by an agent, accepted unchanged by the owner. corrected = drafted by an agent, changed by the owner. inferred = the agent's reading, not reviewed. sourced = taken from a named source. derived = computed by the system.
agentReadingWhen corrected: what the agent first proposed. Kept so drift between model and owner is visible.
interests[ ]What the owner actually needs underneath the ask (interests, not positions). This is what lets their agent find options the owner did not list.
textrequiredprovenancerequiredstated = the owner's words. confirmed = drafted by an agent, accepted unchanged by the owner. corrected = drafted by an agent, changed by the owner. inferred = the agent's reading, not reviewed. sourced = taken from a named source. derived = computed by the system.
agentReadingWhen corrected: what the agent first proposed. Kept so drift between model and owner is visible.
priorities[ ]Ordered. The first one wins a conflict.
textrequiredprovenancerequiredstated = the owner's words. confirmed = drafted by an agent, accepted unchanged by the owner. corrected = drafted by an agent, changed by the owner. inferred = the agent's reading, not reviewed. sourced = taken from a named source. derived = computed by the system.
agentReadingWhen corrected: what the agent first proposed. Kept so drift between model and owner is visible.
nonGoals[ ]What this is explicitly not about. Stops scope creep in the conversation.
textrequiredprovenancerequiredstated = the owner's words. confirmed = drafted by an agent, accepted unchanged by the owner. corrected = drafted by an agent, changed by the owner. inferred = the agent's reading, not reviewed. sourced = taken from a named source. derived = computed by the system.
agentReadingWhen corrected: what the agent first proposed. Kept so drift between model and owner is visible.
The model’s interpretation, kept apart from what the owner said, and reviewed by the owner before anything is shared.
interpretationThe restatement the owner confirms or corrects, each inference with its basis and the owner’s verdict, and the ambiguities the owner chose to leave open.
restatementrequired'Here is what I think you want', written by the agent and shown to the owner before anything else.
restatementVerdictinferences[ ]requiredidrequiredreadingrequiredWhat the agent concluded.
basisrequiredWhy: which words, sources, or patterns.
confidenceverdictrequiredcorrectionThe owner's version, when the verdict is corrected.
clarifications[ ]Questions the agent asked the owner while drafting, with the owner's answers.
questionrequiredanswerrequiredopenAmbiguities[ ]What the owner chose to leave open. The recipient agent must not resolve these on its own.
The mandate the recipient’s agent loads first: its role, how it opens, what it must never do, and where unanswered questions go.
representationThe rules. Read before the content, every time.
rolerequiredexplain = answer from the package; explore = also help the recipient think it through; advise-recipient = may give the recipient its own view, labelled; negotiate-within-bounds = may agree to changes inside elastic and soft variables only.
openingHow the recipient's agent starts. It takes the package in silently (no summary, no echo) and opens with this greeting and these starting points, then follows the recipient's lead.
greetingrequiredOne or two sentences: whose context this is, what it's about, what it's for.
starters[ ]requiredStarting points drawn from the ask. Always offered alongside 'or something else'.
speaksAse.g. 'I'm answering from the context Saurabh shared with you, version 3.'
fidelityrequiredquoteStatedIntentrequiredQuote intent.statement verbatim instead of paraphrasing it.
labelInterpretationsrequiredSay 'the owner's agent read this as…' for anything with provenance inferred.
citeSectionsrequiredextrapolationrequiredWhether the agent may reason past the package using judgement.principles, and if so, whether it must say so.
may[ ]mustAskOwner[ ]requiredTopics that are routed back to the owner as a question, never answered.
mustNot[ ]requiredwhenUnknownrequiredsay-unspecified-and-route = tell the recipient and send the question to the owner through the return channel.
passOnWhat the recipient may forward. Shareable items only; recipient-only items stay with them.
fidelityChecks[ ]Questions the audience is likely to ask, with the answer the owner approved during review. The recipient agent uses them as calibration examples, and they double as a regression test for faithful representation.
questionrequiredapprovedAnswerrequiredownerEditedinteractionWhether the recipient can only read, suggest changes, or rewrite sections, and where their questions go.
permissionrequiredreturnChannelWhere questions and proposals go. Each targets a section id.
expectedResponseWhat the owner hopes to get back, and by when.
lifecycleLive (they see each approved update) or snapshot (frozen at what they accepted), plus expiry and revocation.
moderequiredexpiresAtrefreshstaleSections[ ]grantIdrevocationUrlEvery value carries one of six labels. The recipient’s agent quotes what’s stated, and says “their agent read this as…” for anything inferred. Highlighted: the labels that mean the owner saw it.
How much was captured. Each level adds to the one before.
How far each parameter can move in a conversation.
From answering only, to agreeing to changes inside the bounds you set.
Per section or claim.
Validate packages against the schema, read the worked example, or teach your own agent to prepare relays.
Draft 2020-12. What the server validates on every draft.
/schema/relay.context-package.v1.json
A launch plan relayed to a co-founder, at full depth.
/schema/example.json
What to capture, how not to make things up, and the quality check.
/schema/extraction.md
Instructions any agent can follow to prepare a relay.
/schema/skill.md