Data & Analysis

Claude Persona: AI Panel Research & Concept Testing

Get directional customer insight before paying for fieldwork, via reusable AI persona panels for open-ended interviews and structured concept tests.

57/ 100
Use with care

Useful, but reliability, evidence or controls still have material gaps.

See how it was scored ↓
Works as-is in
Claude Code
Stars
★ 57
Last updated
3mo ago
License
MIT
persona-simulationconcept-testingmarket-researchsynthetic-panels
+3customer-interviewspython-scriptssurvey-analysis

What does this skill do, and when should you use it?

A Claude Code skill inspired by Microsoft's TinyTroupe for building reusable AI persona panels and running customer research. It supports three core operations: generating diverse virtual audiences, asking panels open-ended qualitative questions, and running structured concept comparison tests. Each persona answers in its own claude -p subprocess with context isolation and schema-validated structured output, eliminating inter-persona bias. Runs automatically produce research reports with theme synthesis, cross-tabs, and charts. The repo ships four complete demos (skincare, running shoes, France meal kits, Japan meeting-notes SaaS) plus a model sensitivity study.

/persona generate builds a persona panel by market, segments, or count (default 5; 15 in segment mode), emits full JSON personas including Big Five traits, and validates them with validate_panel.py (unique names, age spread, similarity checks). For /persona ask and /persona concept-test, simulate_survey.py builds a per-persona system prompt and launches parallel claude -p subprocesses (default concurrency 5) with --safe-mode context isolation and ---schema structured output, retrying failed parses up to 3 times. analyze_results.py then converts results to CSV, runs cross-tabs, generates charts, and writes a Markdown report (ask and concept-test default to LLM-synthesized reports). Panels and results are saved under personas/ and outputs/ in your working directory.

Good fit
  • Marketers comparing several ad messages or concept directions with a target audience before committing budget
  • Product managers quickly exploring category pain points and decision criteria before writing requirements
  • UX researchers wanting a synthetic audience panel they can question repeatedly, replacing early-stage qualitative fieldwork
  • Teams pre-testing concept acceptance in a specific market (Japan, France, etc.) before launch
  • Marketing data scientists generating panels from known customer structures (e.g., % dual-income couples) via segment-driven mode

How do you install this skill?

Before you use it
  • Core function depends entirely on the claude CLI and Anthropic services and may be unreachable from mainland-China networks.
  • Simulated persona runs spawn multiple subprocesses and model calls; watch costs (a max_budget_usd_per_call cap is provided).
  • Synthetic persona results are directional signal only and should not replace real user research for final decisions.
  • Publisher is not verified by FollowSkills; identity is unknown. The curl|bash install path should be replaced by the plugin-market install and the script reviewed.
Before you start
Your agent needs
  • Shell / CLI
  • Network access
  • Local filesystem
Install first
  • Claude Code CLI (authenticated)
  • Python 3.10+
  • pandas
  • matplotlib
  • seaborn

In Claude Code, run /plugin marketplace add takechanman1228/claude-persona, then /plugin install claude-persona@claude-persona, and restart Claude Code. Alternative: curl -fsSL https://raw.githubusercontent.com/takechanman1228/claude-persona/main/install.sh | bash. Requires Python 3.10+; for analysis, pip install pandas matplotlib seaborn.

Generic route: install into Claude Code manually (macOS / Linux)
tmp="$(mktemp -d)"
git clone --depth 1 https://github.com/takechanman1228/claude-persona.git "$tmp"
mkdir -p ~/.claude/skills
cp -R "$tmp/skills/persona" ~/.claude/skills/
rm -rf "$tmp"

Generated from the source repository and skill path; it copies only this skill's folder. If the author's install steps above differ, follow those first. To scope it to one project, replace ~/.claude/skills with that project's .claude/skills.

How do you use this skill?

Three steps: 1) /persona generate 10 Gen Z skincare shoppers in the US (options: --count, --market japan, --segments); 2) /persona ask your open-ended question to explore motivations and barriers; 3) /persona concept-test Compare 3 skincare concepts... — concept details can be given inline or entered interactively. Results and reports land in outputs/{date}/{time}/.

What are this skill's strengths and limitations?

Pros
  • Agent-separated execution with context isolation removes anchoring, consensus, and style-contamination bias of shared-context simulation
  • Built-in panel validation (unique names, age/gender spread, Big Five similarity) plus response JSON validation with retries
  • Every run records cost and the exact serving model IDs; configurable per-call budget cap and fallback model
  • Four complete demos plus a model sensitivity study (84–100% of personas give the same answer across Claude generations)
  • Multi-market support and deterministic sampling plans for segment-driven panels
Limitations
  • Hard dependency on the Claude Code CLI: simulation requires claude -p subprocesses, coupling you to that tool
  • Results are directional only — explicitly not statistically representative, and AI responses may show positivity bias
  • Demo results were mainly generated on claude-sonnet-4-6; model drift risk is mitigated but not eliminated by the sensitivity data
  • Python analysis dependencies (pandas/matplotlib/seaborn) must be installed separately or reports lack charts
  • Troubleshooting docs note claude -p subprocesses can hang on auth or rate limits; CLI availability must be verified first

How does this skill compare with similar options?

Side by side with related skills; every score comes from the same FSRS standard.

Skill FS score Stars Last updated License
Claude Persona: AI Panel Research & Concept Testing this page 57 · Use with care ★ 57 3mo ago MIT
Alpha Insights BizAdvisor 59 · Recommended ★ 68 3mo ago MIT
Competitive Landscape Analyst ✓ Anthropic · Official 51 · Use with care ★ 40k 1mo ago Apache-2.0
Exa Deep Research Orchestrator 57 · Use with care ★ 5.1k 18d ago MIT
NVIDIA AI-Q Deep Research ✓ NVIDIA · Official 55 · Use with care ★ 3.6k 11d ago Apache-2.0

The README explicitly compares itself to Microsoft's TinyTroupe: TinyTroupe is a Python library needing an OpenAI API key and code-driven agent management; claude-persona is a Claude Code skill driven by natural-language commands, focused on marketing research (concept tests, messaging tests, packaging, feature bundles).

How did FollowSkills review this skill?

FollowSkills review · FSRS-2.0
Use with care
57/ 100 5-point scale 2.9 / 5
1Trust15 / 25 · 3.0/5

Evidence shows subprocesses run with --safe-mode and empty tools, context isolation, structured-output validation, cost logging and failure-stage metadata; data flow is largely transparent; no exfiltration or overreach found. Deducted for: repeated local claude CLI invocations with cost effects, a curl|bash install option, unverified publisher, and unclear rollback/recovery paths.

2Reliability10 / 20 · 2.5/5

SKILL.md is internally self-consistent (parsing rules match examples) and describes preflight, retries, failure stages and diagnosable run_metadata payloads; committed unit tests cover analyze_results and JSON extraction with good failure feedback. Deducted for: static review only — simulate_survey.py and validate_panel.py key paths are not fully present in supplied files, and concurrent subprocess stability cannot be verified.

3Adaptability9 / 15 · 3.0/5

Audience and scenarios are clear, trigger semantics for ask/concept-test/generate are precise with concrete panel auto-detection logic, and --market cn is supported. Deducted for: core function depends entirely on the claude CLI and Anthropic services, raising mainland-China reachability concerns; non-fit boundaries of synthetic-persona results are hinted but not formally declared.

4Convention11 / 15 · 3.7/5

Documentation is well layered (SKILL.md, references, templates, docs, demos) with MIT license, version 0.2.0, author metadata, changelog and clear install notes. Deducted for: unverified publisher, maintenance responsibility and update path only implicit in a personal repo, early version stage, and referenced files not fully presentable in this evidence set.

5Effectiveness7 / 15 · 2.3/5

README presents four complete demos, a model-sensitivity study (84–100% per-persona consistency), and directly usable report/CSV/chart outputs with clear differentiation from TinyTroupe. Deducted for: static review cannot reproduce runs; synthetic-persona output is directional signal needing researcher judgment, and comparative-benefit evidence is largely author-claimed.

6Verifiability5 / 10 · 2.5/5

The repo ships committed tests, demo raw results with run_metadata recording actual model IDs and cost, and a cross-model comparison document, keeping claims separable from facts. Deducted for: no independent third-party execution evidence; the sensitivity study is self-run and conclusions cannot be independently reproduced from a static read, so the 5-point static cap applies.

1 2 3 4 5 6

Open a dimension to read why it scored that way

Reviewed Sep 10, 2026 Reviewed revision b4be6e641421 Review evidence[1][2][3][4][5][6][7]

Evidence confidence:Low — Mostly static review, author material or a limited demo; useful for discovery, not high-risk decisions.

See the full review method →

FAQ

What does a run cost?
The default simulation model is sonnet (described as the best cost/quality balance for 10–15-way fan-outs). You can switch to haiku (cheapest, no --effort support), opus, or fable (~4x sonnet cost, recommended for final reports only). max_budget_usd_per_call sets a hard per-call cap, and run_metadata. records actual cost per run.
Can I trust the results, or replace real research?
No — it's directional signal before fieldwork. The author's model sensitivity study shows 84–100% persona-level answer consistency across models and no winning concept ever changed, but report templates are labeled 'virtual panel, directional only, not statistically representative,' and AI responses may carry positivity bias.
Can I use it without the Python dependencies?
Simulation itself only needs claude -p subprocesses; pandas is not required for that. But cross-tabs and charts from --analyze need pandas, matplotlib, and seaborn. Without matplotlib, reports lack charts and must be re-run without --report-only.
Can panels be reused?
Yes. Generated panels persist under personas/{survey-id}/ in your working directory with a manifest.. /persona ask auto-detects matching panels (--panel overrides), generate proposes reuse when category and market match, and ask never generates a new panel.

Related skills