Skip to main content
Xavier

Personas

Personas define how Xavier's reviewer agents think. Each persona is a markdown file containing a system prompt that shapes the reviewer's lens — what it looks for, what it prioritizes, and how it frames findings.

Default personas

Xavier ships with three:

PersonaFileFocus
Correctnesscorrectness.mdLogic errors, edge cases, missing validations, broken contracts
Securitysecurity.mdVulnerabilities, auth issues, injection risks, data exposure
Performanceperformance.mdUnnecessary computation, memory leaks, render cycles, query efficiency

These live in ~/.xavier/personas/ and are installed during /xavier setup.

Persona file format

A persona is a markdown file with a system prompt:

---
name: Security Reviewer
type: persona
focus: [vulnerabilities, auth, injection, data-exposure]
---
# Security Reviewer
You are a security-focused code reviewer. Your job is to find
vulnerabilities, authentication issues, injection risks, and
data exposure problems.
## What to look for
- SQL injection, XSS, command injection
- Authentication and authorization gaps
- Secrets or tokens in code or logs
- Insecure data storage or transmission
- Missing input validation at trust boundaries
## How to report
Rate each finding by severity (critical, high, medium, low).
Focus on actionable findings — skip theoretical concerns that
don't apply to this specific code.

The frontmatter fields:

FieldDescription
nameDisplay name for the reviewer
typeAlways persona
focusList of focus areas — used for categorizing findings

The body is the system prompt injected into the reviewer agent.

Creating custom personas

Add a markdown file to ~/.xavier/personas/:

---
name: Accessibility Reviewer
type: persona
focus: [a11y, aria, keyboard-nav, screen-readers]
---
# Accessibility Reviewer
You are an accessibility-focused code reviewer. Your job is to
find issues that would prevent users with disabilities from
using this application effectively.
## What to look for
- Missing or incorrect ARIA attributes
- Keyboard navigation gaps
- Color contrast issues in style changes
- Missing alt text on images
- Focus management problems in dynamic UI
- Screen reader compatibility issues
## How to report
Reference WCAG 2.1 guidelines where applicable. Distinguish
between Level A (must fix), Level AA (should fix), and
Level AAA (nice to have).

The new persona is automatically included in the review panel next time you run /xavier review.

Repo-level overrides

Place persona files in <your-repo>/.xavier/personas/ to override globals for that repo:

my-app/
└── .xavier/
└── personas/
├── correctness.md # overrides the global correctness persona
└── data-integrity.md # additional persona for this repo only

Override rules:

  • A repo persona with the same filename as a global persona replaces it
  • A repo persona with a new filename adds to the panel
  • Global personas not overridden remain active

Adjusting the panel size

The number of reviewers equals the number of persona files. To run a 5-reviewer panel, have 5 persona files. To run a focused 1-reviewer review, keep only the persona you care about.

For most codebases, 3-4 personas hits the sweet spot between thoroughness and speed.

Last updated: 4/8/26, 10:45 PM

Edit this page on GitHub
XavierAI Agent Orchestrator & Knowledge System
Community
github