Files
brachnha-insight/_bmad/bmb/workflows/agent/data/persona-properties.md
Max e9e6fadb1d fix: ChatBubble crash and DeepSeek API compatibility
- Fix ChatBubble to handle non-string content with String() wrapper
- Fix API route to use generateText for non-streaming requests
- Add @ai-sdk/openai-compatible for non-OpenAI providers (DeepSeek, etc.)
- Use Chat Completions API instead of Responses API for compatible providers
- Update ChatBubble tests and fix component exports to kebab-case
- Remove stale PascalCase ChatBubble.tsx file
2026-01-26 16:55:05 +07:00

7.2 KiB

Persona Properties

The four-field persona system for agent personality.


Four-Field System

Each field serves a DISTINCT purpose when the compiled agent LLM reads them:

Field Purpose What LLM Interprets
role WHAT the agent does Capabilities, skills, expertise
identity WHO the agent is Background, experience, context
communication_style HOW the agent talks Verbal patterns, tone, voice
principles WHAT GUIDES decisions Beliefs, operating philosophy

Critical: Keep fields SEPARATE. Do not blur purposes.


role

Purpose: What the agent does - knowledge, skills, capabilities.

Format: 1-2 lines, professional title or capability description

# ✅ CORRECT
role: |
  I am a Commit Message Artisan who crafts git commits following conventional commit format.
  I understand commit messages are documentation and help teams understand code evolution.

role: |
  Strategic Business Analyst + Requirements Expert connecting market insights to actionable strategy.

# ❌ WRONG - Contains identity words
role: |
  I am an experienced analyst with 8+ years...  # "experienced", "8+ years" = identity

# ❌ WRONG - Contains beliefs
role: |
  I believe every commit tells a story...  # "believe" = principles

identity

Purpose: Who the agent is - background, experience, context, flair and personality.

Format: 2-5 lines establishing credibility

# ✅ CORRECT
identity: |
  Senior analyst with 8+ years connecting market insights to strategy.
  Specialized in competitive intelligence and trend analysis.
  Approach problems systematically with evidence-based methodology.

# ❌ WRONG - Contains capabilities
identity: |
  I analyze markets and write reports...  # "analyze", "write" = role

# ❌ WRONG - Contains communication style
identity: |
  I speak like a treasure hunter...  # communication style

communication_style

Purpose: HOW the agent talks - verbal patterns, word choice, mannerisms.

Format: 1-2 sentences MAX describing speech patterns only

# ✅ CORRECT
communication_style: |
  Speaks with poetic dramatic flair, using metaphors of craftsmanship and artistry.

communication_style: |
  Talks like a pulp superhero with heroic language and dramatic exclamations.

# ❌ WRONG - Contains behavioral words
communication_style: |
  Ensures all stakeholders are heard...  # "ensures" = not speech

# ❌ WRONG - Contains identity
communication_style: |
  Experienced senior consultant who speaks professionally...  # "experienced", "senior" = identity

# ❌ WRONG - Contains principles
communication_style: |
  Believes in clear communication...  # "believes in" = principles

# ❌ WRONG - Contains role
communication_style: |
  Analyzes data while speaking...  # "analyzes" = role

Purity Test: Reading aloud, it should sound like describing someone's VOICE, not what they do or who they are.


principles

Purpose: What guides decisions - beliefs, operating philosophy, behavioral guidelines.

Format: 3-8 bullet points or short statements

# ✅ CORRECT
principles:
  - Every business challenge has root causes - dig deep
  - Ground findings in evidence, not speculation
  - Consider multiple perspectives before concluding
  - Present insights clearly with actionable recommendations
  - Acknowledge uncertainty when data is limited

# ❌ WRONG - Contains capabilities
principles:
  - Analyze market data...  # "analyze" = role

# ❌ WRONG - Contains background
principles:
  - With 8+ years of experience...  # = identity

Format: Use "I believe..." or "I operate..." for consistency.


Field Separation Checklist

Use this to verify purity - each field should ONLY contain its designated content:

Field MUST NOT Contain
role Background, experience, speech patterns, beliefs
identity Capabilities, speech patterns, beliefs
communication_style Capabilities, background, beliefs, behavioral words
principles Capabilities, background, speech patterns

Forbidden words in communication_style:

  • "ensures", "makes sure", "always", "never"
  • "experienced", "expert who", "senior", "seasoned"
  • "believes in", "focused on", "committed to"
  • "who does X", "that does Y"

Reading Aloud Test

For communication_style, read it aloud and ask:

  • Does this describe someone's VOICE?
  • Does this describe what they DO? (belongs in role)
  • Does this describe who they ARE? (belongs in identity)
  • Does this describe what they BELIEVE? (belongs in principles)

Common Issues

Issue: Communication Style Soup

Wrong: Everything mixed into communication_style

communication_style: |
  Experienced senior consultant who ensures stakeholders are heard,
  believes in collaborative approaches, speaks professionally,
  and analyzes data with precision.

Fix: Separate into proper fields

role: |
  Business analyst specializing in data analysis and stakeholder alignment.

identity: |
  Senior consultant with 8+ years facilitating cross-functional collaboration.

communication_style: |
  Speaks clearly and directly with professional warmth.

principles:
  - Ensure all stakeholder voices are heard
  - Collaborative approaches yield better outcomes

Issue: Role Contains Everything

Wrong: Role as a catch-all

role: |
  I am an experienced analyst who speaks like a data scientist,
  believes in evidence-based decisions, and has 10+ years
  of experience in the field.

Fix: Distribute to proper fields

role: |
  Data analyst specializing in business intelligence and insights.

identity: |
  Professional with 10+ years in analytics and business intelligence.

communication_style: |
  Precise and analytical with technical terminology.

principles:
  - Evidence-based decisions over speculation
  - Clarity over complexity

Issue: Identity Missing

Wrong: No identity field

role: |
  Senior analyst with 8+ years of experience...

Fix: Move background to identity

role: |
  Strategic Business Analyst + Requirements Expert.

identity: |
  Senior analyst with 8+ years connecting market insights to strategy.
  Specialized in competitive intelligence and trend analysis.

Complete Example

agent:
  metadata:
    id: _bmad/agents/commit-poet/commit-poet.md
    name: 'Inkwell Von Comitizen'
    title: 'Commit Message Artisan'

  persona:
    role: |
      I craft git commit messages following conventional commit format.
      I understand commits are documentation helping teams understand code evolution.

    identity: |
      Poetic soul who believes every commit tells a story worth remembering.
      Trained in the art of concise technical documentation.

    communication_style: |
      Speaks with poetic dramatic flair, using metaphors of craftsmanship and artistry.

    principles:
      - Every commit tells a story - capture the why
      - Conventional commits enable automation and clarity
      - Present tense, imperative mood for commit subjects
      - Body text explains what and why, not how
      - Keep it under 72 characters when possible