AdaptGent — voice form builder
AdaptGent lets you describe a form in plain English — by voice or by typing — and Forms assembles the widgets for you. It's not an LLM call; it's a heuristic parser tuned to the exact vocabulary of the Add-field menu. Say what you'd say to a junior employee (“header bar, then two columns — one with a phone number and email, the other with a signature”) and the editor stages every widget for you in one shot.
Where to find it
The AdaptGent bar sits above the field list in every form editor — open any form and you'll see the teal panel with a textarea and a Voice button. There's also a public playground at forms.adaptensor.com/adaptgent-demo — no sign-in required, useful for experimenting with phrasings or showing it off.
The flow
- Describe what you want. Type into the textarea, or click Voice and dictate it.
- Hit Parse. Forms shows you exactly which widgets it heard, in order — each row labelled with its icon and any options.
- Hit Build it. Every widget appears in the editor with the adaptgent-pop bootloader animation, staggered ~220ms apart so you can follow the assembly.
AdaptGent appends to whatever's already in the form — it never replaces. Don't like the result? Delete the widgets and try a different phrasing, or just edit the staged widgets like any other field.
The vocabulary
AdaptGent recognizes phrases from the Add-field menu. If you can see a widget in the menu, you can name it in plain English. Longest matches win, so section heading beats heading, and phone number beats phone.
| Widget | Things you can say |
|---|---|
| Short text | short text, short answer, single line text, text field, name, first name, last name, full name, address, mailing address, street address |
| Long text | long text, long answer, textarea, multi line text |
| email address, email | |
| Phone | phone number, phone, telephone, mobile |
| Number | number |
| Date | date picker, date |
| Multiple choice | multiple choice, radio buttons, radio |
| Checkboxes | check boxes, checkboxes, check marks, checkmarks |
| Dropdown | drop down, dropdown, select menu, select |
| File upload | file upload, upload, attachment, attach a file, file |
| Signature | signature pad, signature, sign here |
| Section heading | section heading, section title, section header, heading |
| Paragraph text | paragraph text, paragraph, static text, instructions, clause |
| Header bar | header bar, header |
| Image | image, photo, picture, logo |
| Table | line items, line item table, spreadsheet, table |
| Totals | totals box, totals, total |
| Card | comparison card, card |
| Divider | divider, horizontal rule, separator line, section break, section divider |
| Spacer | section spacer, spacer, blank space, vertical space |
| Page break | page break, pagebreak, new page |
Naming an input with a specific noun (name, address, first name, phone number) uses that noun as the widget label — so the canvas reads “Phone number” instead of the generic “Short answer”.
Rows, separators, and ordering
Any of these break one row from the next:
- Connector words: then, next, below that, underneath that, after that, finally, lastly.
- Punctuation: a period (
.) ends a row. - Bullets: a line that starts with
-,*,•,1.,2), or a similar list bullet starts a new row. - Line breaks: any newline starts a new row.
Within a row you can chain widgets with commas, and, or with: “name, email, and phone” → three short-text / email / phone widgets in that order.
Columns (side-by-side layouts)
There are four ways to ask for a Columns row:
- Inline left/right:
“phone on the left and email on the right”— one 2-column row with phone in slot 1 and email in slot 2. - Inline connector:
“short text, to the right of that an upload”or“short text side by side with an upload”. - N-column preamble:
“Two columns: one with name and phone, the other with address and email”— the next two non-empty rows fill the slots in order. - N copies of one widget:
“three comparison cards across”— Forms builds a 3-column row with one Card per slot. Works with columns, side by side, or across.
Inside an N-column preamble, every slot can be introduced by any of these ordinal forms: first column with…, second one with…, the other with…, column 2 with…, first section:, middle one, last block. Use whichever feels natural — Forms strips the prefix and parses what follows.
Counts (multiple options, multiple copies)
- A number directly before a choice-type widget sets its number of options.
“three checkboxes”→ CHECKBOXES with three default options. Works for checkboxes, multiple choice, and dropdown. - AdaptGent tolerates one descriptive word between the number and the vocab.
“three choice checkmark”still attaches the count. - A number before columns / across / side by side creates an N-column row with N copies of the widget that precedes it.
“two paragraph text columns”→ 2-column row with one paragraph block per slot.
Voice mode
Click Voice to dictate. Forms uses your browser's native Web Speech API — no audio is uploaded to any server, no OpenAI, no Whisper, no third-party API. The recognizer runs locally and streams text into the textarea live as you speak. Click Listening… again (or stop talking) to end the session.
Browser support
- Chrome / Edge / Safari (desktop & mobile): Voice button visible, full live transcription.
- Firefox: No Web Speech support, so the Voice button is hidden. Typing still works.
Microphone permission
First click on Voice prompts your browser for microphone access. Deny it by accident? Look for the camera/mic icon in the address bar and re-enable it for forms.adaptensor.com — or reset site permissions in the browser's settings.
Why voice transcription works well here
The parser is tuned for the exact patterns voice transcription produces. Hyphens between words (two-column, phone-number) become spaces. Numbered list bullets, ordinal slot prefixes, and counts-with-extra-words all work. If you're comfortable dictating, AdaptGent gets out of your way more than the Add-field menu does.
Example phrasings that work
What to do when AdaptGent can't parse something
If you hit Parse and the preview says “I couldn’t recognize any widgets” — or only some of what you said came through — rephrase using the vocabulary above. The Add-field menu is the canonical reference: anything there has a phrase AdaptGent knows. You can always finish in the editor by hand — the staged widgets are ordinary fields you can edit, reorder, and delete.
On the roadmap
- “Open in editor” from the demo — turn a playground assembly into a real form in one click, with the wizard flow skipped.
- Editable canvas widgets in the demo — currently the playground previews widgets as read-only chips; the editor proper is where you tweak.
- LLM fallback for unknown phrases — for phrasings that fall outside the heuristic vocabulary. Will use Claude (not OpenAI) when it lands.
Comfortable with the bar? Read Building a form for the editor itself, or Field types for the full list of widgets AdaptGent can stage.