@skilly-hand/skilly-hand 0.25.2 → 0.26.0

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 (26) hide show
  1. package/CHANGELOG.md +30 -0
  2. package/catalog/README.md +2 -2
  3. package/catalog/skills/angular-guidelines/SKILL.md +44 -8
  4. package/catalog/skills/angular-guidelines/agents/angular-tester.md +13 -3
  5. package/catalog/skills/angular-guidelines/agents/component-creator.md +13 -0
  6. package/catalog/skills/angular-guidelines/agents/performance-reviewer.md +62 -0
  7. package/catalog/skills/angular-guidelines/manifest.json +9 -7
  8. package/catalog/skills/figma-mcp-0to1/SKILL.md +36 -5
  9. package/catalog/skills/figma-mcp-0to1/agents/canvas-creation-playbook.md +20 -8
  10. package/catalog/skills/figma-mcp-0to1/agents/install-auth.md +23 -6
  11. package/catalog/skills/figma-mcp-0to1/agents/tool-function-catalog.md +12 -5
  12. package/catalog/skills/figma-mcp-0to1/agents/troubleshooting-ops.md +14 -0
  13. package/catalog/skills/figma-mcp-0to1/assets/client-config-snippets.md +57 -12
  14. package/catalog/skills/figma-mcp-0to1/assets/prompt-recipes.md +24 -0
  15. package/catalog/skills/figma-mcp-0to1/manifest.json +3 -3
  16. package/catalog/skills/figma-mcp-0to1/references/official-tools-matrix.md +43 -13
  17. package/catalog/skills/react-guidelines/SKILL.md +32 -7
  18. package/catalog/skills/react-guidelines/agents/component-creator.md +12 -0
  19. package/catalog/skills/react-guidelines/agents/performance-reviewer.md +55 -0
  20. package/catalog/skills/react-guidelines/agents/react-tester.md +11 -0
  21. package/catalog/skills/react-guidelines/manifest.json +9 -7
  22. package/package.json +1 -1
  23. package/packages/catalog/package.json +1 -1
  24. package/packages/cli/package.json +1 -1
  25. package/packages/core/package.json +1 -1
  26. package/packages/detectors/package.json +1 -1
package/CHANGELOG.md CHANGED
@@ -16,6 +16,36 @@ All notable changes to this project are documented in this file.
16
16
  ### Removed
17
17
  - _None._
18
18
 
19
+ ## [0.26.0] - 2026-05-01
20
+ [View on npm](https://www.npmjs.com/package/@skilly-hand/skilly-hand/v/0.26.0)
21
+
22
+ ### Added
23
+ - Added dedicated performance-reviewer modes for the Angular and React guideline skills.
24
+
25
+ ### Changed
26
+ - Expanded Angular and React guideline routing, review checklists, and catalog descriptions for performance optimization workflows.
27
+
28
+ ### Fixed
29
+ - _None._
30
+
31
+ ### Removed
32
+ - _None._
33
+
34
+ ## [0.25.3] - 2026-05-01
35
+ [View on npm](https://www.npmjs.com/package/@skilly-hand/skilly-hand/v/0.25.3)
36
+
37
+ ### Added
38
+ - _None._
39
+
40
+ ### Changed
41
+ - Refreshed the `figma-mcp-0to1` skill with current Figma MCP tools, setup commands, agent coverage notes, Make resources, and trusted workflow guidance.
42
+
43
+ ### Fixed
44
+ - _None._
45
+
46
+ ### Removed
47
+ - _None._
48
+
19
49
  ## [0.25.2] - 2026-04-29
20
50
  [View on npm](https://www.npmjs.com/package/@skilly-hand/skilly-hand/v/0.25.2)
21
51
 
package/catalog/README.md CHANGED
@@ -6,13 +6,13 @@ Published portable skills consumed by the `skilly-hand` CLI.
6
6
  | ----- | ----------- | ---- | ------------ |
7
7
  | `accessibility-audit` | Audit web accessibility against W3C WCAG 2.2 Level AA using framework-agnostic checks, remediation patterns, and portable command-line scanning. | frontend, accessibility, workflow, quality | all |
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
- | `angular-guidelines` | Guide Angular code generation and review using latest stable Angular verification and modern framework best practices. | angular, frontend, workflow, best-practices | all |
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
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, and includes post-generation motion and visual refinement phases. | frontend, design, workflow, ui, motion, greenfield | all |
12
12
  | `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 |
13
13
  | `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 |
14
14
  | `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 |
15
- | `react-guidelines` | Guide React code generation and review using latest stable React verification and modern framework best practices. | react, frontend, workflow, best-practices | all |
15
+ | `react-guidelines` | Guide React and Next.js code generation, review, and performance tuning using latest stable React verification and modern framework best practices. Trigger: generating, reviewing, refactoring, or optimizing React code artifacts in React projects. | react, frontend, workflow, best-practices | all |
16
16
  | `review-rangers` | Review code, decisions, and artifacts through a multi-perspective committee and a domain expert safety guard, then synthesize a structured verdict. | core, workflow, review, quality | all |
17
17
  | `roaster` | Challenge plans with constructive roast-style critique that exposes weak assumptions, missing angles, shallow sequencing, and unclear success criteria. Trigger: when the user proposes, requests, or evaluates a plan of any kind. | core, workflow, planning, quality | all |
18
18
  | `skill-creator` | Create and standardize AI skills with reusable structure, metadata rules, and templates. | core, workflow, authoring | all |
@@ -1,13 +1,13 @@
1
1
  ---
2
2
  name: "angular-guidelines"
3
- description: "Guide Angular code generation and review using latest stable Angular verification and modern framework best practices."
3
+ description: "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."
4
4
  skillMetadata:
5
5
  author: "skilly-hand"
6
- last-edit: "2026-04-03"
6
+ last-edit: "2026-05-01"
7
7
  license: "Apache-2.0"
8
- version: "1.1.1"
9
- changelog: "Added allowed-modes metadata to declare angular-guidelines sub-agent routing targets; improves discoverability of component-creator and angular-tester delegation modes; affects angular-guidelines manifest metadata"
10
- auto-invoke: "Generating, reviewing, or refactoring Angular code artifacts in Angular projects"
8
+ version: "1.2.0"
9
+ changelog: "Added curated official Angular skill and performance guidance with a dedicated performance-reviewer mode; improves SSR, hydration, reactivity, testing, and runtime optimization coverage; affects angular-guidelines routing, review checklists, and catalog discovery"
10
+ auto-invoke: "Generating, reviewing, refactoring, or optimizing Angular code artifacts in Angular projects"
11
11
  allowed-tools:
12
12
  - "Read"
13
13
  - "Edit"
@@ -29,6 +29,7 @@ Use this skill when:
29
29
  - You are generating Angular components, directives, pipes, services, or supporting files.
30
30
  - You are refactoring existing Angular code to current framework patterns.
31
31
  - You are reviewing Angular code quality and framework-alignment in an Angular workspace.
32
+ - You are optimizing Angular performance, SSR/hydration, reactivity/data flow, forms, routing, accessibility, or CLI-aligned generation.
32
33
 
33
34
  Do not use this skill for:
34
35
 
@@ -46,6 +47,7 @@ Choose sub-agents by intent:
46
47
  | --- | --- |
47
48
  | Create, refactor, or review Angular components | [agents/component-creator.md](agents/component-creator.md) |
48
49
  | Write or review Angular tests | [agents/angular-tester.md](agents/angular-tester.md) |
50
+ | Optimize or review Angular performance, SSR, or hydration | [agents/performance-reviewer.md](agents/performance-reviewer.md) |
49
51
 
50
52
  ---
51
53
 
@@ -53,7 +55,8 @@ Choose sub-agents by intent:
53
55
 
54
56
  1. Run latest stable Angular preflight checks.
55
57
  2. Route to the smallest matching sub-agent by task intent.
56
- 3. Apply the sub-agent checklist before finalizing generated code or review output.
58
+ 3. If the request mentions performance, SSR, hydration, routing, data fetching, bundle size, change detection, or zoneless behavior, include the performance priority checklist.
59
+ 4. Apply the sub-agent checklist before finalizing generated code or review output.
57
60
 
58
61
  ---
59
62
 
@@ -85,13 +88,34 @@ Use these defaults unless project constraints explicitly prevent them:
85
88
  | Forms | Typed reactive forms |
86
89
  | Rendering strategy | OnPush-friendly patterns and deferred/lazy rendering where appropriate |
87
90
 
88
- ### Pattern 3: Generation and Review Guardrails
91
+ ### Pattern 3: Modern Reactivity Guardrails
92
+
93
+ - Use `computed` for derived state rather than duplicating or propagating state manually.
94
+ - Avoid `effect` for state propagation; reserve it for logging, browser storage sync, non-template DOM work, canvas/chart integrations, or other non-reactive APIs.
95
+ - Use `resource` for async signal-based data when the project Angular version supports it and it fits existing data patterns.
96
+ - Use `linkedSignal` for dependent writable state when the project Angular version supports it.
97
+ - Read signals before `await` inside reactive contexts so dependencies are tracked synchronously.
98
+
99
+ ### Pattern 4: Performance Review Priority
100
+
101
+ Use this official-Angular-aligned priority order for performance review. Measure first when possible, then choose the smallest applicable optimization.
102
+
103
+ | Priority | Review Focus | Default Action |
104
+ | --- | --- | --- |
105
+ | 1 | Measurement | Use Angular DevTools or Chrome DevTools Angular profiling to identify specific load, change detection, or rendering bottlenecks. |
106
+ | 2 | Loading performance | Prefer lazy routes, `@defer` for non-critical/heavy UI, image optimization, and SSR/hydration where they improve Core Web Vitals. |
107
+ | 3 | Runtime performance | Check zoneless change detection support, slow template/lifecycle computations, OnPush-friendly state, and zone pollution from timers or third-party code. |
108
+ | 4 | SSR/hydration correctness | Avoid server/client template divergence, prefer platform-specific providers, keep per-request state out of shared providers, and use factory providers for request-specific values. |
109
+ | 5 | Advanced loading | Use incremental hydration and advanced deferrable-view strategies only when the project version and UX constraints justify them. |
110
+
111
+ ### Pattern 5: Generation and Review Guardrails
89
112
 
90
113
  - Keep generated files focused and minimal for the requested artifact.
91
114
  - Prefer framework-native patterns over custom abstractions unless required by repo conventions.
92
115
  - Call out deprecated patterns in reviewed code and suggest modern Angular replacements.
93
116
  - For component-specific work, apply [agents/component-creator.md](agents/component-creator.md).
94
117
  - For testing-specific work, apply [agents/angular-tester.md](agents/angular-tester.md).
118
+ - For performance-specific work, apply [agents/performance-reviewer.md](agents/performance-reviewer.md).
95
119
 
96
120
  ---
97
121
 
@@ -111,8 +135,12 @@ Is this a refactor task?
111
135
  NO -> Continue
112
136
 
113
137
  Is this a review task?
114
- YES -> Validate latest-stable alignment + best-practice checklist
138
+ YES -> Validate latest-stable alignment + best-practice/performance checklist
115
139
  NO -> Apply the minimal Angular guidance needed for the request
140
+
141
+ Does the task mention performance, SSR, hydration, routing, data fetching, bundles, change detection, or zoneless behavior?
142
+ YES -> Route through performance-reviewer before finalizing
143
+ NO -> Keep the existing component/test route
116
144
  ```
117
145
 
118
146
  ---
@@ -168,6 +196,7 @@ export class ProfileService {
168
196
  - Template control flow uses modern block syntax.
169
197
  - DI and forms follow modern typed Angular practices.
170
198
  - Output avoids deprecated Angular APIs unless needed for compatibility.
199
+ - Performance work follows measurement-first guidance and avoids speculative optimization.
171
200
 
172
201
  ---
173
202
 
@@ -196,3 +225,10 @@ ng update @angular/core @angular/cli
196
225
  - Angular update guide: https://angular.dev/update-guide
197
226
  - Angular blog (official releases): https://blog.angular.dev
198
227
  - Angular GitHub releases: https://github.com/angular/angular/releases
228
+ - Angular Agent Skills: https://angular.dev/ai/agent-skills
229
+ - Official Angular skills repo: https://github.com/angular/skills
230
+ - Angular style guide: https://angular.dev/style-guide
231
+ - Angular performance guide: https://angular.dev/best-practices/performance
232
+ - Angular signals guide: https://angular.dev/guide/signals
233
+ - Angular testing guide: https://angular.dev/guide/testing
234
+ - Angular HTTP testing guide: https://angular.dev/guide/http/testing
@@ -29,8 +29,11 @@ Do not use this sub-agent for:
29
29
  - Test signal and computed behavior directly when possible.
30
30
  - Test signal inputs/outputs using component instance APIs and DOM-triggered events.
31
31
  - Cover async behavior with `fakeAsync`/`tick`/`flush` or `waitForAsync`/`whenStable`.
32
- - For HTTP paths, use `HttpClientTestingModule`/`HttpTestingController` and verify requests.
32
+ - For HTTP paths, use `provideHttpClient()` before `provideHttpClientTesting()`, then verify requests with `HttpTestingController`.
33
+ - Use component DOM tests when template behavior, user interaction, or child integration matters.
34
+ - Use router testing harnesses when navigation, guards, resolvers, or routed components are the behavior under test.
33
35
  - For services, prefer explicit DI setup and clear mocking boundaries.
36
+ - Avoid assertions on incidental implementation details unless they are part of the public contract.
34
37
 
35
38
  ---
36
39
 
@@ -99,12 +102,17 @@ describe("CounterComponent", () => {
99
102
 
100
103
  ```typescript
101
104
  import { TestBed } from "@angular/core/testing";
102
- import { HttpClientTestingModule, HttpTestingController } from "@angular/common/http/testing";
105
+ import { provideHttpClient } from "@angular/common/http";
106
+ import { provideHttpClientTesting, HttpTestingController } from "@angular/common/http/testing";
103
107
 
104
108
  describe("ProfileService", () => {
105
109
  it("requests profile", () => {
106
110
  TestBed.configureTestingModule({
107
- imports: [HttpClientTestingModule]
111
+ providers: [
112
+ ProfileService,
113
+ provideHttpClient(),
114
+ provideHttpClientTesting()
115
+ ]
108
116
  });
109
117
  const service = TestBed.inject(ProfileService);
110
118
  const httpMock = TestBed.inject(HttpTestingController);
@@ -127,4 +135,6 @@ describe("ProfileService", () => {
127
135
  - Standalone Angular artifacts are tested with appropriate TestBed setup.
128
136
  - Signal/input/output behavior is asserted explicitly.
129
137
  - Async and HTTP behavior use deterministic Angular testing utilities.
138
+ - HTTP tests use provider-based setup with `provideHttpClient()` before `provideHttpClientTesting()` for new code.
139
+ - Router behavior uses harness-style tests where the workspace supports them.
130
140
  - Assertions verify user-visible behavior or contract-level outcomes, not incidental internals.
@@ -27,6 +27,18 @@ Do not use this sub-agent for:
27
27
 
28
28
  ---
29
29
 
30
+ ## Style and Reactivity Checklist
31
+
32
+ - Prefer feature-based organization and one primary Angular concept per file.
33
+ - Use `protected` for class members that are only read by the template.
34
+ - Mark Angular-managed properties `readonly`, including `input`, `model`, `output`, and query values.
35
+ - Prefer `[class]` and `[style]` bindings over `ngClass` and `ngStyle`.
36
+ - Move complex template logic into TypeScript, usually as a `computed`.
37
+ - Use `computed` for derived state and avoid `effect` for state propagation.
38
+ - Use `resource` or `linkedSignal` only when the project Angular version supports them and they fit existing data patterns.
39
+
40
+ ---
41
+
30
42
  ## Template Snippets
31
43
 
32
44
  ### Minimal Standalone Component
@@ -122,3 +134,4 @@ export class CardComponent {
122
134
  - Templates use native control flow blocks, not legacy structural directives.
123
135
  - Host interaction includes required ARIA and keyboard semantics for interactive UI.
124
136
  - Change detection and state flow are OnPush-friendly and predictable.
137
+ - Template-only members are `protected`, Angular-managed fields are `readonly`, and complex template logic is moved into `computed` values.
@@ -0,0 +1,62 @@
1
+ # Angular Performance Reviewer
2
+
3
+ ## When to Use
4
+
5
+ Use this sub-agent when:
6
+
7
+ - Reviewing or improving Angular loading, runtime, change detection, or rendering performance.
8
+ - Working on SSR, hydration, incremental hydration, `@defer`, lazy routes, image optimization, or bundle size.
9
+ - Investigating slow interactions, excessive change detection, zone pollution, slow template expressions, or lifecycle bottlenecks.
10
+
11
+ Do not use this sub-agent for:
12
+
13
+ - Pure test-only tasks without performance behavior.
14
+ - Non-Angular frontend performance work.
15
+ - Speculative rewrites where no user-visible or measured bottleneck exists.
16
+
17
+ ---
18
+
19
+ ## Priority Checklist
20
+
21
+ Work from highest signal to lowest. Stop once the request is solved; do not add unrelated optimizations.
22
+
23
+ | Priority | Focus | Checks |
24
+ | --- | --- | --- |
25
+ | 1 | Measurement | Use Angular DevTools or Chrome DevTools Angular profiling to identify load, change detection, rendering, or lifecycle bottlenecks before changing code when practical. |
26
+ | 2 | Loading performance | Prefer lazy routes for route-level splitting, `@defer` for non-critical or heavy UI, image optimization for visual content, and SSR/hydration for content-heavy or SEO-sensitive pages. |
27
+ | 3 | Runtime performance | Check zoneless change detection support, OnPush-friendly state flow, slow template expressions, expensive lifecycle hooks, and zone pollution from timers or third-party libraries. |
28
+ | 4 | SSR/hydration correctness | Keep server and client rendered content consistent, avoid browser-only conditionals in templates, use platform-specific providers, and prevent shared module/provider state from leaking across requests. |
29
+ | 5 | Advanced loading | Use incremental hydration, custom `@defer` triggers, prefetching, or worker offloading only when the project version, bottleneck, and UX constraints justify them. |
30
+
31
+ ---
32
+
33
+ ## SSR and Hydration Guardrails
34
+
35
+ - Avoid rendering different template content on server and client; mismatches can hurt hydration and layout stability.
36
+ - Use `afterNextRender` or platform-specific providers for browser-only initialization instead of template-level platform checks.
37
+ - Use factory providers for request-specific values on the server; avoid shared `useValue` objects for per-request data.
38
+ - Keep `@defer` placeholders accessible and avoid deferring initially visible content unless incremental hydration and layout constraints are handled.
39
+ - Avoid nested `@defer` blocks with identical eager triggers that cause cascading loads.
40
+
41
+ ---
42
+
43
+ ## Reactivity and Change Detection Guardrails
44
+
45
+ - Use signals and `computed` values for local derived state.
46
+ - Avoid `effect` for propagating state changes; reserve it for side effects against non-reactive APIs.
47
+ - Read signals before `await` inside reactive contexts.
48
+ - Prefer OnPush-friendly inputs and immutable data flow in zone-based apps.
49
+ - In zoneless-ready apps, avoid assumptions that depend on ZoneJS side effects.
50
+
51
+ ---
52
+
53
+ ## Review Output
54
+
55
+ When reviewing performance, report:
56
+
57
+ 1. Highest-impact issue first, tied to the priority checklist.
58
+ 2. Concrete code-level recommendation using existing project patterns.
59
+ 3. Expected user-visible or measurable benefit.
60
+ 4. Verification path: Angular DevTools, Chrome DevTools Angular profiling, bundle output, Core Web Vitals, targeted test, or existing project command.
61
+
62
+ If no meaningful performance issue is found, say so and avoid inventing speculative work.
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "id": "angular-guidelines",
3
3
  "title": "Angular Guidelines",
4
- "description": "Guide Angular code generation and review using latest stable Angular verification and modern framework best practices.",
4
+ "description": "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.",
5
5
  "portable": true,
6
6
  "tags": ["angular", "frontend", "workflow", "best-practices"],
7
7
  "detectors": ["angular"],
@@ -10,14 +10,15 @@
10
10
  "agentSupport": ["codex", "claude", "cursor", "gemini", "copilot", "antigravity", "windsurf", "trae"],
11
11
  "skillMetadata": {
12
12
  "author": "skilly-hand",
13
- "last-edit": "2026-04-03",
13
+ "last-edit": "2026-05-01",
14
14
  "license": "Apache-2.0",
15
- "version": "1.1.1",
16
- "changelog": "Added allowed-modes metadata to declare angular-guidelines sub-agent routing targets; improves discoverability of component-creator and angular-tester delegation modes; affects angular-guidelines manifest metadata",
17
- "auto-invoke": "Generating, reviewing, or refactoring Angular code artifacts in Angular projects",
15
+ "version": "1.2.0",
16
+ "changelog": "Added curated official Angular skill and performance guidance with a dedicated performance-reviewer mode; improves SSR, hydration, reactivity, testing, and runtime optimization coverage; affects angular-guidelines routing, review checklists, and catalog discovery",
17
+ "auto-invoke": "Generating, reviewing, refactoring, or optimizing Angular code artifacts in Angular projects",
18
18
  "allowed-modes": [
19
19
  "component-creator",
20
- "angular-tester"
20
+ "angular-tester",
21
+ "performance-reviewer"
21
22
  ],
22
23
  "allowed-tools": [
23
24
  "Read",
@@ -35,7 +36,8 @@
35
36
  "files": [
36
37
  { "path": "SKILL.md", "kind": "instruction" },
37
38
  { "path": "agents/component-creator.md", "kind": "instruction" },
38
- { "path": "agents/angular-tester.md", "kind": "instruction" }
39
+ { "path": "agents/angular-tester.md", "kind": "instruction" },
40
+ { "path": "agents/performance-reviewer.md", "kind": "instruction" }
39
41
  ],
40
42
  "dependencies": []
41
43
  }
@@ -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-04-03"
6
+ last-edit: "2026-05-01"
7
7
  license: "Apache-2.0"
8
- version: "1.0.1"
9
- changelog: "Added allowed-modes metadata to declare figma-mcp-0to1 sub-agent routing targets; improves discoverability of install-auth, tool-function-catalog, canvas-creation-playbook, and troubleshooting-ops delegation modes; affects figma-mcp-0to1 manifest metadata"
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"
10
10
  auto-invoke: "Installing, configuring, or using Figma MCP from setup through first canvas creation"
11
11
  allowed-tools:
12
12
  - "Read"
@@ -30,6 +30,7 @@ Use this skill when:
30
30
  - You need a reliable path from connection to first successful canvas output.
31
31
  - You need to choose the right Figma MCP function for a task.
32
32
  - You need operational recovery for permission, auth, tool-loading, or rate-limit failures.
33
+ - You need to understand which skilly-hand agents overlap with Figma-supported MCP clients.
33
34
 
34
35
  Do not use this skill for:
35
36
 
@@ -57,14 +58,17 @@ Choose subskills by intent:
57
58
  1. Set up server transport and authentication.
58
59
  2. Verify connectivity with a low-risk call (`whoami` on remote, or a read tool).
59
60
  3. Select the smallest tool that solves the immediate task.
60
- 4. Run creation in short, validated steps (avoid large one-shot requests).
61
- 5. If anything fails, use troubleshooting flow before retrying.
61
+ 4. For writes, inspect existing file/design-system context before creating new content.
62
+ 5. Run creation in short, validated steps (avoid large one-shot requests).
63
+ 6. If anything fails, use troubleshooting flow before retrying.
62
64
 
63
65
  ---
64
66
 
65
67
  ## Core Rules
66
68
 
67
69
  - Prefer remote server for broadest feature coverage and write workflows.
70
+ - Treat official Figma MCP docs as the source of truth for official tools, supported clients, permissions, and limits.
71
+ - Keep client-specific helpers separate from official Figma MCP tools.
68
72
  - Treat write actions as staged operations, not a single large operation.
69
73
  - Use link-based node targeting for reliable design-context extraction.
70
74
  - Keep a clear distinction between read context tools and write/canvas tools.
@@ -72,6 +76,18 @@ Choose subskills by intent:
72
76
 
73
77
  ---
74
78
 
79
+ ## Agent Coverage
80
+
81
+ Figma MCP support and skilly-hand installation support are related but not identical:
82
+
83
+ | Coverage | Agents or Clients | Guidance |
84
+ | --- | --- | --- |
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. |
88
+
89
+ ---
90
+
75
91
  ## Key References
76
92
 
77
93
  - Full function matrix: [references/official-tools-matrix.md](references/official-tools-matrix.md)
@@ -86,6 +102,21 @@ Choose subskills by intent:
86
102
  # Codex CLI (manual remote setup)
87
103
  codex mcp add figma --url https://mcp.figma.com/mcp
88
104
 
105
+ # Claude Code plugin setup
106
+ claude plugin install figma@claude-plugins-official
107
+
108
+ # Claude Code manual remote setup
109
+ claude mcp add --transport http figma https://mcp.figma.com/mcp
110
+
111
+ # Claude Code manual remote setup, user scope
112
+ claude mcp add --scope user --transport http figma https://mcp.figma.com/mcp
113
+
114
+ # Claude Code manual desktop setup
115
+ claude mcp add --transport http figma-desktop http://127.0.0.1:3845/mcp
116
+
117
+ # Cursor plugin setup
118
+ /add-plugin figma
119
+
89
120
  # Verify catalog integrity in this repository
90
121
  npm run catalog:check
91
122
  ```
@@ -7,14 +7,17 @@ Deliver a first successful Figma canvas result with low risk and clear verificat
7
7
  ## Safe 0-to-1 Workflow
8
8
 
9
9
  1. **Create or choose file context**
10
- - New file path: call `create_new_file`.
10
+ - New file path: run `whoami` if needed to obtain a plan/team context, then call `create_new_file`.
11
11
  - Existing file path: confirm URL/node target and permissions.
12
+ - Live web UI path: use `generate_figma_design` to capture to a new file, existing file, or clipboard.
13
+ - Make path: use MCP resources from a Figma Make link to fetch project/file context before implementation.
12
14
 
13
15
  2. **Verify identity and access**
14
16
  - Run `whoami` (remote) to confirm account/plan.
15
17
  - If access mismatch appears, stop and fix permissions first.
16
18
 
17
19
  3. **Read before write**
20
+ - Use `get_libraries` if the Codex Figma plugin exposes it and library scope matters.
18
21
  - Call `search_design_system` to reuse components/variables.
19
22
  - Optionally call `get_metadata` for structure baseline.
20
23
 
@@ -23,6 +26,7 @@ Deliver a first successful Figma canvas result with low risk and clear verificat
23
26
  - Create one frame.
24
27
  - Add one text node.
25
28
  - Apply one style/token decision.
29
+ - For FigJam, create or update one small board object such as a sticky, section, connector, or shape.
26
30
 
27
31
  5. **Validate state**
28
32
  - Inspect with `get_metadata` or `get_screenshot`.
@@ -36,19 +40,27 @@ Deliver a first successful Figma canvas result with low risk and clear verificat
36
40
 
37
41
  ### Diagram-first flow (FigJam)
38
42
 
39
- 1. `create_new_file` (FigJam)
40
- 2. `generate_diagram` from plain-language workflow description
41
- 3. Validate diagram structure and labels
43
+ 1. Call `generate_diagram` from plain-language workflow description or Mermaid syntax.
44
+ 2. Let `generate_diagram` create a new FigJam file, or provide an existing FigJam file key.
45
+ 3. Validate diagram structure and labels.
42
46
 
43
47
  ### Code-to-canvas flow
44
48
 
45
- 1. Ask client to start local app capture workflow
46
- 2. Capture screen/element states to Figma
47
- 3. Open generated file and validate generated layers
48
- 4. Follow up with `use_figma` for cleanup/polish
49
+ 1. Ask client to start local app capture workflow.
50
+ 2. Use `generate_figma_design` to capture screen/element states to a new file, existing file, or clipboard.
51
+ 3. Open generated file and validate generated layers.
52
+ 4. Follow up with `use_figma` for cleanup/polish.
53
+
54
+ ### Make-to-code context flow
55
+
56
+ 1. Provide a valid Figma Make link.
57
+ 2. Use MCP resources to list available project files.
58
+ 3. Fetch only the files needed for the task.
59
+ 4. Implement or refine the production code using that Make context.
49
60
 
50
61
  ## Guardrails
51
62
 
52
63
  - Do not run large multi-section writes as the first operation.
53
64
  - Always return to read/verify tools after each write step.
54
65
  - If a write fails, use troubleshooting flow before retrying.
66
+ - Do not call `create_new_file` before `generate_diagram`; diagrams can create their own FigJam file.
@@ -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 features, including write-to-canvas workflows. |
12
- | Desktop | `http://127.0.0.1:3845/mcp` | Only for special org/enterprise needs | Requires Figma desktop app + Dev Mode desktop MCP toggle. |
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. |
13
13
 
14
14
  ## Codex Setup
15
15
 
@@ -26,15 +26,29 @@ codex mcp add figma --url https://mcp.figma.com/mcp
26
26
 
27
27
  When prompted, authenticate the server.
28
28
 
29
- ## Other Common Clients (manual patterns)
29
+ ## Other Supported Client Paths
30
30
 
31
+ Use concrete setup paths for agents that are both Figma-supported and skilly-hand-supported:
32
+
33
+ - Claude Code plugin: `claude plugin install figma@claude-plugins-official`
34
+ - Claude Code manual remote: `claude mcp add --transport http figma https://mcp.figma.com/mcp`
35
+ - Claude Code user-scope remote: `claude mcp add --scope user --transport http figma https://mcp.figma.com/mcp`
36
+ - Claude Code manual desktop: `claude mcp add --transport http figma-desktop http://127.0.0.1:3845/mcp`
37
+ - Cursor plugin: `/add-plugin figma`
38
+ - Cursor manual: add the remote or desktop endpoint in MCP settings.
39
+ - Copilot: use the VS Code MCP route and enable GitHub Copilot in the client.
31
40
  - VS Code: add HTTP MCP server in `mcp.json` using the remote endpoint.
32
- - Cursor: add MCP server in MCP settings or use its Figma plugin flow.
33
- - Claude Code: `claude mcp add --transport http figma https://mcp.figma.com/mcp`.
34
- - Gemini CLI: install Figma extension from `figma/mcp-server-guide`, then run auth command in CLI.
35
41
 
36
42
  See exact snippets in [../assets/client-config-snippets.md](../assets/client-config-snippets.md).
37
43
 
44
+ ## Agent Coverage Notes
45
+
46
+ | Coverage | Agents or Clients | Guidance |
47
+ | --- | --- | --- |
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. |
51
+
38
52
  ## Verification Checklist
39
53
 
40
54
  1. Confirm server appears in client MCP list.
@@ -42,13 +56,16 @@ See exact snippets in [../assets/client-config-snippets.md](../assets/client-con
42
56
  - Remote: `whoami` (recommended)
43
57
  - Desktop-only contexts: `get_metadata` or `get_design_context` on a known node
44
58
  3. Confirm the authenticated user has access to the target Figma file.
59
+ 4. For write workflows, confirm the authenticated seat can edit the target file.
45
60
 
46
61
  ## First Prompt After Setup
47
62
 
48
63
  - "Use Figma MCP `whoami` and show which account is authenticated."
49
64
  - "Use Figma MCP `get_design_context` for this node URL and summarize dimensions, layout, and variables."
65
+ - "Using this Figma file URL, inspect the current libraries before creating anything new."
50
66
 
51
67
  ## Notes
52
68
 
53
69
  - If tools do not appear, restart MCP client session and retry authentication.
54
70
  - If permissions fail, verify file sharing and plan seat alignment before retry.
71
+ - If a client does not expose an official tool, check the active tool list before changing the workflow.
@@ -7,20 +7,23 @@ 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, or diagram.
10
+ 2. Identify whether task is read, write, 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
14
14
 
15
15
  - Need full style/layout context for implementation: `get_design_context`.
16
+ - Need Figma Make project/file context: use MCP resources if the client supports resources.
16
17
  - Output too large or structure-first pass: `get_metadata` first, then targeted `get_design_context`.
17
18
  - Need variables/tokens only: `get_variable_defs`.
18
19
  - Need visual reference: `get_screenshot`.
19
20
  - Need FigJam extraction: `get_figjam`.
21
+ - Need library discovery in Codex before a scoped search: `get_libraries` if the Codex Figma plugin exposes it.
20
22
  - Need design-system discovery before creating: `search_design_system`.
21
- - Need to write/create/update content: `use_figma` (remote write workflows).
22
- - Need new blank file: `create_new_file`.
23
- - Need Mermaid-to-FigJam: `generate_diagram`.
23
+ - Need to write/create/update Figma Design or FigJam content: `use_figma` (remote write workflow; use `figma-use` skill when available).
24
+ - Need first-time live web UI capture: `generate_figma_design`.
25
+ - Need new blank file: `create_new_file` (requires plan/team context such as `planKey` in some clients).
26
+ - Need Mermaid-to-FigJam: `generate_diagram` (creates its own FigJam file unless an existing FigJam file key is provided).
24
27
  - Need code-connect lookup/update: `get_code_connect_map`, `add_code_connect_map`, suggestion/confirm functions.
25
28
 
26
29
  ## Prompting Pattern
@@ -28,11 +31,15 @@ Pick the smallest correct Figma MCP function for the task, with predictable inpu
28
31
  Use direct tool-trigger language when selection is ambiguous:
29
32
 
30
33
  - "Use Figma MCP `get_metadata` first, then `get_design_context` only for the selected child nodes."
34
+ - "Use `get_libraries` if available, then use Figma MCP `search_design_system` for the selected library."
31
35
  - "Use Figma MCP `search_design_system` before creating any new component."
36
+ - "Use Figma MCP `generate_figma_design` to capture this live web UI to a new Figma file."
32
37
  - "Use Figma MCP `create_new_file`, then `use_figma` to add a first frame and typography style."
38
+ - "Use MCP resources from this Figma Make link and fetch only the files needed for implementation."
33
39
 
34
40
  ## Remote/Desktop Caveats
35
41
 
36
42
  - Remote-only flags are tracked in the matrix; confirm availability before relying on those functions.
37
- - Write-to-canvas flows are remote-first in current official guidance.
43
+ - Write-to-canvas flows are remote-only in current official guidance.
38
44
  - Desktop mode is valid for local selection-based extraction, but with narrower workflow coverage.
45
+ - Selection-based prompting works with the desktop server; remote workflows should use Figma file or node links.
@@ -14,6 +14,8 @@ Failure observed?
14
14
  -> Verify link format, run whoami, confirm seat/plan and file access
15
15
  -> Rate-limit behavior
16
16
  -> Reduce read call volume, stage calls, wait/backoff, upgrade seat/plan if needed
17
+ -> Missing expected tool
18
+ -> Compare active client tools with official matrix, then choose a supported fallback
17
19
  -> Write failure
18
20
  -> Stop retries, inspect state with read tools, fix cause, retry scoped step
19
21
  ```
@@ -35,15 +37,27 @@ Failure observed?
35
37
  ### Rate limiting
36
38
 
37
39
  - Read-heavy calls are rate-limited by plan/seat.
40
+ - Starter plan or View/Collab seats are limited to low monthly usage.
41
+ - Dev/Full seats on Professional or Organization plans have higher daily usage.
42
+ - Enterprise Dev/Full seats have the highest documented daily usage.
43
+ - Officially documented exempt tools include `add_code_connect_map`, `generate_figma_design`, and `whoami`.
38
44
  - Use smaller selections and fewer repeated reads.
39
45
  - Prefer `get_metadata` preflight before broad `get_design_context`.
40
46
  - Batch intent into fewer, targeted calls.
41
47
 
48
+ ### Missing expected tools
49
+
50
+ - Official Figma MCP tools may not be exposed by every client plugin surface.
51
+ - Client-specific helpers, such as Codex `get_libraries`, are not official substitutes for every client.
52
+ - Prefer a documented fallback rather than forcing an unavailable tool.
53
+
42
54
  ### Write step errors
43
55
 
44
56
  - Do not immediately retry the exact same large request.
45
57
  - Split into smaller write actions.
46
58
  - Verify partial outcomes using read tools before next step.
59
+ - For `create_new_file`, ensure a plan/team context is available.
60
+ - For `generate_diagram`, do not pre-create a blank FigJam file unless adding to an existing file is the explicit goal.
47
61
 
48
62
  ## Scoped Retry Pattern
49
63
 
@@ -14,6 +14,37 @@
14
14
  codex mcp add figma --url https://mcp.figma.com/mcp
15
15
  ```
16
16
 
17
+ ## Codex App
18
+
19
+ Use the Figma plugin/app install path in Codex when available, then complete the OAuth authentication flow.
20
+
21
+ ## Claude Code Plugin
22
+
23
+ ```bash
24
+ claude plugin install figma@claude-plugins-official
25
+ ```
26
+
27
+ ## Claude Code (manual remote)
28
+
29
+ ```bash
30
+ claude mcp add --transport http figma https://mcp.figma.com/mcp
31
+ claude mcp list
32
+ ```
33
+
34
+ ## Claude Code (manual remote, user scope)
35
+
36
+ ```bash
37
+ claude mcp add --scope user --transport http figma https://mcp.figma.com/mcp
38
+ claude mcp list
39
+ ```
40
+
41
+ ## Claude Code (manual desktop)
42
+
43
+ ```bash
44
+ claude mcp add --transport http figma-desktop http://127.0.0.1:3845/mcp
45
+ claude mcp list
46
+ ```
47
+
17
48
  ## VS Code `mcp.json` (remote)
18
49
 
19
50
  ```json
@@ -53,24 +84,38 @@ codex mcp add figma --url https://mcp.figma.com/mcp
53
84
  }
54
85
  ```
55
86
 
56
- ## Claude Code (manual remote)
87
+ ## Cursor Plugin
57
88
 
58
89
  ```bash
59
- claude mcp add --transport http figma https://mcp.figma.com/mcp
60
- claude mcp list
90
+ /add-plugin figma
61
91
  ```
62
92
 
63
- ## Claude Code (manual desktop)
93
+ ## Cursor MCP config (desktop)
64
94
 
65
- ```bash
66
- claude mcp add --transport http figma-desktop http://127.0.0.1:3845/mcp
67
- claude mcp list
95
+ ```json
96
+ {
97
+ "mcpServers": {
98
+ "figma-desktop": {
99
+ "url": "http://127.0.0.1:3845/mcp"
100
+ }
101
+ }
102
+ }
68
103
  ```
69
104
 
70
- ## Gemini CLI
105
+ ## Other Desktop MCP Config
71
106
 
72
- ```bash
73
- gemini extensions install https://github.com/figma/mcp-server-guide
74
- # then inside gemini CLI:
75
- # /mcp auth figma
107
+ ```json
108
+ {
109
+ "mcpServers": {
110
+ "figma-desktop": {
111
+ "url": "http://127.0.0.1:3845/mcp"
112
+ }
113
+ }
114
+ }
76
115
  ```
116
+
117
+ ## Agent Coverage Notes
118
+
119
+ - 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`.
@@ -4,31 +4,55 @@
4
4
 
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
+ - "Check whether this client exposes the Figma MCP tools I need before starting."
7
8
 
8
9
  ## Read Context
9
10
 
10
11
  - "Use `get_design_context` for this node URL and return layout, spacing, typography, and variables."
11
12
  - "Use `get_metadata` first, then call `get_design_context` only for the button and header nodes."
12
13
  - "Use `get_variable_defs` for this node and list token names with resolved values."
14
+ - "Use `get_screenshot` for this node and compare it against the generated implementation."
15
+ - "Use Figma MCP resources from this Figma Make link and fetch only the files needed for this component."
13
16
 
14
17
  ## Design-System and Code Connect
15
18
 
19
+ - "Use `get_libraries` if available, then search only the relevant design libraries."
16
20
  - "Use `search_design_system` to find an existing card and button component before creating anything new."
21
+ - "Use `search_design_system` to find primary color, typography, and spacing variables."
17
22
  - "Use `get_code_connect_map` for this node and show mapped source locations."
18
23
  - "Use `add_code_connect_map` to map this Figma node to my component path."
24
+ - "Use `get_code_connect_suggestions`, then confirm mappings with `send_code_connect_mappings` if the suggestions are correct."
19
25
 
20
26
  ## First Canvas Creation
21
27
 
28
+ - "Use `whoami` to choose the right plan, then use `create_new_file` to create a new design file named 'MCP First Canvas'."
22
29
  - "Use `create_new_file` to create a new design file named 'MCP First Canvas'."
23
30
  - "Use `use_figma` to create one frame, add one title text layer, and apply auto layout spacing."
24
31
  - "After the write, use `get_screenshot` to verify the result."
32
+ - "Before writing, inspect the file and use `search_design_system` for existing components or variables."
33
+
34
+ ## Live UI Capture
35
+
36
+ - "Start my local app and use `generate_figma_design` to capture the current screen into a new Figma file."
37
+ - "Use `generate_figma_design` to capture this URL into the existing Figma file."
38
+ - "Use `generate_figma_design` to capture this page to my clipboard."
25
39
 
26
40
  ## FigJam Flows
27
41
 
28
42
  - "Use `create_new_file` to create a new FigJam board for architecture planning."
29
43
  - "Use `generate_diagram` to create a sequence diagram for login and checkout flow."
44
+ - "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."
46
+ - "Use `use_figma` to update this architecture diagram with a new service."
47
+
48
+ ## Agent Coverage
49
+
50
+ - "For this agent, tell me whether Figma officially supports its MCP setup path and which command/config I should use."
51
+ - "Compare this client's active Figma tools against the official Figma MCP matrix before choosing a workflow."
30
52
 
31
53
  ## Troubleshooting
32
54
 
33
55
  - "I got a permission error. Use `whoami` and tell me what to check next."
34
56
  - "I am rate-limited. Switch to a staged workflow with fewer `get_design_context` calls."
57
+ - "This client does not expose `get_screenshot`. Choose the closest supported verification path."
58
+ - "My `create_new_file` call failed. Check whether a plan key or team context is missing."
@@ -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-04-03",
13
+ "last-edit": "2026-05-01",
14
14
  "license": "Apache-2.0",
15
- "version": "1.0.1",
16
- "changelog": "Added allowed-modes metadata to declare figma-mcp-0to1 sub-agent routing targets; improves discoverability of install-auth, tool-function-catalog, canvas-creation-playbook, and troubleshooting-ops delegation modes; affects figma-mcp-0to1 manifest metadata",
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",
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,31 +1,56 @@
1
- # Official Figma MCP Tools Matrix (As of 2026-04-03)
1
+ # Official Figma MCP Tools Matrix (As of 2026-05-01)
2
2
 
3
- This matrix tracks the official Figma MCP tool/function set in current Figma documentation.
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
 
5
5
  ## Coverage Matrix
6
6
 
7
7
  | Tool | Primary Purpose | Typical Input | Supported File Types | Availability Notes |
8
8
  | --- | --- | --- | --- | --- |
9
- | `generate_figma_design` | Generate design layers from live web UI (code to canvas path) | URL/local app capture context | No file context required | Remote-only in official docs. |
10
- | `get_design_context` | Fetch rich design context for implementation | Figma URL or `fileKey` + `nodeId` | Figma Design | Read tool; use link-based node targeting. |
9
+ | `generate_figma_design` | Generate editable design layers from live web UI | URL/local app capture context | Figma Design output | Remote-only; select clients only; can output to new file, existing file, or clipboard; exempt from standard read limits. |
10
+ | `get_design_context` | Fetch rich design context for implementation | Figma URL or `fileKey` + `nodeId` | Figma Design, Figma Make | Read tool; remote server requires link-based node targeting; desktop can use selection-based prompts. |
11
11
  | `get_variable_defs` | Retrieve variable/token definitions | `fileKey` + `nodeId` | Figma Design | Best for token-only extraction. |
12
12
  | `get_code_connect_map` | Read existing Code Connect mappings | `fileKey` + `nodeId` | Figma Design | Use to inspect mapping before updates. |
13
13
  | `add_code_connect_map` | Add mapping from node to code component | `fileKey`, `nodeId`, source details | Figma Design | Write-style utility; exempt from read rate limits in docs. |
14
- | `get_screenshot` | Render node screenshot for visual verification | `fileKey` + `nodeId` | Figma Design | Useful verification after write steps. |
14
+ | `get_screenshot` | Render node screenshot for visual verification | `fileKey` + `nodeId` | Figma Design, FigJam | Useful verification after write steps and for preserving visual fidelity. |
15
15
  | `create_design_system_rules` | Generate design-system rules prompt/scaffold | Framework/language context | No file context required | Use to enforce repeatable design-system workflows. |
16
16
  | `get_metadata` | Sparse XML structure (ids, names, hierarchy, bounds) | Selection or `fileKey` + `nodeId` | Figma Design | Preferred preflight for large contexts. |
17
17
  | `get_figjam` | Fetch FigJam metadata (and node visuals) | `fileKey` + `nodeId` | FigJam | FigJam-specific extraction. |
18
- | `generate_diagram` | Create FigJam diagram from Mermaid or natural language intent | Diagram description or Mermaid syntax | No file context required | Supports flowchart, gantt, state, sequence. |
18
+ | `generate_diagram` | Create FigJam diagram from Mermaid or natural language intent | Diagram description or Mermaid syntax | No file context required | Remote-only; supports flowchart, gantt, state, sequence, architecture, and ERD workflows. |
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 in Figma via Plugin API workflow | Task instructions and file context | Figma Design, FigJam | Write-to-canvas workflow path; remote-first guidance. |
23
- | `search_design_system` | Search libraries for components, variables, styles | Query text and optional type narrowing | Figma Design | Use before creating new artifacts. |
24
- | `create_new_file` | Create new blank Design or FigJam file | Name/type intent | No file context required | Good first step for 0-to-1 creation workflows. |
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. |
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
+ | `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
+
26
+ ## Figma Make Resources
27
+
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
+
30
+ ## Codex Plugin Helpers
31
+
32
+ The Codex Figma plugin may expose helper tools beyond the current official tools page. Keep these documented as client-specific helpers:
33
+
34
+ | Helper | Purpose | Notes |
35
+ | --- | --- | --- |
36
+ | `get_libraries` | List libraries associated with a Figma file | Use before scoped `search_design_system`; not listed on the official Figma tools page as of this matrix date. |
37
+
38
+ Some official Figma MCP tools may not be exposed by every client plugin surface. Prefer the active client's tool list over assumptions when executing.
39
+
40
+ ## Client and Agent Coverage
41
+
42
+ | Coverage | Agents or Clients | Guidance |
43
+ | --- | --- | --- |
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. |
25
47
 
26
48
  ## Rate-Limit Notes (Official)
27
49
 
28
- - Read tools are subject to seat/plan limits.
50
+ - Read tools are subject to seat/plan limits and per-minute limits.
51
+ - Starter plan or View/Collab seats: up to 6 tool calls per month.
52
+ - Professional or Organization with Dev/Full seat: up to 200 tool calls per day.
53
+ - Enterprise with Dev/Full seat: up to 600 tool calls per day.
29
54
  - Officially documented exempt tools include:
30
55
  - `add_code_connect_map`
31
56
  - `generate_figma_design`
@@ -35,9 +60,11 @@ This matrix tracks the official Figma MCP tool/function set in current Figma doc
35
60
 
36
61
  1. Start with `whoami` when authentication or permissions are uncertain.
37
62
  2. Use `get_metadata` before `get_design_context` for large files.
38
- 3. Use `search_design_system` before creating new components.
39
- 4. Keep `use_figma` calls small and validate after each step.
40
- 5. Use `get_screenshot` as final visual verification after edits.
63
+ 3. Use `get_libraries` where available, then `search_design_system` for scoped design-system reuse.
64
+ 4. Use `generate_figma_design` for first-time live web UI capture.
65
+ 5. Use `use_figma` for direct Figma Design or FigJam writes and updates.
66
+ 6. Keep `use_figma` calls small and validate after each step.
67
+ 7. Use `get_screenshot` as final visual verification after edits when available.
41
68
 
42
69
  ## Sources
43
70
 
@@ -45,5 +72,8 @@ This matrix tracks the official Figma MCP tool/function set in current Figma doc
45
72
  - https://developers.figma.com/docs/figma-mcp-server/tools-and-prompts/
46
73
  - https://developers.figma.com/docs/figma-mcp-server/remote-server-installation/
47
74
  - https://developers.figma.com/docs/figma-mcp-server/local-server-installation/
75
+ - https://developers.figma.com/docs/figma-mcp-server/write-to-canvas/
76
+ - https://developers.figma.com/docs/figma-mcp-server/code-to-canvas/
77
+ - https://developers.figma.com/docs/figma-mcp-server/bringing-make-context-to-your-agent/
48
78
  - https://developers.figma.com/docs/figma-mcp-server/plans-access-and-permissions/
49
79
  - https://help.figma.com/hc/en-us/articles/32132100833559-Guide-to-the-Figma-MCP-server
@@ -1,13 +1,13 @@
1
1
  ---
2
2
  name: "react-guidelines"
3
- description: "Guide React code generation and review using latest stable React verification and modern framework best practices."
3
+ description: "Guide React and Next.js code generation, review, and performance tuning using latest stable React verification and modern framework best practices. Trigger: generating, reviewing, refactoring, or optimizing React code artifacts in React projects."
4
4
  skillMetadata:
5
5
  author: "skilly-hand"
6
- last-edit: "2026-04-04"
6
+ last-edit: "2026-05-01"
7
7
  license: "Apache-2.0"
8
- version: "1.0.0"
9
- changelog: "Added new react-guidelines skill with component and testing sub-agent routing; improves React-specific generation and review consistency with latest-stable preflight checks; affects portable catalog skill discovery and React workflow guidance"
10
- auto-invoke: "Generating, reviewing, or refactoring React code artifacts in React projects"
8
+ version: "1.1.0"
9
+ changelog: "Added curated Vercel-style React and Next.js performance review guidance with a dedicated performance-reviewer mode; improves async, bundle, server, client data, and rendering optimization coverage; affects react-guidelines routing, review checklists, and catalog discovery"
10
+ auto-invoke: "Generating, reviewing, refactoring, or optimizing React code artifacts in React projects"
11
11
  allowed-tools:
12
12
  - "Read"
13
13
  - "Edit"
@@ -29,6 +29,7 @@ Use this skill when:
29
29
  - You are generating React components, hooks, or supporting modules.
30
30
  - You are refactoring existing React code to current framework patterns.
31
31
  - You are reviewing React code quality and framework-alignment in a React workspace.
32
+ - You are optimizing React or Next.js behavior around async work, bundle size, data fetching, server/client boundaries, or rendering cost.
32
33
 
33
34
  Do not use this skill for:
34
35
 
@@ -46,6 +47,7 @@ Choose sub-agents by intent:
46
47
  | --- | --- |
47
48
  | Create, refactor, or review React components | [agents/component-creator.md](agents/component-creator.md) |
48
49
  | Write or review React tests | [agents/react-tester.md](agents/react-tester.md) |
50
+ | Optimize or review React/Next.js performance | [agents/performance-reviewer.md](agents/performance-reviewer.md) |
49
51
 
50
52
  ---
51
53
 
@@ -53,7 +55,8 @@ Choose sub-agents by intent:
53
55
 
54
56
  1. Run latest stable React preflight checks.
55
57
  2. Route to the smallest matching sub-agent by task intent.
56
- 3. Apply the sub-agent checklist before finalizing generated code or review output.
58
+ 3. If the request mentions performance, Next.js, data fetching, server/client boundaries, bundles, or re-renders, include the performance priority checklist.
59
+ 4. Apply the sub-agent checklist before finalizing generated code or review output.
57
60
 
58
61
  ---
59
62
 
@@ -94,6 +97,22 @@ Use these defaults unless project constraints explicitly prevent them:
94
97
  - Keep state minimal and colocated near usage.
95
98
  - For component-specific work, apply [agents/component-creator.md](agents/component-creator.md).
96
99
  - For testing-specific work, apply [agents/react-tester.md](agents/react-tester.md).
100
+ - For performance-specific work, apply [agents/performance-reviewer.md](agents/performance-reviewer.md).
101
+
102
+ ### Pattern 4: Performance Review Priority
103
+
104
+ Use this Vercel-style priority order for React and Next.js performance review. Start with the highest-impact item that applies to the request; do not add complexity for hypothetical bottlenecks.
105
+
106
+ | Priority | Review Focus | Default Action |
107
+ | --- | --- | --- |
108
+ | 1 | Eliminating waterfalls | Start independent promises early, defer awaits until values are needed, and use `Promise.all` for independent async work. |
109
+ | 2 | Bundle size optimization | Avoid problematic barrel imports unless tooling optimizes them, dynamically import heavy or client-only modules, and defer third-party libraries. |
110
+ | 3 | Server-side performance | Authenticate server actions, avoid shared request state, minimize client-component serialization, and use per-request dedupe where applicable. |
111
+ | 4 | Client-side data fetching | Dedupe repeated requests, keep global listeners passive and cleaned up, and keep browser storage minimal and versioned. |
112
+ | 5 | Re-render optimization | Derive state during render, avoid redundant state, keep non-primitive defaults stable, and memoize only when it removes measured churn. |
113
+ | 6 | Rendering performance | Split expensive work, place Suspense boundaries around meaningful async UI, and use transitions/deferred values for user-visible responsiveness. |
114
+ | 7 | JavaScript performance | Keep hot-path work small, avoid repeated parsing or allocation in render paths, and prefer platform APIs over bulky helpers where practical. |
115
+ | 8 | Advanced patterns | Use virtualization, streaming, caching, or compiler-aware patterns only when the project stack and bottleneck justify them. |
97
116
 
98
117
  ---
99
118
 
@@ -113,8 +132,12 @@ Is this a refactor task?
113
132
  NO -> Continue
114
133
 
115
134
  Is this a review task?
116
- YES -> Validate latest-stable alignment + hook/purity checklist
135
+ YES -> Validate latest-stable alignment + hook/purity/performance checklist
117
136
  NO -> Apply the minimal React guidance needed for the request
137
+
138
+ Does the task mention performance, Next.js, data fetching, bundles, RSC, or re-renders?
139
+ YES -> Route through performance-reviewer before finalizing
140
+ NO -> Keep the existing component/test route
118
141
  ```
119
142
 
120
143
  ---
@@ -170,6 +193,7 @@ export function UserPanelClient({ name }: { name: string }) {
170
193
  - Hooks follow call-order rules and purity constraints.
171
194
  - `'use client'`/`'use server'` directives are only used where boundary semantics require them.
172
195
  - Suspense/StrictMode/Profiler guidance is considered when relevant to behavior.
196
+ - Performance work follows the priority order from waterfalls through advanced patterns and avoids speculative optimization.
173
197
 
174
198
  ---
175
199
 
@@ -208,3 +232,4 @@ npm run catalog:check
208
232
  - StrictMode: https://react.dev/reference/react/StrictMode
209
233
  - Fragment: https://react.dev/reference/react/Fragment
210
234
  - Profiler: https://react.dev/reference/react/Profiler
235
+ - Vercel Labs React best practices skill: https://github.com/vercel-labs/agent-skills/tree/main/skills/react-best-practices
@@ -28,6 +28,17 @@ Do not use this sub-agent for:
28
28
 
29
29
  ---
30
30
 
31
+ ## Performance Checklist
32
+
33
+ - Do not define child components inside render; move them to module scope unless they truly need closure state.
34
+ - Do not store redundant derived state; derive from props/state during render.
35
+ - Avoid unnecessary Effects for synchronous derivation or event handling.
36
+ - Keep default non-primitive props stable by defining fallback arrays/objects/functions at module scope.
37
+ - Use Suspense, transitions, deferred values, and memoization only when they improve a real user-visible or measured bottleneck.
38
+ - In Next.js, keep client components narrow and pass only serializable data across server/client boundaries.
39
+
40
+ ---
41
+
31
42
  ## Template Snippets
32
43
 
33
44
  ### Minimal Pure Function Component
@@ -86,3 +97,4 @@ export function ProfileSection() {
86
97
  - Composition is preferred over inheritance or over-abstraction.
87
98
  - Client/server boundary directives are correctly scoped.
88
99
  - Accessibility semantics are present for interactive controls.
100
+ - Component shape avoids preventable re-renders, redundant state, and unstable default values.
@@ -0,0 +1,55 @@
1
+ # React Performance Reviewer
2
+
3
+ ## When to Use
4
+
5
+ Use this sub-agent when:
6
+
7
+ - Reviewing or improving React or Next.js performance.
8
+ - Working on async data fetching, Suspense, streaming, server actions, RSC boundaries, bundle size, or client/server splits.
9
+ - Investigating avoidable re-renders, slow interactions, heavy imports, or expensive render-time JavaScript.
10
+
11
+ Do not use this sub-agent for:
12
+
13
+ - Pure test-only tasks without performance behavior.
14
+ - Non-React frontend performance work.
15
+ - Speculative rewrites where no user-visible or measured bottleneck exists.
16
+
17
+ ---
18
+
19
+ ## Priority Checklist
20
+
21
+ Work from highest impact to lowest. Stop once the request is solved; do not add unrelated optimizations.
22
+
23
+ | Priority | Focus | Checks |
24
+ | --- | --- | --- |
25
+ | 1 | Eliminating waterfalls | Start independent async work before awaiting dependencies; use `Promise.all` for independent requests; fetch at the highest useful boundary. |
26
+ | 2 | Bundle size optimization | Avoid unoptimized barrel imports; dynamically import heavy/client-only code; defer analytics, editors, charts, maps, and other third-party libraries. |
27
+ | 3 | Server-side performance | Authenticate server actions; avoid module-level mutable request state; minimize serialized props sent to client components; dedupe per request where supported. |
28
+ | 4 | Client-side data fetching | Dedupe repeated requests; cancel or ignore stale async work; clean up global listeners; keep passive listeners passive; keep browser storage minimal and versioned. |
29
+ | 5 | Re-render optimization | Remove redundant derived state; avoid nested component definitions; stabilize non-primitive defaults; use `memo`, `useMemo`, and `useCallback` only for proven churn. |
30
+ | 6 | Rendering performance | Split expensive UI; use Suspense boundaries with meaningful fallbacks; use transitions or deferred values for responsiveness during expensive updates. |
31
+ | 7 | JavaScript performance | Move expensive parsing/allocation out of render hot paths; prefer smaller platform APIs over bulky helpers; avoid repeated work in loops and render paths. |
32
+ | 8 | Advanced patterns | Add virtualization, streaming, caching layers, compiler-aware patterns, or worker offloading only when the project stack and bottleneck justify them. |
33
+
34
+ ---
35
+
36
+ ## Next.js Guardrails
37
+
38
+ - Keep server components as the default for data-heavy UI; add `'use client'` only for interactivity or browser-only APIs.
39
+ - Treat server actions as public endpoints: validate input, authenticate/authorize, and avoid leaking server-only data to client props.
40
+ - Keep request-specific state inside the request scope; do not store user/session/request data in shared module variables.
41
+ - Pass compact, serializable props from server to client components.
42
+ - Prefer framework-supported request caching and dedupe over ad hoc global caches.
43
+
44
+ ---
45
+
46
+ ## Review Output
47
+
48
+ When reviewing performance, report:
49
+
50
+ 1. Highest-impact issue first, tied to the priority checklist.
51
+ 2. Concrete code-level recommendation using existing project patterns.
52
+ 3. Expected user-visible or measurable benefit.
53
+ 4. Verification path: profiler trace, bundle analyzer, network waterfall, targeted test, or existing project command.
54
+
55
+ If no meaningful performance issue is found, say so and avoid inventing speculative work.
@@ -33,6 +33,16 @@ Do not use this sub-agent for:
33
33
 
34
34
  ---
35
35
 
36
+ ## Performance-Sensitive Test Patterns
37
+
38
+ - Assert user-visible async states instead of timing or scheduler internals.
39
+ - Cover Suspense fallback and resolved UI when the component owns a meaningful async boundary.
40
+ - Test deduped fetch or request behavior only when the project already exposes a stable cache/dedupe contract.
41
+ - For transitions and deferred values, assert responsiveness and final visible output, not React implementation details.
42
+ - Avoid tests that lock in incidental render counts unless render count is the public performance contract.
43
+
44
+ ---
45
+
36
46
  ## Command Matrix
37
47
 
38
48
  | Scenario | Preferred Command | Fallback |
@@ -108,4 +118,5 @@ it("shows fallback before async content resolves", () => {
108
118
  - `act`-safe patterns are preserved for stateful and async updates.
109
119
  - Assertions validate user-visible behavior and contracts.
110
120
  - Suspense/transition scenarios are tested where relevant.
121
+ - Performance-sensitive tests avoid scheduler internals and incidental render-count assertions.
111
122
  - Mocks are limited to necessary boundaries.
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "id": "react-guidelines",
3
3
  "title": "React Guidelines",
4
- "description": "Guide React code generation and review using latest stable React verification and modern framework best practices.",
4
+ "description": "Guide React and Next.js code generation, review, and performance tuning using latest stable React verification and modern framework best practices. Trigger: generating, reviewing, refactoring, or optimizing React code artifacts in React projects.",
5
5
  "portable": true,
6
6
  "tags": ["react", "frontend", "workflow", "best-practices"],
7
7
  "detectors": ["react"],
@@ -10,14 +10,15 @@
10
10
  "agentSupport": ["codex", "claude", "cursor", "gemini", "copilot", "antigravity", "windsurf", "trae"],
11
11
  "skillMetadata": {
12
12
  "author": "skilly-hand",
13
- "last-edit": "2026-04-04",
13
+ "last-edit": "2026-05-01",
14
14
  "license": "Apache-2.0",
15
- "version": "1.0.0",
16
- "changelog": "Added new react-guidelines skill with component and testing sub-agent routing; improves React-specific generation and review consistency with latest-stable preflight checks; affects portable catalog skill discovery and React workflow guidance",
17
- "auto-invoke": "Generating, reviewing, or refactoring React code artifacts in React projects",
15
+ "version": "1.1.0",
16
+ "changelog": "Added curated Vercel-style React and Next.js performance review guidance with a dedicated performance-reviewer mode; improves async, bundle, server, client data, and rendering optimization coverage; affects react-guidelines routing, review checklists, and catalog discovery",
17
+ "auto-invoke": "Generating, reviewing, refactoring, or optimizing React code artifacts in React projects",
18
18
  "allowed-modes": [
19
19
  "component-creator",
20
- "react-tester"
20
+ "react-tester",
21
+ "performance-reviewer"
21
22
  ],
22
23
  "allowed-tools": [
23
24
  "Read",
@@ -35,7 +36,8 @@
35
36
  "files": [
36
37
  { "path": "SKILL.md", "kind": "instruction" },
37
38
  { "path": "agents/component-creator.md", "kind": "instruction" },
38
- { "path": "agents/react-tester.md", "kind": "instruction" }
39
+ { "path": "agents/react-tester.md", "kind": "instruction" },
40
+ { "path": "agents/performance-reviewer.md", "kind": "instruction" }
39
41
  ],
40
42
  "dependencies": []
41
43
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@skilly-hand/skilly-hand",
3
- "version": "0.25.2",
3
+ "version": "0.26.0",
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.25.2",
3
+ "version": "0.26.0",
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.25.2",
3
+ "version": "0.26.0",
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.25.2",
3
+ "version": "0.26.0",
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.25.2",
3
+ "version": "0.26.0",
4
4
  "private": true,
5
5
  "type": "module"
6
6
  }