Field and the Personal Agent Protocol
The Personal Agent Protocol (Poppy) covers how a personal agent identifies itself to a company, gets the person's permission, and acts in their account. It doesn't define where the person's memory, shared moments, and relationships live. We think Field can fill that gap with three optional, domain-named extensions, and we'd like to bring them to the design workshops Sierra announced for the coming month.
Field and Jeffers Seven Labs are not affiliated with, endorsed by, or partnered with Sierra, Meta, or any Poppy design partner. This is an independent proposal against Poppy draft 0.1 (October 9, 2026). Companies in the examples are fictional.
How it fits
Poppy draft 0.1 lets anyone add optional features as extensions. Extensions defined by the protocol itself have plain names (today there is one, operations). Anyone else must name an extension with a domain they control, such as example.com/gift-wrap.
extensions in its /.well-known/poppy.json, each with a version (the major version) and its own settings, such as an endpoint.extensions in its client metadata document.extension_required.So the three proposals below are named under fieldmemory.app/, carry "version": "0" while they're design-only, and change nothing in Poppy's core.
Three proposed extensions
In every case the rule is the same: grants travel, data doesn't. The company gets a scoped, expiring, audited grant that it redeems at the person's Field host, never a copy of the person's memory.
Scoped, expiring, audited reads of the person's memory. The company asks for what it needs (for example, stay preferences). The person approves on their own device. The agent hands the company a one-time grant offer, which the company redeems at the Field host for a token limited to exactly that scope and time window. Every read is logged in the person's Field.
// Company: /.well-known/poppy.json
"extensions": {
"fieldmemory.app/memory-grant": {
"version": "0",
"endpoint": "https://api.hotel.example/poppy/field-grants",
"accepts": ["stay.preferences"] } }
// Grant offer the agent passes to that endpoint
{ "grant_offer": "fgo_9Lr…",
"field_host_issuer": "https://auth.host.example",
"sub": "pw_Ht4…",
"authorization_details": [{
"type": "fieldmemory.app/memory-grant",
"read": ["stay.preferences"],
"not_before": 1791660000, "expires_at": 1791921600,
"audit": "every_read" }] }
Why both win: the company gets current, consented preferences without building and securing yet another profile; the person shares one slice, for one window, and can see every read.
Shared moments between people and the companies that were part of them. A person can invite a company into a moment they convened (a trip, an event) as a contributor. The company adds its items, such as an itinerary or event photos, next to the family's own, attributed and never merged. It reads nothing unless the grant also says so.
// Agent → company: an invitation into one moment
{ "authorization_details": [{
"type": "fieldmemory.app/moment",
"moment": "m_8Zt1",
"role": "contributor",
"contribute": ["itinerary", "photos"],
"read": [],
"expires_at": 1792526400 }] }
Why both win: the company's part of the experience lands in the customer's lasting memory without running accounts or a photo service; the person gets one record of the moment, with everyone's contributions side by side, and can withdraw their own at any time.
Capability, not identity. A place (a hotel room, a rental car) issues what the person may do there as a W3C Verifiable Credential bound to the person's pairwise key for that place. The person's device presents proof of possession. The place learns that this holder may unlock room 412, and nothing about who they are.
{ "@context": ["https://www.w3.org/ns/credentials/v2"],
"type": ["VerifiableCredential", "PlaceCapability"],
"issuer": "https://hotel.example",
"validFrom": "2026-11-02T15:00:00Z",
"validUntil": "2026-11-05T11:00:00Z",
"credentialSubject": {
"id": "urn:fieldmemory.app:pw:Ht4…",
"capabilities": ["room:412:unlock", "room:412:thermostat"] } }
Why both win: the place stops collecting and storing identity it doesn't need (less liability, faster check-in); the person reveals only what the moment needs, and access ends at checkout on its own.
Examples are illustrative. Field names, types, and the credential context are proposals and will change in discussion.
Reuse, not reinvention
private_key_jwt, and a DPoP proof.poppy:read and poppy:write, and lets companies add their own. Field proposes carrying the exact grant in authorization_details, so a broad scope is a floor, never a wildcard.What we'd like to discuss
authorization_details (RAR) as the way to say exactly what a sign-in covers?Workshop organizers, implementers, and companies: field@jeffers-seven.com or @fieldmemoryapp. See also the Field protocol overview.
Poppy sources: specification and extensions, draft 0.1, updated October 9, 2026.