Core Concepts
Personas
Personas are structured identity memories that help your AI understand who you are, what you prefer, and how you work. Instead of repeating your background and preferences in every conversation, save them once and load them whenever you need personalized responses.
What is a Persona?
A persona is a collection of facts about a person — their role, preferences, communication style, constraints, and interests. Your AI uses these facts to tailor its responses without you having to re-explain yourself.
For example, a persona might include:
- You're a software engineer at a fintech startup
- You prefer concise responses without pleasantries
- You value pragmatic solutions over theoretical perfection
- You're currently focused on shipping a billing integration
Memory Types
Each fact in a persona has a type that describes what kind of information it is:
- identity — role, background, job title ("software engineer at Acme Corp")
- preference — likes and dislikes ("prefers concise responses")
- philosophy — beliefs and values ("values shipping over perfection")
- constraint — limitations and rules ("never deploy on Fridays")
- context — current situation ("currently focused on billing integration")
- interest — topics and hobbies ("interested in distributed systems and chess")
Creating Persona Facts
Single Fact
Add individual facts through conversation:
"remember that I prefer concise responses without pleasantries"
Or with explicit tool syntax:
persona(action="create",
persona_name="Jordan",
memory_type="preference",
content="Prefers concise responses without pleasantries")
Batch Creation
Add multiple facts at once using the facts array:
persona(action="create",
persona_name="Jordan",
facts=[
{subj: "Jordan", pred: "works_as", val: "software engineer"},
{subj: "Jordan", pred: "prefers", val: "direct communication"},
{subj: "Jordan", pred: "values", val: "pragmatic solutions over theoretical perfection"},
{subj: "Jordan", pred: "focused_on", val: "billing integration"}
])
Batch creation is useful when setting up a persona for the first time — add everything your AI needs to know in one go.
Loading Personas
Load a persona at the start of a conversation to give your AI context about who it's working with:
"load my persona"
persona(action="load", names=["Jordan"])
Format Options
Control how the persona is presented to your AI:
- prose — a natural language narrative ("Jordan is a software engineer who prefers...")
- compact — structured key-value format
- both — both formats together
persona(action="load", names=["Jordan"], format="prose")
You can load multiple personas at once:
persona(action="load", names=["Jordan", "TeamDefaults"])
Listing Personas
See all persona names you've created:
persona(action="list")
This returns the names of all personas, which you can then load individually.
Use Cases
Personalized Responses
With a loaded persona, your AI adapts its tone and style automatically. If your persona says you prefer concise responses, you won't get lengthy explanations unless you ask for them.
Consistent Tone Across Sessions
Without a persona, your AI starts fresh every conversation. With one, it picks up right where you left off — same communication style, same awareness of your role and preferences.
Context-Aware Suggestions
When your AI knows your current focus ("billing integration") and your constraints ("never deploy on Fridays"), its suggestions are more relevant and actionable.
Team Personas
Create a shared persona for team defaults — coding standards, review processes, deployment rules — and load it alongside your personal persona.
API Reference
For the full technical reference including all parameters and options, see persona Tool Reference.