FM Dojo — User Guide

Everything you need to know about FM Dojo's tools and features. New here? Start with the Getting Started guide.

AI Chat

The AI Chat is a FileMaker-specialized assistant that understands scripts, calculations, ExecuteSQL, relationships, and FileMaker best practices — far more accurately than general-purpose AI tools.

For more videos go to youtube.com/@fmdojo

Conversations

  • Start a new conversation from the sidebar or the New Chat button.
  • Your full chat history is saved and searchable in the sidebar panel.
  • Click any previous conversation to continue where you left off.
  • Edit and resend your last message if you want to rephrase a question.

File uploads

Attach files directly to your message using the paperclip icon. Supported formats:

  • Text files — up to 2 MB (.txt, .sql, .json, .xml, .js, .css, .html, .csv, .log)
  • PDF files — up to 10 MB (text is extracted automatically)
  • Up to 10 files per message.
  • UTF-16 encoded files are auto-detected and converted.

Images

Attach or paste images directly into the chat — the AI can see and reason about screenshots, diagrams, and mockups. Supported formats: PNG, JPG, GIF, and WebP. Paste from the clipboard with Cmd+V (Mac) or Ctrl+V (Windows) without needing to save the file first.

FileMaker code in responses

The AI automatically detects FileMaker code in its responses and applies syntax highlighting — script steps, variables, field references, and functions are all color-coded. Every code block has a one-click copy button.

Sensitive data detection

Before sending, FM Dojo scans your message for common sensitive patterns — passwords, API keys, credit card numbers, private keys, and more. If something is detected, you'll be prompted to review and edit before the message is sent. You can also choose to send anyway if the flag is a false positive.

Context awareness

The AI knows about FM Dojo's built-in tools. When relevant, it will suggest using the Code Editor to test a calculation or the Diagram tool to visualize relationships.

Edit in Code Editor

When the AI's response contains code, an Edit in Code Editor button appears at the bottom of the conversation. Click it to send all code blocks from the chat directly to the Code Editor — the last code block's language is detected automatically.

Calculation accuracy

FM Dojo maintains a verified knowledge base of FileMaker calculation function behavior that goes beyond the official documentation. When you ask about edge cases — negative arguments, zero, decimals, empty inputs, overflow — the AI answers from one of three sources, which it cites explicitly:

  • Verified test results — behavior confirmed by running the exact expression against a real FileMaker instance. The AI states the FM version the test was run on.
  • Documented rules — argument constraints recorded in the structured knowledge base but not yet independently tested. Cited as “documented behavior, not yet verified by testing.”
  • Not confirmed — if neither applies, the AI says so and advises you to test directly rather than guessing.

This covers 24 functions and 190 edge cases including calendar overflow (e.g. Date(13; 1; 2024)), divide-by-zero in Mod, negative Sqrt, zero-argument Log, and decimal truncation vs. rounding behavior per function.

Tip: Use the sidebar toggle (panel icon in the header) to hide the chat history and get more screen space for your conversation.

Code Editor

A full-featured code editor with syntax highlighting, validation, autocomplete, and snippet management — purpose-built for FileMaker development.

For more videos go to youtube.com/@fmdojo

Supported languages

  • FM Calc — FileMaker calculations with function autocomplete
  • FM Script — FileMaker script steps with autocomplete
  • FM Schema — define tables, fields, and relationships in a readable plain-text format
  • SQL — with syntax validation, formatting, and an in-browser SQL Fiddle
  • JavaScript — with linting, formatting, and a Web Viewer Fiddle
  • JSON — with validation and pretty-print
  • YAML — with validation and formatting (supports multi-document files separated by ---)
  • XML — with validation and formatting

FM Schema

FM Schema is a plain-English format for defining your FileMaker database structure. Write table and field definitions in a simple, readable syntax — then use Review & Export to inspect your schema, adjust field types, and copy FileMaker XML ready to paste into FileMaker Pro.

Getting started quickly:

  • Create a new snippet and choose FM Schema as the language.
  • Open Code Chat and describe your data model — e.g. "Design a schema for a bicycle shop managing inventory, sales, repairs, and customers." The AI generates the full FM Schema code for you.
  • Click Review & Export in the toolbar to see your tables and fields rendered as a structured list, adjust types and settings, and copy FileMaker XML.

In Review & Export, use Export as SQL to generate CREATE TABLE statements from your FM Schema. Choose a dialect — MySQL, PostgreSQL, or SQLite — and get a complete SQL script ready to use in another tool or the SQL Fiddle.

Tip: Ask something like: "Design a schema for a bicycle shop managing inventory, sales, repairs, and customers." The AI will generate FM Schema code with tables, fields, and relationships.

SQL Fiddle

The SQL Fiddle lets you run SQL queries entirely in-browser against a real SQLite database — perfect for prototyping and testing ExecuteSQL() logic before using it in FileMaker.

Getting started:

  • Open (or create) a SQL snippet, then click the flask icon (⚗) in the toolbar.
  • The editor splits into three panels: Schema Setup (top), Query (middle), and Results (bottom). Drag the dividers to resize them.
  • In Schema Setup, write your CREATE TABLE and INSERT INTO statements to build sample data.
  • In Query, write a SELECT statement.
  • Click Run — results appear in the bottom panel immediately.

Tips:

  • Use Code Chat → Schema to describe your tables in plain English and have the AI generate the CREATE TABLE statements for you. Or click Build Table and type something like "orders with line items, customers, and products."
  • If you use FM-style ExecuteSQL syntax — where function arguments are separated by semicolons instead of commas — FM Dojo automatically converts them when you click Run, so you can test real FM calculations without rewriting them.
  • Use → Schema and → Query insert buttons in Code Chat to push AI-generated SQL directly into the right panel.

For more videos go to youtube.com/@fmdojo

JavaScript Fiddle

When the language is set to JavaScript, click the flask icon to open the JS Fiddle — a live preview environment for prototyping FileMaker Web Viewer content. Choose from five starter templates including a line chart, pie chart, calendar, Gantt chart, and progress bars. The preview updates as you type. Use Copy as FM Web Viewer to get a FileMaker-ready Set Web Viewer calculation.

Click Colors in the JS Fiddle toolbar to open a 100-swatch color palette. Click any swatch to insert its hex value directly into whichever editor panel (HTML, CSS, or JS) you were last typing in.

Split view & diff

Click the split view icon (two columns) in the toolbar to open two editors side by side. Load a different snippet in the right panel to compare them. Toggle Show diff highlighting to highlight lines that differ between the two — added lines appear in green, removed lines in red.

Validation

Click Validate to check your code for syntax errors. Available for SQL, JavaScript, JSON, YAML, and XML. The editor highlights the exact error line and shows a detailed message with line and column numbers. Valid code can also be auto-formatted.

For FileMaker languages, use Code Chat (see below) for AI-powered code review and validation.

Snippets

Creating a snippet:

  • If no snippet is open, the editor shows a grid of language cards. Click one (e.g. FM Calc, SQL, JavaScript).
  • Type a name for the snippet and press Enter or click Create.
  • Start typing — the snippet auto-saves every 3 seconds. A "Saved" timestamp appears in the toolbar.
  • To create another snippet when you already have one open, click the + New button at the top of the sidebar panel.

Managing snippets:

  • Hover a snippet in the sidebar to reveal Duplicate, Rename, and Delete buttons.
  • Click the pencil to rename inline — press Enter to confirm or Escape to cancel.
  • The language is locked after creation to keep your library organized.
  • Use the search box at the top of the sidebar to find snippets by name.
  • FM Calc and FM Script snippets support tags for categorization (set in the toolbar).

Folders:

  • Click the folder+ icon at the top of the sidebar to create a new folder.
  • Assign a snippet to a folder using the folder selector in the toolbar (the folder icon next to the snippet name).
  • Folders collapse and expand — click the folder name to toggle. Rename or delete folders with the icons that appear on hover.

Clip Manager

Organize snippets into folders and share them publicly — all from the Code Editor sidebar. Use the folder button to create folders, then assign any snippet to a folder using the folder selector on each snippet row. To share a snippet, click the share icon next to it: a public link is generated instantly and copied to your clipboard.

Each clip has a type that determines how it's shared and pasted into FileMaker. Available types:

  • Script step(s)
  • Custom function
  • Plain text
  • Layout object
  • Table(s)
  • Field(s)

Anyone with the link can view the code with full syntax highlighting and copy it. For FileMaker types, the shared page includes a Copy as FileMaker XML button — viewers can paste it directly into FileMaker Pro using the correct pasteboard format. Logged-in FM Dojo users can also click Save to my library to add a copy to their own snippets.

For more videos go to youtube.com/@fmdojo

Editor themes

Choose from six themes: FM Dojo (light/dark auto), One Dark Pro, Dracula, GitHub Dark, Nord, and Solarized Dark.

Other features

  • Copy — one-click copy to clipboard
  • Download — save your code as a file
  • Send to Chat — send your current code to the main AI Chat with full context, so you can ask questions without copy-pasting
  • Line numbers, bracket matching, code folding, find & replace
  • Auto-save with last-saved timestamp

Code Chat

Code Chat is a companion AI panel built into the code editor — click Code Chat in the toolbar to open it alongside your code. Your current code is automatically included as context with every message. Use it to validate logic, ask "what does this do?", get suggestions, or — when the language is FM Schema — ask the AI to design a database from a plain-English description.

Tip: The info button next to the language selector shows all features available for the selected language — hover to see them.

XML Tools

FM Dojo includes two XML tools for working with FileMaker clipboard data.

For more videos go to youtube.com/@fmdojo

XML Export
Generate FileMaker XML from the code editor and paste it directly into FileMaker Pro. Supported types: scripts, calculations, tables, fields, and table occurrences. Relationships cannot be pasted via clipboard yet — they must be created manually in FileMaker for now.
Get XML
Copy FileMaker XML from the clipboard (scripts, custom functions, schema) and paste it into the code editor. FM Dojo converts it to readable plain text.

Clipboard Scripts

Two FileMaker scripts — Copy from FM and Paste to FM — let you move elements between FileMaker and FMDojo in both directions. They require the FMDojo plugin to be installed and enabled. Download them from the info button in the editor toolbar and import them into your FileMaker file.

For more videos go to youtube.com/@fmdojo

Copy from FileMaker → FMDojo
Use this to bring existing FileMaker content into FMDojo for editing or documentation.
  1. In FileMaker, select the objects you want to export (script steps, fields, layout objects, tables, custom functions, or value lists) and copy them with ⌘C (Mac) or Ctrl+C (Windows).
  2. Without clicking anywhere else, run the Copy from FM script.
  3. The clipboard now contains plain XML. Switch to FMDojo and paste it into the code editor.
Paste to FileMaker ← FMDojo
Use this to bring FMDojo-generated XML back into FileMaker.
  1. In FMDojo, click Copy as FileMaker XML on the content you want to import.
  2. Run the Paste to FM script. It reads the XML, detects the correct FileMaker clipboard type automatically, and formats the clipboard so FileMaker can accept it.
  3. Switch to FileMaker (Script Workspace, field definitions, layout, etc.) and paste with ⌘V / Ctrl+V.
Tip: The scripts detect the content type automatically — script steps, complete scripts, fields, tables, layout objects, custom functions, and value lists are all supported. You don't need to tell them what you're pasting.

macOS Sequoia and earlier

XML paste works natively — copy from FM Dojo and paste directly into FileMaker Pro's Script Workspace without any additional tools.

macOS Tahoe / FileMaker 21+

FileMaker 21 on macOS Tahoe no longer accepts plain-text XML paste. The clipboard must be formatted with the correct FileMaker pasteboard type before pasting. Two helpers are available from the info button in the editor toolbar:

  • FMDojo clipboard scriptsCopy from FM and Paste to FM. Copy from FMDojo, run the Paste to FM script, then paste. Require the FMDojo plugin to be installed and enabled.
  • AppleScript helper — a standalone two-way macOS script. Works in both directions — FMDojo → FileMaker and FileMaker → FMDojo. No FileMaker file or plugins needed. One-time setup required (see below).

AppleScript helper — one-time setup

  1. Download FMDojoClipboard.applescript from the info button in the editor toolbar.
  2. Open it in Script Editor (search for Script Editor in Spotlight, or find it in Applications → Utilities).
  3. In Script Editor, go to File → Export, set File Format to Application, and save it somewhere easy to find (e.g. your Desktop or Applications folder).
  4. The first time you run it, macOS may show a security warning — click Open to allow it.

The script is fully two-way and auto-detects direction — no mode to choose. To paste into FileMaker: copy XML from FMDojo, then run the app. To copy from FileMaker: copy objects in FileMaker (Cmd+C), then run the app. A macOS notification confirms what was detected and which direction ran.

Windows users

Windows users should use the Paste to FM script (same as macOS Tahoe). It requires the FMDojo plugin — download and install it, import the script into your FileMaker file, and follow the same workflow.

Diagram Tool

A visual relationship diagram builder for mapping out your FileMaker database structure.

For more videos go to youtube.com/@fmdojo

Building diagrams

  • Add Table — type a name and press Enter (or click Add) to place a table occurrence on the canvas; add fields to it in the sidebar
  • Draw relationships — drag from the orange handle on the right edge of a node to the handle on the left edge of another node
  • Edit relationships — click the small link icon between two connected nodes to define field mappings and operators (=, ≠, <, >, ≤, ≥, ×)
  • Sticky notes — add resizable annotations anywhere on the canvas
  • Color coding — hover a node to reveal color swatches; click one to recolor the table or note
  • Lock — toggle the lock button to prevent accidental moves

Import from snapshot

Click Import Snapshot (folder icon in the toolbar) to load a saved snapshot onto the canvas. The picker shows one entry per database file — the active version if one is marked active, otherwise the most recent. After selecting, the canvas is populated with all table occurrences and their relationships in an Anchor-Buoy arrangement. Anchors are identified by FM x position (the leftmost cluster of table occurrences in your FM relationship graph). Each anchor group is laid out as a tree: the deepest relationship chain extends horizontally to the right, and sibling table occurrences stack vertically below. Only relationship key fields are shown on each node; isolated table occurrences (no relationships) appear in a column on the right with no fields.

Tip: If the canvas already has content you will be asked whether to replace it before importing.

Selecting and aligning nodes

Click a table occurrence node to select it — a tangerine ring appears around it. Hold Shift and click additional nodes to add them to the selection. You can also drag across empty canvas space to rubber-band-select multiple nodes at once.

When two or more nodes are selected, an alignment toolbar appears at the top of the canvas:

  • Align left edges, horizontal centers, or right edges
  • Align top edges, vertical centers, or bottom edges
  • Distribute nodes evenly — equal spacing horizontally or vertically

Undo and redo

The diagram supports unlimited undo and redo. Press Cmd+Z (Mac) or Ctrl+Z (Windows) to step back, and Cmd+Shift+Z / Ctrl+Shift+Z to step forward. Undo covers all canvas changes: adding and deleting nodes, moving nodes, editing labels and colors, connecting and disconnecting relationships, field edits, alignment, and sticky note changes. Your current selection is preserved across undo and redo.

Diagram Chat

Click the Diagram Chat button to open an AI chat panel alongside your diagram. Describe what you want to build in plain English and the AI generates or refines a complete Anchor-Buoy relationship graph — table occurrences, fields, and relationships included. Continue the conversation to add tables, adjust relationships, or restructure your design.

Set a naming convention in the chat panel so the AI follows your client's conventions — for example, three-letter table prefixes like INV_, SAL_, REP_.

Tip: Try something like: "I have a bicycle shop. I need an app to manage inventory, sales, repairs, parts, and customers."

Export & save

  • Export to PDF — download your diagram as a PDF document
  • Save — diagrams are saved to your account and can be loaded later
  • Share — generate a public link to share your diagram (see Sharing below)

Layout Designer

For more videos go to youtube.com/@fmdojo

Tip: Layout Designer is designed for desktop and iPad. It is not available on mobile phones.

A visual drag-and-configure tool for designing FileMaker layouts. Build layouts by placing objects, setting styles, and exporting FileMaker XML that you can paste directly into FileMaker Pro using the clipboard scripts.

Object types

The toolbar gives you every layout object FileMaker supports:

  • Buttons — Button, Button Bar, Tab Control, Slide Control, Popover
  • Fields — Edit Box, Text Area, Checkbox Set, Radio Set, Drop Down, Pop Up, Container
  • Text & Layout — Text Label, Portal, Web Viewer
  • Shapes — Card, Rectangle, Rounded Rectangle, Oval, Line

Click an object type to add it to the canvas. Each object has its own property panel for fill, border, typography, radius, padding, and label.

Alignment & sizing

Select multiple objects to enable alignment tools — align left, center, right, top, middle, or bottom edges. Objects snap to each other while dragging. Use the property panel to set exact pixel dimensions and position.

Figma theme import

Paste the CSS variables from a Figma component export into the theme importer to automatically populate your color palette. This maps your design system's token values (fill colors, text colors, border colors) onto the Layout Designer's object styles — keeping your FileMaker layout consistent with your Figma designs.

Connect your Figma account from the Connections page to access your Figma files directly.

Schema-connected field picker

When a Snapshot or live FM server connection is active, field objects and portal field references show a dropdown populated with your actual table occurrences and fields — including value list names. Without a connection, you type the field reference manually (e.g. Contacts::Email).

Generating XML for FileMaker

Click Copy XML to generate FileMaker layout XML and copy it to your clipboard. Then use the clipboard scripts (or AppleScript helper) to paste the objects into FileMaker Pro. The XML respects the selected theme and object properties. You can also Save your layout to your account and load it again in a future session.

Tip: Start with a Figma import to automatically set your brand colors, then add and style your objects — the XML export will match your design system.

Design Assistant

Click AI Assistant in the toolbar to open the Design Assistant. Describe a FileMaker layout in plain English — a contact card, an invoice header, a portal list — and the canvas is populated automatically with the matching objects, positioned and styled. Review the preview and click Apply to canvas to place the elements. You can adjust any object before exporting XML to FileMaker.

Example prompts:

  • Contact form: name, email, phone, Save/Cancel buttons
  • Navigation button bar with Home, Contacts, Products
  • Invoice header with customer, date, status, and a line items portal
Tip: Press Cmd+Enter (Mac) or Ctrl+Enter (Windows) in the prompt box to generate without clicking the button.

Add-on Generator

Generate a complete, ready-to-install FileMaker add-on from a plain-English description. Requires Ronin plan.

What it generates

  • Schema — table and field definitions in the correct FM types (Text, Number, Date, Timestamp, Container, and more)
  • Scripts XML — paste-ready fmxmlsnippet XML for Script Workspace
  • Setup guide — a three-phase installation guide: Schema, Layout Objects, and Relationship Wiring
  • info_en.json — the add-on metadata file (title, description, category, features, target platforms)

Choose a category (Data Entry, Reporting, Navigation, Utility, Media, Pricing, CRM, Other) and the platforms you are targeting (Desktop, Tablet, Mobile) before generating.

Relationship wiring

If the add-on needs to connect to an existing table in the host file, expand Advanced and enable the relationship toggle. Enter the table occurrence name from the host file and a short relationship name. The generator adds a foreign key field to the add-on table and includes __FMAddonDynamicRelation_ wiring instructions in Phase 3 of the setup guide — FileMaker uses this convention to auto-wire the relationship when the add-on is installed.

Installing the add-on

Follow the three-phase setup guide:

  • Phase 1 — Schema: Create the table(s) and fields in Manage Database exactly as listed.
  • Phase 2 — Layout Objects: Create a layout named __FMAddOnTemplateDirectives_en. Place every specified field, button, and portal. Select all objects and group them (Arrange > Group) into exactly one group.
  • Phase 3 — Relationship Wiring (if applicable): Add the foreign key field to the layout, name its group __FMAddonDynamicRelation_<RelName>.

Once the layout is set up, go to File > Manage > Add-ons…, click the gear icon, open the Add-on Manager, and use the + button to package and install.

Script XML paste

Copy the Scripts XML result and paste it into FileMaker's Script Workspace (Edit > Paste). The XML is in fmxmlsnippet type="FMObjectList" format. If any scripts could not be converted, the plain-text fallback is shown alongside — type those steps manually in Script Workspace.

Tip: Be specific in your description: name the records the add-on manages, what actions it performs, and how users will interact with it. The more detail you give, the more accurate the output.

Demo Data Generator

Describe any FileMaker data model in plain English and download realistic CSV data for testing or demos. Requires Ronin plan.

Generating a schema

Type a description of your data model in the chat and click Generate. Be as specific as you like — name the tables, the kinds of data each table holds, and how they relate to each other. FM Dojo builds a multi-table schema and shows 3 sample rows per table so you can verify the output looks right.

Tip: The more detail you give, the better the result. Mention field types, US vs. international data, and relationships between tables — for example: “customers linked to orders, orders linked to invoices with an invoice number and due date.”

Refining with chat

Use the same chat to refine the schema before downloading. Ask for changes like “add a phone number field to Customers” or “rename the Orders table to PurchaseOrders” — FM Dojo updates the schema and refreshes the preview. Adjust the Records count at any time to control how many rows each table generates.

Downloading

Once the preview looks right, click Looks good — continue and then Download. Single-table schemas download as a .csv file; multi-table schemas download as a .zip with one CSV per table, named to match each table.

Field names in the CSV header row match the FileMaker field names exactly — use Import Records in FileMaker with matching names to map them automatically.

Barcode Generator

For more videos go to youtube.com/@fmdojo

Generate barcodes from any text or FileMaker data and export them as FileMaker script steps — ready to paste directly into Script Workspace.

Supported formats

  • QR Code — text, URLs, or any data up to ~4,000 characters; configurable error correction (L 7% / M 15% / Q 25% / H 30%)
  • Code 128 — alphanumeric; the most compatible 1D barcode format
  • Code 39 — uppercase letters, digits, and special characters
  • EAN-13 — 13-digit retail barcode used worldwide
  • UPC-A — 12-digit North American retail barcode
  • EAN-8 — 8-digit compact barcode for small packages
  • DataMatrix — high-density 2D barcode ideal for small labels

FileMaker XML export

Click Copy FM XML after generating a barcode. The export is a Set Variable script step that stores the barcode image as a Base64-decoded container value in $barcode. Paste it into FileMaker Script Workspace using the Paste to FM script, or press Cmd+V / Ctrl+V directly in Script Workspace.

Tip: Use the S / M / L size selector before exporting — the size is baked into the generated image data.

Base64 Tool

Convert between text, Base64 strings, and files — and get FileMaker script steps that embed the results directly into your FM scripts.

Encoding text

Switch to Text → Base64, type or paste any text, and the encoded output appears instantly. Click Copy FM XML to get a Set Variable step that stores the Base64 string in $encoded.

Decoding Base64

Switch to Base64 → Text, paste a Base64 string or a data URL (e.g. data:text/plain;base64,…), and the decoded text appears. Click Copy FM XML to get a Set Variable step using Base64Decode() stored in $decoded.

File to Base64

Switch to File → Base64 and drop any file onto the drop zone. FM Dojo reads the file client-side and shows the Base64 output. Click Copy FM XML to get a Set Variable step that reconstructs the file as a container value in $file using Base64Decode() with the original filename — so FileMaker treats it as the proper file type.

Tip: The File → Base64 mode is useful for embedding images, PDFs, or other files into a FileMaker script without needing a server upload.

Snapshots

For more videos go to youtube.com/@fmdojo

Snapshots let you import your FileMaker database structure from a “Save a Copy As XML” export file — no live server connection needed. Once imported, the Snapshot becomes the active schema for AI context in Chat and Code Editor, and can be loaded directly into the Diagram.

How to export from FileMaker

  • Open your database in FileMaker Pro.
  • Go to File › Save a Copy As XML…
  • Check “Include details for analysis tools” — this is required to include field and relationship data.
  • Save the .xml file and upload it on the Snapshots page.
Tip: The XML export captures tables, fields, table occurrences, relationships, layouts, scripts, and value lists — the full schema.

Large files

There is no file size limit on Snapshots uploads. Very large XML files (120 MB+) are split into 5.5 MB chunks automatically and reassembled on the server — you don't need to do anything special.

  • A progress bar shows how many parts have been sent and what percentage is complete.
  • Files over 35 MB show an advisory that server-side parsing may take up to a minute after all chunks are received.
  • If your XML is too large to export in one go, FileMaker lets you export the XML in sections — use Save a Copy As XML multiple times, then use the multi-file combine feature below.

Multi-file upload and combine

Drop multiple .xml files at once on the Snapshots upload zone. Each file uploads with its own progress bar. When all files finish:

  • Click Combine all into one snapshot to merge them into a single snapshot. Tables, table occurrences, relationships, layouts, scripts, and value lists are deduplicated by name across all files.
  • Click Keep as separate snapshots to save each file as its own independent snapshot entry.
Tip: The combined snapshot's filename shows the first file name plus a count of the others (e.g. KLS.fmp12 +2 more).

Push from FileMaker Server

Instead of exporting and uploading manually, you can push snapshots automatically from a running FileMaker Server. Click Push from FM Server on the Snapshots page to get a ready-to-paste FileMaker script and your personal API key.

  • Generate an API key from the dialog — it is automatically embedded in the script.
  • Copy the script (as plain text or directly as FM XML to paste into Script Workspace) and import it into your FileMaker database.
  • Run the script manually to push on demand, or schedule it in FMS Admin Console → Schedules → Script Schedule to push automatically on a set interval.
  • Each push creates a new version, auto-labeled with the filename and timestamp, and immediately sets it as the active schema.
  • If GitHub integration is connected, each push also commits the snapshot automatically.
Tip: Requires the BaseElements plugin installed on FileMaker Server (server-side, not just desktop). Keep your API key secret — anyone with it can push snapshots to your account.

Active schema

When a Snapshot is active, it feeds your real field names, layout names, and script names into the AI as context — in Chat, Code Chat, and Diagram Chat. The AI will use your actual table and field names instead of inventing generic ones. You can switch between a live database connection and a Snapshot at any time; activating one deactivates the other.

Loading into the Diagram

Each Snapshot can be loaded directly into the Diagram tool. In the Snapshot detail view (click View), the diagram data is pre-populated from the XML export — table occurrences, fields, and relationships are all included.

GitHub integration

Connect a GitHub account on the Connections page to automatically commit each Snapshot to your repo when it's uploaded. The commit stores one JSON file per table and one per script, so GitHub's native diff shows exactly what changed between versions.

  • Only files that actually changed are uploaded — unchanged files are skipped to keep diffs clean.
  • You can also push any version manually using the GitHub button on each version row, and customize the commit message before pushing.
  • If a version was imported before you connected GitHub, use the manual push button to commit it retroactively.
Tip: Set up GitHub integration on the Connections page — you'll need a Personal Access Token with repo scope.

Schema Analyzer

Click Analyze on any version row to open the Schema Analyzer — a live best-practice audit of your FileMaker schema. It scores your database against FileMaker-specific standards and flags issues with actionable details.

  • Health score — overall percentage of checks that pass, shown in the header.
  • Best Practices checklist — checks for primary keys (serial auto-enter), audit trail fields, anchor table occurrences (anchor-buoy pattern), orphaned TOs, cartesian joins, error capture coverage, empty scripts, oversized scripts (over 100 steps), and naming convention consistency. Click any failing check to expand it and see the full list of affected tables or scripts.
  • Naming Conventions table — shows the dominant casing style (PascalCase, camelCase, SCREAMING_SNAKE, etc.) for tables, fields, scripts, and TOs, flagging categories that are inconsistent.
  • Table Health Matrix — a row per base table showing primary key ✓/✗, audit field presence, anchor TO presence, field count, TO count, and layout count.
  • Script stats — step distribution histogram plus totals for loops, sub-script calls, and error capture coverage.
  • Share — click Share in the analyzer header to generate a public read-only link. Anyone with the link can view the full analysis — no login required.

Versioning

For more videos go to youtube.com/@fmdojo

Each upload of the same database creates a new version. Give each version a name (like 1.0 or pre-migration) to identify it at a glance — this label replaces the auto-increment number as the primary identifier. Only one version per database can be active at a time.

  • Click any version name to rename it inline.
  • Click to set a version as the active AI schema context.
  • Click ↕ Diff to compare two consecutive versions — added and removed tables, fields, scripts, layouts, and relationships are shown. Modified scripts (same name, different steps) appear with a pencil icon — click them to open a step-by-step diff showing exactly which script steps were added, removed, or unchanged.
  • Click View to browse the full schema: tables & fields, TOs & relationships, layouts, scripts, and value lists.
Tip: The diff feature is in Beta — use in production at your own risk.

FMS Admin

For more videos go to youtube.com/@fmdojo

Open FMS Admin from the top navigation to connect and manage your FileMaker Servers. From here you can add servers, monitor connected clients, open and close files, run schedules, view logs, and manage alerts — all in one place.

Adding a server

Click + Add Server in the FMS Admin sidebar. Fill in:

  • Server URL — the full HTTPS address of your FileMaker Server (e.g. https://yourserver.com).
  • Label (optional) — a friendly name like “Acme Corp Production”.
  • Auth method — choose Username & password or Certificate (PKI) (see below).

Click Save. FM Dojo verifies the Admin API connection and stores the server. Admin credentials are encrypted at rest (AES-256) and never returned to the browser after saving.

Tip: If your server is hosted on AWS, Google Cloud, Linode, or Azure, connect a cloud account under Integrations first. FM Dojo can then auto-detect your server's IP and pre-fill SSH access — no manual host entry needed.

PKI token authentication

Select Certificate (PKI) if your FileMaker Server uses PKI token authentication for the Admin API. Generate a token on the server first:

  1. Run the token generator on the server. SSH into your FileMaker Server and navigate to the PKI tools folder:
    Linux: /opt/FileMaker/FileMaker Server/Tools/AdminAPI_PKIAuth/
    macOS: /Library/FileMaker Server/Tools/AdminAPI_PKIAuth/
    Run python3 fmadminapi_pki_token_example.py and follow the prompts — enter a key pair name, optional passphrase, expiration time, and token name. The script creates a <token-name>.txt file.
  2. Register the public key in Admin Console. Go to Administration → Administrator → FileMaker Admin API Public Keys, click Add Public Key, enter the token name, and paste the contents of <keypair-name>.key.pub.
  3. Paste the token into FM Dojo. Open <token-name>.txt and paste its full contents into the PKI Token field. Tokens expire — regenerate with the same script when authentication fails.

What you can do in FMS Admin

Select any server in the sidebar to open its management panel. The panel streams live data from your server as soon as it opens — a pulsing Live indicator confirms the connection is active. You can:

  • Monitor activity in real time — the Overview tab shows version, uptime, WebDirect status, and a live event feed. Client connects and disconnects, database opens and closes, and schedule runs all appear instantly without refreshing.
  • See who is connected — the Clients tab lists every connected user with their IP, app type, and FileMaker version. Send them a message or disconnect them (with a configurable grace period) without touching the server.
  • Open and close databases — the Files tab shows all hosted databases with their status and session counts. Toggle any file open or closed directly from FM Dojo.
  • Run and manage schedules — the Schedules tab lists all server-side schedules. Enable, disable, or trigger a run on demand.
  • Read server logs — the Logs tab gives you the Event log, Access log, Stats log, Data API log, and OS-level logs from one place, with AI analysis. Requires SSH or WinRM access (see below).
  • Get alerted when something goes wrong — the Alerts tab lets you set up automated checks with Discord or Slack notifications.

Live monitoring

FMS Admin streams events directly from the FileMaker Admin API the moment you open a server. The Live Events feed in the Overview tab shows every client connection, disconnection, and database state change as it happens — colored green, red, and blue respectively. The Clients and Files tabs update automatically while the stream is active; manual Load buttons are hidden when you don't need them.

Reading server logs

The Logs tab is where you go when something is wrong and you need to know why. Load the Event log to see database opens, closes, and backup results. Load the Access log for authentication records and client activity. Load the Stats log to look at connection counts and call rates over time. Load the Data API log when troubleshooting API integrations. All selected logs are fetched in parallel, merged into a single time-ordered stream, and each line is tagged — [EVENT], [ACCESS], [DAPI] — so you can read across files at once.

Beyond FileMaker logs, SSH-connected Linux servers also expose the journald system journal (filter by any service unit), the kernel log (OOM kills, disk errors, hardware failures), the syslog, and the auth log (SSH brute-force attempts, failed logins). Windows servers with WinRM expose the Windows Application and System Event Logs.

To use the Logs tab, connect FM Dojo to your server with SSH, WinRM, or a cloud connection. All credentials are AES-256 encrypted at rest and never returned to the browser.

Tip: Keep your log selection focused — load only the files relevant to the issue you're investigating. A tighter log set gives the AI a sharper context and uses fewer tokens.

Connecting over SSH (Linux / macOS)

Open the server in FMS Admin and click SSH Setup. Enter your SSH host, port (default 22), and username, then paste your private key in PEM format (RSA, ECDSA, or Ed25519). Click Test Connection — FM Dojo connects, auto-detects the FileMaker log directory, and saves the config.

Tip: Use a dedicated SSH user. On Linux, add it to the fmsadmin group for log access: sudo usermod -aG fmsadmin fmdojo. On macOS, restrict access to /Library/FileMaker Server/Logs.

Connecting over WinRM (Windows)

WinRM is built into Windows Server 2012 R2 and later — no extra software required. FM Dojo connects over HTTPS (port 5986) using a Windows username and password. The full PowerShell setup commands are shown inside the WinRM setup form in FMS Admin — you can copy them from there. The short version:

  1. Open an elevated PowerShell and run: Enable-PSRemoting -Force, then create a self-signed certificate, add the HTTPS listener, and open port 5986 in the firewall. (Full commands in-app.)
  2. Optionally create a dedicated Windows account: net user fmdojo YourPassword /add then net localgroup administrators fmdojo /add.
  3. In FMS Admin, open the server, click WinRM Access, enter the host, port (5986), username, and password, then click Save & Test.

AWS EC2 (SSM)

If your FileMaker Server runs on AWS EC2, FMS Admin can connect via AWS Systems Manager — no open SSH port or key management required. Connect your AWS account under Connections (requires IAM credentials with AmazonSSMFullAccess and AmazonEC2ReadOnlyAccess), then use Discover Instances to find your EC2 instance and add it as a server. FM Dojo routes all commands through SSM.

Tip: The EC2 instance must have the SSM Agent running (pre-installed on Amazon Linux 2, Ubuntu 16.04+, Windows Server 2008+) and an IAM instance role with AmazonSSMManagedInstanceCore attached. System metrics (CPU, disk) also require SSH.

Google Cloud & Linode

Connect a Google Cloud Service Account JSON or a Linode Personal Access Token under Connections. FM Dojo uses the cloud account to list your running instances — when you add a server from FMS Admin, the SSH host is pre-filled from the instance's external IP. You still need SSH configured for log access. For GCP, the Service Account needs at minimum the Compute Viewer role. For Linode, set the token's Linodes permission to Read Only.

AI log analysis

Once logs are loaded in the Logs tab, click Analyze with AI to get a structured diagnosis. You get a Summary of what's happening, a list of every Error & Warning with plain-English explanations, Patterns (repeating issues, performance concerns, unusual activity), and Recommendations. To ask a specific question instead of a full analysis — “Why are clients getting disconnected at 3 AM?” or “Are there any failed logins?” — type it in the input box next to the button.

Server alerts

The Alerts tab runs automated checks every 15 minutes and notifies you via Discord or Slack when something is wrong — before your users are. Available checks:

  • Disk usage — fires when a volume exceeds your threshold (e.g. 80%). Requires SSH or WinRM.
  • Backup failure — fires when a schedule's last result is not OK. Filter by schedule name. Requires Admin API access.
  • Database status — fires when a database is CLOSED, INCONSISTENT, or in an ERROR state. Requires Admin API access.

Set your Discord or Slack webhook URL, enable the toggle, and click Send test to confirm delivery. The cooldown (default 60 minutes) prevents the same alert from firing repeatedly until the condition clears.

Tip: To get a Discord webhook URL: server settings → Integrations → Webhooks → New Webhook → Copy Webhook URL. For Slack: add the Incoming Webhooks app and copy the URL it generates.

Watchdog alerts

Watchdogs catch low-level OS events that can silently kill FileMaker Server — the kind of thing that won't show up in FM logs until it's too late. Configure them in the Watchdogs section of the Alerts tab:

  • FM Server process down — checks every 15 minutes whether the FM Server daemon is running. On Linux/macOS, uses SSH (pgrep); on Windows, checks the service via WinRM.
  • OOM kills (Linux SSH only) — scans the kernel journal for out-of-memory kills in the last 20 minutes. Common on servers where FileMaker competes with other services for RAM.
  • Disk I/O errors (Linux SSH only) — scans the kernel journal for hardware and filesystem errors. Catches silent disk failures before they cause data loss.
Tip: Watchdogs share the same cooldown and notification settings as the other alerts. OOM and disk error watchdogs require SSH to a Linux server — they do not work on Windows or with WinRM only.

SSL certificate management

The SSL tab lets you manage the TLS certificate on your FileMaker Server without opening FM Admin Console.

View the current certificate. Open any server and click the SSL tab. FM Dojo reads the live certificate directly from the server's TLS connection and shows the subject, issuer, expiry date, and whether it's self-signed. Expiry is color-coded: green when valid, amber when expiring within 30 days, red when expired.

Generate a CSR. Click Generate CSR and fill in your organization details — Common Name (the hostname the cert will cover), Organization, City, State, Country, and an optional email. FM Dojo sends the request to FM Server, which generates a key pair internally and returns a PEM-encoded Certificate Signing Request. Download the CSR and submit it to your CA (Let's Encrypt, DigiCert, Sectigo, etc.).

Tip: The private key is generated and stored on the FM Server — it is never transmitted to FM Dojo or any other server.

Import a signed certificate. Once your CA returns the signed cert, come back to the SSL tab and click Import Certificate. Upload the signed certificate, your private key file, and optionally the intermediate CA chain. If your private key is password-protected, enter the password in the Key password field. FM Server validates the files, installs the certificate, and restarts automatically.

Delete the certificate. The Danger Zone section at the bottom of the SSL tab lets you remove the current certificate. FM Server restarts after deletion and reverts to its default self-signed cert.

Restore Backup

Restore Backup lets you replace a live FileMaker database with a backup copy — directly from your server — without touching the file system manually. Open any server in FMS Admin and go to the Backups tab. FM Dojo scans your server's backup directories over SSH and lists every .fmp12 backup file with its size and modification date.

Tip: SSH access is required to use the Backups tab. See Connecting over SSH or Connecting over WinRM in the FMS Admin section above.

Browsing backup files

Backup files are grouped by directory — FM Server's daily, weekly, and any custom schedule directories appear as collapsible groups. Use the search box to filter by filename. Select one or more files to reveal bulk actions.

Restoring a backup

Click Restore on any file to open the restore dialog. Configure the options, then click Restore Now. FM Dojo runs the restore as a sequence of steps and reports the result of each one:

  1. Close the database — FM Dojo runs fmsadmin close on the target file. Enter an optional message for connected users (shown before they're disconnected). Check Force close to immediately disconnect all clients if you can't wait for them to disconnect gracefully.
  2. Keep current copy (optional) — before overwriting, moves the live file to RemovedbyFMS/[timestamp]_[filename] on the server. Leaves you a fallback if the restore doesn't go as expected. Strongly recommended.
  3. Copy backup over live — copies the selected backup file into the Databases directory on the server. No file transfer to your browser — this happens entirely on the server via SSH.
  4. Import data from current file (optional) — see below.
  5. Reopen the database — runs fmsadmin open to bring the file back online. Skipped if an earlier step failed.

Each step shows its exit code and output. If a step fails, later steps that depend on it are skipped and clearly marked.

Importing data from the current file

Check Import data from current file when you want to restore an older schema (e.g. a development build) but keep the current live data. This uses FileMaker Server's FMUpgradeTool to migrate records from the pre-restore live file into the backup's schema after the copy step. Fields are matched by name — fields in the backup that also exist in the live file are migrated; fields with no match are left empty.

Tip: FMUpgradeTool requires FileMaker Server 2025 or later. The restore dialog will warn you if it's not found on your server. Enter the FileMaker file account and password when prompted — FMUpgradeTool needs credentials to open both files during migration.

Schema analysis before migration

When data import is enabled, click Analyze Schema to get an AI-powered compatibility report before you commit. FM Dojo compares the oldest and newest snapshots on record for that file and produces a plain-English summary of every table and field that has been added or removed since the backup was made. Fields removed from the live file that exist in the backup will be empty after migration. Tables removed from the live file will not be migrated at all. Use this to spot data loss risks before the restore runs.

Downloading backup files

Select one or more backup files and click Download. A single file downloads as a .fmp12. Multiple files are bundled and downloaded as a .tar.gz archive. Files are streamed directly from the server to your browser over SFTP — they are not stored on FM Dojo's servers at any point.

You can also open the server's file system directly in your preferred SFTP client (Cyberduck, Transmit, FileZilla) using the Open in SFTP client button at the top of the Backups tab.

Flows beta

For more videos go to youtube.com/@fmdojo

Flows let you automate FileMaker without writing a line of server-side script. Each flow has a trigger and one or more steps that run in sequence. Go to the Flows page to create and manage your flows.

Triggers

  • FileMaker — a FileMaker script calls your flow using Insert from URL. Attach it to an OnRecordCommit or OnObjectSave script trigger so the flow fires whenever a record is saved. FMDojo generates the script for you — open the flow detail page, copy the ready-made script or click Copy as XML to paste it directly into FileMaker Script Workspace.
  • Inbound Webhook — FMDojo gives you a unique secret URL. POST JSON to it from any external service — Stripe, Shopify, Typeform, your own app — and the flow fires immediately.

FileMaker trigger — script parameter

When using a FileMaker — Run script step, set the Script parameter field to pass trigger data into your FM script. Use {{trigger.payload}} to send the full webhook body, or dot into specific fields such as {{trigger.payload.data.object.amount}}. The script receives the value via Get(ScriptParameter). If the FM script exits with a non-zero error code, the flow step is marked as failed and the error code appears in the run log.

Steps

  • FileMaker — Find records — run a FileMaker find and pass the results to later steps
  • FileMaker — Create record — create a new record in any layout
  • FileMaker — Update record — update fields on an existing record by record ID
  • FileMaker — Run script — execute a FileMaker script with an optional parameter
  • HTTP request — call any external REST API with custom headers and a JSON body
  • Slack message — post to a Slack channel or DM
  • Email — send an email via your configured email provider
  • Filter — stop the flow if a condition is not met

Connectors

Flows ships with 80+ pre-built connectors organized by category. Each connector comes pre-configured with the correct API endpoint, authentication, and field mapping — pick one and fill in the values.

  • CRM & Sales — Salesforce, HubSpot, Pipedrive, Zendesk, Intercom
  • Payments & Accounting — Stripe, Shopify, WooCommerce, QuickBooks, Xero, FreshBooks
  • Messaging — Slack, Discord, Microsoft Teams, Twilio (SMS), SendGrid, Mailchimp
  • Productivity — Google Sheets, Google Calendar, Google Drive, Gmail, Airtable, Notion
  • Developer Tools — GitHub, Jira, Trello, Asana, Linear, Zapier, Make, OpenAI
  • Analytics & Monitoring — Power BI, Tableau, Datadog, ServiceNow, Google Analytics
Tip: Connectors are listed on the Flows page organized by category. Use the filter pills or the search field in the Connections tab to find a specific service quickly.

Template variables

Reference trigger data or a previous step's output anywhere in a step's config using double-brace syntax:

  • {{trigger.payload}} — the full JSON body POSTed to your flow
  • {{trigger.payload.data.object.amount}} — a nested field from the trigger body (e.g. a Stripe event)
  • {{steps.0.output.recordId}} — the output of the first step
  • {{steps.1.output.data.0.fieldData.Total}} — a nested field from a FileMaker find result

Testing flows

On the flow detail page, click Send test to fire a test POST to your flow immediately. On the flows list page, click Test all to fire all enabled flows in parallel — each row shows pass or fail inline so you can verify everything is working in one shot.

Example: Record committed in FileMaker → Slack alert

A user saves a record on the Invoices layout. The OnRecordCommit trigger fires a FileMaker script that calls Insert from URL, POSTing the record data to your FMDojo flow. The flow posts a Slack message: “New invoice from {{trigger.payload.CustomerName}} for ${{trigger.payload.Total}}.

Example: Stripe payment → FileMaker record

Stripe POSTs a customer.subscription.created event to your flow webhook URL. The flow runs a FileMaker script, passing {{trigger.payload}} as the script parameter. The FM script reads the JSON with Get(ScriptParameter), extracts the fields it needs, and creates a record.

Example: Webhook → FileMaker + Slack

Your app POSTs lead data to your webhook URL. The flow creates a contact record in FileMaker using the trigger fields, then posts a Slack message: "New lead: {{trigger.payload.name}} from {{trigger.payload.company}}".

Run history

Every flow execution is logged. Open the flow detail page and expand any run to see each step's input, output, status, and timing. Failed steps show the exact error message — including FileMaker script error codes.

Connections

For more videos go to youtube.com/@fmdojo

Connect FM Dojo to external services to unlock deeper integrations. Manage all connections from the Connections page.

GitHub

Link a GitHub account and repository to enable automatic snapshot pushes. When you push a FileMaker snapshot from the server, FM Dojo can commit the DDR XML to your GitHub repo — giving you version history for your FileMaker schema. You can connect multiple GitHub accounts, set a default repo and branch, and configure the destination path within the repo.

GitLab

Same as GitHub — connect a GitLab account and project to push snapshots to a GitLab repository. Multiple accounts supported with one set as the default.

Figma

For more videos go to youtube.com/@fmdojo

Connect your Figma account using a personal access token. Once connected, you can link a default Figma file URL for use in the Layout Designer's theme importer — importing color tokens from your Figma components directly into the layout designer.

Cloud providers

Register cloud accounts for AWS EC2, Google Cloud, Linode, and Azure to let FM Dojo discover your server instances automatically. When you add a server in FMS Admin, the SSH host is pre-filled from the running instance — no manual IP lookup. AWS EC2 connections also enable AWS SSM access, so FM Dojo can run commands on your EC2 instance without an open SSH port.

Sharing

For more videos go to youtube.com/@fmdojo

Share conversations, diagrams, and code snippets as live, read-only web pages — no login required for viewers.

Chat & diagrams

  • Click the Share button in the chat or diagram toolbar.
  • A unique URL is generated instantly.
  • Shared pages include full syntax highlighting and formatting.
  • Great for team reviews, client demos, and forum posts.

Shared chat pages include a call-to-action for viewers to try FM Dojo themselves.

Code snippets (Clip Manager)

  • Click the share icon on any snippet in the Code Editor sidebar.
  • A public link is generated — share it with anyone.
  • The shared clip page shows the code with full syntax highlighting, a copy button, and for FileMaker types, a "Copy as FileMaker XML" button.
  • Viewers can save a copy of the snippet to their own library if they're logged in.
  • Revoke sharing at any time from the snippet options.

Sharing a folder of clips

Share an entire folder of snippets with a single link — useful for distributing script libraries, starter templates, or client-specific code collections.

  • Hover any folder in the Clip Manager sidebar — a share icon appears alongside the rename and delete buttons.
  • Click it to generate a public link. The URL is copied to your clipboard automatically.
  • The shared folder page lists all clips in the folder with full syntax highlighting, copy buttons, and FileMaker XML export where applicable.
  • Viewers can click Save folder to my library to add a copy of the entire folder — with all its clips — to their own account in one click. If a folder with that name already exists in their library, it's saved with a short random suffix (e.g. Demo_A3F9B).
  • The share icon turns teal when a folder is shared. Click it again to copy the link without regenerating it.

Tokens & Pricing

FM Dojo uses a token-based system. Every AI interaction (chat messages, AI Generate, Code Chat) consumes tokens from your balance.

How tokens work

  • Each subscription plan includes a monthly token allowance.
  • Unused tokens roll over — they accumulate month to month, so nothing is wasted.
  • Your token balance is shown in the header and updates in real time after each message.

Pricing

  • Monthly subscription plans at different tiers.
  • Multi-currency support — USD, EUR, GBP, AUD, CAD, JPY, NZD.
  • Upgrade, downgrade, or cancel anytime from your dashboard.
  • Payments are handled securely through Stripe.
Tip: Check the Pricing page for current plans and token allowances.

Training

The Training section offers structured FileMaker lessons — each one walks you through a concept with code examples, highlights common mistakes, and ends with a short quiz. Your progress is saved automatically as you go.

Topics and lessons

Lessons are organized into five topics:

  • Scripting — script steps, control flow, error handling, and script patterns
  • Calculations — built-in functions, custom functions, and expression design
  • Data API — working with the FileMaker Data API from external systems
  • Relationships — table occurrences, match fields, portals, and the relationship graph
  • Layouts — layout objects, themes, and presentation best practices

Each topic contains multiple lessons. The training index shows all topics as collapsible sections — click a topic header to expand it and see its lessons.

Lesson structure

Every lesson follows the same four-part structure:

  1. Intro — what you'll learn and why it matters
  2. Steps — a numbered walkthrough with code blocks you can copy directly into FileMaker
  3. Common mistakes — the most frequent errors for this topic and how to avoid them
  4. Quiz — answer a set of multiple-choice questions to complete the lesson and earn tokens

Use the Lesson and Quiz tabs at the top of the lesson page to switch between the reading material and the quiz.

Difficulty levels

Each lesson is tagged as Beginner, Intermediate, or Expert. Use the filter buttons at the top of the training index to show only lessons at a specific level. Beginner lessons assume no prior knowledge of the topic; Expert lessons are suitable for developers building production solutions.

Progress tracking

Completed lessons are marked with a green check in the lesson list. A progress bar at the top of the training index shows how many of the total lessons you have finished. Progress is tied to your account and persists across sessions and devices.

Quiz and token rewards

Each lesson quiz must be fully answered before you can submit. After submitting, the correct answers and explanations are revealed. Earn 300 tokens per correct answer — but only on your first submission for each lesson. Retrying a quiz after reviewing the answers does not re-award tokens. The daily cap across all training lessons is 1,000 tokens.

Tip: Work through two or three lessons a day to earn tokens steadily without hitting the daily cap.

Trivia

Test your FileMaker knowledge in timed rounds on the Trivia page. Each round is ten questions drawn from across the FileMaker topic areas. Answer quickly and correctly to earn tokens.

How a round works

  • Each question has a 30-second timer. The circular countdown shrinks as time runs out — it turns red and ticks audibly when five seconds remain.
  • Select an answer to lock it in. The correct answer and a brief explanation are shown immediately.
  • The next question appears automatically after a short delay, or you can advance manually.
  • Your score and token total are shown on the results screen at the end of the round.

Categories

Questions are drawn from five categories: Calculations, Scripts, Relationships, Layouts, and General. Each question is tagged with its category so you can see which areas you're strongest in.

Leaderboard

The Leaderboard tab shows the all-time top scorers ranked by total tokens earned through trivia. Your own entry is highlighted. You must be signed in to appear on the leaderboard.

Round history

The History tab shows all of your previous rounds — score, tokens awarded, date played, and a per-question breakdown. Expand any round to review how you answered each question and read the explanations again.

Token rewards

Earn 100 tokens per correct answer. The daily cap across all trivia rounds is 1,000 tokens. Guests can play rounds but tokens are only banked for signed-in subscribers.

Rewards

Earn free tokens by spreading the word about FM Dojo. Visit the Rewards page to see available actions and submit your proof.

Earning tokens

You can earn tokens in three ways: completing training lessons, playing trivia, and social sharing. Earned tokens are added to your balance immediately (training and trivia) or after admin approval (social sharing).

Training rewards

Earn 300 tokens for each correct answer when you submit a lesson quiz for the first time. Tokens are only awarded on your first submission — retrying a quiz after reviewing does not re-award tokens. The daily cap across all training lessons is 1,000 tokens.

Tip: Work through a few lessons per day to consistently earn tokens without hitting the daily cap.

Trivia rewards

Earn 100 tokens for each correct answer at the end of a trivia round. The daily cap across trivia is also 1,000 tokens. Your score and token history are visible in the History tab on the Trivia page.

Social sharing rewards

Earn tokens by spreading the word about FM Dojo. Visit the Rewards page to see available actions and submit your proof. Actions include:

  • Post on LinkedIn — share FM Dojo with your professional network
  • Post on X / Twitter — mention FM Dojo in a post
  • Post in a Facebook Group — share in a FileMaker or developer community group
  • Refer a friend who subscribes — your highest-value reward

For social posts, submit the URL of your published post as proof. For referrals, enter the email address of the person who subscribed. Each action can only be submitted once. Tokens are added after an admin reviews your submission — typically within a few days.

Tip: Referral rewards have the highest token value. If someone in your network is looking for a FileMaker AI assistant, a direct referral is the fastest way to earn a significant token boost.

Feature Requests

Vote on what matters most and submit your own ideas on the Feature Requests page.

Submitting a feature request

Click Request a Feature and fill in a title, description, and category (Chat, Code Editor, Diagram, or New Feature). You can also indicate how important the feature is to your workflow — from "Nice to have" to "Critical." Submissions are reviewed by the team.

Voting

Upvote any request to signal demand. The vote count is visible on each card and informs prioritization. You can filter by status (Planned, Approved, Launched) to see what's already in progress or completed.

Tip: If you have a critical workflow need, mark it as Critical when submitting — it stands out in the review queue.

FMDojo Plugin

The FMDojo plugin is a FileMaker Pro plugin for Mac that connects your FileMaker files directly to FMDojo. It replaces the FM Clipboard Helper file — everything it could do, plus more.

Installation

  1. Download the plugin from your Account Settings page.
  2. Place FMDojo.fmplugin in your FileMaker Extensions folder:
    ~/Library/Application Support/FileMaker/Extensions/
  3. Restart FileMaker Pro. The plugin loads automatically.
  4. Confirm it's active: in the Data Viewer, run FMDojo.Version() — it should return 1.0.0.

License key

Go to Account Settings → FMDojo Plugin and click Generate key. Your license key is a unique code tied to your FMDojo account. Keep it private — anyone with the key can register a machine against your seat limit.

Individual plans support 2 machines (for example, a MacBook Pro and a Mac Studio). Team plans use your group's seat count. Clicking Regenerate immediately revokes the old key and issues a new one — any machines registered with the old key will need to re-register.

Registering the plugin

Call FMDojo.Register once from your file's OnFirstWindowOpen script trigger:

FMDojo.Register( email ; licenseKey ; machineId { ; baseUrl } )
  • email — your FMDojo account email address
  • licenseKey — the key from Account Settings
  • machineId — use Get ( PersistentID ) — a stable, per-machine identifier built into FileMaker
  • baseUrl — optional. Leave it out for the live site, or pass your local FMDojo URL during development, for example "http://localhost:3000".
Returns OK on success, or an error message if the key is invalid, revoked, or the seat limit has been reached.
Tip: Store the license key in a global field or $$variable so the OnFirstWindowOpen script can pass it in without hardcoding it. If you are testing against a local FMDojo site, include that local URL once during registration so the plug-in reconnects to the same place after FileMaker restarts.

Pasting XML into FileMaker

Use FMDojo.SetXMLClipboard to load AI-generated FileMaker objects directly onto the clipboard, ready to paste:

FMDojo.SetXMLClipboard( xmlType ; xmlContent )
  • xmlType — the FileMaker clipboard type (see reference below)
  • xmlContent — the raw XML text from FMDojo
Returns OK on success.

After running this script step, switch to the target FileMaker window and paste (⌘V). FileMaker reads the clipboard and imports the objects.

XML type reference

The xmlType parameter tells FileMaker what kind of object is on the clipboard:

  • XMSC — Scripts
  • XMSS — Script steps (snippet)
  • XMFD — Fields
  • XMTB — Tables
  • XMLO — Layout objects
  • XMFN — Custom functions
Tip: FMDojo generates XMSC XML for scripts and XMLO for layout objects from the Layout Designer. The type is shown alongside each generated result.

Pushing snapshots

Use FMDojo.PushSnapshot to send your file's schema to FMDojo automatically from a FileMaker script — no manual export needed.

  1. Add a Save a Copy As [type: XML] script step to save your file to a known path (e.g. /tmp/MyFile.xml).
  2. Copy your Plugin Ingest URL from the Snapshots page.
  3. Call FMDojo.PushSnapshot( ingestUrl ; xmlPath ) immediately after.
FMDojo.PushSnapshot( ingestUrl ; xmlPath )
  • ingestUrl — your Plugin Ingest URL from the Snapshots page
  • xmlPath — the full path where you saved the XML file
Returns the server response on success, or an error message.

LiveConnect

LiveConnect is a two-way bridge between your FileMaker file and FM Dojo. Once set up, the AI always has a live view of your schema — tables, fields, scripts, and layouts — and can push changes directly back into your file for review before you commit them.

For more videos go to youtube.com/@fmdojo

Setup

  1. Install the FMDojo Plugin and register it against your account (see Plugin section above).
  2. In FM Dojo, open your project and go to LiveConnect. Copy the generated FileMaker script.
  3. Paste it into your FileMaker file and call it from your OnFirstWindowOpen trigger — or run it manually whenever you want to sync.

That's the full setup. From this point on, the sync triggers automatically each time your file opens.

How it works

  • The sync script exports your schema and sends it to FM Dojo in the background — no manual export step.
  • FM Dojo keeps a live snapshot that the AI reads before every answer, so it always knows your current table occurrences, field definitions, scripts, and layout structure.
  • You can trigger a re-sync at any time by running the LiveConnect script again from FileMaker.
  • Each sync is versioned — you can view and restore any previous state from the Snapshots tab.

Pushing changes from the AI

When you ask the AI to create or modify a script, field, or layout object, it can stage those changes directly into your project rather than just returning text. In the AI Chat, ask something like “Add a script that emails the current record” and the AI will propose a staged change instead of a code block.

  • Staged scripts are written as proper FileMaker XML — they import cleanly without any manual editing.
  • You can view the full diff of every staged change before applying it.
  • Approve and deploy from FM Dojo, or discard the change if you don't want it.
Tip: LiveConnect works best when you keep your sync script in a shared utility file that opens at login — that way the AI always has the latest schema without any extra steps.

Reviewing staged changes

All changes proposed by the AI land in the Staged Changes panel inside your project. Each change shows:

  • What was added or modified (script name, field name, layout object)
  • A full diff so you can review the exact XML before it goes into your file
  • A one-click Deploy button that sends the change to your FileMaker Server via the FM Admin API

Nothing is applied to your file until you explicitly approve it. You are always in control.

Reverting changes

Every LiveConnect sync creates a snapshot. If a deployed change causes a problem, go to the Snapshots tab, find the version before the change, and restore it. The revert is non-destructive — it stages a new change that undoes the previous one, so you can review before applying.

Requirements

  • Plan — Ronin or above
  • Plugin — FMDojo Plugin installed and registered on each machine running the sync script
  • FileMaker — FileMaker Pro 19 or later; FileMaker Server required for deployments

Teams

For more videos go to youtube.com/@fmdojo

Teams let multiple FM Dojo subscribers share a workspace — pooling tokens, collaborating on projects, and managing access through a single account. Invite members from the Team page.

Inviting members

Enter a team member's email address and send an invitation. They will receive an email with a link to accept. Once accepted, their account is linked to your team and they gain access to shared features and the team's token pool.

Token sharing

All team members draw from a shared token pool. The pool's total size is the sum of each seat's monthly allowance. Usage across the team is visible in the Dashboard so you can see who is consuming tokens and how fast.

Feature gates

Feature access follows the team plan tier. All members inherit the same feature set — there is no per-seat feature configuration. If your team plan includes FMS Admin, LiveConnect, or Server Deploy, every member has access.

Removing members

Remove a member from the Team page at any time. Their account reverts to standalone access and they no longer draw from the shared pool. Any work they created (snapshots, layouts, projects) remains in their account.

Account & Security

For more videos go to youtube.com/@fmdojo

  • Email + password or Google OAuth login
  • Two-factor authentication (2FA) — set up with any authenticator app (Google Authenticator, Authy, etc.)
  • Backup codes — generated during 2FA setup for account recovery
  • Session management — view all active sessions across devices and revoke any one
  • Password change — update your password from the Account page

All sessions are encrypted and expire automatically. Rate limiting is applied to all API routes.

AI Preferences

Customize how the AI responds from the Account page, under the AI Preferences section:

  • Custom Chat instructions — text you add here is injected into every Chat message automatically. Use it to tell the AI about your project, your naming conventions, or how you want it to respond. Set it once and every conversation starts with that context already loaded.
  • Response Style — a slider from Precise (lower temperature, more deterministic) to Creative (higher temperature, more varied). The default is 0.70.
  • Concise mode — when enabled, the AI gives shorter, more direct answers with less preamble and explanation.

Changes take effect on the next message you send.

Accessibility

FM Dojo includes several features designed to make the interface more comfortable and usable for a wide range of users and preferences.

Text size

Use the A− A A+ controls in the header to increase or decrease text size across the entire interface. Your preference is saved and restored automatically on your next visit. Three steps are available — default, large, and extra-large.

Dark mode

Click the sun/moon icon in the header to switch between light mode, dark mode, and system mode. System mode follows your operating system's appearance setting and switches automatically when your system preference changes.

Collapsible sidebar panels

The Chat and Code Editor both have sidebar panels that can be hidden to maximize the main content area. Use the panel toggle icon in the header to show or hide them. This is especially useful on smaller screens or when you want a focused, distraction-free workspace.

Keyboard navigation

The code editor (powered by CodeMirror) is fully keyboard-accessible. Standard keyboard shortcuts apply throughout — see the Code editor shortcuts table in the Tips & Shortcuts section. Tab navigation works across all interactive elements in the app.

Voice dictation

A microphone button in the bottom-right corner of every page lets you dictate into any text field, input, or editor. Click once to start recording, click again to stop — your speech is transcribed by OpenAI Whisper and inserted at the cursor. Your browser will ask for microphone permission the first time; click Allow. Works in all modern browsers on HTTPS.

Reduced motion

FM Dojo respects the prefers-reduced-motion media query. When reduced motion is enabled in your operating system accessibility settings, animated transitions are minimized across the interface.

Semantic structure

Page headings, landmark regions, and ARIA labels are used throughout the app to support screen readers and other assistive technologies. Code blocks in AI responses include descriptive labels and one-click copy buttons accessible via keyboard.

Tips & Shortcuts

Text size

Use the A− A A+ controls in the header to adjust text size across all pages. The setting is remembered between sessions.

Dark mode

Toggle between light, dark, and system theme using the sun/moon icon in the header.

Sidebar panels

The Chat and Code Editor both have collapsible sidebar panels. Use the panel toggle icon in the header to show or hide them.

Code editor shortcuts

ShortcutAction
TabAccept autocomplete suggestion
Cmd/Ctrl + FFind & replace
Cmd/Ctrl + ZUndo
Cmd/Ctrl + Shift + ZRedo

General tips

  • The AI is most helpful when you give it context — paste your code, describe what you're trying to do, and mention the FileMaker version if relevant.
  • Upload your snapshots or script PDFs directly into the chat for analysis.
  • Use Diagram Chat to quickly scaffold a relationship graph from a plain-English description, then refine it manually.
  • Share chat links with colleagues instead of copying and pasting long conversations.