[BUG] Design canvas: artboard PLAY button does nothing, and links between artboards don't navigate

Status Open
Reported on v2.1.282
Maintainer reply None cached
Activity 0 comments · opened Sep 25, 2026

Preflight Checklist

  • [x] I have searched existing issues and this hasn't been reported yet
  • [x] This is a single bug report
  • [x] I am using the latest version of Claude Code

What's Wrong?

On a design canvas (an artifact made from the Design type, as the /design skill creates), the PLAY button on an artboard's name strip does nothing, even when the artboard has "is_interactive": true. Clicking it doesn't enter the click-through prototype mode, and nothing appears in the page's console.

A related symptom: when the canvas opens straight into focused mode ("launch": {"view": "focused", "file": "Main.dc.html"}), the artboard renders, but clicking an <a href="Other.dc.html"> link inside it doesn't move to the other artboard, as format.md says it should.

It isn't caused by the content. It reproduces with the minimal artboard below, which is the skeleton from the type's own SKILL.md plus one link.

What Should Happen?

PLAY should open the artboard as a click-through prototype, and a link to another .dc.html should move Play to that artboard.

Error Messages/Logs

None. Nothing is logged to the console when PLAY is clicked.

Steps to Reproduce

  1. Create a canvas from the Design artifact type (for example with /design).
  2. Publish two artboards, both marked "is_interactive": true in project/canvas.json:

project/Main.dc.html:
``html
<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>Minimal</title>
<script src="./support.js"></script>
</head>
<body>
<x-dc>
<helmet>
<style>
body{margin:0;font-family:system-ui,sans-serif;background:#faf9f5}
</style>
</helmet>
<div style="width: 880px; height: 560px; box-sizing: border-box; padding: 64px; display: flex; flex-direction: column; gap: 24px">
<h1 style="margin: 0; font-size: 48px">Minimal board</h1>
<a href="Second.dc.html" style="font-size: 20px">Go to second</a>
</div>
</x-dc>
<script type="text/x-dc" data-dc-script data-props='{"$preview":{"width":880,"height":560}}'>
class Component extends DCLogic {
renderVals() {
return {};
}
}
</script>
</body>
</html>
``

project/Second.dc.html can be any second artboard.

project/canvas.json:
``json
{"v":3,"title":"Play test","launch":{"view":"canvas"},"pages":[],
"boards":{"Main.dc.html":{"x":0,"y":0,"w":880,"h":560,"is_interactive":true},
"Second.dc.html":{"x":960,"y":0,"w":880,"h":560,"is_interactive":true}},
"order":["Main.dc.html","Second.dc.html"],"notes":{},"designSystems":[]}
``

  1. Open the canvas in Chrome on macOS. Both artboards render.
  2. Click PLAY on either artboard's name strip. Nothing happens. Selecting the artboard first makes no difference.
  3. Change launch to {"view":"focused","file":"Main.dc.html"} and reload. The artboard opens focused, but clicking "Go to second" does nothing.

This was seen on two separate canvases, one of which held only the minimal artboard above.

Claude Model

Opus

Is this a regression?

I don't know

Last Working Version

_No response_

Claude Code Version

2.1.282 (Claude Code)

Platform

Anthropic API

Operating System

macOS

Terminal/Shell

Other

Additional Information

  • Browser: Chrome on macOS
  • Design type release: 1790348005-58ea, artifact contract 0.2.47 (the publish result reports 0.2.59 as newest)
  • Everything else on the canvas works: the artboards render, and the Tweaks panel (enum data-props) applies.

View original on GitHub ↗