/FileMaker-XMLsnippet-Claude-Skill
Use this skill whenever the user wants to work with FileMaker script XML or custom function XML. This includes: generating FileMaker XML from a description, pseudocode, or script steps; analysing or reviewing existing FileMaker XML for errors or silent-failure risks; converting
$ npx -y skills add andykear/FileMaker-XMLsnippet-Claude-Skill --skill FileMaker-XMLsnippet-Claude-Skill --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
- Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.Auto-invocation is when the right skill fires by itself at the right moment, driven by a FLOW.md router and a hook, instead of you invoking it by name. It is the difference between a skill being installed and a skill actually getting used.Read the full definition →
- You can call itInvoke it directly when you want it.
- Slash command
/FileMaker-XMLsnippet-Claude-Skill
Context preview
The summary Claude sees to decide when to auto-load this skill.
Use this skill whenever the user wants to work with FileMaker script XML or custom function XML. This includes: generating FileMaker XML from a description, pseudocode, or script steps; analysing or reviewing existing FileMaker XML for errors or silent-failure risks; converting
SKILL.md
FileMaker-XMLsnippet-Claude-Skill.SKILL.mdname: filemaker-xml
description: >
Use this skill whenever the user wants to work with FileMaker script XML or custom function XML.
This includes: generating FileMaker XML from a description, pseudocode, or
script steps; analysing or reviewing existing FileMaker XML for errors or
silent-failure risks; converting scripts between formats; or any task where
the output must be paste-ready XML for the FileMaker Script Workspace or Manage Custom Functions dialog.
Trigger any time the user mentions FileMaker scripts, fmxmlsnippet, Set
Variable XML, script step XML, custom function XML, or asks to produce XML that can be pasted
into FileMaker. Always use this skill — do not attempt FileMaker XML tasks
from memory alone, as the format has undocumented paste-handler rules that
cause silent failures without this reference.
FileMaker Script & Custom Function XML Skill
Overview
This skill enables Claude to correctly **analyse** and **generate** FileMaker Script Workspace XML — the `fmxmlsnippet type="FMObjectList"` format that FileMaker accepts via clipboard paste.
The format has a lenient XML parser but a strict paste handler. Structural deviations that look fine as XML can cause steps to paste with silently missing data (e.g. Set Variable pastes with no variable name). The reference files in this skill are the authoritative reverse-engineered spec for what the paste handler actually accepts.
---
Mandatory reading — progressive loading
The specification (v1.13) is split so a task loads only the sections it needs. The rules are:
1. **Always read `references/core.md` first.** Not optional. It contains the paste format requirements, common conventions, the Set Variable canonical structure, and the silent-failure modes that apply to every step. Skipping it reintroduces the from-memory failure mode this skill exists to prevent. 2. **Always read `references/steps-control.md`.** Control steps (If, Loop, Perform Script, Exit Script, Comment, transactions) appear in virtually every script. 3. **Then read only the step category files containing the steps the task needs**, using the routing index below. When reviewing XML someone else produced, route by the `name` attributes on the `<Step>` elements in the snippet. 4. Custom function tasks: read `references/custom-functions.md` (plus core.md — the wrapper differs but the conventions apply). 5. MBS or other plugin steps: read `references/steps-plugin.md`. 6. `references/worked-example.md` is optional background, not required for any task.
When reviewing XML someone else produced, route by the step `id` attributes present in the snippet.
Do not rely on training data for FileMaker XML structure — always consult the reference files. The format contains non-obvious quirks (e.g. a trailing space in the `Configure RAG Account ` step name) that only appear in the spec.
---
Routing index
Set Variable (141) is documented in `core.md` §3 (its canonical structure is a silent-failure trap, so it lives with the core rules).
**`steps-control.md`** — Allow User Abort, Comment, Commit Transaction, Else, Else If, End If, End Loop, Exit Loop If, Exit Script, Halt Script, If, Install OnTimer Script, Loop, Open Transaction, Pause/Resume Script, Perform Script, Perform Script on Server, Perform Script on Server with Callback, Revert Transaction, Set Error Capture, Set Error Logging, Set Layout Object Animation, Set Revert Transaction on Error, Set Variable, Trigger Claris Connect Flow
**`steps-navigation-editing.md`** — Clear, Close Popover, Copy, Cut, Enter Browse Mode, Enter Find Mode, Enter Preview Mode, Go to Field, Go to Layout, Go to List of Records, Go to Next Field, Go to Object, Go to Portal Row, Go to Previous Field, Go to Record/Request/Page, Go to Related Record, Paste, Perform Find/Replace, Select All, Set Selection, Undo/Redo
**`steps-fields-records.md`** — Commit Records/Requests, Constrain Found Set, Copy All Records/Requests, Copy Record/Request, Delete All Records, Delete Portal Row, Delete Record/Request, Duplicate Record/Request, Export Field Contents, Export Records, Extend Found Set, Find Matching Records, Import Records, Insert Audio/Video, Insert Calculated Result, Insert Current Date, Insert Current Time, Insert Current User Name, Insert File, Insert from Device, Insert from Index, Insert from Last Visited, Insert from URL, Insert PDF, Insert Picture, Insert Text, Modify Last Find, New Record/Request, Omit Multiple Records, Omit Record, Open Record/Request, Perform Find, Perform Quick Find, Relookup Field Contents, Replace Field Contents, Revert Record/Request, Save Records as Excel, Save Records as JSONL, Save Records as PDF, Save Records as Snapshot Link, Set Field, Set Field By Name, Set Next Serial Value, Show All Records, Show Omitted Only, Sort Records, Sort Records by Field, Truncate Table, Unsort Records
**`steps-windows-files.md`** — Adjust Window, Arrange All Windows, Close Data File, Close File, Close Window, Convert File, Create Data File, Delete File, Freeze Window, Get Data File Position, Get File Exists, Get File Size, Move/Resize Window, New File, New Window, Open Data File, Open File, Print, Print Setup, Read from Data File, Recover File, Refresh Window, Rename File, Save a Copy as, Save a Copy as XML, Scroll Window, Select Window, Set Data File Position, Set Multi-User, Set Use System Formats, Set Window Title, Set Zoom Level, Show/Hide Menubar, Show/Hide Text Ruler, Show/Hide Toolbars, View As, Write to Data File
**`steps-accounts-ai-misc.md`** — Add Account, Allow Formatting Bar, AVPlayer Play, AVPlayer Set Options, AVPlayer Set Playback State, Beep, Change Password, Check Found Set, Check Record, Check Selection, Configure AI Account, Configure Local Notification, Configure Machine Learning Model, Configure NFC Reading, Configure Persistent Data, Configure Prompt Template, Configure RAG Account, Configure Region Monitor Script, Configure Regression
Read more
name: filemaker-xml description: > Use this skill whenever the user wants to work with FileMaker script XML or custom function XML. This includes: generating FileMaker XML from a description, pseudocode, or script steps; analysing or reviewing existing FileMaker XML for errors or silent-failure risks; converting scripts between formats; or any task where the output must be paste-ready XML for the FileMaker Script Workspace or Manage Custom Functions dialog. Trigger any time the user mentions FileMaker scripts, fmxmlsnippet, Set Variable XML, script step XML, custom function XML, or asks to produce XML that can be pasted into FileMaker. Always use this skill — do not attempt FileMaker XML tasks from memory alone, as the format has undocumented paste-handler rules that cause silent failures without this reference.
FileMaker Script & Custom Function XML Skill
Overview
This skill enables Claude to correctly **analyse** and **generate** FileMaker Script Workspace XML — the `fmxmlsnippet type="FMObjectList"` format that FileMaker accepts via clipboard paste.
The format has a lenient XML parser but a strict paste handler. Structural deviations that look fine as XML can cause steps to paste with silently missing data (e.g. Set Variable pastes with no variable name). The reference files in this skill are the authoritative reverse-engineered spec for what the paste handler actually accepts.
---
Mandatory reading — progressive loading
The specification (v1.13) is split so a task loads only the sections it needs. The rules are:
1. **Always read `references/core.md` first.** Not optional. It contains the paste format requirements, common conventions, the Set Variable canonical structure, and the silent-failure modes that apply to every step. Skipping it reintroduces the from-memory failure mode this skill exists to prevent. 2. **Always read `references/steps-control.md`.** Control steps (If, Loop, Perform Script, Exit Script, Comment, transactions) appear in virtually every script. 3. **Then read only the step category files containing the steps the task needs**, using the routing index below. When reviewing XML someone else produced, route by the `name` attributes on the `<Step>` elements in the snippet. 4. Custom function tasks: read `references/custom-functions.md` (plus core.md — the wrapper differs but the conventions apply). 5. MBS or other plugin steps: read `references/steps-plugin.md`. 6. `references/worked-example.md` is optional background, not required for any task.
When reviewing XML someone else produced, route by the step `id` attributes present in the snippet.
Do not rely on training data for FileMaker XML structure — always consult the reference files. The format contains non-obvious quirks (e.g. a trailing space in the `Configure RAG Account ` step name) that only appear in the spec.
---
Routing index
Set Variable (141) is documented in `core.md` §3 (its canonical structure is a silent-failure trap, so it lives with the core rules).
**`steps-control.md`** — Allow User Abort, Comment, Commit Transaction, Else, Else If, End If, End Loop, Exit Loop If, Exit Script, Halt Script, If, Install OnTimer Script, Loop, Open Transaction, Pause/Resume Script, Perform Script, Perform Script on Server, Perform Script on Server with Callback, Revert Transaction, Set Error Capture, Set Error Logging, Set Layout Object Animation, Set Revert Transaction on Error, Set Variable, Trigger Claris Connect Flow
**`steps-navigation-editing.md`** — Clear, Close Popover, Copy, Cut, Enter Browse Mode, Enter Find Mode, Enter Preview Mode, Go to Field, Go to Layout, Go to List of Records, Go to Next Field, Go to Object, Go to Portal Row, Go to Previous Field, Go to Record/Request/Page, Go to Related Record, Paste, Perform Find/Replace, Select All, Set Selection, Undo/Redo
**`steps-fields-records.md`** — Commit Records/Requests, Constrain Found Set, Copy All Records/Requests, Copy Record/Request, Delete All Records, Delete Portal Row, Delete Record/Request, Duplicate Record/Request, Export Field Contents, Export Records, Extend Found Set, Find Matching Records, Import Records, Insert Audio/Video, Insert Calculated Result, Insert Current Date, Insert Current Time, Insert Current User Name, Insert File, Insert from Device, Insert from Index, Insert from Last Visited, Insert from URL, Insert PDF, Insert Picture, Insert Text, Modify Last Find, New Record/Request, Omit Multiple Records, Omit Record, Open Record/Request, Perform Find, Perform Quick Find, Relookup Field Contents, Replace Field Contents, Revert Record/Request, Save Records as Excel, Save Records as JSONL, Save Records as PDF, Save Records as Snapshot Link, Set Field, Set Field By Name, Set Next Serial Value, Show All Records, Show Omitted Only, Sort Records, Sort Records by Field, Truncate Table, Unsort Records
**`steps-windows-files.md`** — Adjust Window, Arrange All Windows, Close Data File, Close File, Close Window, Convert File, Create Data File, Delete File, Freeze Window, Get Data File Position, Get File Exists, Get File Size, Move/Resize Window, New File, New Window, Open Data File, Open File, Print, Print Setup, Read from Data File, Recover File, Refresh Window, Rename File, Save a Copy as, Save a Copy as XML, Scroll Window, Select Window, Set Data File Position, Set Multi-User, Set Use System Formats, Set Window Title, Set Zoom Level, Show/Hide Menubar, Show/Hide Text Ruler, Show/Hide Toolbars, View As, Write to Data File
**`steps-accounts-ai-misc.md`** — Add Account, Allow Formatting Bar, AVPlayer Play, AVPlayer Set Options, AVPlayer Set Playback State, Beep, Change Password, Check Found Set, Check Record, Check Selection, Configure AI Account, Configure Local Notification, Configure Machine Learning Model, Configure NFC Reading, Configure Persistent Data, Configure Prompt Template, Configure RAG Account, Configure Region Monitor Script, Configure Regression
Reverse-engineered specification of FileMaker's undocumented fmxmlsnippet clipboard format. Every step ID, element ordering rule, and silent failure mode, established through empirical round-trip testing against production FileMaker solutions.
Repo: andykear/FileMaker-XMLsnippet-Claude-Skill

