Installation

Get agentic-fm set up and connected to your FileMaker solution in six steps.

Quickstart with the Setup Wizard

The fastest way to get up and running is to clone the repo and let AI walk you through it. The /setup skill detects what's already configured, checks each dependency, and guides you through the remaining steps interactively.

git clone https://github.com/petrowsky/agentic-fm.git
cd agentic-fm

Then open the project in your AI coding tool (Claude Code, Cursor, VS Code with Claude, etc.) and prompt:

"Help me set up agentic-fm"

The wizard will verify your dependencies, install the FileMaker companion scripts, and connect your solution — no manual steps required beyond following the prompts.


Requirements

Dependency Required By Notes
FileMaker Pro 21.0+ Everything GetTableDDL, While, and data file steps required
fm-xml-export-exploder Explode XML, fmparse.sh Download binary; place at ~/bin/fm-xml-export-exploder
Python 3 clipboard.py, validate_snippet.py, companion_server.py Scripts run directly — no virtualenv activation required
xmllint fmcontext.sh Ships with macOS; apt-get install libxml2-utils on Linux
Node.js 18+ Webviewer (optional) Only required if using the visual script editor

Setup Steps

First time? Check QUICKSTART.md in the repo root for a condensed walkthrough. The steps below are the full reference.

1

Install the Context custom function

Open your FileMaker solution and go to File > Manage > Custom Functions. Create a function named Context with one task parameter, and paste in the contents of filemaker/Context.fmfn.

2

Install the companion scripts

Load filemaker/agentic-fm.xml onto the clipboard using the clipboard.py write command, then paste into the Script Workspace in FileMaker:

python3 agent/scripts/clipboard.py write filemaker/agentic-fm.xml
3

Configure the repo path

Run the Get agentic-fm path script once. It will prompt you to select the agentic-fm folder on disk and store the path in $$AGENTIC.FM for use by the other scripts.

4

Start the companion server

The companion server lets FileMaker call shell commands via native Insert from URL — no plugin required. Start it once per session before using the Explode XML or Push Context scripts:

python3 agent/scripts/companion_server.py

It listens on localhost:27631 by default. Leave it running in a terminal tab while you work.

5

Explode the XML

Run the Explode XML script to perform your first Save as XML export and populate agent/xml_parsed/. Re-run it any time the solution schema changes.

6

Push context before each session

Navigate to the layout you are working on, run Push Context, enter a task description, and the current context will be written to agent/CONTEXT.json. You are now ready to work with AI.


Optional: Webviewer Setup

If you want to use the visual script editor, install and start the webviewer:

cd webviewer
npm install
npm run dev
# Open http://localhost:8080

See the Webviewer page for full details on embedding in FileMaker and configuring AI providers.


Optional: FileMaker Reference Docs

For accurate, up-to-date information about script step options and function syntax, you can fetch the official Claris documentation:

cd agent/docs/filemaker
python3 fetch_docs.py              # fetch everything
python3 fetch_docs.py --steps      # script steps only
python3 fetch_docs.py --functions  # functions only
python3 fetch_docs.py --errors     # error codes only

Generated files are copyrighted by Claris International Inc. and excluded via .gitignore. For personal, non-commercial use only per the Claris Website Terms of Use.


Verify Installation

Once setup is complete, verify the toolchain works:

# Validate any existing sandbox files
python3 agent/scripts/validate_snippet.py

# Confirm the companion server starts cleanly
python3 agent/scripts/companion_server.py --help

# Check that fmparse.sh is available
./fmparse.sh --help

If all commands succeed, you're ready to start generating FileMaker scripts with AI.

Ready to bring AI into your FileMaker development?

agentic-fm is open source and free to use. Star the repo to follow development, or jump straight into the installation guide.