> ## Documentation Index
> Fetch the complete documentation index at: https://docs.synheart.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Personas

> Create and manage Syni companion personas for a project on the Synheart Platform

Personas are the companion identities behind [Syni](/platform/syni)-powered experiences. Each persona defines how the assistant presents itself (its name, description, tone, safety mode, and behavioral rules) for a specific app in a project.

Open them from the project sidebar: **Personas**. The page subtitle reads *"Companion personas for syni-powered experiences in this project."*

<Note>
  Personas are configured at the **project** level and bound to an **app**. Which personas an app may actually use is controlled per app under [Syni → Persona allowlist](/platform/syni#persona-allowlist).
</Note>

## Persona types

| Type        | Editable?                 | Source                                |
| ----------- | ------------------------- | ------------------------------------- |
| **default** | No (read-only)            | Provided by the Synheart Syni service |
| **custom**  | Yes: create, edit, delete | Created by you in this project        |

Default personas always exist so an app has something to fall back on; you build **custom** personas to tailor the experience.

***

## The personas list

Personas appear as cards with a count header and a **Refresh** action. Each card shows the persona's **name**, a **type badge** (default or custom), a **Safety on** badge when safety mode is enabled, the unique **key** in monospace, its **description**, and its **tone**.

**Edit** and **Delete** appear only on custom personas. If the project has no apps yet, the create modal shows *"No apps in this project. Create an app first."*

***

## Create a persona

Click **Create persona** and complete the modal:

| Form field      | Description                                                     |
| --------------- | --------------------------------------------------------------- |
| **App**         | The app this persona belongs to (required)                      |
| **Name**        | Display name (required)                                         |
| **Persona key** | Unique key, e.g. `my.coach.v1` (required, fixed after creation) |
| **Description** | What the persona is and how it behaves                          |
| **Tone**        | The conversational tone                                         |
| **Safety mode** | Enabled by default; keeps responses within safety guardrails    |

### Behavioral rules

Optionally add **Rules**; each rule has a **Condition**, an **Action**, and a **Description**. Use **Add rule** to add more and **Remove** to drop one. Empty rules are discarded on save.

| Rule field      | Description                |
| --------------- | -------------------------- |
| **Condition**   | When the rule applies      |
| **Action**      | What the persona should do |
| **Description** | Human-readable note        |

<Note>
  Persona behavior is expressed through **description**, **tone**, and **rules**. The dashboard does not expose a raw system prompt, voice, or avatar; those are not part of the persona model today.
</Note>

***

## Edit and delete

* **Edit**: change any field except the **persona key**, which stays read-only. Editing requires the persona's app to be known (it's selected automatically for app-bound personas).
* **Delete**: *"Delete "{name}" ({key})? This cannot be undone."*

<Warning>
  Default personas cannot be edited or deleted from the dashboard. Build a custom persona instead if you need different behavior.
</Warning>

***

## How personas relate to Syni

Personas are the menu of identities; the per-app [Syni settings](/platform/syni) decide which of them an app may use:

```text theme={null}
Project Personas  →  define companions (name, tone, rules)
        │
        ▼
App → Syni → Persona allowlist  →  restrict which personas this app may use
```

An empty allowlist on the Syni page means the app may use **all** project personas. To restrict an app to specific personas, select their keys there.

***

## Next

<CardGroup cols={2}>
  <Card title="Syni" icon="robot" href="/platform/syni">
    Enable Syni per app, set the execution mode, and restrict the persona allowlist.
  </Card>

  <Card title="App policy" icon="shield-halved" href="/platform/app-policy">
    The `Allow Syni` flag that gates Syni access for an app.
  </Card>

  <Card title="Consent profiles" icon="list-check" href="/platform/consent-profiles">
    Offer Syni as a consent option to end users.
  </Card>
</CardGroup>
