Look at a Napkin interface
napkin_interfaces_viewSee what an interface LOOKS like and DOES right now: the page RUNS from its current files under the same rules as the live page (no web fonts, no remote pictures), and you get a picture plus anything that went wrong (script errors, failed promises, blocked requests, console errors). Use it after every write and before saying an interface is finished: reading the code tells you what you wrote, not what it renders. size: "phone" looks at it 390px wide — use it for anything meant for a phone, like a mobile app mockup. steps drive the page before and between pictures, so you can check every screen and that buttons work: {click: "Plan"} (by visible text or label, or a CSS selector like "#nav-plan"), {type: {into: "textarea", text: "hi"}}, {press: "Enter"}, {wait: 500}, and {shot: "Plan screen"} for a picture. With no steps you get one picture of the first screen. Check each tab of an app in ONE call: shot, click a tab, shot, click the next, shot. Flows don't run here: a flow call gets a placeholder reply, so you can see the chat send and answer without spending anything; tables and metrics read empty. Look for text that's too small or runs together, stray system fonts, emoji standing in for icons, and anything that doesn't look like the brand.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| size | No | The window to look through. Default desktop (1280 wide); phone is 390 wide. | |
| steps | No | Done in order, with a picture at each `shot` (at most 6). Default: one shot of the first screen. | |
| workspace | No | Workspace slug. Personal tokens with no default workspace MUST pass this; tokens with a default can override per call. Ignored for workspace API keys. | |
| interfaceId | Yes |