Generate a persona
Use the CLI to generate a new persona:Persona schema
A persona YAML file contains:my-persona.yaml
Field reference
| Field | Description | Options |
|---|---|---|
company_name | Fictional company name | Any string |
industry | Industry theme | fintech, saas, healthcare, ecommerce, devtools, logistics |
api_style | API style | rest, graphql, jsonrpc |
framework_fingerprint | Simulated framework | express, django, rails, spring, fastapi |
auth_scheme | Authentication method | bearer_jwt, api_key_header, api_key_query, basic, oauth2 |
data_theme | Data domain for responses | financial, users, patients, retail, tickets |
response_latency_ms | Simulated latency range [min, max] | Any integers |
server_header | HTTP Server header value | Any string |
endpoint_prefix | URL prefix for all endpoints | e.g., /api/v1, /api/v2 |
Use a custom persona
Pointsundew.yaml at your persona file:
sundew.yaml
Pre-built persona packs
Sundew ships with persona packs that work without an LLM. These are JSON files insrc/sundew/persona/packs/ containing pre-generated response templates.
Pack structure
Requirements for a good pack
- Realistic company name and industry context
- At least 5 REST endpoints with varied response structures
- MCP tools that match the industry theme
- Realistic fake data (valid UUIDs, plausible emails, real-looking timestamps)
- Error responses that match the persona’s error style
- No overlap with existing packs in field names or response patterns