Why this exists
The intake questionnaire is the first deliverable a client ever touches, before the contract, before the first call. A Google Form with default purple says one thing about your studio. A branded form that looks like it cost money says another, and the project has not even started.
I have built intake forms for brand projects, web projects, and automation work, and the structure is always the same five sections wearing different questions. This skill packages those question banks and the production details that take the time: label-value maps for every radio group, validation, the honeypot, the success state, mobile layout. What used to be an afternoon is now a conversation.
How it works
- It picks the right question bank Brand identity, web design, automation project, or a 6-question pre-call brief. Five sections, under 20 questions, because a form that takes more than 10 minutes does not get finished.
- It styles the form from your brand If your project has a site or brand CSS, it reads the colours and fonts from there. Otherwise it asks for two or three colours and the business name. Never the generic-template look.
- It generates one production-ready file Inline CSS and JS, labelled inputs, name and email validation, honeypot spam field, visible progress, a branded success state, readable at 360px. No analytics, no trackers.
- It hands off to PHP Form Mailer If the php-form-mailer skill is installed, it offers to wire the two-email backend next. Every radio value already has a human-readable label map waiting for it.
The four question banks
| Type | What it asks about |
|---|---|
| brand | The business, the trigger for the project, audience and competitors, taste (admired brands, feel words, colour dislikes), budget bands and logistics |
| web | Site purpose and must-have pages, what fails about the current site, content and photography reality, reference sites, hosting status |
| automation | The repetitive task and its weekly cost, the current tool stack, what done looks like, urgency and technical contact |
| precall | Six questions max before a discovery call: need, trigger, timeline, budget band, decision maker |
Step by step (for first-time users)
- Open Claude Code in your project Ideally where your brand CSS or site files live, so the form inherits the right look automatically.
-
Type
/client-intake-builderand name the type Example:/client-intake-builder brand questionnaire for my studio. - Answer the brief questions Service type, brand colours if not detectable, your budget bands, anything unusual to ask.
- Review the generated form in a browser Open the HTML file locally. Check the questions read like you, not like a consultant.
- Wire the email and upload Run php-form-mailer on it (or point the action at your own handler), upload both files, done.
Honest take
What it does well: The question banks are the accumulated structure of real client intakes, including the questions people forget until it is too late: who writes the copy, who actually decides, what the budget band is (asked as comfortable radio ranges, not an awkward blank field). And because every choice gets a value-label map, the email handler step later is mechanical instead of archaeological.
What it does not do: It does not send email by itself; that is deliberately a separate concern (php-form-mailer exists for it). It does not create multi-step wizard forms with server-side state, and it does not store submissions in a database. One branded file, one purpose: make the client's first touchpoint feel like the work they are about to pay for.
When to use it: New service offer, new client type, or the moment you catch yourself sending a Google Form to a client you quoted four figures. Also good before discovery calls: the precall bank turns a rambling first call into a focused one.