@skilly-hand/skilly-hand 0.26.1 → 0.26.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (27) hide show
  1. package/CHANGELOG.md +31 -0
  2. package/README.md +2 -0
  3. package/catalog/README.md +2 -1
  4. package/catalog/catalog-index.json +1 -0
  5. package/catalog/skills/figma-mcp-0to1/SKILL.md +27 -8
  6. package/catalog/skills/figma-mcp-0to1/agents/canvas-creation-playbook.md +8 -1
  7. package/catalog/skills/figma-mcp-0to1/agents/install-auth.md +7 -5
  8. package/catalog/skills/figma-mcp-0to1/agents/tool-function-catalog.md +5 -2
  9. package/catalog/skills/figma-mcp-0to1/agents/troubleshooting-ops.md +8 -0
  10. package/catalog/skills/figma-mcp-0to1/assets/client-config-snippets.md +7 -2
  11. package/catalog/skills/figma-mcp-0to1/assets/prompt-recipes.md +14 -1
  12. package/catalog/skills/figma-mcp-0to1/manifest.json +3 -3
  13. package/catalog/skills/figma-mcp-0to1/references/official-tools-matrix.md +25 -5
  14. package/catalog/skills/frontend-design/SKILL.md +8 -6
  15. package/catalog/skills/frontend-design/agents/motion-designer.md +22 -5
  16. package/catalog/skills/frontend-design/manifest.json +4 -4
  17. package/catalog/skills/motion-animation/SKILL.md +148 -0
  18. package/catalog/skills/motion-animation/manifest.json +28 -0
  19. package/catalog/skills/motion-animation/references/js-patterns.md +81 -0
  20. package/catalog/skills/motion-animation/references/official-source-map.md +32 -0
  21. package/catalog/skills/motion-animation/references/performance-accessibility.md +49 -0
  22. package/catalog/skills/motion-animation/references/react-patterns.md +86 -0
  23. package/package.json +1 -1
  24. package/packages/catalog/package.json +1 -1
  25. package/packages/cli/package.json +1 -1
  26. package/packages/core/package.json +1 -1
  27. package/packages/detectors/package.json +1 -1
package/CHANGELOG.md CHANGED
@@ -16,6 +16,37 @@ All notable changes to this project are documented in this file.
16
16
  ### Removed
17
17
  - _None._
18
18
 
19
+ ## [0.26.3] - 2026-05-09
20
+ [View on npm](https://www.npmjs.com/package/@skilly-hand/skilly-hand/v/0.26.3)
21
+
22
+ ### Added
23
+ - _None._
24
+
25
+ ### Changed
26
+ - Updated the `figma-mcp-0to1` skill for current Figma MCP remote-first setup, supported-client coverage, Figma-provided skills, FigJam write workflows, code-to-canvas support, and access/rate-limit guidance.
27
+
28
+ ### Fixed
29
+ - _None._
30
+
31
+ ### Removed
32
+ - _None._
33
+
34
+ ## [0.26.2] - 2026-05-03
35
+ [View on npm](https://www.npmjs.com/package/@skilly-hand/skilly-hand/v/0.26.2)
36
+
37
+ ### Added
38
+ - Added portable `motion-animation` skill with official Motion guidance for JavaScript, React components, gestures, scroll animation, layout animation, exit animation, performance, accessibility, and source verification.
39
+
40
+ ### Changed
41
+ - Updated `frontend-design` to route Motion-native animation work through `motion-animation` alongside existing GSAP routing.
42
+ - Updated catalog and install expectations so Motion guidance is included in generated skill lists and frontend-design dependencies.
43
+
44
+ ### Fixed
45
+ - _None._
46
+
47
+ ### Removed
48
+ - _None._
49
+
19
50
  ## [0.26.1] - 2026-05-03
20
51
  [View on npm](https://www.npmjs.com/package/@skilly-hand/skilly-hand/v/0.26.1)
21
52
 
package/README.md CHANGED
@@ -75,6 +75,8 @@ The catalog currently includes:
75
75
  - `angular-guidelines`
76
76
  - `figma-mcp-0to1`
77
77
  - `frontend-design`
78
+ - `gsap-animation`
79
+ - `motion-animation`
78
80
  - `output-optimizer`
79
81
  - `project-security`
80
82
  - `project-teacher`
package/catalog/README.md CHANGED
@@ -8,8 +8,9 @@ Published portable skills consumed by the `skilly-hand` CLI.
8
8
  | `agents-root-orchestrator` | Author root AGENTS.md as a Where/What/When orchestrator that routes tasks and skill invocation clearly. | core, workflow, orchestration | all |
9
9
  | `angular-guidelines` | Guide Angular code generation, review, and performance tuning using latest stable Angular verification, official Angular skill guidance, and modern framework best practices. Trigger: generating, reviewing, refactoring, or optimizing Angular code artifacts in Angular projects. | angular, frontend, workflow, best-practices | all |
10
10
  | `figma-mcp-0to1` | Guide users from Figma MCP installation and authentication through first canvas creation, with function-level tool coverage and operational recovery patterns. | figma, mcp, workflow, design | all |
11
- | `frontend-design` | Project-aware frontend design skill that detects the existing tech stack, UI libraries, CSS variables, and design tokens before proposing any UI work. Supports greenfield projects via DESIGN.md context setup, post-generation critique, visual refinement, and GSAP-aware motion polish. | frontend, design, workflow, ui, motion, greenfield | all |
11
+ | `frontend-design` | Project-aware frontend design skill that detects the existing tech stack, UI libraries, CSS variables, and design tokens before proposing any UI work. Supports greenfield projects via DESIGN.md context setup, post-generation critique, visual refinement, and Motion/GSAP-aware motion polish. | frontend, design, workflow, ui, motion, greenfield | all |
12
12
  | `gsap-animation` | Guide GSAP animation implementation using only official GSAP documentation and the official greensock/gsap-skills source material. Trigger: implementing, reviewing, or choosing GSAP for frontend motion, timelines, ScrollTrigger, React useGSAP, JavaScript animation libraries, or advanced UI animation. | frontend, animation, motion, gsap, workflow | all |
13
+ | `motion-animation` | Guide Motion, formerly Framer Motion, animation implementation using only official Motion documentation. Trigger: implementing, reviewing, or choosing Motion for JavaScript animation, React motion components, gestures, scroll animation, layout animation, exit animation, or framework-agnostic UI motion. | frontend, animation, motion, framer-motion, workflow | all |
13
14
  | `output-optimizer` | Optimize output token consumption through compact interpreter modes with controlled expansion when complexity, ambiguity, or risk requires more detail. Trigger: minimizing response verbosity while preserving clarity and correctness. | core, workflow, efficiency, communication | all |
14
15
  | `project-security` | Scan project configuration and release surfaces for leak and security risks, and enforce security gates on commit, push, and publish workflows across GitHub, GitLab, npm, pnpm, yarn, and generic CI. Trigger: validating repository security posture, preventing secret leaks, or hardening delivery pipelines. | security, workflow, quality, core | all |
15
16
  | `project-teacher` | Scan the active project and teach any concept, code path, or decision using verified information, interactive questions, and simple explanations. Trigger: user asks to explain, understand, clarify, or learn about anything in the project or codebase. | core, workflow, education | all |
@@ -5,6 +5,7 @@
5
5
  "figma-mcp-0to1",
6
6
  "frontend-design",
7
7
  "gsap-animation",
8
+ "motion-animation",
8
9
  "output-optimizer",
9
10
  "project-security",
10
11
  "project-teacher",
@@ -3,10 +3,10 @@ name: "figma-mcp-0to1"
3
3
  description: "Guide users from Figma MCP installation and authentication through first canvas creation, with function-level tool coverage and operational recovery patterns."
4
4
  skillMetadata:
5
5
  author: "skilly-hand"
6
- last-edit: "2026-05-01"
6
+ last-edit: "2026-05-09"
7
7
  license: "Apache-2.0"
8
- version: "1.0.2"
9
- changelog: "Refreshed Figma MCP tools, commands, permissions, Make resources, and agent-support notes against current Figma coverage; improves setup accuracy and 0-to-1 workflow reliability; affects figma-mcp-0to1 docs, references, assets, and metadata"
8
+ version: "1.0.3"
9
+ changelog: "Updated Figma MCP guidance for current remote-first docs, supported-client coverage, Figma-provided skills, FigJam write workflows, code-to-canvas support, and access/rate-limit language; affects setup routing, tool selection, prompt assets, and official matrix"
10
10
  auto-invoke: "Installing, configuring, or using Figma MCP from setup through first canvas creation"
11
11
  allowed-tools:
12
12
  - "Read"
@@ -66,13 +66,14 @@ Choose subskills by intent:
66
66
 
67
67
  ## Core Rules
68
68
 
69
- - Prefer remote server for broadest feature coverage and write workflows.
69
+ - Prefer remote server for broadest feature coverage, write workflows, code-to-canvas, and FigJam agent workflows.
70
70
  - Treat official Figma MCP docs as the source of truth for official tools, supported clients, permissions, and limits.
71
71
  - Keep client-specific helpers separate from official Figma MCP tools.
72
72
  - Treat write actions as staged operations, not a single large operation.
73
73
  - Use link-based node targeting for reliable design-context extraction.
74
74
  - Keep a clear distinction between read context tools and write/canvas tools.
75
- - For repeated team workflows, reuse prompts and config snippets from `assets/`.
75
+ - For repeated team workflows, reuse prompts and config snippets from `assets/`, and prefer Figma-provided skills when they exist.
76
+ - Use `figma-use` with `use_figma` for Figma Design writes and `figma-use-figjam` for FigJam writes when those skills are available.
76
77
 
77
78
  ---
78
79
 
@@ -82,9 +83,24 @@ Figma MCP support and skilly-hand installation support are related but not ident
82
83
 
83
84
  | Coverage | Agents or Clients | Guidance |
84
85
  | --- | --- | --- |
85
- | Figma-supported and skilly-hand-supported | `codex`, `claude`, `cursor`, `copilot` | Include concrete setup paths in this skill. |
86
- | Figma-supported but not skilly-hand-native | VS Code, Warp, Augment, Factory, Firebender | Mention as Figma-supported clients, but do not add skilly-hand install assumptions. |
87
- | skilly-hand-supported but not source-backed in current Figma docs | `gemini`, `antigravity`, `windsurf`, `trae` | Keep broad `agentSupport`; document that Figma-specific setup may require client documentation or manual MCP config. |
86
+ | Figma-supported and skilly-hand-supported | `codex`, `claude`, `cursor`, `copilot`, `gemini` | Include concrete setup paths when Figma publishes them; otherwise point to client docs/catalog. |
87
+ | Figma-supported but not skilly-hand-native | Amazon Q, Android Studio, VS Code, Warp, Augment, Factory, Firebender, Kiro, OpenHands, Replit | Mention as Figma-supported clients, but do not add skilly-hand install assumptions. |
88
+ | skilly-hand-supported but not source-backed in current Figma docs | `antigravity`, `windsurf`, `trae` | Keep broad `agentSupport`; document that Figma-specific setup may require client documentation or manual MCP config. |
89
+
90
+ ## Figma-Provided Skills
91
+
92
+ Prefer Figma-provided skills for workflows they cover:
93
+
94
+ | Skill | Use |
95
+ | --- | --- |
96
+ | `figma-use` | Foundational Figma Design write-to-canvas workflow for frames, components, variables, styles, and auto layout. |
97
+ | `figma-use-figjam` | Foundational FigJam write workflow for boards, stickies, sections, connectors, shapes, tables, and code blocks. |
98
+ | `figma-create-new-file` | Create blank Figma Design or FigJam files before writing. |
99
+ | `figma-implement-design` | Generate production code from a Figma design URL. |
100
+ | `figma-code-connect-components` | Map published Figma components to code implementations. |
101
+ | `figma-create-design-system-rules` | Generate reusable code-generation rules for a project. |
102
+ | `figma-generate-library` | Example workflow for creating or syncing a Figma design-system library from code. |
103
+ | `figma-generate-design` | Example workflow for building screens/views in Figma from code or a design-system-aware brief. |
88
104
 
89
105
  ---
90
106
 
@@ -117,6 +133,9 @@ claude mcp add --transport http figma-desktop http://127.0.0.1:3845/mcp
117
133
  # Cursor plugin setup
118
134
  /add-plugin figma
119
135
 
136
+ # Gemini CLI
137
+ # Follow the Figma MCP catalog/client instructions for the Gemini CLI extension.
138
+
120
139
  # Verify catalog integrity in this repository
121
140
  npm run catalog:check
122
141
  ```
@@ -26,7 +26,8 @@ Deliver a first successful Figma canvas result with low risk and clear verificat
26
26
  - Create one frame.
27
27
  - Add one text node.
28
28
  - Apply one style/token decision.
29
- - For FigJam, create or update one small board object such as a sticky, section, connector, or shape.
29
+ - For Figma Design, load or invoke `figma-use` when available.
30
+ - For FigJam, load or invoke `figma-use-figjam` when available, then create or update one small board object such as a sticky, section, connector, shape, table, or code block.
30
31
 
31
32
  5. **Validate state**
32
33
  - Inspect with `get_metadata` or `get_screenshot`.
@@ -44,6 +45,12 @@ Deliver a first successful Figma canvas result with low risk and clear verificat
44
45
  2. Let `generate_diagram` create a new FigJam file, or provide an existing FigJam file key.
45
46
  3. Validate diagram structure and labels.
46
47
 
48
+ ### FigJam board-first flow
49
+
50
+ 1. Create or choose a FigJam file, using `create_new_file figjam <name>` if a fresh board is needed.
51
+ 2. Use `figma-use-figjam` with `use_figma` for small write steps.
52
+ 3. Validate with `get_figjam` or `get_screenshot`.
53
+
47
54
  ### Code-to-canvas flow
48
55
 
49
56
  1. Ask client to start local app capture workflow.
@@ -8,8 +8,8 @@ Get Figma MCP connected and authenticated, with a verified first tool call.
8
8
 
9
9
  | Mode | Endpoint | Recommended | Notes |
10
10
  | --- | --- | --- | --- |
11
- | Remote | `https://mcp.figma.com/mcp` | Yes | Broadest feature coverage, including write-to-canvas, code-to-canvas, diagrams, and file creation. |
12
- | Desktop | `http://127.0.0.1:3845/mcp` | Only for local selection-based or special org needs | Requires Figma desktop app + Dev Mode desktop MCP toggle; narrower workflow coverage. |
11
+ | Remote | `https://mcp.figma.com/mcp` | Yes | Broadest feature coverage, including write-to-canvas, code-to-canvas, FigJam workflows, diagrams, and file creation. Remote access is documented for all seats/plans, with plan/seat-based limits. |
12
+ | Desktop | `http://127.0.0.1:3845/mcp` | Only for local selection-based or special org/enterprise needs | Requires Figma desktop app + Dev Mode desktop MCP toggle; narrower workflow coverage and paid Dev/Full seat access. |
13
13
 
14
14
  ## Codex Setup
15
15
 
@@ -37,6 +37,7 @@ Use concrete setup paths for agents that are both Figma-supported and skilly-han
37
37
  - Cursor plugin: `/add-plugin figma`
38
38
  - Cursor manual: add the remote or desktop endpoint in MCP settings.
39
39
  - Copilot: use the VS Code MCP route and enable GitHub Copilot in the client.
40
+ - Gemini CLI: follow the Figma MCP catalog/client instructions for the Gemini CLI extension.
40
41
  - VS Code: add HTTP MCP server in `mcp.json` using the remote endpoint.
41
42
 
42
43
  See exact snippets in [../assets/client-config-snippets.md](../assets/client-config-snippets.md).
@@ -45,9 +46,9 @@ See exact snippets in [../assets/client-config-snippets.md](../assets/client-con
45
46
 
46
47
  | Coverage | Agents or Clients | Guidance |
47
48
  | --- | --- | --- |
48
- | Figma-supported and skilly-hand-supported | `codex`, `claude`, `cursor`, `copilot` | Use the commands and setup paths above. |
49
- | Figma-supported but not skilly-hand-native | VS Code, Warp, Augment, Factory, Firebender | Follow Figma/client setup docs; do not assume skilly-hand skill install paths. |
50
- | skilly-hand-supported but not source-backed in current Figma docs | `gemini`, `antigravity`, `windsurf`, `trae` | Keep install support, but verify Figma MCP setup through that client's docs or manual MCP config. |
49
+ | Figma-supported and skilly-hand-supported | `codex`, `claude`, `cursor`, `copilot`, `gemini` | Use the commands and setup paths above where documented; otherwise follow the Figma MCP catalog/client docs. |
50
+ | Figma-supported but not skilly-hand-native | Amazon Q, Android Studio, VS Code, Warp, Augment, Factory, Firebender, Kiro, OpenHands, Replit | Follow Figma/client setup docs; do not assume skilly-hand skill install paths. |
51
+ | skilly-hand-supported but not source-backed in current Figma docs | `antigravity`, `windsurf`, `trae` | Keep install support, but verify Figma MCP setup through that client's docs or manual MCP config. |
51
52
 
52
53
  ## Verification Checklist
53
54
 
@@ -57,6 +58,7 @@ See exact snippets in [../assets/client-config-snippets.md](../assets/client-con
57
58
  - Desktop-only contexts: `get_metadata` or `get_design_context` on a known node
58
59
  3. Confirm the authenticated user has access to the target Figma file.
59
60
  4. For write workflows, confirm the authenticated seat can edit the target file.
61
+ 5. For Dev seats, confirm the target is a draft or that the workflow does not require edit access outside drafts.
60
62
 
61
63
  ## First Prompt After Setup
62
64
 
@@ -7,7 +7,7 @@ Pick the smallest correct Figma MCP function for the task, with predictable inpu
7
7
  ## Start Here
8
8
 
9
9
  1. Read [../references/official-tools-matrix.md](../references/official-tools-matrix.md).
10
- 2. Identify whether task is read, write, design-system search, code-connect, diagram, live UI capture, or Make resource context.
10
+ 2. Identify whether task is read, write, FigJam, design-system search, code-connect, diagram, live UI capture, or Make resource context.
11
11
  3. Prefer read-first calls before write calls on unknown files.
12
12
 
13
13
  ## Selection Rules
@@ -18,9 +18,11 @@ Pick the smallest correct Figma MCP function for the task, with predictable inpu
18
18
  - Need variables/tokens only: `get_variable_defs`.
19
19
  - Need visual reference: `get_screenshot`.
20
20
  - Need FigJam extraction: `get_figjam`.
21
+ - Need FigJam creation/editing: `use_figma` with the `figma-use-figjam` skill when available.
21
22
  - Need library discovery in Codex before a scoped search: `get_libraries` if the Codex Figma plugin exposes it.
22
23
  - Need design-system discovery before creating: `search_design_system`.
23
- - Need to write/create/update Figma Design or FigJam content: `use_figma` (remote write workflow; use `figma-use` skill when available).
24
+ - Need to write/create/update Figma Design content: `use_figma` (remote write workflow; use `figma-use` skill when available).
25
+ - Need to write/create/update FigJam content: `use_figma` (remote write workflow; use `figma-use-figjam` skill when available).
24
26
  - Need first-time live web UI capture: `generate_figma_design`.
25
27
  - Need new blank file: `create_new_file` (requires plan/team context such as `planKey` in some clients).
26
28
  - Need Mermaid-to-FigJam: `generate_diagram` (creates its own FigJam file unless an existing FigJam file key is provided).
@@ -35,6 +37,7 @@ Use direct tool-trigger language when selection is ambiguous:
35
37
  - "Use Figma MCP `search_design_system` before creating any new component."
36
38
  - "Use Figma MCP `generate_figma_design` to capture this live web UI to a new Figma file."
37
39
  - "Use Figma MCP `create_new_file`, then `use_figma` to add a first frame and typography style."
40
+ - "Use `figma-use-figjam` with `use_figma` to organize this FigJam board into sections and connectors."
38
41
  - "Use MCP resources from this Figma Make link and fetch only the files needed for implementation."
39
42
 
40
43
  ## Remote/Desktop Caveats
@@ -33,6 +33,7 @@ Failure observed?
33
33
  1. Validate Figma URL format and node id.
34
34
  2. Run `whoami` to verify authenticated account.
35
35
  3. Confirm authenticated user belongs to correct plan and has file access.
36
+ 4. For write-to-canvas, confirm the user has edit access; Dev seats are read-only outside drafts.
36
37
 
37
38
  ### Rate limiting
38
39
 
@@ -41,6 +42,7 @@ Failure observed?
41
42
  - Dev/Full seats on Professional or Organization plans have higher daily usage.
42
43
  - Enterprise Dev/Full seats have the highest documented daily usage.
43
44
  - Officially documented exempt tools include `add_code_connect_map`, `generate_figma_design`, and `whoami`.
45
+ - `use_figma` write tools may be documented outside standard read limits, but still require correct seat and edit permissions.
44
46
  - Use smaller selections and fewer repeated reads.
45
47
  - Prefer `get_metadata` preflight before broad `get_design_context`.
46
48
  - Batch intent into fewer, targeted calls.
@@ -58,6 +60,12 @@ Failure observed?
58
60
  - Verify partial outcomes using read tools before next step.
59
61
  - For `create_new_file`, ensure a plan/team context is available.
60
62
  - For `generate_diagram`, do not pre-create a blank FigJam file unless adding to an existing file is the explicit goal.
63
+ - For FigJam writes, use `figma-use-figjam` guidance where available instead of generic Figma Design assumptions.
64
+
65
+ ### Expired image URLs
66
+
67
+ - Figma-hosted image URLs returned by MCP can expire.
68
+ - Refresh the design context to get new URLs, or download/save assets into the project and reference local files for durable implementation.
61
69
 
62
70
  ## Scoped Retry Pattern
63
71
 
@@ -90,6 +90,10 @@ claude mcp list
90
90
  /add-plugin figma
91
91
  ```
92
92
 
93
+ ## Gemini CLI
94
+
95
+ Use the Figma MCP catalog/client instructions for the Gemini CLI extension. Figma currently lists Gemini CLI as a supported client for remote and desktop setup.
96
+
93
97
  ## Cursor MCP config (desktop)
94
98
 
95
99
  ```json
@@ -117,5 +121,6 @@ claude mcp list
117
121
  ## Agent Coverage Notes
118
122
 
119
123
  - Figma-supported and skilly-hand-supported: `codex`, `claude`, `cursor`, `copilot`.
120
- - Figma-supported but not skilly-hand-native: VS Code, Warp, Augment, Factory, Firebender.
121
- - skilly-hand-supported but not source-backed in current Figma docs: `gemini`, `antigravity`, `windsurf`, `trae`.
124
+ - Figma-supported and skilly-hand-supported via client docs/catalog: `gemini`.
125
+ - Figma-supported but not skilly-hand-native: Amazon Q, Android Studio, VS Code, Warp, Augment, Factory, Firebender, Kiro, OpenHands, Replit.
126
+ - skilly-hand-supported but not source-backed in current Figma docs: `antigravity`, `windsurf`, `trae`.
@@ -5,6 +5,7 @@
5
5
  - "Set up Figma MCP remote server and verify with `whoami`."
6
6
  - "Use Figma MCP `whoami` and tell me which account and plans are active."
7
7
  - "Check whether this client exposes the Figma MCP tools I need before starting."
8
+ - "Check whether my client has the Figma-provided skills installed before starting a write-to-canvas workflow."
8
9
 
9
10
  ## Read Context
10
11
 
@@ -22,12 +23,14 @@
22
23
  - "Use `get_code_connect_map` for this node and show mapped source locations."
23
24
  - "Use `add_code_connect_map` to map this Figma node to my component path."
24
25
  - "Use `get_code_connect_suggestions`, then confirm mappings with `send_code_connect_mappings` if the suggestions are correct."
26
+ - "Use `figma-create-design-system-rules` to generate project rules before implementing designs from Figma."
25
27
 
26
28
  ## First Canvas Creation
27
29
 
28
30
  - "Use `whoami` to choose the right plan, then use `create_new_file` to create a new design file named 'MCP First Canvas'."
29
31
  - "Use `create_new_file` to create a new design file named 'MCP First Canvas'."
30
32
  - "Use `use_figma` to create one frame, add one title text layer, and apply auto layout spacing."
33
+ - "Use `figma-use` with `use_figma` for a small Figma Design write, then validate with a screenshot."
31
34
  - "After the write, use `get_screenshot` to verify the result."
32
35
  - "Before writing, inspect the file and use `search_design_system` for existing components or variables."
33
36
 
@@ -40,11 +43,20 @@
40
43
  ## FigJam Flows
41
44
 
42
45
  - "Use `create_new_file` to create a new FigJam board for architecture planning."
46
+ - "Use `figma-create-new-file figjam 'Architecture Planning'` to create a new FigJam board."
43
47
  - "Use `generate_diagram` to create a sequence diagram for login and checkout flow."
44
48
  - "Use `generate_diagram` to add an ERD to this existing FigJam file."
45
- - "Use `use_figma` to organize this FigJam board into sections with stickies and connectors."
49
+ - "Use `figma-use-figjam` with `use_figma` to organize this FigJam board into sections with stickies and connectors."
46
50
  - "Use `use_figma` to update this architecture diagram with a new service."
47
51
 
52
+ ## Figma Skills
53
+
54
+ - "Use `figma-use` for this Figma Design write-to-canvas task."
55
+ - "Use `figma-use-figjam` for this FigJam board update."
56
+ - "Use `figma-generate-design` to build this app screen in Figma using the connected design system."
57
+ - "Use `figma-generate-library` to create or sync a Figma design-system library from this codebase."
58
+ - "Use `figma-implement-design` to turn this Figma frame URL into production code."
59
+
48
60
  ## Agent Coverage
49
61
 
50
62
  - "For this agent, tell me whether Figma officially supports its MCP setup path and which command/config I should use."
@@ -56,3 +68,4 @@
56
68
  - "I am rate-limited. Switch to a staged workflow with fewer `get_design_context` calls."
57
69
  - "This client does not expose `get_screenshot`. Choose the closest supported verification path."
58
70
  - "My `create_new_file` call failed. Check whether a plan key or team context is missing."
71
+ - "Images from the MCP response expired. Refresh the design context or save the assets locally."
@@ -10,10 +10,10 @@
10
10
  "agentSupport": ["codex", "claude", "cursor", "gemini", "copilot", "antigravity", "windsurf", "trae"],
11
11
  "skillMetadata": {
12
12
  "author": "skilly-hand",
13
- "last-edit": "2026-05-01",
13
+ "last-edit": "2026-05-09",
14
14
  "license": "Apache-2.0",
15
- "version": "1.0.2",
16
- "changelog": "Refreshed Figma MCP tools, commands, permissions, Make resources, and agent-support notes against current Figma coverage; improves setup accuracy and 0-to-1 workflow reliability; affects figma-mcp-0to1 docs, references, assets, and metadata",
15
+ "version": "1.0.3",
16
+ "changelog": "Updated Figma MCP guidance for current remote-first docs, supported-client coverage, Figma-provided skills, FigJam write workflows, code-to-canvas support, and access/rate-limit language; affects setup routing, tool selection, prompt assets, and official matrix",
17
17
  "auto-invoke": "Installing, configuring, or using Figma MCP from setup through first canvas creation",
18
18
  "allowed-modes": [
19
19
  "install-auth",
@@ -1,4 +1,4 @@
1
- # Official Figma MCP Tools Matrix (As of 2026-05-01)
1
+ # Official Figma MCP Tools Matrix (As of 2026-05-09)
2
2
 
3
3
  This matrix tracks the official Figma MCP tool/function set in current Figma documentation. Treat it as the source of truth for official tool names, supported file types, and remote-only status. Client-specific helpers are listed separately.
4
4
 
@@ -19,7 +19,7 @@ This matrix tracks the official Figma MCP tool/function set in current Figma doc
19
19
  | `whoami` | Show authenticated Figma identity, plans, and seat types | None | No file context required | Remote-only in official docs; exempt from read rate limits. |
20
20
  | `get_code_connect_suggestions` | Suggest candidate node-to-code mappings | File context + repo context | Figma Design | Usually part of Code Connect workflows. |
21
21
  | `send_code_connect_mappings` | Confirm/persist mapping suggestions | Suggestions payload | Figma Design | Follow-up action after suggestion generation. |
22
- | `use_figma` | General-purpose write/edit/delete/inspect via Plugin API workflow | Task instructions and file context | Figma Design, FigJam | Remote-only; default direct write/update path; best used with the `figma-use` skill when available. |
22
+ | `use_figma` | General-purpose write/edit/delete/inspect via Plugin API workflow | Task instructions and file context | Figma Design, FigJam | Remote-only; default direct write/update path; use `figma-use` for Figma Design and `figma-use-figjam` for FigJam when available. |
23
23
  | `search_design_system` | Search libraries for components, variables, styles | Query text and optional type narrowing | Figma Design | Remote-only; use before creating new artifacts when design-system reuse is relevant. |
24
24
  | `create_new_file` | Create new blank Design or FigJam file | File name, file type, plan context | No file context required | Remote-only; creates files in drafts or a project; requires plan/team context in some clients. |
25
25
 
@@ -27,6 +27,21 @@ This matrix tracks the official Figma MCP tool/function set in current Figma doc
27
27
 
28
28
  Figma Make project context is exposed through MCP resources on clients that support MCP resources. Use a valid Figma Make link, let the client list available project files, and fetch only the files needed for the implementation task.
29
29
 
30
+ ## Figma-Provided Skills
31
+
32
+ Figma documents these skills as the preferred guidance layer for common MCP workflows:
33
+
34
+ | Skill | Purpose |
35
+ | --- | --- |
36
+ | `figma-use` | Foundational Figma Design write-to-canvas workflow. |
37
+ | `figma-use-figjam` | Foundational FigJam write workflow. |
38
+ | `figma-code-connect-components` | Connect published Figma components to code implementations. |
39
+ | `figma-create-design-system-rules` | Generate project rules for design-to-code workflows. |
40
+ | `figma-create-new-file` | Create blank Design or FigJam files. |
41
+ | `figma-implement-design` | Translate a Figma design URL into production code. |
42
+ | `figma-generate-library` | Example workflow for generating or syncing a design-system library. |
43
+ | `figma-generate-design` | Example workflow for building screens/views from a design system. |
44
+
30
45
  ## Codex Plugin Helpers
31
46
 
32
47
  The Codex Figma plugin may expose helper tools beyond the current official tools page. Keep these documented as client-specific helpers:
@@ -41,16 +56,19 @@ Some official Figma MCP tools may not be exposed by every client plugin surface.
41
56
 
42
57
  | Coverage | Agents or Clients | Guidance |
43
58
  | --- | --- | --- |
44
- | Figma-supported and skilly-hand-supported | `codex`, `claude`, `cursor`, `copilot` | Include concrete setup paths and prompts in this skill. |
45
- | Figma-supported but not skilly-hand-native | VS Code, Warp, Augment, Factory, Firebender | Mention as Figma-supported clients; do not add skilly-hand install assumptions. |
46
- | skilly-hand-supported but not source-backed in current Figma docs | `gemini`, `antigravity`, `windsurf`, `trae` | Keep broad install support; advise manual MCP/client docs for Figma-specific setup. |
59
+ | Figma-supported and skilly-hand-supported | `codex`, `claude`, `cursor`, `copilot`, `gemini` | Include concrete setup paths where documented; otherwise point to the Figma MCP catalog/client docs. |
60
+ | Figma-supported but not skilly-hand-native | Amazon Q, Android Studio, VS Code, Warp, Augment, Factory, Firebender, Kiro, OpenHands, Replit | Mention as Figma-supported clients; do not add skilly-hand install assumptions. |
61
+ | skilly-hand-supported but not source-backed in current Figma docs | `antigravity`, `windsurf`, `trae` | Keep broad install support; advise manual MCP/client docs for Figma-specific setup. |
47
62
 
48
63
  ## Rate-Limit Notes (Official)
49
64
 
50
65
  - Read tools are subject to seat/plan limits and per-minute limits.
66
+ - Remote server access is documented for all seats/plans, but practical usage is governed by seat/plan limits.
67
+ - Desktop server access is documented for Dev or Full seats on paid plans.
51
68
  - Starter plan or View/Collab seats: up to 6 tool calls per month.
52
69
  - Professional or Organization with Dev/Full seat: up to 200 tool calls per day.
53
70
  - Enterprise with Dev/Full seat: up to 600 tool calls per day.
71
+ - Dev seats only have read-only access outside drafts for write-to-canvas workflows.
54
72
  - Officially documented exempt tools include:
55
73
  - `add_code_connect_map`
56
74
  - `generate_figma_design`
@@ -65,6 +83,7 @@ Some official Figma MCP tools may not be exposed by every client plugin surface.
65
83
  5. Use `use_figma` for direct Figma Design or FigJam writes and updates.
66
84
  6. Keep `use_figma` calls small and validate after each step.
67
85
  7. Use `get_screenshot` as final visual verification after edits when available.
86
+ 8. Use `figma-use-figjam` rather than Figma Design assumptions for FigJam board edits.
68
87
 
69
88
  ## Sources
70
89
 
@@ -77,3 +96,4 @@ Some official Figma MCP tools may not be exposed by every client plugin surface.
77
96
  - https://developers.figma.com/docs/figma-mcp-server/bringing-make-context-to-your-agent/
78
97
  - https://developers.figma.com/docs/figma-mcp-server/plans-access-and-permissions/
79
98
  - https://help.figma.com/hc/en-us/articles/32132100833559-Guide-to-the-Figma-MCP-server
99
+ - https://help.figma.com/hc/en-us/articles/39166810751895-Figma-skills-for-MCP
@@ -1,12 +1,12 @@
1
1
  ---
2
2
  name: "frontend-design"
3
- description: "Project-aware frontend design skill that detects the existing tech stack, UI libraries, CSS variables, and design tokens before proposing any UI work. Supports greenfield projects via DESIGN.md context setup, post-generation critique, visual refinement, and GSAP-aware motion polish."
3
+ description: "Project-aware frontend design skill that detects the existing tech stack, UI libraries, CSS variables, and design tokens before proposing any UI work. Supports greenfield projects via DESIGN.md context setup, post-generation critique, visual refinement, and Motion/GSAP-aware motion polish."
4
4
  skillMetadata:
5
5
  author: "skilly-hand"
6
6
  last-edit: "2026-05-03"
7
7
  license: "Apache-2.0"
8
- version: "1.3.0"
9
- changelog: "Added GSAP-aware motion routing through gsap-animation while preserving critique workflow; improves advanced frontend animation handoffs with official-source GSAP guidance; affects frontend-design motion sequencing, metadata, and catalog dependencies"
8
+ version: "1.4.0"
9
+ changelog: "Added Motion-aware routing through motion-animation alongside gsap-animation; improves animation handoffs for Motion-native JavaScript and React projects; affects frontend-design motion sequencing, metadata, and catalog dependencies"
10
10
  auto-invoke: "Designing or generating UI components, pages, or layouts in a web or mobile project; setting up visual direction for a greenfield project; critiquing generated UI for AI slop; adding motion or micro-interactions to existing UI; refining or polishing generated UI output"
11
11
  allowed-tools:
12
12
  - "Read"
@@ -49,7 +49,7 @@ Always run stack detection first. Never skip to design.
49
49
  | 1 (only after confirmation) | Design and implement components using confirmed stack | [agents/component-designer.md](agents/component-designer.md) |
50
50
  | 2 (mandatory after generation) | Challenge the output for AI slop, weak hierarchy, heuristic failures, and unclear product fit | [agents/critique.md](agents/critique.md) |
51
51
  | 3 (after critique) | Apply visual quality refinements routed by critique | [agents/visual-refiner.md](agents/visual-refiner.md) |
52
- | 4 (optional) | Add motion and micro-interactions, preferring GSAP handoff for advanced motion | [agents/motion-designer.md](agents/motion-designer.md) |
52
+ | 4 (optional) | Add motion and micro-interactions, routing Motion-native and GSAP-native work to the matching official-source skill | [agents/motion-designer.md](agents/motion-designer.md) |
53
53
 
54
54
  ---
55
55
 
@@ -63,7 +63,7 @@ Always run stack detection first. Never skip to design.
63
63
  6. **Design with confirmed context only** — hand off to `component-designer` only after steps 2–4 are complete.
64
64
  7. **Critique after generation** — invoke `critique` for a frontend-only challenge pass before polish.
65
65
  8. **Refine from critique** — invoke `visual-refiner` for visual fixes routed by critique.
66
- 9. **Optionally add motion** — invoke `motion-designer` if critique, refinement, or the user identifies a motion need. For timelines, scroll reveals, richer micro-interactions, lifecycle-safe framework animation, or plugin decisions, route through `gsap-animation`.
66
+ 9. **Optionally add motion** — invoke `motion-designer` if critique, refinement, or the user identifies a motion need. Route Motion-native JavaScript/React animation through `motion-animation`; route GSAP timelines, ScrollTrigger, and plugin decisions through `gsap-animation`.
67
67
 
68
68
  ---
69
69
 
@@ -197,7 +197,9 @@ After generation:
197
197
  -> Invoke critique to challenge design quality and route fixes
198
198
  -> Invoke visual-refiner for critique-routed visual fixes
199
199
  -> Does the component need motion? -> Invoke motion-designer
200
- -> Does motion need timelines, ScrollTrigger, framework cleanup, or plugins?
200
+ -> Does motion match existing Motion/Framer Motion, React motion props, layout, exit, gestures, or lightweight JS animation?
201
+ YES -> Use motion-animation for official-source Motion guidance
202
+ -> Does motion need GSAP timelines, ScrollTrigger, pin/scrub behavior, or GSAP plugins?
201
203
  YES -> Use gsap-animation for official-source GSAP guidance
202
204
  NO -> Use confirmed stack primitives
203
205
  ```
@@ -6,7 +6,9 @@
6
6
 
7
7
  Motion must be implemented using the animation primitives already available in the project's stack. Never introduce a new animation library without the user's explicit approval.
8
8
 
9
- For advanced animation needs, prefer a handoff to `gsap-animation` when GSAP is already installed, explicitly requested, or approved as a new dependency. Use that skill for timelines, scroll-driven reveals, richer micro-interactions, framework lifecycle cleanup, and GSAP plugin decisions.
9
+ For Motion-native animation needs, prefer a handoff to `motion-animation` when Motion or Framer Motion is already installed, explicitly requested, or approved as a new dependency. Use that skill for framework-agnostic JavaScript Motion APIs, React `motion` components, gestures, scroll-linked animation, scroll-triggered animation, layout animation, and exit animation.
10
+
11
+ For GSAP-native animation needs, prefer a handoff to `gsap-animation` when GSAP is already installed, explicitly requested, or approved as a new dependency. Use that skill for GSAP timelines, ScrollTrigger pin/scrub behavior, and GSAP plugin decisions.
10
12
 
11
13
  ---
12
14
 
@@ -56,7 +58,9 @@ Animation stack:
56
58
 
57
59
  If no animation primitives are found, ask: "This project has no existing animation setup. Should I use CSS transitions only (no new dependencies), or would you like to add a library? If so, which one?"
58
60
 
59
- If the user wants a JavaScript animation library or the motion needs timeline sequencing, scroll-driven animation, pinning, scrub, advanced SVG/text/UI plugins, or framework-agnostic runtime control, recommend GSAP and invoke `gsap-animation`. If `gsap` is not already installed, ask for approval before adding it. If another animation library is already established and the user did not ask to switch, respect the existing library.
61
+ If Motion or Framer Motion is already established, or the user asks for Motion, React motion props, gestures, layout animation, exit animation, lightweight framework-agnostic JavaScript animation, `whileInView`, or `useScroll`, invoke `motion-animation`. If `motion` is not already installed, ask for approval before adding it.
62
+
63
+ If the motion needs GSAP timeline sequencing, ScrollTrigger pinning/scrub, GSAP plugins, or explicit GSAP behavior, invoke `gsap-animation`. If `gsap` is not already installed, ask for approval before adding it. If another animation library is already established and the user did not ask to switch, respect the existing library.
60
64
 
61
65
  ---
62
66
 
@@ -105,13 +109,25 @@ Moments where a small motion adds personality without adding noise:
105
109
 
106
110
  **Fix**: These are always optional and always ask the user first. Never add delight motion without explicit approval.
107
111
 
108
- ### 5. GSAP Handoff Opportunities
112
+ ### 5. Motion Handoff Opportunities
113
+
114
+ Some motion work is better handled with official Motion guidance instead of local heuristics:
115
+
116
+ - The project already uses `motion`, `framer-motion`, or `@motionone/dom`.
117
+ - The user asks for Motion or Framer Motion.
118
+ - React animation should use `motion` components, `AnimatePresence`, `whileHover`, `whileTap`, `whileInView`, `useScroll`, `layout`, or `layoutId`.
119
+ - Framework-agnostic JavaScript animation should use Motion `animate()`, `scroll()`, `inView()`, `hover()`, `press()`, or `stagger()`.
120
+ - The project needs lightweight DOM/SVG/object animation and the user approves Motion as the dependency.
121
+
122
+ **Fix**: Invoke `motion-animation` and include the detected project stack, dependency status, component scope, requested motion behavior, and reduced-motion expectations. Do not add `motion` without user approval.
123
+
124
+ ### 6. GSAP Handoff Opportunities
109
125
 
110
126
  Some motion work is better handled with official GSAP guidance instead of local heuristics:
111
127
 
112
128
  - Multi-step entrance or page choreography that needs timeline sequencing.
113
129
  - Scroll reveals, scrubbed animation, pinned sections, or parallax-like effects.
114
- - React, Next.js, Vue, Svelte, or Angular animation that needs lifecycle-safe cleanup.
130
+ - Existing GSAP, React `useGSAP()`, Next.js, Vue, Svelte, or Angular animation that needs GSAP lifecycle-safe cleanup.
115
131
  - Flip, Draggable, ScrollTrigger, SplitText, SVG, custom easing, or other GSAP plugin decisions.
116
132
  - Runtime controls such as pause, play, reverse, seek, progress, or timeScale.
117
133
 
@@ -192,7 +208,8 @@ If the existing project has no `prefers-reduced-motion` handling anywhere, note
192
208
  Before finalizing any motion work:
193
209
 
194
210
  - [ ] All animation primitives are from the confirmed stack — no new dependencies added without approval.
195
- - [ ] Advanced GSAP-suitable motion was routed through `gsap-animation`.
211
+ - [ ] Motion-suitable work was routed through `motion-animation`.
212
+ - [ ] GSAP-suitable work was routed through `gsap-animation`.
196
213
  - [ ] No layout-triggering properties are animated.
197
214
  - [ ] All animations have a `prefers-reduced-motion` fallback.
198
215
  - [ ] Timing values are within the reference ranges above.
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "id": "frontend-design",
3
3
  "title": "Frontend Design",
4
- "description": "Project-aware frontend design skill that detects the existing tech stack, UI libraries, CSS variables, and design tokens before proposing any UI work. Supports greenfield projects via DESIGN.md context setup, post-generation critique, visual refinement, and GSAP-aware motion polish.",
4
+ "description": "Project-aware frontend design skill that detects the existing tech stack, UI libraries, CSS variables, and design tokens before proposing any UI work. Supports greenfield projects via DESIGN.md context setup, post-generation critique, visual refinement, and Motion/GSAP-aware motion polish.",
5
5
  "portable": true,
6
6
  "tags": ["frontend", "design", "workflow", "ui", "motion", "greenfield"],
7
7
  "detectors": ["always"],
@@ -12,8 +12,8 @@
12
12
  "author": "skilly-hand",
13
13
  "last-edit": "2026-05-03",
14
14
  "license": "Apache-2.0",
15
- "version": "1.3.0",
16
- "changelog": "Added GSAP-aware motion routing through gsap-animation while preserving critique workflow; improves advanced frontend animation handoffs with official-source GSAP guidance; affects frontend-design motion sequencing, metadata, and catalog dependencies",
15
+ "version": "1.4.0",
16
+ "changelog": "Added Motion-aware routing through motion-animation alongside gsap-animation; improves animation handoffs for Motion-native JavaScript and React projects; affects frontend-design motion sequencing, metadata, and catalog dependencies",
17
17
  "auto-invoke": "Designing or generating UI components, pages, or layouts in a web or mobile project; setting up visual direction for a greenfield project; critiquing generated UI for AI slop; adding motion or micro-interactions to existing UI; refining or polishing generated UI output",
18
18
  "allowed-modes": [
19
19
  "stack-detector",
@@ -36,5 +36,5 @@
36
36
  { "path": "assets/stack-scan-checklist.md", "kind": "asset" },
37
37
  { "path": "assets/aesthetic-archetypes.md", "kind": "asset" }
38
38
  ],
39
- "dependencies": ["gsap-animation"]
39
+ "dependencies": ["motion-animation", "gsap-animation"]
40
40
  }
@@ -0,0 +1,148 @@
1
+ ---
2
+ name: "motion-animation"
3
+ description: "Guide Motion, formerly Framer Motion, animation implementation using only official Motion documentation. Trigger: implementing, reviewing, or choosing Motion for JavaScript animation, React motion components, gestures, scroll animation, layout animation, exit animation, or framework-agnostic UI motion."
4
+ skillMetadata:
5
+ author: "skilly-hand"
6
+ last-edit: "2026-05-03"
7
+ license: "Apache-2.0"
8
+ version: "1.0.0"
9
+ changelog: "Added official-source Motion animation guidance for JavaScript and React; improves framework-agnostic and React-native motion implementation with verified Motion APIs; affects frontend animation routing and catalog discovery"
10
+ auto-invoke: "Implementing, reviewing, or choosing Motion for JavaScript animation, React motion components, gestures, scroll animation, layout animation, exit animation, or framework-agnostic UI motion"
11
+ allowed-tools:
12
+ - "Read"
13
+ - "Edit"
14
+ - "Write"
15
+ - "Glob"
16
+ - "Grep"
17
+ - "Bash"
18
+ - "WebFetch"
19
+ - "WebSearch"
20
+ - "Task"
21
+ - "SubAgent"
22
+ ---
23
+ # Motion Animation Guide
24
+
25
+ ## When to Use
26
+
27
+ Use this skill when:
28
+
29
+ - The user asks for Motion, Framer Motion, Motion One, JavaScript animation with `motion`, React `motion` components, gestures, scroll-triggered animation, scroll-linked animation, layout animation, or exit animation.
30
+ - Another skill needs a verified Motion handoff for lightweight UI motion, React-native animation props, or framework-agnostic JavaScript animation.
31
+ - A project already uses `motion`, `framer-motion`, or `@motionone/dom` and the user has not asked to migrate away.
32
+
33
+ Do not use this skill when:
34
+
35
+ - The project already uses another animation library and the user has not asked to add or migrate to Motion.
36
+ - A simple CSS transition is sufficient and no JavaScript, React prop, layout, gesture, scroll, or exit animation behavior is needed.
37
+ - The work needs GSAP-specific timelines, ScrollTrigger pin/scrub behavior, GSAP plugins, or existing GSAP patterns. Use `gsap-animation` for that.
38
+ - The work is backend-only or has no user-facing motion surface.
39
+
40
+ ---
41
+
42
+ ## Official-Only Source Rule
43
+
44
+ Before generating Motion-specific guidance, verify the pattern against official sources in [references/official-source-map.md](references/official-source-map.md).
45
+
46
+ Use only:
47
+
48
+ - Motion docs at `https://motion.dev/docs/quick-start`.
49
+ - Motion for React docs at `https://motion.dev/docs/react`.
50
+ - Official `motion.dev/docs/*` pages linked from those pages when a referenced API needs more detail.
51
+
52
+ Do not use blog posts, snippets, Stack Overflow answers, social posts, or memory-only claims as source material for Motion API behavior. If a detail is not covered by the reference files, check official Motion docs before using it.
53
+
54
+ ---
55
+
56
+ ## Routing
57
+
58
+ | Need | Use |
59
+ | --- | --- |
60
+ | Framework-agnostic DOM/SVG/object animation | [references/js-patterns.md](references/js-patterns.md) |
61
+ | Plain HTML, Webflow, no-code, or script tag usage | Script-tag guidance in [references/js-patterns.md](references/js-patterns.md) |
62
+ | React or Next.js prop-based UI animation | [references/react-patterns.md](references/react-patterns.md) |
63
+ | React exit, layout, gesture, scroll, and SVG animation | [references/react-patterns.md](references/react-patterns.md) |
64
+ | Reduced motion, cleanup, and performance guidance | [references/performance-accessibility.md](references/performance-accessibility.md) |
65
+
66
+ When the user asks for an animation library without naming one, prefer Motion when the need is lightweight JavaScript animation, React prop-based animation, gestures, layout animation, exit animation, or a project already uses Motion/Framer Motion. Prefer GSAP for GSAP timelines, ScrollTrigger pin/scrub choreography, GSAP plugins, or an existing GSAP stack.
67
+
68
+ ---
69
+
70
+ ## Project Preflight
71
+
72
+ Always inspect the target project before proposing implementation:
73
+
74
+ ```bash
75
+ grep -E '"motion"|"framer-motion"|"@motionone/dom"|"gsap"|"@gsap/react"|"animejs"' package.json
76
+ grep -rn "from \"motion\"|from 'motion'|from \"motion/react\"|from 'motion/react'|framer-motion|motion\\.|AnimatePresence|useScroll|useReducedMotion" src --include="*.js" --include="*.jsx" --include="*.ts" --include="*.tsx" 2>/dev/null
77
+ grep -rn "prefers-reduced-motion|transition|@keyframes" src --include="*.css" --include="*.scss" --include="*.tsx" --include="*.jsx" 2>/dev/null
78
+ ```
79
+
80
+ If `motion` is not installed, ask before adding it. This skill teaches target projects how to use Motion; it does not add Motion to skilly-hand itself.
81
+
82
+ ---
83
+
84
+ ## Implementation Rules
85
+
86
+ - Use the official package name `motion`.
87
+ - Prefer JavaScript imports from `"motion"` for framework-agnostic work.
88
+ - Prefer React imports from `"motion/react"` for React components and hooks.
89
+ - Use `animate()` for DOM, SVG, object, value, and sequence animation where JavaScript control is needed.
90
+ - Use `motion` components for React UI state animation through `initial`, `animate`, `whileHover`, `whileTap`, `whileInView`, `layout`, `layoutId`, and `exit`.
91
+ - Use `AnimatePresence` when React elements need exit animations before DOM removal.
92
+ - Use `scroll()` or `useScroll()` for scroll-linked animation; use `inView()` or `whileInView` for scroll-triggered animation.
93
+ - Use `stagger()` for sibling offsets instead of manually stacking delay values.
94
+ - Respect reduced-motion preferences. Skip, simplify, or replace non-essential motion when users request reduced motion.
95
+ - Clean up JavaScript animations, gestures, scroll listeners, and observers during component or page teardown.
96
+ - Avoid introducing Motion Studio, Motion+ premium APIs, or MCP tooling unless the user explicitly asks for those products.
97
+
98
+ ---
99
+
100
+ ## Framework Guidance
101
+
102
+ JavaScript and other frameworks:
103
+
104
+ - Run Motion setup after DOM nodes exist.
105
+ - Pass elements directly when possible, or scope selector text to the component/page root.
106
+ - Store returned animation controls or cleanup functions when teardown or runtime control is needed.
107
+ - For script tag usage, prefer a pinned CDN version instead of `latest`.
108
+
109
+ React and Next.js:
110
+
111
+ - Import `motion`, `AnimatePresence`, and hooks from `"motion/react"`.
112
+ - Components using Motion in React Server Component projects must run on the client.
113
+ - Use stable unique keys for `AnimatePresence` children.
114
+ - Use `layout` for size/position/reorder animation and `layoutId` for shared layout transitions.
115
+ - Use `useReducedMotion()` to branch React animation values when needed.
116
+
117
+ ---
118
+
119
+ ## Output Contract
120
+
121
+ When using this skill, include:
122
+
123
+ - The official Motion source you used.
124
+ - Whether Motion or legacy Framer Motion usage is already installed or requires approval.
125
+ - Which Motion primitive is appropriate: `animate()`, `scroll()`, `inView()`, gesture function, `motion` component, `AnimatePresence`, `useScroll()`, `layout`, `layoutId`, or `useReducedMotion()`.
126
+ - Cleanup and reduced-motion behavior.
127
+ - A verification step appropriate to the project, such as unit tests, interaction tests, browser smoke checks, or visual inspection.
128
+
129
+ ---
130
+
131
+ ## Commands
132
+
133
+ ```bash
134
+ # Install Motion in a target project only after user approval
135
+ npm install motion
136
+
137
+ # Check for existing Motion usage
138
+ grep -rn "from \"motion\"|from \"motion/react\"|framer-motion|AnimatePresence|useScroll|useReducedMotion" src --include="*.js" --include="*.jsx" --include="*.ts" --include="*.tsx"
139
+ ```
140
+
141
+ ---
142
+
143
+ ## Resources
144
+
145
+ - Source map: [references/official-source-map.md](references/official-source-map.md)
146
+ - JavaScript patterns: [references/js-patterns.md](references/js-patterns.md)
147
+ - React patterns: [references/react-patterns.md](references/react-patterns.md)
148
+ - Performance and accessibility: [references/performance-accessibility.md](references/performance-accessibility.md)
@@ -0,0 +1,28 @@
1
+ {
2
+ "id": "motion-animation",
3
+ "title": "Motion Animation",
4
+ "description": "Guide Motion, formerly Framer Motion, animation implementation using only official Motion documentation. Trigger: implementing, reviewing, or choosing Motion for JavaScript animation, React motion components, gestures, scroll animation, layout animation, exit animation, or framework-agnostic UI motion.",
5
+ "portable": true,
6
+ "tags": ["frontend", "animation", "motion", "framer-motion", "workflow"],
7
+ "detectors": ["react", "nextjs", "angular", "vue", "vite", "tailwindcss", "storybook"],
8
+ "detectionTriggers": ["auto"],
9
+ "installsFor": ["all"],
10
+ "agentSupport": ["codex", "claude", "cursor", "gemini", "copilot", "antigravity", "windsurf", "trae"],
11
+ "skillMetadata": {
12
+ "author": "skilly-hand",
13
+ "last-edit": "2026-05-03",
14
+ "license": "Apache-2.0",
15
+ "version": "1.0.0",
16
+ "changelog": "Added official-source Motion animation guidance for JavaScript and React; improves framework-agnostic and React-native motion implementation with verified Motion APIs; affects frontend animation routing and catalog discovery",
17
+ "auto-invoke": "Implementing, reviewing, or choosing Motion for JavaScript animation, React motion components, gestures, scroll animation, layout animation, exit animation, or framework-agnostic UI motion",
18
+ "allowed-tools": ["Read", "Edit", "Write", "Glob", "Grep", "Bash", "WebFetch", "WebSearch", "Task", "SubAgent"]
19
+ },
20
+ "files": [
21
+ { "path": "SKILL.md", "kind": "instruction" },
22
+ { "path": "references/official-source-map.md", "kind": "reference" },
23
+ { "path": "references/js-patterns.md", "kind": "reference" },
24
+ { "path": "references/react-patterns.md", "kind": "reference" },
25
+ { "path": "references/performance-accessibility.md", "kind": "reference" }
26
+ ],
27
+ "dependencies": []
28
+ }
@@ -0,0 +1,81 @@
1
+ # Motion JavaScript Patterns
2
+
3
+ Extracted: 2026-05-03
4
+
5
+ Sources:
6
+
7
+ - https://motion.dev/docs/quick-start
8
+ - https://motion.dev/docs/animate
9
+ - https://motion.dev/docs/scroll
10
+ - https://motion.dev/docs/inview
11
+ - https://motion.dev/docs/hover
12
+ - https://motion.dev/docs/press
13
+
14
+ ## Selection
15
+
16
+ Use Motion JavaScript when animation should work across frameworks or plain pages, when a project already uses Motion, or when the need is lightweight DOM/SVG/object animation without a framework-specific component model.
17
+
18
+ Prefer CSS transitions for small hover/focus/press states that need no JavaScript control. Prefer `gsap-animation` for GSAP-specific timelines, ScrollTrigger pin/scrub choreography, or GSAP plugins.
19
+
20
+ ## Installation and Imports
21
+
22
+ For package-managed projects, the official install command is:
23
+
24
+ ```bash
25
+ npm install motion
26
+ ```
27
+
28
+ Use module imports in bundled JavaScript:
29
+
30
+ ```js
31
+ import { animate, scroll } from "motion";
32
+ ```
33
+
34
+ For smaller HTML/SVG-only animation, Motion also documents:
35
+
36
+ ```js
37
+ import { animate } from "motion/mini";
38
+ ```
39
+
40
+ For plain HTML or no-code contexts, Motion can be imported by script tag. Prefer pinning a specific version in CDN URLs instead of using `latest`.
41
+
42
+ Ask before adding `motion` when it is not already present.
43
+
44
+ ## animate()
45
+
46
+ Use `animate()` for one-step animations and controlled JavaScript animation:
47
+
48
+ - It accepts CSS selectors or element collections.
49
+ - It can animate HTML/CSS, SVG attributes and paths, independent transforms, JavaScript objects, colors, strings, numbers, and single values.
50
+ - The hybrid import from `"motion"` supports independent transform axes like `x`, `y`, `rotate`, `scale`, skew, perspective, CSS variables, SVG paths, object animation, and sequences.
51
+ - The mini import from `"motion/mini"` focuses on HTML/SVG styles through native browser APIs.
52
+
53
+ Use transition options such as `duration`, `delay`, `ease`, `repeat`, `repeatType`, and spring options when the official API supports the chosen transition type.
54
+
55
+ ## Sequences and Stagger
56
+
57
+ Use hybrid `animate()` sequences when several targets or values need ordered animation. Use each segment's transition options or `at` scheduling instead of hand-stacking unrelated timers.
58
+
59
+ Use `stagger()` as a `delay` function when sibling animations should be offset:
60
+
61
+ ```js
62
+ import { animate, stagger } from "motion";
63
+
64
+ animate(".item", { opacity: 1, y: 0 }, { delay: stagger(0.1) });
65
+ ```
66
+
67
+ ## Scroll and Viewport
68
+
69
+ Use `scroll()` for scroll-linked animation where an animation progress should follow scroll progress.
70
+
71
+ Use `inView()` for scroll-triggered animation when an element entering or leaving the viewport should start behavior. Store and run its cleanup in framework teardown when used inside component lifecycles.
72
+
73
+ ## Gestures
74
+
75
+ Use `hover()` and `press()` for JavaScript gesture animation outside React. Store cleanup functions returned by gesture helpers and call them during teardown.
76
+
77
+ For React, prefer `whileHover`, `whileTap`, and related `motion` component props instead of manual DOM gesture listeners.
78
+
79
+ ## Cleanup
80
+
81
+ Store returned animation controls or cleanup functions when an animation, scroll listener, observer, or gesture belongs to a component/page lifecycle. Stop animations and call cleanup during teardown.
@@ -0,0 +1,32 @@
1
+ # Official Motion Source Map
2
+
3
+ Extracted: 2026-05-03
4
+
5
+ This skill may only use official Motion sources. Motion was previously Framer Motion for React; the official React docs identify the current package and imports.
6
+
7
+ ## Primary Sources
8
+
9
+ | Source | Use |
10
+ | --- | --- |
11
+ | https://motion.dev/docs/quick-start | JavaScript quick start, package install, script tag options, `animate`, `scroll`, `stagger`, animatable value categories |
12
+ | https://motion.dev/docs/react | React quick start, `motion` components, gestures, scroll, layout, exit, SVG animation, Framer Motion naming context |
13
+
14
+ ## Linked Official API Sources
15
+
16
+ | Source | Use |
17
+ | --- | --- |
18
+ | https://motion.dev/docs/animate | `animate()` hybrid/mini imports, subjects, transforms, SVG paths, sequences, transition options, controls |
19
+ | https://motion.dev/docs/scroll | JavaScript scroll-linked animation |
20
+ | https://motion.dev/docs/inview | JavaScript scroll-triggered animation |
21
+ | https://motion.dev/docs/hover | JavaScript hover gesture animation and cleanup |
22
+ | https://motion.dev/docs/press | JavaScript press gesture animation and cleanup |
23
+ | https://motion.dev/docs/react-motion-component | React `motion` component props, animation targets, variants, and gestures |
24
+ | https://motion.dev/docs/react-animate-presence | React exit animations, child keys, presence modes, troubleshooting |
25
+ | https://motion.dev/docs/react-use-scroll | React scroll-linked animation with `useScroll()` |
26
+ | https://motion.dev/docs/react-use-reduced-motion | React reduced-motion hook |
27
+ | https://motion.dev/docs/performance | Motion performance guidance |
28
+ | https://motion.dev/docs/react-accessibility | React accessibility guidance |
29
+
30
+ ## Verification Rule
31
+
32
+ When a Motion API or behavior is not represented in these local reference files, check official Motion docs before generating implementation guidance. If the official docs conflict with a local reference, the official docs page wins and this skill should be updated.
@@ -0,0 +1,49 @@
1
+ # Motion Performance and Accessibility
2
+
3
+ Extracted: 2026-05-03
4
+
5
+ Sources:
6
+
7
+ - https://motion.dev/docs/quick-start
8
+ - https://motion.dev/docs/animate
9
+ - https://motion.dev/docs/react
10
+ - https://motion.dev/docs/react-use-reduced-motion
11
+ - https://motion.dev/docs/performance
12
+ - https://motion.dev/docs/react-accessibility
13
+
14
+ ## Performance
15
+
16
+ Motion's hybrid engine uses browser animation capabilities where possible and JavaScript where browser APIs cannot provide the needed behavior. Prefer the smallest Motion surface that solves the job:
17
+
18
+ - Use CSS transitions for simple static hover/focus transitions.
19
+ - Use `motion/mini` for small HTML/SVG style animation when independent transforms, sequences, object animation, or advanced hybrid behavior are unnecessary.
20
+ - Use the hybrid `"motion"` import for independent transforms, SVG paths, CSS variables, JavaScript objects, values, sequences, and spring/inertia behavior.
21
+ - In React, use `motion` components and hooks from `"motion/react"` rather than manual DOM animation when animation is tied to React render state.
22
+
23
+ Prefer `opacity` and transform-style motion for routine UI animation. Avoid layout-heavy animation unless the official React layout animation API is the intended feature.
24
+
25
+ ## Reduced Motion
26
+
27
+ Respect user reduced-motion preferences. In React, use `useReducedMotion()` when animation values need to change based on preference.
28
+
29
+ Reduced-motion behavior may:
30
+
31
+ - Skip non-essential animation.
32
+ - Shorten motion to a near-instant transition.
33
+ - Replace spatial movement with opacity or a static final state.
34
+ - Disable looping or decorative animation.
35
+
36
+ ## Cleanup
37
+
38
+ For framework-agnostic JavaScript, store animation controls and cleanup functions returned by Motion APIs that attach listeners, observers, or active animations. Stop animations and call cleanup during component/page teardown.
39
+
40
+ For React `motion` components, React handles component lifecycle for prop-based animation. Manual timers, callbacks, or JavaScript Motion APIs used inside React still need normal effect cleanup.
41
+
42
+ ## Checklist
43
+
44
+ - [ ] The official Motion source for the chosen API was checked.
45
+ - [ ] Motion is already installed or dependency approval was obtained.
46
+ - [ ] Imports match the environment: `"motion"` for JavaScript, `"motion/react"` for React.
47
+ - [ ] Component/page-owned JavaScript animations and listeners are cleaned up.
48
+ - [ ] Reduced-motion users get static, skipped, or simplified motion.
49
+ - [ ] The implementation uses Motion for Motion-shaped needs and GSAP only for GSAP-shaped needs.
@@ -0,0 +1,86 @@
1
+ # Motion React Patterns
2
+
3
+ Extracted: 2026-05-03
4
+
5
+ Sources:
6
+
7
+ - https://motion.dev/docs/react
8
+ - https://motion.dev/docs/react-motion-component
9
+ - https://motion.dev/docs/react-animate-presence
10
+ - https://motion.dev/docs/react-use-scroll
11
+ - https://motion.dev/docs/react-use-reduced-motion
12
+
13
+ ## Selection
14
+
15
+ Use Motion for React when a React project already uses Motion/Framer Motion, when animation should be expressed through component props, or when the desired behavior is gestures, exit animation, layout animation, scroll animation, or SVG animation in React.
16
+
17
+ Use JavaScript patterns from [js-patterns.md](js-patterns.md) for framework-agnostic utilities. Use `gsap-animation` when the project requires GSAP-specific timelines, ScrollTrigger behavior, plugins, or existing GSAP conventions.
18
+
19
+ ## Installation and Imports
20
+
21
+ Motion for React uses the same package:
22
+
23
+ ```bash
24
+ npm install motion
25
+ ```
26
+
27
+ Import React APIs from `"motion/react"`:
28
+
29
+ ```tsx
30
+ import { motion } from "motion/react";
31
+ ```
32
+
33
+ Ask before adding `motion` when it is not already present.
34
+
35
+ ## motion Components
36
+
37
+ Use `motion` components for animating HTML and SVG elements with props:
38
+
39
+ - `initial` defines the starting visual state.
40
+ - `animate` defines the current target visual state.
41
+ - `transition` defines duration, easing, spring, and related transition behavior.
42
+ - Variants can coordinate named states across parent/child component trees.
43
+
44
+ Use `motion.create()` for custom components only when the official component integration pattern is needed.
45
+
46
+ ## Gestures
47
+
48
+ Use React gesture props for interaction feedback:
49
+
50
+ - `whileHover` for hover targets.
51
+ - `whileTap` for press/tap targets.
52
+ - Hover, tap, focus, and drag are supported gesture categories in the React quick start.
53
+
54
+ Keep gesture motion brief and meaningful, and pair it with accessible non-motion feedback when needed.
55
+
56
+ ## Scroll Animation
57
+
58
+ Use `whileInView` for scroll-triggered animation when an element should animate as it enters or leaves the viewport.
59
+
60
+ Use `useScroll()` when a MotionValue should be linked directly to scroll progress, such as a progress bar scale.
61
+
62
+ ## Layout Animation
63
+
64
+ Use `layout` when React layout changes in size, position, or reorder should animate smoothly.
65
+
66
+ Use `layoutId` for shared layout transitions between different elements.
67
+
68
+ When mixing layout animation with exits, consider official `AnimatePresence` mode guidance and `LayoutGroup` guidance if surrounding components need coordinated layout updates.
69
+
70
+ ## Exit Animation
71
+
72
+ Use `AnimatePresence` when removed React elements should animate out before leaving the DOM:
73
+
74
+ - Place the conditional child inside `AnimatePresence`; do not unmount `AnimatePresence` at the same time as the child.
75
+ - Give every direct child a stable unique `key`.
76
+ - Use the `exit` prop on `motion` components.
77
+ - Use `mode="wait"` only for one child at a time.
78
+ - Use `mode="popLayout"` carefully with positioned parents and forwarded refs for custom immediate children.
79
+
80
+ ## SVG Animation
81
+
82
+ Motion for React supports SVG animation. Use `motion` SVG elements and official SVG props such as `pathLength` for path drawing effects where appropriate.
83
+
84
+ ## React Server Components
85
+
86
+ In React Server Component projects, components that use Motion runtime behavior must be client components. Keep Motion imports and animated components in client-side files.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@skilly-hand/skilly-hand",
3
- "version": "0.26.1",
3
+ "version": "0.26.3",
4
4
  "license": "CC-BY-NC-4.0",
5
5
  "type": "module",
6
6
  "repository": {
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@skilly-hand/catalog",
3
- "version": "0.26.1",
3
+ "version": "0.26.3",
4
4
  "private": true,
5
5
  "type": "module"
6
6
  }
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@skilly-hand/cli",
3
- "version": "0.26.1",
3
+ "version": "0.26.3",
4
4
  "private": true,
5
5
  "type": "module",
6
6
  "bin": {
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@skilly-hand/core",
3
- "version": "0.26.1",
3
+ "version": "0.26.3",
4
4
  "private": true,
5
5
  "type": "module"
6
6
  }
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@skilly-hand/detectors",
3
- "version": "0.26.1",
3
+ "version": "0.26.3",
4
4
  "private": true,
5
5
  "type": "module"
6
6
  }