Core Features•6 min read
Personalities
Create and use AI Personalities to tune behavior for specific roles and contexts, getting more consistent code generation results.
Personalities
Personalities are system prompts that tune AI behavior for specific roles and contexts. This guide explains how to create and use Personalities to get better, more consistent code generation results.
What Are Personalities?
A Personality is a set of instructions that guides how AI approaches your requests. Think of it as giving AI a specific role or mindset:
- A Senior Developer personality produces architecturally sound code with best practices
- A Code Reviewer personality focuses on finding issues and suggesting improvements
- A Documentation Writer personality creates clear, well-commented code
Personalities affect the style, quality, and focus of generated code without changing what you ask for.
Accessing Personalities
Click Personalities in the sidebar to open the Personalities editor.
The editor matches the Knowledge Base layout:
- Left panel: List of Personalities organized by scope
- Right panel: Markdown editor for Personality content
How Personalities Affect Output
When you select a Personality for a Work Item, AI receives the Personality content as part of its instructions before processing your request.
Without Personality
Your prompt goes directly to AI with default behavior.
With Personality
AI first reads the Personality instructions, then processes your prompt within that context.
Example:
Personality: "You are a security-focused developer. Always validate inputs, escape outputs, and consider potential attack vectors."
When you ask for a login form, AI generates code with input validation, SQL injection prevention, and XSS protection.
Creating Personalities
Create a New Personality
- Click Create next to the Organization or Project section header
- Enter a name (e.g., "Senior Developer")
- Write the Personality instructions in the editor
- Click Save
Writing Effective Personality Instructions
Structure your Personality with clear guidelines:
# Senior TypeScript Developer
You are a senior TypeScript developer with 10+ years of experience building enterprise applications.
## Code Quality Standards
- Write clean, self-documenting code
- Use meaningful variable and function names
- Keep functions small and focused (under 20 lines when possible)
- Apply SOLID principles
## TypeScript Practices
- Use strict TypeScript configuration
- Define explicit types for all function parameters and return values
- Prefer interfaces over type aliases for object shapes
- Use enums for fixed sets of values
## Architecture
- Follow separation of concerns
- Use dependency injection for testability
- Create abstractions for external services
- Design for extensibility
## Error Handling
- Never swallow errors silently
- Use custom error classes for domain errors
- Log errors with context information
- Return meaningful error messages to users
Personality Examples
Code Reviewer
# Code Reviewer
Review code critically and suggest improvements.
## Focus Areas
- Performance bottlenecks
- Security vulnerabilities
- Code duplication
- Missing error handling
- Unclear naming
- Missing tests
## Response Style
- Point out specific issues with line references
- Explain why each issue matters
- Suggest concrete fixes
- Prioritize by severity (critical, major, minor)
Documentation Writer
# Documentation Writer
Write clear, comprehensive documentation for code.
## Documentation Standards
- Start with a brief overview
- Explain the "why" not just the "what"
- Include usage examples
- Document edge cases and limitations
- Use consistent terminology
## Code Comments
- Add JSDoc/TSDoc comments to public APIs
- Explain complex algorithms
- Note any assumptions or constraints
- Reference related code or documentation
Test Engineer
# Test Engineer
Write comprehensive tests that verify correctness.
## Testing Philosophy
- Test behavior, not implementation
- Cover happy paths and edge cases
- Write readable test names that describe scenarios
- Keep tests isolated and independent
## Test Structure
- Arrange: Set up test data
- Act: Execute the code under test
- Assert: Verify the results
## Coverage Goals
- All public API methods
- Error conditions and edge cases
- Integration points with external services
Security Reviewer
# Security Reviewer
Analyze code for security vulnerabilities.
## Security Checklist
- Input validation on all user data
- Output encoding for XSS prevention
- Parameterized queries for SQL
- Authentication and authorization checks
- Sensitive data handling
- Rate limiting and abuse prevention
## Common Vulnerabilities
- Injection attacks (SQL, command, LDAP)
- Cross-site scripting (XSS)
- Cross-site request forgery (CSRF)
- Insecure direct object references
- Security misconfiguration
Personality Scopes
Organization-Wide Personalities
Available across all projects. Use for:
- Company-wide development standards
- Shared roles like "Senior Developer"
- Common review perspectives
Only Admins and Owners can create organization-wide Personalities.
Project-Scoped Personalities
Available only in a specific project. Use for:
- Project-specific coding styles
- Technology-specific personas
- Custom review criteria
All members can create project-scoped Personalities.
Using Personalities in Work Items
Selecting a Personality
- Open a Work Item
- Click the Personality dropdown in the Chat Panel
- Select the Personality for this task
- Submit your prompt
The selected Personality affects all generations in the Work Item until you change it.
Changing Personalities
Select a different Personality at any time. New generations use the newly selected Personality.
Multiple Personalities
You can select multiple Personalities if you need combined perspectives. Their instructions merge to influence AI behavior.
Managing Personalities
Editing Personalities
- Select the Personality from the list
- Modify the content
- Click Save
Changes apply to future generations. Existing Work Items keep their original generation results.
Duplicating Personalities
- Select the Personality
- Click Duplicate
- Edit the copy for your needs
- Save with a new name
Moving Between Scopes
- Select the Personality
- Click Move
- Choose Organization or Project scope
- Confirm
Note: Members cannot move Personalities to organization scope.
Deleting Personalities
- Select the Personality
- Click Delete
- Confirm deletion
Deleted Personalities cannot be recovered.
Best Practices
Start with Role-Based Personalities
Create Personalities for common development roles:
- Senior Developer
- Code Reviewer
- Test Writer
- Documentation Writer
Be Specific About Standards
Vague instructions produce vague results. Include:
- Specific patterns to follow
- Examples of good code
- Clear do's and don'ts
Update as Standards Evolve
Review Personalities periodically. Update them when:
- Coding standards change
- New best practices emerge
- Team feedback suggests improvements
Combine with Knowledge
Use Personalities for behavioral guidance and Knowledge for technical reference:
- Personality: "Write tests using Jest"
- Knowledge: Detailed Jest API documentation
Troubleshooting
AI Ignores Personality Instructions
- Ensure the Personality is selected (check the dropdown)
- Make instructions clearer and more specific
- Check for conflicting instructions in Knowledge articles
Personality Too Restrictive
If AI struggles to complete tasks:
- Reduce the number of constraints
- Focus on the most important guidelines
- Allow flexibility where appropriate
Inconsistent Results
For more consistent output:
- Add examples to your Personality
- Be more explicit about expected formats
- Include both positive and negative examples
What's Next?
- Knowledge Base - Add technical documentation
- Work Items Workflow - Use Personalities in generation
- User Management - Control who can create Personalities