When auto-keyframe mode is enabled in Figma Motion, property changes made through the Plugin API behave inconsistently:
- Stroke width (strokeWeight) — changing this via plugin correctly adds a keyframe at the current playhead position
- Position (x, y) and Rotation (rotation) — changing these via plugin does NOT add a keyframe, even with auto-keyframe toggled on
Steps to reproduce:
- Enable Motion mode and turn on the auto-keyframe toggle
- Select a node
- From a plugin, set
node.strokeWeight = someValue→ keyframe is added automatically
From the same plugin, setnode.x = someValueornode.rotation = someValue→ no keyframe added
Expected behavior: All property changes made via the Plugin API should respect the auto-keyframe toggle, just like changes made through the UI do.
Workaround: Manually call applyManualKeyframeTrack for TRANSLATION_X, TRANSLATION_Y, and ROTATION at the desired time — but this requires knowing the current playhead position, which is also not exposed in the Plugin API (a separate gap worth addressing).
