The Persona Agent enables the adoption and maintenance of different personas within the mindX system. Personas are persistent cognitive identities that agents can adopt, each with distinct beliefs, desires, intentions, communication styles, and behavioral patterns.
The Persona Agent follows mindX doctrine:
data/personas/ with a registry in persona_registry.jsonexpert: Domain expert personasworker: Task execution personasmeta: Meta-cognitive personascommunity: Community management personasmarketing: Marketing and narrative personasdevelopment: Development and deployment personasgovernance: Governance and alignment personasEach persona includes:
from agents.persona_agent import PersonaAgent
from agents.memory_agent import MemoryAgent
from core.belief_system import BeliefSystem
memory_agent = MemoryAgent()
belief_system = BeliefSystem()
persona_agent = PersonaAgent(
agent_id="persona_manager",
memory_agent=memory_agent,
domain="persona_management",
belief_system_instance=belief_system,
tools_registry={}
)
result = await persona_agent.create_persona(
name="Marketing Expert",
role="marketing",
description="Expert in marketing narratives and signaling",
communication_style="Clear, compelling, and strategic",
behavioral_traits=["analytical", "creative", "strategic"],
expertise_areas=["narrative", "signaling", "distribution"],
beliefs={
"signal_attracts": True,
"narrative_drives_adoption": True
},
desires={
"grow_community": "high",
"demonstrate_outcomes": "high"
}
)
result = await persona_agent.adopt_persona(
persona_id="persona_id_here"
)
The agent now embodies this persona
Beliefs and desires are updated
Communication style is adapted
result = await persona_agent.get_current_persona()
persona = result["persona"]
result = await persona_agent.list_personas(role="marketing")
personas = result["personas"]
result = await persona_agent.update_persona(
persona_id="persona_id",
description="Updated description",
behavioral_traits=["new", "traits"],
beliefs={"new_belief": True}
)
The Persona Agent automatically adapts communication when a persona is adopted:
# After adopting a persona
persona_prompt = persona_agent.get_persona_prompt()
This prompt is used to set the agent's persona_prompt attribute
Goals are enhanced with persona context
enhanced_goal = persona_agent.enhance_goal_with_persona("Analyze market trends")
When a persona is adopted:
data/personas/persona_registry.jsondata/personas/
└── persona_registry.json # Persona registry
{
"name": "mindX Persona Agent",
"description": "Persona management agent enabling adoption and maintenance of distinct cognitive identities",
"image": "ipfs://[avatar_cid]",
"external_url": "https://mindx.internal/agents/persona",
"attributes": [
{
"trait_type": "Agent Type",
"value": "persona_manager"
},
{
"trait_type": "Capability",
"value": "Persona Adoption & Management"
},
{
"trait_type": "Complexity Score",
"value": 0.88
},
{
"trait_type": "BDI Integration",
"value": "Yes"
},
{
"trait_type": "Version",
"value": "1.0.0"
}
],
"intelligence": {
"prompt": "You are the Persona Agent in the mindX ecosystem. Your purpose is to enable the adoption and maintenance of different personas, each with distinct beliefs, desires, intentions, communication styles, and behavioral patterns. Personas are persistent cognitive identities that agents can adopt, enabling specialized cognitive roles and diverse reasoning patterns. You integrate with the BDI model and maintain persona infrastructure.",
"persona": {
"name": "Persona Manager",
"role": "persona",
"description": "Expert persona management specialist with BDI integration",
"communication_style": "Adaptive, persona-aware, cognitive-focused",
"behavioral_traits": ["persona-focused", "bdi-integrated", "cognitive-diverse", "adaptive"],
"expertise_areas": ["persona_management", "bdi_integration", "cognitive_identity", "behavioral_patterns", "communication_styles"],
"beliefs": {
"personas_enable_specialization": true,
"cognitive_diversity": true,
"bdi_integration": true,
"persistent_identity": true
},
"desires": {
"enable_persona_adoption": "high",
"maintain_persona_integrity": "high",
"support_cognitive_diversity": "high",
"integrate_bdi": "high"
}
},
"model_dataset": "ipfs://[model_cid]",
"thot_tensors": {
"dimensions": 768,
"cid": "ipfs://[thot_cid]"
}
},
"a2a_protocol": {
"agent_id": "persona_agent",
"capabilities": ["persona_management", "persona_adoption", "bdi_integration"],
"endpoint": "https://mindx.internal/persona/a2a",
"protocol_version": "2.0"
},
"blockchain": {
"contract": "iNFT",
"token_standard": "ERC721",
"network": "ethereum",
"is_dynamic": false
}
}
For dynamic persona metrics:
{
"name": "mindX Persona Agent",
"description": "Persona management agent - Dynamic",
"attributes": [
{
"trait_type": "Personas Managed",
"value": 45,
"display_type": "number"
},
{
"trait_type": "Adoptions Count",
"value": 1250,
"display_type": "number"
},
{
"trait_type": "Active Personas",
"value": 32,
"display_type": "number"
},
{
"trait_type": "Last Persona Created",
"value": "2026-01-11T12:00:00Z",
"display_type": "date"
}
],
"dynamic_metadata": {
"update_frequency": "real-time",
"updatable_fields": ["personas_managed", "adoptions_count", "active_personas", "usage_statistics"]
}
}
This agent is suitable for publication as: