Agent skill

Rethink Surveys

by ooiyeefei in ooiyeefei/ccc

Design, critique, or scaffold surveys grounded in Caroline Jarrett, Dillman, and Tourangeau methods.

MITAuto-check passedProduct & Project Management

Install Rethink Surveys

skills CLI
$ npx skills add ooiyeefei/ccc --skill rethink-surveys -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install ooiyeefei/ccc rethink-surveys --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/ooiyeefei/ccc.git skills-src && mkdir -p .claude/skills && cp -r skills-src/plugins/rethink-surveys/skills/rethink-surveys .claude/skills/rethink-surveys && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
rethink-surveys
GitHub stars
495
Token cost
~3.5k tokens
SKILL.md length
1,658 words
Files
7 (incl. references)
Skills in repo
22
Repo updated
First seen
Licence
MIT

At a glance

Design, critique, or scaffold surveys grounded in Caroline Jarrett, Dillman, and Tourangeau methods.

  • Works in 3 steps: /design-survey — interactive design… → /critique-survey — paste-in review:… → /turn-into-app — implementation handoff:…
  • Designing a new survey
  • SKILL.md covers Tool affordances (read first), Three operating modes (commands), The seven design principles… and The 4-part hybrid structure, plus 8 more sections
  • Instructions only: no scripts, shell commands, URLs or credentials in SKILL.md

What it does

Rethink Surveys is an agent skill from ooiyeefei/ccc. Design, critique, or scaffold surveys grounded in Caroline Jarrett, Dillman, and Tourangeau methods. Use when designing a new survey, critiquing an existing one, scoring or clustering responses, or turning questions into an app. Triggers on "survey", "questionnaire", "user research", "customer discovery", "intent capture", "interview script", "lint my survey", "score responses", or "how to ask better questions". When the bundled MCP server is connected, prefer its deterministic tools (critiquesurvey, gettemplate…

Its SKILL.md is about 3.5k tokens, which your agent loads only when the skill is triggered. The skill folder holds 7 other files, including reference files (for example `references/design-principles.md`, `references/mcp-integration.md` and `references/multimodal-ux.md`).

It sits in Product & Project Management, covering User research, Speech recognition and synthesis and Design review and critique. It works with Model Context Protocol. The repository describes itself as: Claude Code Custom Plugins - Custom plugins for Claude Code CLI. The licence is MIT.

When your agent uses it

  • Designing a new survey
  • Critiquing an existing one
  • Clustering responses
  • Turning questions into an app

Example prompts

  • “survey”
  • “questionnaire”
  • “user research”
  • “/rethink-surveys”

Workflow steps

3 steps, taken from the first numbered list in SKILL.md.

  1. /design-survey — interactive design session: research goal → audience → hypotheses → questions → modality → output schema. Walks the user…
  2. /critique-survey — paste-in review: identify leading questions, double-barreled items, satisficing bait, missing behavioral anchors…
  3. /turn-into-app — implementation handoff: takes a finalized question set and produces app scaffold (TanStack Start / Next.js / pure HTML…

What it can do on your machine

Read from SKILL.md and the folder at commit c0fd926. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    No scripts in the folder and no shell commands in SKILL.md.

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Rethink Surveys loads about 3.5k tokens when it runs, and up to ~17k if it reads all its reference files. Until then it costs about 203 tokens; SKILL.md has 1,658 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~203
When it runs · the whole SKILL.md, loaded when a task matches
~3.5k
With references · SKILL.md plus every file in references/, read only if the agent opens them
~17k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from ooiyeefei/ccc at commit c0fd926, republished under its MIT licence (© ooiyeefei). 1,658 words, ~3,464 tokens.

Download SKILL.mdSave it as .claude/skills/rethink-surveys/SKILL.md (or your agent's skills folder). This skill also uses 6 other files; get the full folder from GitHub.
name
rethink-surveys
description
Design, critique, or scaffold surveys grounded in Caroline Jarrett, Dillman, and Tourangeau methods. Use when designing a new survey, critiquing an existing one, scoring or clustering responses, or turning questions into an app. Triggers on "survey", "questionnaire", "user research", "customer discovery", "intent capture", "interview script", "lint my survey", "score responses", or "how to ask better questions". When the bundled MCP server is connected, prefer its deterministic tools (`critique_survey`, `get_template`, `design_survey_session`, `score_response`, `cluster_responses`) over manual reasoning. Captures real past behavior over hypotheticals, supports text/voice/AI-interviewer modalities, and includes templates for event organizers, startup founders, and gig-economy workers.

Rethink Surveys

A survey is a conversation with a busy person. Design it like one.

This skill packages a framework for designing, critiquing, and operationalizing surveys that capture real intent — not satisficed checkbox approval. Built from the experience of designing the Proxymate muShanghai survey (which surfaced bugs in ~6 hours of testing that a category-checkbox flow would have hidden for weeks).

Tool affordances (read first)

The bundled rethink-survey-mcp-server exposes the skill's deterministic operations as MCP tools, its canonical content as MCP resources, and three framing prompts as slash-prompts. When available, prefer them over reasoning from memory.

  • Use MCP tools when the user wants a specific deterministic result: critique_survey for lint, get_template for a use-case starter, design_survey_session for the staged wizard, score_response for a single response, cluster_responses for a batch.
  • Reason from skill content when the user wants to understand: debate a principle, discuss trade-offs, explain why hypotheticals fail, or do anything not exposed as a tool (e.g. /turn-into-app codegen).
  • Fetch resources for grounding instead of paraphrasing: rethink://principles, rethink://principles/{id}, rethink://structure/4-part, rethink://question-library/{part}, rethink://use-case/{event|founder|gig}, rethink://scoring/rubrics, rethink://modality/decision-tree, rethink://anti-patterns.
  • Slash-prompts the user may invoke: /jarrett-review (Caroline Jarrett-style review), /design-coaching (Socratic design questions), /mom-test-check (Rob Fitzpatrick founder-discovery lint).

If the MCP server isn't connected, all of the below still works from this skill's reference files. For details on tool inputs/outputs, fallback rules, and prompt framing, read references/mcp-integration.md.

Three operating modes (commands)

  1. /design-survey — interactive design session: research goal → audience → hypotheses → questions → modality → output schema. Walks the user through 5–8 decisions, each with explicit trade-offs. Reuses templates where appropriate.
  2. /critique-survey — paste-in review: identify leading questions, double-barreled items, satisficing bait, missing behavioral anchors, demographic-for-demographic noise. Returns a Jarrett-style critique with concrete rewrites.
  3. /turn-into-app — implementation handoff: takes a finalized question set and produces app scaffold (TanStack Start / Next.js / pure HTML, plus Supabase or simple JSON storage). User picks the stack; this command emits the code.

If the user's intent is unclear, ask: "Are you (a) starting fresh, (b) reviewing something you already wrote, or (c) ready to ship — meaning: turn an existing question set into an app?"

The seven design principles (the spine)

Every survey-design decision routes back to one of these. Memorize.

  1. Ask about real past behavior, not hypotheticals. "Last time X happened, what did you do?" beats "What would you do if X happened?" by an order of magnitude in signal quality. Hypotheticals invite imagined-self answers.
  2. Don't pre-signal the right answer. "Most people find X useful — would you?" is broken. Replace with neutral framing.
  3. Start broad and open-ended before narrowing. Open-ended question first → respondent's authentic frame; structured questions after → that frame doesn't get lost in a checkbox.
  4. Separate screening / diagnosis / segmentation. Screening = "are you the right respondent?" Diagnosis = "what's actually happening?" Segmentation = "what cohort do you fit into?" Mixing them leads to confusing branching and worse data.
  5. No double-barreled questions. "Was the food fast and cheap?" should be two questions. If you can't decompose without losing the meaning, reword.
  6. Behavioral anchors over Likert scales when anchors exist. "I'd lose ~30 minutes" is universal; "Somewhat annoying" is whatever the respondent thinks today.
  7. Honest length claim on the landing page. If you say 60 seconds, deliver 60 seconds. Lying about length is the single fastest way to nuke completion rate. Jarrett's rule: never lie about length.

For the why behind each principle (Tourangeau's 4-stage cognitive model, satisficing theory, etc.) read references/design-principles.md.

The 4-part hybrid structure

This is the structural skeleton every well-designed survey shares. Use it as a checklist:

PartPurposeExample questionsFailure mode
1. Discovery (open-ended)Capture authentic frame before constraining it"What's the one thing you're worried about?" / "Last time X, what did you do?"Skipping → checkbox-only data with zero novelty
2. Diagnostic (targeted, structured)Make responses analyzable across usersSeverity 1–5 with anchors / Frequency / Workaround textSkipping → can't cluster or rank
3. Intent & prioritizationSurface willingness, urgency, willingness-to-payTop-3 priorities / WTP buckets / "When would help most?"Skipping → no demand signal, can't prioritize
4. Segmentation & follow-upCohort the respondent + qualify for follow-upWho-are-you / Group composition / Contact + split consentSkipping → can't compare cohorts, no interview pipeline

For each question, tag it with which part it serves. Questions that don't clearly belong to one part are usually candidates for cutting.

For battle-tested question patterns by part (with EN+ZH parallel text and trade-off notes), read references/question-library.md.

Modality decision tree

Match modality to context:

  • Pure form (tap-to-select) — physical QR scan, on-venue, low-attention. Target ≤60s.
  • Form with optional voice on key questions — moderate attention; the diagnostic question benefits from authentic phrasing. Target ≤90s.
  • AI-conversational interviewer — pre-event email warm-list, deep research mode, willing respondents. AI probes with follow-ups based on prior answers. Target 3–5 minutes, ~10 substantive answers.
  • Voice-note only — accessibility-first / language-flexible / low-literacy contexts. Single open prompt, transcribed server-side, post-processed for cluster signals.

Default rule: start with form + optional voice on the discovery question. Add AI-interviewer only if the research goal requires probing depth that a flat form can't deliver.

For the full UX/UI guide (with React/HTML scaffolds and storage schema recommendations), read references/multimodal-ux.md.

What to ask AI conversationally vs. show as form fields

Show as form fieldAsk via AI
Multiple-choice with finite known optionsOpen-ended diagnosis with potential follow-up
Numeric or scale (with behavioral anchors)Causal explanation: "Why did that happen?"
Demographic/segmentationWorkaround: "What did you try first?"
Consent checkboxesEdge cases the form options don't cover

AI is for the parts where you don't know what answers to expect. Form is for the parts where you do.

Scoring & tagging framework

After collection, every response should map to:

  • pain_unit — the specific worry/problem captured in the discovery question, ideally with a cluster ID assigned by post-hoc LLM enrichment
  • severity (1–5 with behavioral anchors)
  • willingness_to_pay (bucket or numeric range, currency-localized for bilingual audiences)
  • workaround_strength — derived from whether the respondent has an existing fallback (text length + sentiment)
  • segment — derived from screening/segmentation answers
  • interview_score — composite for ranking interview-call candidates: severity × specificity × wtp_weight × consent_research_call × novelty_bonus

For the full intent-scoring math (composite formula, tag taxonomy, cluster assignment heuristics), read references/scoring-framework.md.

Show full SKILL.md (665 more words)Show less

Use-case templates

Three full templates with research goal, target respondent, hypotheses, full question set, branching, and output schema:

  • Event organizers — pre-event attendee surveys, post-event NPS-with-teeth, vendor-feedback
  • Startup founders — customer-discovery (Mom-Test-style), product-validation, churn diagnosis
  • Gig-economy workers — supply-side onboarding, fairness/pay diagnosis, retention drivers

When the user names a use case that matches one of the three (or wants to fork from one), read references/use-cases.md.

Anti-patterns to flag aggressively

  • "Rate your excitement 1–10" — pure satisficing bait. Always cut.
  • Demographics for demographics' sake (age, gender, nationality without a routing reason) — increases drop-off, adds zero signal. Cut unless one of those answers actually changes downstream behavior.
  • Single combined consent checkbox ("OK to contact me about anything") — forces respondents to opt in to too much. Split into specific consents per channel of follow-up.
  • "Optional" research questions at the bottom — respondents infer "this is the throwaway part." Move research-grade questions to the middle, where engagement is highest.
  • Self-routing landing pages ("Got 60s or 2min?") — pushes a design decision onto the respondent. Pick the right instrument for the channel and serve it directly.

Workflow patterns (high level)

When user says "I want to design a survey for X"

If design_survey_session MCP tool is available, prefer it: call with stage: start, then iterate add_question, then finalize. Otherwise walk through manually:

  1. Scope: what's the research goal (single sentence)? Don't proceed without this.
  2. Audience: who's the respondent? How will they encounter the survey?
  3. Length budget: 60s / 90s / 3min / longer? Be honest with yourself before being honest with them.
  4. Hypotheses: what 2–4 things are you trying to prove or disprove? Each becomes a section.
  5. Match to template if available — call get_template if MCP is up, else read references/use-cases.md.
  6. Walk through the 4-part hybrid structure, picking 1–3 questions per part.
  7. Modality: form / voice-mixed / AI-interviewer.
  8. Output schema: what columns/JSONB shape lands in the DB?
When user says "Critique this survey"

If critique_survey MCP tool is available, call it with the pasted survey and surface the typed CritiqueReport. Fetch rethink://principles/{id} if a flagged item needs explanation. Otherwise lint manually:

  1. Read the survey question by question.
  2. Check each against the seven principles. Note violations.
  3. Check the 4-part structure: which parts are missing or duplicated?
  4. Check the length claim against actual estimated time.
  5. Return: a punch-list of issues + concrete rewrites for the worst 3–5 + a verdict on the overall instrument.
When user says "Score / cluster these responses"
  • Single response → call score_response. Batch → call cluster_responses. Both return rubric prompts + JSON Schema; the host LLM (you) then executes the extraction.
  • If MCP is unavailable, work from references/scoring-framework.md.
When user says "Turn this into an app"

No MCP tool for this — codegen stays host-side.

  1. Confirm the question set is final. If not → bounce back to /design-survey.
  2. Pick the stack: TanStack Start (we have a reference impl), Next.js, or static HTML. Default: TanStack Start if user has no preference and wants voice support.
  3. Pick the storage: Supabase (default), or simple JSON-on-disk for local prototypes.
  4. Emit the scaffold per references/multimodal-ux.md.

Reference files (load on demand)

  • references/mcp-integration.md — full MCP tool/resource/prompt reference: when to call each tool, expected inputs/outputs, fallback rules. Read when first deciding tool-vs-manual, or when a tool call needs disambiguation.
  • references/design-principles.md — Jarrett, Dillman, Tourangeau primer + satisficing theory. Read when designing from scratch and the user wants the why.
  • references/question-library.md — battle-tested question patterns by part, with EN+ZH parallel text. Read when proposing specific questions.
  • references/use-cases.md — three full templates: event organizers, startup founders, gig-economy workers. Read when the user names a matching use case.
  • references/multimodal-ux.md — UX/UI patterns + React scaffolds. Read when running /turn-into-app.
  • references/scoring-framework.md — full intent-scoring math + cluster taxonomy. Read when ranking or clustering responses.

What this skill is NOT for

  • Statistical analysis of response data — that's a downstream job, use a different tool.
  • Survey-platform recommendations (Typeform vs. Tally vs. SurveyMonkey) — this skill is opinionated about the survey itself, not the SaaS that hosts it. We assume custom code.
  • General market research strategy — survey design is one tool, not the strategy.

© ooiyeefei, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 6 other files (references) in plugins/rethink-surveys/skills/rethink-surveys of ooiyeefei/ccc.

  • SKILL.md
  • references/design-principles.md
  • references/mcp-integration.md
  • references/multimodal-ux.md
  • references/question-library.md
  • references/scoring-framework.md
  • references/use-cases.md

Open the folder on GitHubat commit c0fd926

Compare with similar skills

Rethink Surveys next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Rethink Surveys compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Rethink Surveys this skillooiyeefei/ccc495—~3.5kAutomated safety check: PassMIT
Produck Feedback To Buildtryproduck/produck-skills511—~1kAutomated safety check: PassApache-2.0
Ue Code AuthoringJasonMa0012/MooaToon750—~1.9kAutomated safety check: NotesCustom licence
Jira Natural Language Interfacejjmartres/opencode1333 repos~1.7kAutomated safety check: PassMIT
Agnixagent-sh/agnix445—~874Automated safety check: PassApache-2.0
Rsigmatimescale/rsigma166—~1.2kAutomated safety check: PassMIT

Similar skills

  • Produck Feedback To Build

    tryproduck/produck-skills

    Pulls full in-context user feedback tickets through the Produck MCP server and turns them into an aligned product change instead of a guess.

    511 GitHub stars~1k tokensUpdated 1 mo ago
    Product & Project ManagementAuto-check passed
  • Ue Code Authoring

    JasonMa0012/MooaToon

    A skill your agent uses when writing or modifying UE C++ (classes, actors, components, subsystems, interfaces, function libraries) with Rider MCP available.

    750 GitHub stars~1.9k tokensUpdated 23 days ago
    DevelopmentAuto-check: notes
  • Lets an agent view, create, update and transition Jira issues in natural language, automatically choosing between the jira CLI and Atlassian MCP tools.

    133 GitHub starsUsed in 3 repos~1.7k tokens
    Product & Project ManagementAuto-check passed
  • Agnix

    agent-sh/agnix

    A skill your agent uses when user asks to 'lint agent configs', 'validate skills', 'check CLAUDE.md', 'validate hooks', 'lint MCP'.

    445 GitHub stars~874 tokensUpdated today
    Agent WorkflowsAuto-check passed
  • Rsigma

    timescale/rsigma

    Use the rsigma CLI and MCP server: engine eval, engine daemon, rule lint, rule draft, rule tune, rule backtest, backend convert, mcp serve.

    166 GitHub stars~1.2k tokensUpdated today
    DevelopmentAuto-check passed
  • Agnix

    agent-sh/agnix

    A skill your agent uses when user asks to 'lint agent configs', 'validate skills', 'check CLAUDE.md', 'validate hooks', 'lint MCP'.

    445 GitHub stars~563 tokensUpdated today
    Agent WorkflowsAuto-check passed

More from ooiyeefei/ccc

All 22 skills in this repo
  • Turns meeting recordings into notes with a chain of custody from audio to claim, auditing transcripts for gaps and low-confidence numbers and names.

    495 GitHub stars~876 tokensUpdated 2 mo ago
    Auto-check passed
  • Builds marketing and explainer videos in Remotion from rendered scenes, with one real product capture as proof, and cuts them for each platform's formats.

    495 GitHub stars~2.9k tokensUpdated 2 mo ago
    Auto-check passed
  • Records a sharp product demo video by driving the real app with a browser agent, from storyboard to Xvfb capture and a narration script synced to the frames.

    495 GitHub stars~2.8k tokensUpdated 2 mo ago
    Auto-check passed
  • Generates architecture diagrams as .excalidraw files by analyzing a codebase, with optional PNG or SVG export through Playwright.

    495 GitHub stars~2k tokensUpdated 2 mo ago
    Auto-check passed
  • Sets up GA4 on a website and wires one real conversion event end to end, verified in DebugView before any money goes into ads.

    495 GitHub stars~2.2k tokensUpdated 2 mo ago
    Auto-check passed
  • Builds or rewrites SaaS landing pages by researching the real product, positioning it against alternatives and writing buyer-focused copy, then implementing it in the codebase.

    495 GitHub stars~1.8k tokensUpdated 2 mo ago
    Auto-check passed

Questions about Rethink Surveys

What does Rethink Surveys do?

Design, critique, or scaffold surveys grounded in Caroline Jarrett, Dillman, and Tourangeau methods. Rethink Surveys is an agent skill from ooiyeefei/ccc. Design, critique, or scaffold surveys grounded in Caroline Jarrett, Dillman, and Tourangeau methods.

When should I use Rethink Surveys?

Rethink Surveys fits situations like: designing a new survey; critiquing an existing one; clustering responses; turning questions into an app.

How do I install Rethink Surveys in Claude Code?

Run `npx skills add ooiyeefei/ccc --skill rethink-surveys -a claude-code`. Or copy the skill folder (plugins/rethink-surveys/skills/rethink-surveys in ooiyeefei/ccc) into .claude/skills/rethink-surveys in your project. Claude Code loads it when a task matches its description.

How do I install Rethink Surveys in Codex?

Run `npx skills add ooiyeefei/ccc --skill rethink-surveys -a codex`. Or copy the skill folder (plugins/rethink-surveys/skills/rethink-surveys in ooiyeefei/ccc) into .agents/skills/rethink-surveys in your project. Codex loads it when a task matches its description.

Can I use Rethink Surveys in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add ooiyeefei/ccc --skill rethink-surveys -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/rethink-surveys, .gemini/skills/rethink-surveys, .github/skills/rethink-surveys and .opencode/skills/rethink-surveys in your project.

What does Rethink Surveys need to run?

SKILL.md names no scripts, command-line tools or credentials: Rethink Surveys is instructions for the agent only.

Does Rethink Surveys access the network?

SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.

Is Rethink Surveys safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Rethink Surveys use?

Rethink Surveys is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Rethink Surveys use?

About 3.5k tokens (SKILL.md is roughly 14k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 14k tokens, read only when the agent opens those files.

What are the alternatives to Rethink Surveys?

Skills that share tags, products or a category with Rethink Surveys: Produck Feedback To Build (tryproduck/produck-skills, 511 stars), Ue Code Authoring (JasonMa0012/MooaToon, 750 stars), Jira Natural Language Interface (jjmartres/opencode, 133 stars) and Agnix (agent-sh/agnix, 445 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Rethink Surveys?

ooiyeefei (a GitHub user) maintains it in ooiyeefei/ccc, which has 495 GitHub stars. The repository holds 22 skills in this directory. The repository was last updated on July 29, 2026.

Source: ooiyeefei/ccc on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.