Skip to main content
skill · Claude Code

to-questionnaire — Claude Code skill: install and use

Creates a Markdown questionnaire for someone who holds context you need. Use it when a colleague or client must answer before you can make a decision.

  • Author Matt Pocock
  • License MIT
  • GitHub ★ 302,251
  • Installs 498,319
  • Updated 2026-10-22
  • Source shown below
Open on GitHub ↗

What to-questionnaire does

The skill first asks who will receive the questionnaire, including their role, expertise and relationship to you. It then asks what decisions or facts you need back. The interview stays focused on the handoff, rather than asking you to supply subject knowledge you do not have.

It writes to-questionnaire-.md in the current directory and reports the path. The Markdown document includes its purpose, context, answer instructions, themed sections and a final catch-all question. Questions are ordered by importance, cover one idea each, and include space for an answer.

Install this for teams collecting input asynchronously before a decision. Skip it when you already have the answers yourself.

What it helps with

  • collect product requirements from an owner
  • ask a client about integration requirements
  • capture unknowns before a decision
  • prepare questions for a technical stakeholder

How to install to-questionnaire

Command from the source

/plugin marketplace add mattpocock/skills

Command from the source

/plugin install mattpocock-skills@mattpocock

Command from the source

npx skills add mattpocock/skills --skill to-questionnaire -a claude-code

With the Skills CLI (Vercel)

npx skills add mattpocock/skills --skill to-questionnaire -a claude-code

Manually

~/.claude/skills/to-questionnaire/SKILL.md

Copy the whole skill folder; for one project use .claude/skills/to-questionnaire/

How to use it: example prompts

  • Create a questionnaire for our architect. I need to decide what load to expect at launch.
  • Draft a Markdown questionnaire for a client about integration requirements.
  • I need a questionnaire for a colleague to find out which decisions they have already made.

Source text

SKILL.md · MIT
---
name: to-questionnaire
description: Turn a decision you can't fully answer into a questionnaire for someone else to fill in.
disable-model-invocation: true
---

Turn something the user can't answer alone into a **questionnaire**: a Markdown document they hand to one person to fill in async, or fill out together over a meeting. The recipient holds knowledge the user lacks; the questionnaire pulls it out of them.

**Grill the send, not the subject.** Interview the user only about the _send_, which they can always answer: who it goes to, and what they need back. The questions in the document then target the **gap** between what the recipient knows and what the user needs.


1. **Who is it going to?** Ask, in one exchange, the recipient's role, expertise, and relationship to the user. This fixes the questionnaire's tone and how much context it must carry. Done when you know who the recipient is and what they know that the user doesn't.

2. **What do you need back?** Ask, in one exchange, the specific decisions or facts the user can't resolve alone and needs from this person. Done when you have a concrete list of what the user must walk away able to do or decide.

3. **Write the questionnaire.** Draft questions aimed at the gap from steps 1–2, following the Document structure below. Write it to `to-questionnaire-<slug>.md` in the current directory (slug from the topic) and report the path. Done when the file exists and every item the user named in step 2 is covered by a question.

## Document structure

Frame the document as a **discovery questionnaire**: the user lacks context, the recipient holds it. Order questions most-important-first, since async means you may only get one pass, and group them under `##` headings by theme once there are more than a handful. Write it using the template below.

<questionnaire-template>

# <Questionnaire title>

**Purpose:** why this questionnaire exists and the decision riding on it.

**From:** <the user>, **To:** <the recipient>, **How your answers will be used:** <where they go>

## Context

One paragraph orienting a recipient who wasn't in the user's head. Enough to answer well, not a page.

## How to answer

Deadline and rough effort. Partial answers and "I don't know" are useful: flag anything you're unsure of rather than skipping it.

## <Theme heading>

One `##` section per theme. Under each, its questions, most-important-first. Every question is one idea, never compound, with an answer stub directly beneath, and a one-line _why this matters_ only where the question could be misread or invite a throwaway answer.

<question-example>
### What load is the system expected to handle at launch?

_Why this matters: it decides whether we provision for burst traffic now or defer it._

>
</question-example>

## Anything else?

A closing catch-all: anything we didn't ask that we should know?

</questionnaire-template>

© Matt Pocock · MIT · mattpocock/skills

Questions about to-questionnaire

How do I install to-questionnaire in Claude Code?

Add the skill with npx skills add mattpocock/skills --skill to-questionnaire -a claude-code.

What does to-questionnaire do?

It turns an unanswered decision into a Markdown questionnaire for a person with the missing knowledge. The file is saved as to-questionnaire-.md in the current directory.

How are questions structured in the generated questionnaire?

Questions are grouped by theme when there are more than a handful and ordered from most important onward. Each question covers one idea and has an answer stub beneath it.

Similar

See also

Project sponsors

Companies that keep this analytics open
Gold sponsor

Impressions, clicks and code copies — open statistics. We keep the numbers public for the same reason NeBlask itself is public. Become a sponsor