- In Builder, the owner of the source workspace marks it as a template. This is what makes it duplicable by other users.
- In AI Governance, an organization admin adds a Template Feature in the Menu Editor. This is what makes it discoverable, as a tile in Builder’s creation flow.
- Standardize a starting point for new use cases (e.g. “Custom RAG”, “Webhook gateway”, “OAuth-enabled connector”)
- Share a polished demo with colleagues without giving them write access to your workspace
- Bootstrap reference architectures your team can fork and adapt
How templating works
The Builder reads the organization’s navigation and turns every Template Feature it finds into a tile. When the user confirms the creation wizard, the Builder callsPOST /workspaces/<templateId>/versions/current/duplicate, then renames the copy with the name and description entered in the wizard.
Step 1: Prepare and mark the source workspace
Before publishing, treat your source as a product:- Make it work out of the box: the copy should run without manual fixup, apart from the secrets the user has to provide (see Configuration and secrets).
- No personal data: clear out test users, real tokens and hard-coded customer ids. Configuration values are copied as-is, so anything that would embarrass you in someone else’s workspace shouldn’t be in the template.
- Document it: a README page or an automation description goes a long way, since the tile itself only shows a label.

It’s the security rules, not the label, that authorize duplication. Without them, the duplicate call is denied for anyone but the workspace’s own collaborators.
Turning the toggle off removes both the label and the rules: new duplications stop immediately, existing copies and the source content are untouched.
Note the workspace id (visible in the Builder URL, e.g.
/builder/kFoNvfX): you’ll need it in step 2.
Step 2: Declare a Template Feature in AI Governance
Template Features live in the organization’s navigation, managed from the Menu Editor.- Open Govern (AI Governance) from the sidebar.
- Go to Menu Editor.
- Edit (or create) the menu item the template should be attached to, typically the Builder entry. The tile is shown to every user who can see that item (see Visibility).
- Click Add Feature → Template Feature.
- Fill in the fields:
The feature’s internal slug is generated from the label (with a numeric suffix if another feature already uses it), so there is no Slug field to fill.
-
Save. Every Template ID is checked against the backend before the navigation is saved:
- if the workspace doesn’t exist, or you can’t read it, the editor shows “This workspace doesn’t exist or you don’t have access to it.”;
- if it exists but isn’t marked as a template, the editor shows “This workspace exists but isn’t declared as a template yet. Enable it from the workspace’s Settings first.”

slug is required here and must be unique across the whole menu):
Step 3: Verify the template
Test with a user who is not a collaborator of the source workspace, otherwise a missing security rule would go unnoticed.- In Builder, click Create new workspace.
- In the What do you want to build? dialog, open the In the Builder tab. Your template appears as a tile between From Scratch and Import ZIP, with your label and the generic description Create from template.
- Pick the tile. The Create Workspace wizard opens with your template preselected on the Type step; click Next. The Details step is prefilled with the template label as name.
- Adjust the name and description, then click Create Workspace. The duplication runs at this point (Preparing workspace…), and you land in the new workspace.
- Check that the expected automations, imports, pages and configuration are there, and fill in the secrets.

What the copy contains
The copy also receives a
fromTemplate:<sourceWorkspaceId> label, a queryable trace of its origin that isn’t shown in the UI. A copy is never a template itself.
Configuration and secrets
The creation wizard only asks for a name and a description: it does not render a configuration form. Anything the user needs to customize happens in the new workspace after creation:- Configuration: values declared in the source
configare copied as-is and resolve as{{config.<field>}}in the copy. Ship sensible defaults, and tell users which ones to change. - Secrets: values are never copied. Secrets declared in the source’s configuration schema show up in the copy under Settings → Secrets → Configuration Secrets, empty, ready to be filled in.
Visibility
Template tiles follow the visibility of the menu item that carries them:- if the user can see the parent menu item, they see all its Template Features;
- to limit a template to some users, set Permissions on the parent menu item (for example on a dedicated item). See Permission-Based Visibility.
Maintaining a template
A template is just a workspace, so:- Update it like any other workspace. Existing copies are never modified: the link between a copy and its template is one-shot.
- Iterate on a separate workspace. The Builder always duplicates the source’s
currentstate, not a published version, so every save on the source is visible to the next user who clones it. - Retire a template by removing its Template Feature from the Menu Editor (the tile disappears) and turning off Make this workspace a template (duplication stops, including through the API). The source workspace stays intact.
Templates vs publishing as an app
Don’t confuse a template with publishing a workspace as a platform app:
You can do both: a template that users clone for customization and a published app that users open as-is.
Related
Workspaces
The template flow from the Builder side: creating a workspace from a template.
Menu Editor
Where Template Features live, plus the wider menu/navigation model.
Versioning
Export, import and repository sync for the source workspace.
Identity & Access
Permissions model used by the Menu Editor’s visibility filters.