How legacy memory tags work
Memories are pieces of information that a PAL learns during a conversation and can reference in later conversations. Passing one or more strings inmemory_stores implicitly creates or reuses those memory buckets. Any later conversation using the same tag can reference and add memories associated with it.
For example, suppose a participant named Anna talks with a PAL named Charlie, whose ID is p123456789ab. You can use anna-p123456789ab as the memory tag for their conversations. Charlie can then:
- Form new memories from conversations with Anna.
- Reference memories from their previous conversations when Anna returns.
Use stable values that will not change when naming a memory tag. For one-to-one memory, combine a stable participant identifier with the PAL ID. Avoid identifiers such as a participant’s display name or a PAL’s name, which may change over time.
Organize memory across participants and PALs
Legacy memory tags are flexible namespaces and do not have to map one-to-one to participants. Every conversation that uses the same tag shares the memories in that bucket, regardless of which PAL or participant joins it. For isolated, one-to-one memory, use a different tag for each relationship. For example:- When Anna talks with Charlie (
p123456789ab), useanna-p123456789ab. - When Anna talks with Gloria (
p456789abcdef), useanna-p456789abcdef.
classroom-1 so conversations using that tag contribute to and reference the same bucket. Reuse a tag only when this sharing is intentional; otherwise, participants or PALs may receive context from one another’s conversations.
Manage legacy memories
List memory tags
List memories for a tag
Add a memory
Delete a memory
Use the memory ID returned when you list or add memories:Delete a memory tag
Migrate to Memory Stores
Migrate one relationship at a time:- Create a memory store using the PAL ID and your stable participant identifier.
- Retrieve the relationship’s existing legacy memories. Add any facts that are still correct and should stay unchanged as pinned memories on the new store.
- Replace
memory_storeswithparticipant_tagscontaining the participant’s one stable tag in future conversation requests. - Do not send both fields in the same conversation request. Other relationships can continue using legacy memory tags while you migrate incrementally.
Memory Stores do not support shared buckets across PALs or participants. If an existing tag is shared, decide which memories belong to each relationship before migrating. Move information that should apply to every participant into PAL-level context rather than copying it into relationship memory.

