.cursor/skills/implementation-plan/SKILL.md
Structured planning before script creation — decompose requirements, identify dependencies, surface FM-specific constraints, and confirm approach before generating code. Use when the developer says "plan this", "plan before coding", "decompose requirements", "implementation plan", or when the agent needs to think through a non-trivial script before writing it.
npx skillsauth add petrowsky/agentic-fm implementation-planInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Decompose a script or feature request into a structured plan before generating any code. This skill produces a written plan in the conversation — not a file artifact — that the developer can review and adjust before the agent proceeds to generation.
script-refactor or multi-script-scaffold to reason about approachRead agent/CONTEXT.json if it exists. Extract:
task — the developer's description of what to buildcurrent_layout — the starting layout context (name, base TO)tables — available tables and their fieldsrelationships — how tables connect (needed for Go to Related Record, portal context)scripts — existing scripts that may need to be calledlayouts — layouts that may need to be navigated tovalue_lists — value lists that may be referencedIf CONTEXT.json is absent or stale (doesn't match the developer's request), suggest running Push Context on the relevant layout before proceeding.
Break the request into discrete concerns. For each, identify:
Present as a structured outline:
## Plan: [Feature Name]
### 1. Input validation
- Parse script parameter (JSON expected)
- Guard: exit if parameter is empty or malformed
### 2. Navigate to context
- Go to Layout [ "Invoice Details" ] — requires Invoices TO
- Perform Find for the target record
- Guard: error 401 (no records found)
### 3. Business logic
- Calculate totals from Line Items portal
- Set Field [ Invoices::Status ; "Sent" ]
- Guard: error 301 (record locked)
### 4. Subscript calls
- Perform Script [ "Send Email" ] — needs script ID from CONTEXT.json
- Check Get ( ScriptResult ) for success/failure
### 5. Cleanup
- Go to Layout [ original layout ]
- Exit Script [ result JSON ]
After the outline, explicitly call out:
List every FM object the script will reference, with where to find the ID:
If the plan requires objects not in CONTEXT.json, say so:
State which pattern will be used:
Flag if the script must run on FileMaker Server (PSOS, scheduled, Data API):
Present the plan and ask for confirmation before proceeding to code generation. Specifically ask:
If the developer approves, the plan becomes the specification for script-preview or direct fmxmlsnippet generation.
The plan is written directly in the conversation as markdown. No file artifact is created unless the developer requests one (e.g., "save this plan to plans/").
If called by another skill (e.g., script-refactor), the plan is produced inline and the calling skill proceeds without waiting for explicit developer confirmation — the plan serves as the agent's reasoning record.
development
Generate a complete web application inside a FileMaker Web Viewer — self-contained HTML/CSS/JS styled with the FM theme, plus companion FM bridge scripts for bidirectional data flow. Use when the developer says "web viewer", "webviewer app", "HTML in FileMaker", "build web viewer", or when the layout-design skill delegates to the web-first output path. Recommended for modern, responsive UI, complex interactions (drag-and-drop, charts, rich text), or solutions considering future migration off FileMaker.
development
Trace references to a FileMaker object across the entire solution. Supports usage reports ("where is this field used?"), impact analysis ("what breaks if I rename this?"), and dead object scans ("show unused fields/scripts"). Use when the developer says "trace", "find references", "where is X used", "impact of renaming", "unused fields/scripts", "dead code", "what references X", or "is X used anywhere".
development
Analyze a FileMaker solution and produce a structured profile covering data model, business logic, UI layer, integrations, and health metrics. Uses on-disk pre-processing to handle solutions of any size without sending raw XML through the agent. Use when the developer says "analyze solution", "solution overview", "solution analysis", "solution profile", "solution spec", "what does this solution do", "solution summary", or wants a high-level understanding of an entire FileMaker solution.
development
Interactive setup wizard for agentic-fm. Detects what's already configured, walks the user through each remaining step, and verifies completion before proceeding. Use when the developer says "help me set up", "setup", "get started", "onboard", "first time setup", "install agentic-fm", "configure agentic-fm", or is clearly new to the project and needs guidance.