Claude Code skill inspired by TinyTroupe. It generates diverse AI persona panels, runs agent-separated concept interviews, and delivers structured research reports in one flow.
Each persona answers in its own claude -p subprocess with context isolation
(--safe-mode) and server-validated structured output (--json-schema) —
no inter-persona bias, no project-context leakage, no JSON parsing flakiness.
Every run records its cost and the exact model IDs that served it. Works with
all current Claude models (sonnet default; haiku, opus, and
fable / Claude Fable 5 via "model" config or --model).
- Marketers who need fast qualitative signal before paying for fieldwork
- Product managers testing concepts, messaging, packaging, or feature bundles
- Marketing data scientists, UX researchers, and strategy teams who want a reusable synthetic audience panel
/plugin marketplace add takechanman1228/claude-persona
/plugin install claude-persona@claude-personaRestart Claude Code after installation.
Alternative: One-command install (curl)
curl -fsSL https://raw.githubusercontent.com/takechanman1228/claude-persona/main/install.sh | bashStep 1 — Build a persona panel
/persona generate 10 Gen Z skincare shoppers in the US
10 diverse personas spanning different skincare attitudes:
| Name | Age | Segment |
|---|---|---|
| Mia Nakamura | 22 | Routine Devotee |
| Tyler Kowalski | 19 | Skincare Skeptic |
| Sofia Gutierrez | 26 | Budget Beauty Maven |
| ... |
Other examples: Moms with babies shopping for strollers in the US,
High income travelers choosing luxury hotels in Europe,
10 first-time meal kit subscribers in France, based on: 38% dual income couples, 27% families with young children
Step 2 — Explore motivations (optional but recommended)
/persona ask What frustrates you most about choosing skincare products?
Top themes surfaced:
- Ingredient and formula opacity — no concentrations, proprietary blends
- Greenwashing and legally meaningless claims ("clean", "clinically proven")
- Research burden pushed onto consumers — Reddit and INCIDecoder homework
- Information and choice overload, producing paralysis or disengagement
- Prestige pricing on identical actives
Step 3 — Run a concept test
/persona concept-test Compare 3 skincare concepts for Gen Z.
A: Acne Control Serum — fights breakouts with clinically proven actives
B: Barrier Repair Cream — strengthens skin barrier, reduces redness
C: Glow Boosting Toner — everyday radiance, brightens skin tone
Results:
- A: Acne Control Serum — 4/10 (40%) first choice
- B: Barrier Repair Cream — 4/10 (40%) first choice
- C: Glow Boosting Toner — 2/10 (20%) first choice
- Purchase likelihood: mean 3.2/5, range 1–5
A dead heat — each concept appeals to a distinct attitudinal cluster. Barrier repair won ingredient-conscious personas, acne control the problem-driven (and the skeptics, with low intent), and glow toner the smallest-but-most-enthusiastic camp.
See the full demo with verbatims.
The repository ships four complete demos with pre-generated personas and full results.
- Demo: Gen Z Skincare Concept Test — 10 personas, 3 skincare concepts
- Demo: Running Shoes Concept Test — 15 personas, 3 shoe concepts
- Demo: France Meal Kit Concept Test — 10 personas, France market, based on existing customer data
- Demo: Japan AI Meeting Notes SaaS — 10 personas, B2B SaaS, Japan market
All demo results were generated on claude-sonnet-4-6 (June 2026) with the
exact serving model recorded in each run_metadata.json.
We re-ran every demo across three Claude model generations and tracked each persona individually: 84–100% of personas gave the same answer regardless of model, a repeated Claude Fable 5 run reproduced persona-level choices 100%, and no demo's winning concept ever changed. Responses are driven by the persona definitions, not model noise — and because each persona answers in an isolated subprocess that can't see your project files, your own context can't bias them either. Full data: model sensitivity study.
- Claude Code CLI or Desktop
- Python 3.10+
pandas,matplotlib, andseabornfor the analysis pipeline
claude-persona/
├── SKILL.md
├── README.md
├── CHANGELOG.md
├── .claude-plugin/
├── assets/
├── docs/
├── scripts/
├── references/
├── templates/
├── demo/
│ ├── running-shoes/
│ ├── genz-skincare/
│ ├── france-mealkit/
│ └── japan-meeting-ai/
├── personas/
├── tests/
└── outputs/
claude-persona is inspired by TinyTroupe but takes a different approach.
| TinyTroupe | claude-persona | |
|---|---|---|
| Setup | Python library + OpenAI API key | Claude Code skill — no extra API key needed |
| Interface | Write Python code (define agents, call functions, manage execution order) | Natural language commands (/persona generate ..., /persona concept-test ...) |
| Focus | General-purpose agent simulation | Marketing research: concept tests, messaging tests, packaging, feature bundles |
If you're a Claude Code user who wants to run quick concept research without writing code or managing a separate API key, claude-persona is the faster path.
MIT