SKILL.md
about 900 tokens- Matt Pocock's skills
- greenline
---
name: "to-questionnaire"
description: "Turn a decision the owner can't fully answer into a questionnaire for the person who can, to fill in async or together over a meeting: ask the owner only who it goes to and what they need back, then write the questions most-important-first, one idea each, with \"I don't know\" welcome. Use when a decision the work needs can be answered only by someone other than the owner."
---
# To questionnaire
to-questionnaire is a trial habit, installed only where the workspace's `trials` names it, for the moment a decision the work needs can be answered only by someone other than the owner, at whatever step the work is in, most often frame. It writes no record of its own: the questionnaire is a working file, never committed, that the owner hands on, and the answers that come back settle the decision in the section of the step that asked. The file lives in the open change's working files; with no change open, give the questionnaire in the reply instead of a file. A question the owner can answer is frame's to ask; this habit asks the owner only about the send.
Greenline's paths and commands for this skill stand on its references page, [references/greenline.md](references/greenline.md): read it when the work lands in the workspace.
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 the working files as `to-questionnaire-<slug>.md` (slug from the topic) and report the path. Done when the file or the reply holds it 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>
SKILL.md as installed, byte for byte SHA-256 c9f97b2828faf295bf8734837beed90a98b2de17116b337a5731a65546209949