Back to skills directory
takechanman1228/claude-persona

takechanman1228/claude-persona

@takechanman1228 34

Run AI persona panels for virtual customer research and concept testing.

claude-codepersonamarket-researchconcept-testingsynthetic-audienceai-panelresearch

Install

$ npx skills add takechanman1228/claude-persona

README

# GitHub Repository: takechanman1228/claude-persona

**URL:** https://github.com/takechanman1228/claude-persona
**Author:** takechanman1228
**Description:** Claude Code skill for AI persona panels, virtual customer research, and concept testing.
**Homepage:** 
**Language:** Python

## Stats
- Stars: 34
- Forks: 4
- Open Issues: 0
- Commits: 5
- Created: 2026-04-11T02:04:53Z
- Updated: 2026-06-17T10:53:32Z
- Pushed: 2026-06-11T20:07:13Z

## README
![claude-persona](assets/claude-persona-logo.png)

# claude-persona

[![Claude Code Skill](https://img.shields.io/badge/Claude%20Code-Skill-blue)](https://claude.ai/claude-code)
[![Python 3.10+](https://img.shields.io/badge/Python-3.10%2B-blue)](requirements.txt)
[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](LICENSE)

Claude Code skill inspired by
[TinyTroupe](https://github.com/microsoft/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`).


## Who This Is For
- 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

## Quick Start
### Install

```bash
/plugin marketplace add takechanman1228/claude-persona
/plugin install claude-persona@claude-persona
```
Restart Claude Code after installation.

<details>
<summary>Alternative: One-command install (curl)</summary>

```bash
curl -fsSL https://raw.githubusercontent.com/takechanman1228/claude-persona/main/install.sh | bash
```

</details>

### Run a Study

**Step 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 |
| ... | | |

[Full panel (10 personas)](demo/genz-skincare/README.md#step-1-build-panel)

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](demo/genz-skincare/README.md).


## Demos

The repository ships four complete demos with pre-generated personas and full results.

- [Demo: Gen Z Skincare Concept Test](demo/genz-skincare/README.md) — 10 personas, 3 skincare concepts
- [Demo: Running Shoes Concept Test](demo/running-shoes/README.md) — 15 personas, 3 shoe concepts
- [Demo: France Meal Kit Concept Test](demo/france-mealkit/README.md) — 10 personas, France market, based on existing customer data
- [Demo: Japan AI Meeting Notes SaaS](demo/japan-meeting-ai/README.md) — 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`.

## Why Trust the Results?

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](docs/MODEL-COMPARISON.md).



## Installation Details

- Claude Code CLI or Desktop
- Python 3.10+
- `pandas`, `matplotlib`, and `seaborn` for the analysis pipeline


## Documentation

- [Installation](docs/INSTALLATION.md)
- [Commands](docs/COMMANDS.md)
- [Troubleshooting](docs/TROUBLESHOOTING.md)
- [Architecture](docs/ARCHITECTURE.md)
- [Model Sensitivity Study](docs/MODEL-COMPARISON.md)

## Project Structure

```text
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/
```


## How It Compares to TinyTroupe

`claude-persona` is inspired by [TinyTroupe](https://github.com/microsoft/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.

## License

MIT

Information

Language
Python
Created
2026/6/18
Updated
2026/6/18