n8n Vue Flow canvas renders blank (viewport transform stuck at "none") when driven via Claude in Chrome

Status Open
Maintainer reply None cached
Activity 0 comments · opened Sep 5, 2026

Summary

When n8n's workflow editor (a Vue Flow canvas) is opened and controlled via the Claude in Chrome extension, the canvas renders completely blank in screenshots — no node boxes are visible, even though the underlying DOM contains all nodes correctly and the rest of the page (sidebar, toolbar, buttons) renders fine.

Environment

  • n8n Cloud instance (app.n8n.cloud)
  • Reproduced on 2 different physical computers, 2 different Chrome installations, each with the Claude in Chrome extension
  • Reproduced on 2 different n8n workflows (12 nodes and 21 nodes)
  • Does NOT occur when the same user opens the same workflows manually in their own Chrome session without automation
  • Does NOT occur in Claude's built-in Browser pane (desktop app), only in Claude in Chrome

Steps to reproduce

  1. Open an n8n Cloud workflow editor URL via Claude in Chrome's navigate tool
  2. Take a screenshot via the computer{action:"screenshot"} tool
  3. The canvas area is blank (only the dotted background grid) — no node boxes visible, despite sidebar/toolbar/header rendering correctly

Root cause (identified via DOM inspection)

  • document.querySelectorAll('[data-test-id="canvas-node"]') returns the correct number of nodes (matches the workflow's actual node count)
  • Each node's getBoundingClientRect() reports large negative X coordinates (e.g. x ≈ -2360px), placing them far outside the visible viewport
  • The Vue Flow viewport/pane element (.vue-flow__viewport / .vue-flow__transformationpane) has getComputedStyle(...).transform === "none" instead of the expected CSS transform matrix that normally positions nodes within the visible canvas

What we tried (did NOT fix it)

  • Resizing the browser window
  • Clicking n8n's "Fit to view" button
  • Manually forcing a CSS transform on the viewport element via JavaScript — this did reposition the node's bounding rect, but the screenshot still rendered blank, suggesting a deeper compositing/paint issue beyond just the missing transform
  • Dispatching a synthetic dblclick MouseEvent on an (off-screen) canvas node element to open its detail view — did not trigger, suggesting n8n/Vue Flow ignores untrusted/synthetic events

Impact

Prevents any visual verification or screenshot-based documentation of n8n workflows when driving the browser through Claude in Chrome. The underlying page state and data are correct — only the visual paint/compositing of the canvas is affected.

View original on GitHub ↗