Skip to main content

update

Update @rogieking/figui3 to the latest version, rebuild the Vite cache, review FigUI3 and ToolKit changes for breaking or new component APIs, and apply needed app integrations. Use when the user runs /update or asks to pull the latest figui3, refresh figui3, rebuild vite cache, or sync FigUI3 component changes.

Source facts

Repository
rogie/figma-webgpu-shader-studio
Last source activity
September 22, 2026 at 11:57
Detected SKILL.md language
English
Stars
0
Forks
0

Install options

The review-first prompt is selected by default. You can switch to a direct command or download a local copy.

Review the source files

Read SKILL.md and any companion files shown by SkillsMP before deciding whether to install.

File Explorer
5 files

Showing SKILL.md

SKILL.md
Source instructions · Read-only preview
name
update
description
Update @rogieking/figui3 to the latest version, rebuild the Vite cache, review FigUI3 and ToolKit changes for breaking or new component APIs, and apply needed app integrations. Use when the user runs /update or asks to pull the latest figui3, refresh figui3, rebuild vite cache, or sync FigUI3 component changes.
# /update — FigUI3 upgrade workflow Run this skill end-to-end when invoked. Do not stop after installing the package. When the user sends `/update`, run this FigUI3 workflow immediately. Do not ask which dependency or update scope they mean. ## Quick start From the repo root: ```bash .cursor/skills/update/scripts/update-figui3.sh ``` Then follow **Review changelog & migrate** below. Finish with verification. ## Execution checklist Copy and track progress: ``` - [ ] Record current @rogieking/figui3 version and @rogieking/toolkit revision - [ ] Install latest figui3 and ToolKit from rogie/propskit2 main in app/ - [ ] Rebuild Vite cache (script does this) - [ ] Restart Vite in a background Shell session and confirm http://localhost:5173/ responds - [ ] Review FigUI3 and ToolKit changes since previous versions - [ ] Apply needed integrations in app/src - [ ] Run npm test && npm run build in app/ - [ ] Summarize version jump + code changes for the user ``` ## 1. Install + Vite cache Always run from repo root: ```bash .cursor/skills/update/scripts/update-figui3.sh ``` The script: - installs `@rogieking/figui3@latest` in `app/` - installs `@rogieking/toolkit` from the latest `github:rogie/propskit2#main` - prints old → new versions - deletes `app/node_modules/.vite` It does **not** restart the dev server. In Cursor, detached `nohup`/`setsid` processes do not survive after the script exits, so the agent must restart Vite in a background Shell session (see next step). For local terminal use outside Cursor, you can restart manually with [`scripts/restart-vite.sh`](scripts/restart-vite.sh). ## 1b. Restart dev server (required in Cursor) After the update script finishes, restart Vite from `app/` using a **background Shell command** (`block_until_ms: 0`): ```bash PID=$(lsof -ti :5173 -sTCP:LISTEN 2>/dev/null); if [ -n "$PID" ]; then kill "$PID"; fi; rm -rf "node_modules/.vite"; npx vite --force --host localhost --port 5173 ``` Poll until the server is ready: ```bash curl -sf -o /dev/null --max-time 5 http://localhost:5173/ ``` Or watch the background terminal log for `ready in`. Do not continue until `curl` succeeds. ## 2. Review changelog & migrate FigUI3 does not ship a separate CHANGELOG file. Derive changes from the version jump: 1. Note `previousVersion` and `newVersion` from the script output (or `npm list @rogieking/figui3 @rogieking/toolkit --depth=0` in `app/`). 2. Read [`references/repo-integrations.md`](references/repo-integrations.md) for where this app uses FigUI3 and ToolKit. 3. Inspect the installed package docs: - `app/node_modules/@rogieking/figui3/README.md` — component APIs, attributes, events - `app/node_modules/@rogieking/figui3/fig-lab.js` / `fig-lab.css` — lab/chat/canvas components - `app/node_modules/@rogieking/figui3/fig-editor.js` — editor/fill-picker components - `app/node_modules/@rogieking/toolkit/README.md` and `.cursor/skills/toolkit/` — `toolkit-*` controls 4. Search for newly relevant symbols: ```bash rg -n "toolkit-|fig-attachment|fig-ai-prompt|fig-input-gradient|fig-chat" \ app/node_modules/@rogieking/figui3/README.md \ app/node_modules/@rogieking/figui3/fig-lab.js \ app/node_modules/@rogieking/toolkit/README.md \ app/node_modules/@rogieking/toolkit/skills/toolkit ``` 5. Cross-check `app/src` for places still using raw FigUI3 primitives where a newer propskit or attachment wrapper exists. 6. Apply the smallest correct diff. Prefer upgrading in place over adding parallel patterns. ### Migration priorities (this repo) | Area | Preferred FigUI3 surface | Primary files | |------|--------------------------|---------------| | Properties panel scalars | `toolkit-number`, `toolkit-text`, `toolkit-slider`, `toolkit-switch`, `toolkit-select`, `toolkit-color` | `app/src/components/Controls.jsx` | | Properties panel gradients | `toolkit-gradient` with `edit="picker"` | `app/src/components/Controls.jsx` | | Composition fill | `toolkit-fill` + `fig-fill-picker` `mode-shader` slot | `app/src/components/CompositionEditor.jsx` | | Chat composer attachments | `fig-attachments` + `fig-attachment` inside `fig-ai-prompt` | `app/src/components/ChatPane.jsx`, `app/src/chat.css` | | Canvas/on-canvas controls | `fig-canvas-control` | `app/src/components/CanvasControlsOverlay.jsx`, `app/lib/canvasControls.js` | | Account/settings fields | `fig-field`, `toolkit-*`, `fig-input-text` | `app/src/components/AccountMenu.jsx` | Follow existing React + FigUI3 conventions: - Use `dangerouslySetInnerHTML={opaqueContent}` (or `{ __html: "" }`) on custom elements whose light DOM React must not reconcile away. - Bind FigUI3 `input` / `change` via `addEventListener` in `useEffect`, not React `onInput`, when the component rewrites its internals. - For ToolKit sliders, avoid rewriting `value` from React while dragging; mirror `ToolkitSliderControl` in `Controls.jsx`. See [`references/migration-notes.md`](references/migration-notes.md) for patterns discovered during prior upgrades. ## 3. Verify In `app/`: ```bash npm test npm run build ``` Confirm `curl -sf http://localhost:5173/` succeeds and the dev server log shows `ready in` without FigUI3 registration errors. ## 4. Report back Tell the user: - previous and new figui3 versions - previous and new ToolKit revisions - whether any app code changed (list files) - anything noted in README/API that was **not** adopted yet - test/build result Only commit or publish if the user asks.
View on GitHub