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, setÂnode.x = someValue orÂnode.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).
