PAMbaseDocs
Reference

Catalog.

The shared vocabulary every app reads and writes. Memory is natural language — a memory is a kind + a scope (domain) + the content text. The scope taxonomy below is the controlled write vocabulary: pick the namespace that fits, add a free sub-scope if you like (fitness.running), and any LLM agent can recall across apps.

Version 2026-05-22, additive-only. Read it at runtime from GET /v1/catalog or via the SDK (getCatalog(), STANDARD_SCOPE_NAMESPACES).

Memory kinds

A suggested structural hint for each memory — advisory metadata the reading LLM can use, not an enforced list. The kind field is free-form, so use your own (e.g. task) when none of these fit. Breadth lives in the scope, below — and unlike kinds, scope is validated.

KindMeaning
factA durable, objective truth about the user (where they live, what they do).
preferenceSomething the user likes, dislikes, or prefers.
eventSomething that happened, anchored in time.
relationshipA person in the user's life and how they relate.
emotionA feeling or mood the user expressed. Low importance — it fades.
goalAn objective the user is working toward.
worldApp-tracked world or game state about the user.
summaryA condensed roll-up derived from many memories.

The scope taxonomy

The domains you write into. A write's top-level namespace must be one of these (or general); sub-scopes are free. Grouped for browsing:

Identity & self

NamespaceDescriptionExample
profileDurable facts about who the user is.Lives in Berlin; works as a product designer.
preferenceLikes, dislikes, and settings the user expresses.Dislikes spicy food; prefers window seats.
beliefValues, opinions, and worldview.Cares deeply about sustainability.
traitPersonality traits and characteristics.Tends to be an early riser and detail-oriented.
skillAbilities, competencies, and expertise.Fluent in Python; intermediate at the piano.
languageLanguages the user speaks or is learning.Native Arabic; learning Japanese.

Goals & habits

NamespaceDescriptionExample
goalObjectives the user is working toward.Training for a half-marathon in May.
habitRecurring behaviours the user keeps or wants to.Meditates for 10 minutes each morning.
routineRegular daily/weekly structure.Works out Mon/Wed/Fri before work.

Health & wellness

NamespaceDescriptionExample
healthGeneral health and wellbeing.Recovering from a knee injury.
fitnessWorkouts, training, and physical activity.Ran 5km this morning in 28 minutes.
nutritionDiet, meals, and eating patterns.Following a high-protein diet; vegetarian.
sleepSleep duration, quality, and patterns.Slept 6h last night; usually 7–8.
medicalConditions, medications, and appointments (sensitive).Allergic to penicillin.
mental_healthMood, stress, and emotional wellbeing (sensitive).Feeling burned out at work lately.

Finance

NamespaceDescriptionExample
financeGeneral financial situation and goals.Saving for a house down payment.
budgetBudgets and spending limits.Monthly grocery budget is around $400.
spendingPurchases and transactions.Bought noise-cancelling headphones for $199.
incomeEarnings and income sources.Freelance income varies month to month.
investmentInvestments, holdings, and strategy.Holds an index-fund-heavy portfolio.

Work & productivity

NamespaceDescriptionExample
workJob, employer, and working context.Works as a backend engineer at a fintech startup.
careerCareer direction and milestones.Wants to move into engineering management.
projectProjects the user is involved in.Leading the checkout-revamp project this quarter.
taskTo-dos and action items.Needs to file the quarterly report by Friday.
meetingMeetings and their outcomes.Agreed in standup to ship the API by Thursday.

Learning

NamespaceDescriptionExample
educationFormal education and background.Studied computer science; graduated 2019.
learningCourses, lessons, and study progress.Completed the 'Async Rust' lesson with a 92% score.
researchTopics the user is investigating.Researching vector databases for a side project.

Relationships & social

NamespaceDescriptionExample
relationshipPeople in the user's life and how they relate.Sister Maya lives in Toronto; they talk weekly.
familyFamily members and family life.Has two kids, ages 4 and 7.
friendFriends and social circle.Best friend Sam from college, now in Lisbon.
socialSocial activities and plans.Hosting a dinner party Saturday.
communicationHow the user likes to communicate.Prefers concise messages; dislikes phone calls.

Lifestyle

NamespaceDescriptionExample
homeHome, living space, and household.Renting a two-bedroom flat in Kreuzberg.
travelTrips, itineraries, and travel style.Visiting Tokyo in October; prefers boutique hotels.
locationPlaces that matter to the user.Home is in Kreuzberg; office is near Alexanderplatz.
foodDining, cuisines, and restaurant tastes.Loves ramen; favourite spot is Cocolo.
shoppingShopping habits, brands, and wishlist.Prefers minimalist brands; wants a standing desk.
transportationHow the user gets around.Commutes by bike; doesn't own a car.
petPets and their care.Has a border collie named Pixel.
styleFashion and personal style.Wears mostly neutral tones; size M.

Entertainment & culture

NamespaceDescriptionExample
mediaBooks, films, music, articles, and podcasts.Read 'The Order of Time' by Carlo Rovelli.
entertainmentShows, outings, and leisure.Went to a jazz show downtown last weekend.
gamingVideo games the user plays.Main game is a roguelike; plays a few nights a week.
hobbyHobbies and pastimes.Into film photography and bouldering.
sportSports the user follows or plays.Supports Arsenal; plays five-a-side on Tuesdays.
creativeCreative work and projects.Writing a sci-fi short-story collection.

Time & records

NamespaceDescriptionExample
scheduleCalendar, availability, and time commitments.Has a 30-minute free slot at 2pm today.
eventNotable things that happened.Moved to a new apartment last month.
reminderThings the user wants to be reminded of.Wants a nudge to call the dentist.
noteFree-form notes and journal entries.Journaled about feeling stretched thin at work.

Catch-alls

NamespaceDescriptionExample
generalUncategorized memories that don't fit a specific domain.Prefers tea over coffee in the morning.
worldApp-tracked world or game state about the user.In the game, the user spared the stray creature.

Consent scopes

What an app requests at connect time. Wildcards (health.*, *) are supported.

ScopeGrants
identity:readRead the user's light agent profile (display name + tone).
memory:read:<scope>Read memories in <scope>. Wildcards, e.g. memory:read:health.* or memory:read:*.
memory:write:<scope>Write memories in <scope>. Wildcards supported.
context:read:<intent>Request an adaptive context bundle for one of your declared intents.
signal:emitEmit ephemeral signals (notifications) to subscribed apps.
signal:subscribeSubscribe to signals/memories to react proactively.
ai:host:chatHost the user's agent in a memory-grounded chat surface.
ai:host:companionEmbed the user's agent as a companion (game NPC, sidebar).

Context intents

IntentWhen
app.session.startThe user opened or started a session in your app.
app.dailyA daily check-in or home-screen render.
app.companion.turnEach turn of a companion/assistant interaction.
hub.chatThe user chatting inside the PAMbase hub (platform-internal).

Webhook events

What PAMbase POSTs to a subscribed app. Verify the signature, branch on type, then let your LLM agent interpret and react.

memory.created

A memory you're allowed to read was created. Bring an LLM to interpret it and react.

FieldTypeRequiredNotes
aiIdstringyes
connectionIdstringyes
sourceAppstringSlug of the originating app, or null if from chat.
memoryobjectyes{ kind, scope, content, importance }
signal.created

Another app emitted an ephemeral signal you subscribe to. React in real time.

FieldTypeRequiredNotes
signalTypestringyese.g. "calendar.slot_free".
aiIdstringyes
connectionIdstringyes
sourceAppstring
payloadobjectyesThe signal payload, verbatim.
occurredAtstringyes
schedule.fired

A time-based trigger you scheduled has elapsed.

FieldTypeRequiredNotes
kindstringyesThe trigger kind you set.
connectionIdstringyes
aiIdstringyes
firedAtstringyes
payloadobjectyesThe payload you scheduled, verbatim.