---
title: "Personas: soul_document, human_profile, and avatar fields"
description: "Personas now carry the agent's structured personality, its understanding of the user, and an avatar URL — making TIE the single source of truth for all agent state across apps."
date: 2026-05-07
tags: ["TIE AI Gateway"]
---

> Documentation Index
> Fetch the complete documentation index at: https://truememory-docs.mvstg.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Personas: soul_document, human_profile, and avatar fields

Added `soul_document`, `human_profile`, and `avatar` as structured fields on the persona object. Apps no longer need to maintain local copies of personality data, user relationship context, or avatar URLs.

**What changed:**

- `POST /personas` and `PUT /personas/{id}` accept all three new fields (optional)
- All persona responses now include `soul_document` (nullable JSON), `human_profile` (nullable text), and `avatar` (nullable text)
- `GET /personas/active` returns all three fields so apps can reconstruct the full agent state without a local database

**Field semantics:**

- **`soul_document`** — The agent's structured personality document. JSON with keys `voiceAndStyle`, `antiPatterns`, `learnedAdaptations`, `boundaries`, `customInstructions`. Each is an array of `{ "text": string, "source": string }` entries. This is persona-level state (same for all sessions) — apps write this when the user edits their AI's personality.

- **`human_profile`** — Free-form text the AI writes about the specific user it talks to: goals, communication preferences, values, context. Since each user has exactly one non-preset persona, this is effectively user-scoped. Apps write this when the AI learns something meaningful about the user during conversation.

- **`avatar`** — URL of the persona's avatar image. Shared across all apps using this persona so every app shows the same avatar without maintaining a local copy.

**Why:** TIE is the single source of truth for a user's AI agent across all platform apps. Previously, personality data, user profiles, and avatar URLs lived in each app's local database, causing drift between apps. Now any app that shares a persona sees the same state without a sync step.

**Migration:** No action required. Existing personas return `null` for all three fields until updated. Apps can migrate by pushing their local values to TIE on next sync.

Source: https://truememory-docs.mvstg.com/changelog/tie-ai-gateway/2026-05-07-persona-soul-and-human-profile//index.md
