SkillAgentSearch skills...

claude-persona

Claude Code skill for AI persona panels, virtual customer research, and concept testing.

Install / Use

npx skills add takechanman1228/claude-persona

Installs into whichever agent you are using.

About this skill
📄

SKILL.md

Installable skill definition

Quality Score

83/100

Category

Automation

Supported Platforms

Claude Code

claude-persona

claude-persona

Claude Code Skill Python 3.10+ License: MIT

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).

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

/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>
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)

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.

Demos

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

The main results were generated on claude-sonnet-4-6 (June 2026). Each demo also ships a full-Fable edition in demo/{case}/fable/ — a separate panel generated by claude-fable-5 and answered by claude-fable-5, so you can compare the two model generations side by side on the same brief. The exact serving model is recorded in every run_metadata.json (actual_model_ids) and every fable panel manifest (generated_by).

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.

Installation Details

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

Documentation

Project Structure

claude-persona/
├── SKILL.md
├── README.md
├── CHANGELOG.md
├── .claude-plugin/
├── assets/
├── docs/
├── scripts/
├── references/
├── templates/
├── demo/                       # each case: sonnet results + fable/ edition
│   ├── running-shoes/
│   ├── genz-skincare/
│   ├── france-mealkit/
│   └── japan-meeting-ai/
└── tests/

Generated panels (personas/) and results (outputs/) are created in your own working directory when you run the skill, not inside this repository.

How It Compares to TinyTroupe

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.

License

MIT

Related Skills

View on GitHub
GitHub Stars52
CategoryAutomation
Updated2mo ago
Forks7

Languages

Python

Security Score

95/100

Audited on Jul 3, 2026

1 low