Overview
This section provides structured prompt templates that reliably produce high‑quality, Revit‑ready Python scripts using Maestro AI. These templates represent the most common and most impactful categories of automations used by architects, designers, BIM managers, and coordinators.
Each template includes:
- A use‑case overview
- A prompt formula
- A fully written template
- Variants and considerations
- When to use or avoid that template category
5.3.1 Selection-Based Automation
Overview
Selection-based automations are the most predictable and highest‑success category for Maestro AI. They work well because the scope is defined and unambiguous.
Use this category for:
- Updating parameters
- Filtering selected elements
- Performing quick batch edits
Avoid this category for:
- Multi-category workflows
- Advanced geometry manipulations
Template A — Modify a Parameter for Selected Elements
Use Case
Bulk update one or more parameters on user‑selected elements.
Prompt Formula
“Modify the parameter <PARAM_NAME> for all user-selected <CATEGORY_NAME> elements. Set its value to <VALUE>. If the parameter doesn’t exist, skip the element.”
Full Prompt Template
Write a Python script for Revit using the Revit API.
The script should take the user's current selection and filter it so only <CATEGORY_NAME> elements remain.
For each element, set the parameter "<PARAM_NAME>" to "<VALUE>".
If the parameter does not exist or cannot be set, skip the element.
Wrap all modifications in a transaction.
Print how many elements were successfully updated.
Variants
- Apply to multiple parameters
- Skip elements missing required data
- Add MVAR prompts for dynamic values
Template B — Select Elements Based on Rules
Use Case
Selecting elements that match criteria, even when the user does not pre‑select them.
Prompt Formula
“Find all <CATEGORY_NAME> elements where <PARAMETER> equals <VALUE>. Highlight or print them.”
Full Prompt Template
Create a Python script for Revit that collects all elements in the <CATEGORY_NAME> category.
Filter for elements where the parameter "<PARAM_NAME>" equals "<VALUE>".
Select those elements in the Revit UI and print the count of matching elements.
Include safety checks if the parameter does not exist.
Variants
- Filter by numeric values
- Filter by text contains
- Filter by family or type name
5.3.2 View & Sheet Automation
Overview
Automation around sheets and views is one of the most valuable categories in AEC workflows. Maestro AI handles this reliably when prompts are structured with clear naming rules.
Template C — Duplicate Views with Naming Rules
Use Case
Create new views for design options, discipline-specific views, or fire/life-safety overlays.
Prompt Formula
“Duplicate all selected <VIEW_TYPE> views using <DUPLICATION_METHOD> and append <SUFFIX> to their names.”
Full Prompt Template
Write a Python script for Revit that duplicates each selected view using the "<DUPLICATION_METHOD>" option.
After duplicating, rename each new view by appending "<SUFFIX>" to the original view name.
Ensure the script skips view types that cannot be duplicated.
Use a transaction and print the number of duplicated views.
Variants
- With detailing / without detailing
- Dependent views
- Prefix instead of suffix
- Rename using level/name rules
Template D — Create Sheets from a Naming List
Use Case
Quick setup of multiple sheets for design documentation, SD/DD/CD, or discipline packages.
Prompt Formula
“Create sheets based on a list of sheet numbers and names, using title block <TYPE_NAME>.”
Full Prompt Template
Write a Python script for Revit that creates new sheets from a list of sheet numbers and names.
Use the title block type "<TYPE_NAME>".
The list should be defined as an in-code array of tuples in the format:
[("A100", "Floor Plan - Level 1"), ("A101", "Floor Plan - Level 2")]
Create each sheet, set the sheet number and sheet name, and print a summary of all created sheets.
Variants
- Read list from a delimited string
- MVAR for user-typed sheet lists
- Automatically place placeholder views
5.3.3 QA & BIM Coordination Tasks
Overview
QA scripts are essential for BIM managers and coordinators who need fast methods to identify model inconsistencies.
Template E — Identify Elements Missing a Parameter
Use Case
Spot incomplete modeling or documentation data.
Prompt Formula
“Find all <CATEGORY> elements missing the <PARAMETER> value and report them.”
Full Prompt Template
Write a Python script for Revit that collects all <CATEGORY> elements.
Check each element for a parameter named "<PARAMETER_NAME>".
If the parameter is empty or missing, add the element to a list of issues.
Print a report listing all affected elements by element ID.
Do not modify the model.
Variants
- Highlight the elements
- Export the list to CSV
- Add thresholds for numeric validation
5.3.4 Export Workflows
Overview
Export workflows are high-value for firms needing consistent PDF/DWG output aligned with standards.
Template F — Export All Sheets as PDFs
Use Case
Creating standardized PDF outputs for review, coordination, or submittals.
Prompt Formula
“Export all sheets to PDF using <FILENAME_PATTERN>.”
Full Prompt Template
Write a Python script for Revit that exports all sheets in the project to PDF.
Use the sheet number as the PDF filename.
Create a folder if it does not exist at the path "<OUTPUT_PATH>".
Make sure the script uses PrintManager and ViewSheetSetting APIs correctly.
Print the number of exported sheets.
Variants
- Filter by sheet set
- Filter by naming pattern
- Add date stamp
5.3.5 File, Folder, and Naming Automation
Overview
These scripts help automate filesystem interactions related to Revit deliverables.
Template G — Batch Rename Files Based on Rules
Use Case
Standardizing filenames for exports, deliverables, or coordination packages.
Prompt Formula
“Rename all files in <FOLDER> by applying <RULE>.”
Full Prompt Template
Write a Python script (not Revit-dependent) that renames all files within the folder "<FOLDER_PATH>".
Apply this naming rule: "<RULE_DESCRIPTION>".
Skip files that do not match the pattern.
Print a summary of renamed files.
(Useful for external automation sections.)
5.3.6 Model Cleanup Operations
Template H — Delete or Identify Unused Views
Use Case
Improving model hygiene and removing clutter.
Prompt Formula
“Find all unused <VIEW_TYPE> views and either list or delete them.”
Full Prompt Template
Write a Python script for Revit that finds all <VIEW_TYPE> views not placed on sheets.
List their names and element IDs.
Do not delete anything—only report.
Print total count.
Variants
- Enable optional deletion
- Filter by naming prefix/suffix
- Identify views with no templates applied
5.3.7 Parameter & Data Management
Template I — Copy Parameter Values
Use Case
Keeping data synchronized across parameters during document control.
Prompt Formula
“Copy <SOURCE_PARAM> to <TARGET_PARAM> for all <CATEGORY> elements.”
Full Prompt Template
Write a Python script for Revit that collects all <CATEGORY> elements.
Read the value of "<SOURCE_PARAM>" and write it into "<TARGET_PARAM>".
Skip elements where the source parameter is blank.
Use a transaction and print a summary of updated elements.
Variants
- Append instead of overwrite
- Clear target parameter first
- Apply only if target is empty
Summary
These templates cover the most common and highest-impact automations users build with Maestro AI.
Each template is intentionally structured to:
- Define a narrow, clear task
- Provide predictable AI outputs
- Support easy refinement
- Avoid ambiguous or failure-prone patterns
Use these templates as the baseline for building your internal prompt library or training documentation.