AI Assistant

The AI Assistant tab builds a prompt for an external AI (Microsoft 365 Copilot, ChatGPT, Claude); you paste it into the chat and safely apply the AI's response back to the form. This feature requires a Pro license.

Workflow

  1. Open the AI Assistant tab in the designer top bar.
  2. Check the context bar at the top (mode, current list, related lists). The context is set once and stays collapsed while you work.
  3. In the left column 1 Request for the AI, describe what the AI should do, or click a quick recipe that prefills the request.
  4. In the Hand over to the AI card, click Download the prompt as a file, attach form-ai-prompt.md to a message in Copilot or another chat, and write the short instruction from step b) in the chat (Copy button).
  5. Paste the whole AI response into the right column 2 AI response and check. The check runs immediately; resolve whatever blocks applying and click Apply to the form in the bar at the bottom.
AI Assistant tab: context bar at the top, request for the AI on the left, AI response and check on the right

On wide screens both columns sit side by side, so further iterations (refining the request, a new response) need no scrolling. On narrower screens (below about 1100 px) they are stacked.

Modes

The mode is shown as a chip in the context bar. The Edit context link expands the bar with the mode choice; Collapse hides it again.

Save as default in the expanded context stores the chosen mode and the related list selection in the configuration (aiAssistant), so they are preselected next time.

Related lists

The AI needs to know the columns of lists referenced by the form (lookup targets, sources of Related Items and Related Documents widgets). The second row of the context bar shows the selected lists and libraries as chips with an icon, a column count and a remove button. With no selection it reads "None · the AI sees only the columns of the current list".

Add list / library opens a picker with search and the groups Lists and Document libraries. A list the form already uses shows how it is used and a Used in the form badge. The footer shows how many lists are selected; Save as default stores the selection in the configuration and Done closes the picker. The selection is also saved on Apply.

When the form uses a list that is not selected, the bar shows the warning "The form uses … Without them the AI does not know their columns." If a list's columns fail to load, that list is omitted from the prompt and a warning with its title is shown.

Context bar with related list chips and the open picker with the Used in the form badge

Only column names, types, and settings are sent to the AI, never item data.

Icons, labels, and document columns

The AI instructions include a list of valid tab and section icon keys (lowercase, including aliases; generated from code). For the Related Documents widget, the AI prefers name and size columns over FileLeafRef. The AI should only set a custom label (customLabel) when the user explicitly wants a different name than the column's display name; otherwise, the form shows the SharePoint column title.

Handing over the prompt

The prompt contains the whole configuration knowledge pack, so it is large and does not fit into a chat text box. The Hand over to the AI card has two steps:

  1. a) Download the prompt as a file: below the button are the file name and the character count; after the download "✓ Downloaded" appears. Attach the file to a message in Microsoft 365 Copilot or another chat.
  2. b) Write in the chat: a short instruction (depending on the mode) with a Copy button.

For chats with a large text limit, Copy the whole prompt is available below a separator. If the current list's columns fail to load, an error with a Retry button is shown and downloading and copying the prompt are disabled.

Response validation

Paste the response into the large box (Ctrl+V), use Paste from clipboard (only in browsers that allow reading the clipboard), or drop a .json, .md or .txt file onto the box. Split code blocks are joined automatically and text around the JSON is ignored. The check runs right after pasting.

After pasting, the box is replaced by the summary "Response pasted · N characters" (joined code blocks, whether the JSON is complete, the mode). Show and edit expands the response for editing (every edit re-runs the check), Paste a new response clears it for the next iteration. The Iteration counter in the column header shows which response you are checking.

The check is split into cards:

The Apply to the form bar sticks to the bottom of the right column. Its status dot and title show the state: "Waiting for the AI response", "Cannot apply · errors", "Changes left to confirm" or "Ready to apply" (optionally with the number of columns not created yet). The button stays disabled while anything blocks applying.

Pasted response with the Blocking apply, Missing in SharePoint and Summary of changes cards and the Apply bar

New columns proposed by AI

If a request requires a piece of data for which no column exists in the list, the assistant may propose a new column (lowercase without diacritics, with a human-readable title in the prompt language and an appropriate type). Such a field appears in the Missing in SharePoint card: each row shows the name, where the field is used (tab / section), the type and the state "Does not exist in list …". A user with Manage Lists permissions sees a Create button next to it, which opens the same dialog as in the field palette, pre-filled from the proposal (title, internal name, type, options). Create all missing steps through all missing fields one by one, letting you confirm or skip each. Nothing is created without your confirmation. The card header shows how many columns are already created.

A created column shows the "✓ Created" badge and the state "InternalName … · references aligned". If SharePoint assigned a different internal name than the assistant proposed, references in the response (rules, expressions, buttons) are automatically rewritten to the actual name. This renaming persists throughout your session on the AI tab: editing the response text (for example, fixing JSON) does not discard it and the created column will not be offered again. The filterByField reference on a cascading lookup is not rewritten because it refers to a column on the target list, not a form field. After creation, the field is aligned with the actual column: if you change the column type in the dialog, the actual type is used; a multi-value lookup is created as single-value and the AI proposal adjusts accordingly. Created columns remain in the list even if you ultimately do not apply the response, and are immediately available in the field palette as well as during configuration import and export.

Scripts and translations

Scripts from an AI response will run in form users' browsers, so review them carefully before confirming. The tenant-wide custom script policy also applies; see JavaScript Scripts. If the form has translations, a reminder is displayed after applying so you can add new or updated texts on the Translations tab.

Undo and result

Applying a response is a single Undo step (Ctrl+Z). After applying, the designer switches to the Preview tab so you can verify the result.

Pro license

On the Community license, the tab is marked with a Pro badge and its content is locked with an explanation.