ワンクリックで
user-research
User research skill — plan interviews, synthesize findings, and generate personas
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
メニュー
User research skill — plan interviews, synthesize findings, and generate personas
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
SOC 職業分類に基づく
Onboard a new client/company onto this platform's real Agentic OS: create the company record, scan its websites/repos, auto-provision specialist agents, activate its 24x7 agency runtime, and know exactly which "OS" building blocks (memory, integrations, dashboard) already exist versus which are roadmap gaps. ADAPTED FROM: a third-party giveaway skill ("agentic-os-installer" by Gennaro Santoro / Operations Heroes) that described a generic vault + Google-suite + skill-pack installer. That skill's product (Obsidian vault, Gmail/Calendar/ Drive wiring, "skill packs") does not exist in this repo and its promotional content (Skool community link) does not belong here. This is a clean-room rewrite that keeps the useful idea — "stand up a working agency OS for a client from a short checklist" — and maps every step to the real module that already implements it in this codebase, per CLAUDE.md architecture rules.
Agile sprint planning, velocity tracking, and burndown metrics for agent-managed projects
Initiative-level portfolio management with dependency tracking and milestone coordination
AI-assisted engineering impact analysis — productivity metrics and code quality insights
Cross-harness agent patterns — standardize agent execution across different coding assistants
Temporal context graph for agent memory — track entity relationships and state changes over time
| name | user-research |
| description | User research skill — plan interviews, synthesize findings, and generate personas |
Module:
agent/user_research_skill.pyAgent tools registered:user_research_plan,user_research_qual,user_research_quant,user_research_synthesizeCapability tag:user_research(sub-tags:plan,qualitative,quantitative,synthesis) Maturity: stable
Structured user-research workflows for the agent platform. Implements the four core capabilities adapted from the cookiy-ai/user-research-skill reference architecture:
| Capability | Tool name | What it does |
|---|---|---|
| Plan | user_research_plan | Produce a structured research plan (objectives, hypotheses, methods, sample size, timeline) from a research question. |
| Qual | user_research_qual | Extract themes, pain points, and desires from interview transcripts or open-ended survey responses. |
| Quant | user_research_quant | Compute descriptive statistics (mean, median, σ, distribution, segment cuts) for a numeric series. |
| Synthesize | user_research_synthesize | Combine qual + quant into a decision-ready research brief with executive summary, findings, and recommendations. |
The skill is implemented as a pure-function library with a thin tool-wrapping layer:
plan_research, analyze_qualitative,
analyze_quantitative, synthesize_research) that take and return
Pydantic v2 models.ToolRegistry via the
@registry.agent_tool decorator, so the agent loop can invoke them
like any other tool.All inputs and outputs use Pydantic v2 with extra="forbid" so the executor
cannot smuggle unknown fields past validation:
ResearchPlan — output of PlanResearchObjective, ResearchHypothesis, ResearchMethod — sub-modelsQualAnalysis, QualTheme, QualQuote — output of QualQuantAnalysis, QuantSegment — output of QuantResearchBrief — output of Synthesizefrom agent.user_research_skill import (
plan_research, analyze_qualitative,
analyze_quantitative, synthesize_research,
)
# 1. Plan
plan = plan_research(
title="Why do users churn after onboarding?",
primary_question="What causes week-1 churn?",
audience="Product team",
objectives=[{"statement": "Identify the top 3 friction points"}],
methods=[{"method": "interview", "target_participants": 8}],
)
print(plan.target_sample_size) # computed from method target + stats
# 2. Qual
qual = analyze_qualitative(
source="8 customer interviews",
transcripts=[
"Login is broken and slow, hate it.",
"Login is broken, otherwise fine.",
"Love the new dashboard, but login is broken.",
],
)
for theme in qual.pain_points:
print(theme.name, theme.frequency)
# 3. Quant
quant = analyze_quantitative(
source="NPS survey Q4",
values=[9, 9, 8, 10, 9, 8, 9, 10, 7, 9],
metric_name="NPS",
metric_type="rating",
)
print(quant.mean, quant.median, quant.stdev)
# 4. Synthesize
brief = synthesize_research(title="Q4 NPS + Interview Synthesis",
quant=quant, qual=qual)
print(brief.executive_summary)
print(brief.recommendations)
After auto_register() is called (or after agent/capability_registry.py
discovers the module), the agent loop can invoke:
# In an agent prompt, the model can call:
{
"tool": "user_research_plan",
"args": {
"title": "Onboarding friction study",
"primary_question": "What blocks first-week activation?",
"audience": "Product",
"objectives": [{"statement": "Identify top 3 blockers"}],
"methods": [{"method": "interview", "target_participants": 6}]
}
}
…and receive a validated ResearchPlan back.
The plan_research function computes the target sample size from the
larger of:
target_participants across all methods.population_size is supplied.Formula: n0 = z² · p(1-p) / e², then n = n0 / (1 + (n0-1)/N).
Default z=1.96 (95% confidence), e=0.05, p=0.5.
The analyze_qualitative function uses a small rule-based sentiment
classifier (positive / neutral / negative) and a keyword-based theme
extractor. Themes are filtered by min_theme_frequency (default 2) to
avoid single-mention noise. Real production sentiment should use an
LLM call — these heuristics are deliberately minimal so the skill
scaffolding is fast and testable.
tests/test_user_research_skill.py covers:
Run with:
pytest -x tests/test_user_research_skill.py -v
The skill auto-registers with the module-level ToolRegistry singleton
on first import of agent.user_research_skill. To force registration
in a custom registry, call register_user_research_tools(registry)
explicitly.
| File | Purpose |
|---|---|
agent/user_research_skill.py | Pydantic models + 4 capability functions + tool registration |
tests/test_user_research_skill.py | 35+ tests covering all capabilities and edge cases |
.claude/skills/user-research/SKILL.md | This document |
agent/capability_registry.py — the dynamic tool registry.claude/skills/research/SKILL.md — general-purpose research skill (broader scope, this skill is user-research-specific)