From pyform
Create professional forms on pyform from natural language descriptions. Use when the user asks to "create a form", "make a survey", "build a questionnaire", "generate a form", "registration form", "feedback form", "NPS survey", or describes any kind of form they want to create on pyform.
How this skill is triggered — by the user, by Claude, or both
Slash command
/pyform:generate-formThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Take a user's natural language description and convert it into a structured form created automatically on pyform via API.
Take a user's natural language description and convert it into a structured form created automatically on pyform via API.
First check the environment, then fall back to the .env file:
echo "${PYFORM_API_KEY:-NOT_SET}"
If NOT_SET, check .env:
grep '^PYFORM_API_KEY=' .env 2>/dev/null | head -1 | cut -d'=' -f2 | tr -d '"'
If both return empty or NOT_SET, inform the user:
Your pyform API Key is not configured. Run
/pyform-setupto connect your account (it only takes a moment).
Then stop.
If a valid key is found (starts with pyf_), keep it in memory and continue. Do not print the key.
Read the user's description and generate a JSON payload following the schema in references/form-schema.md.
WELCOME if the form has 3+ questions.GOODBYE if you started with WELCOME.options is mandatory for MULTIPLE_CHOICE, CHECKBOXES, and DROPDOWN.ids (e.g., q_satisfaction, q_email).required: true only on essential fields.isConversational: true for surveys and feedback forms.Save the JSON and send it with curl. Substitute the actual key value directly into the header (do not rely on shell variable expansion):
curl -s -w "\n%{http_code}" \
-X POST https://pyform.app/api/forms \
-H "Content-Type: application/json" \
-H "x-api-key: ACTUAL_KEY_VALUE" \
-d '$JSON_PAYLOAD'
| Code | Action |
|---|---|
200 | Show: form title, number of questions created, and any unmappedFields. |
400 | Show error details, fix the JSON, and retry once. |
401 | Inform: "Your API Key is invalid or has been revoked. Generate a new one in Settings → API Keys and run /pyform-setup again." |
402 | Inform: "Your pyform subscription is not active. Renew your plan in the dashboard." |
500 | Inform: server error, try again later. |
On success, show a clean, friendly summary. Never show raw JSON to the user.
npx claudepluginhub lukhazd/pyform-plugin --plugin pyformGenerates Google Forms via API: interviews users interactively, previews in Markdown, creates forms with 11 question types, quizzes, branching logic, Drive/Sheets integration. Invoke for automated form building.
Generate Frappe Web Forms for public-facing forms. Use when creating customer portals, registration forms, surveys, or public data collection forms.
Generates validated, accessible form pages for contact forms, registrations, surveys, sign-ups, and multi-step wizards. Detects project tech stack to produce matching code with real-time validation, error handling, and a11y.