Canvas

Canvas is a workspace panel that opens beside your PebbleChat conversation, where you and Pebble co-author real artefacts together: Microsoft Word documents, text and Markdown documents, code files, and interactive apps. Ask Pebble to draft something and it appears in the Canvas while a Pebble is writing… indicator streams the content in. Everything is saved automatically, edits sync live between you and Pebble, and your canvases are restored whenever you reopen the chat.

Opening a canvas

There are several ways into a canvas:

RouteWhat happens
Ask PebbleSay something like “draft a short project brief as a Word document” — Pebble creates the canvas and the panel opens automatically
The Canvas buttonThe circular button at the top-right of the chat area (tooltip Open Canvas) toggles the panel. When closed, it shows a badge with the number of canvases in the chat (capped at 9)
Open response in CanvasEvery assistant response has an Open response in Canvas action in its message action row — it turns that response into a Text/Markdown canvas, titled from the response’s first heading or first line
Create manuallyWith the panel open and empty, pick from the Create a new: list — MS Word Document, Text or Markdown Document, Code file, or App
Upload or drag and dropClick Upload a .docx, or drag a file onto the panel — .doc/.docx files open as a Word canvas, .md/.markdown/.txt files open as a Text/Markdown canvas

The Canvas empty state

Drag-and-drop accepts Word, text, and Markdown files up to 25 MB. Dropping a file onto a canvas that’s already open shows a Drop to add another canvas tab overlay — the file becomes a new tab rather than replacing what’s there.

The composer Canvas toggle

A separate Canvas toggle sits in the message composer. It controls whether Pebble is allowed to create canvases:

  • Canvas on — the assistant can create canvases when it makes sense
  • Canvas off — Pebble answers normally in the chat instead of creating a canvas

The toggle defaults to on and your preference is remembered in the browser. Turn it off when you want a plain conversational answer rather than a document.

If you don’t see any Canvas controls at all — no panel button, no composer toggle — your role doesn’t have the Use Canvas permission. Ask your organisation admin.

The four surfaces

Each canvas is one of four surface types, chosen when it’s created:

SurfaceCreate buttonWhat it is
WordMS Word DocumentA paged, WYSIWYG Word editor. Import and export real .docx files
Text / MarkdownText or Markdown DocumentA rich document editor for Markdown and plain text — the surface most Pebble drafts land on
CodeCode fileA collaborative code editor with syntax highlighting and a Run button for Python and JavaScript
AppAppA rendered interactive app — dashboards, forms, tables — that Pebble generates for you

A fifth surface, LiveApp, is available too. LiveApps are governed, sandboxed mini-apps that open in the same Canvas pane, but you launch them from the catalogue, shortcuts, the @ menu, or by asking Pebble — not from the Canvas create list. See LiveApps for the full picture.

Word canvases

Word canvases use a paged, WYSIWYG Word editor. Beyond creating one from scratch or dropping a .docx onto the panel, you can pull a Word file into an existing canvas with the Import DOCX header button, and download a copy with Export DOCX.

Code canvases

A Code canvas is a collaborative code file with a language picker offering Plain text, JavaScript, TypeScript, Python, JSON, and Markdown. The language is inferred from the canvas title’s file extension (.py, .ts, .js, .json, .md and friends) and drives the syntax highlighting.

The Run button executes the current code in a secure sandbox — the tooltip reads Run in sandbox. Only Python and JavaScript are runnable; for other languages the button is disabled with the tooltip Run is available for Python and JavaScript.

Output appears in an Output panel below the editor:

  • An exit-code chip — exit 0 in green for success, red otherwise
  • The run duration in milliseconds
  • stdout, with stderr shown in red, or (no output) if there’s neither
  • A Clear button to reset the panel

A Code canvas after a run — Output panel with the exit 0 chip

App canvases

The App surface renders a small interactive app — a dashboard, form, or table — that Pebble builds for you. It’s render-only: you don’t edit the app directly, you ask Pebble to change it. A fresh App canvas shows This app is empty. Ask Pebble to build it. If an app can’t be rendered you’ll see a notice, and your chat carries on unaffected.

Working together with Pebble

Canvas is genuinely collaborative between you and Pebble:

  • Pebble streams in. While the agent writes, a Pebble is writing… pill with a spinner sits at the top-right of the canvas. You can watch the draft take shape.
  • Refine in conversation. Keep talking in the chat — “make the tone more formal”, “add a risks section” — and Pebble edits the canvas in place. Your edits and Pebble’s edits flow into the same live document.
  • Everything autosaves. There is no save step for the content itself. Edits persist across reloads, and a chat’s canvases are restored when you reopen the chat.
  • Tabs for multiple canvases. Each canvas in a chat is a tab in a strip under the header. Click to switch; the x on a tab closes it (the canvas itself is kept — reload the chat to bring it back); right-click a tab for Rename.
  • Resize the panel. Drag the panel edge to resize it; double-click the edge to reset the width.

Pop-out windows

Any canvas can be popped out into its own real OS window — ideal for a second monitor. Click the Open canvas in new window button in the canvas header and the canvas opens in a resizable window while the side panel collapses.

If you reopen the panel while a canvas is popped out, you’ll see a placeholder telling you the canvas is open in its own window, with two buttons:

  • Focus window — brings the pop-out window to the front
  • Return to panel — closes the window and docks the canvas back in the panel

Closing the pop-out window yourself also returns the canvas to the panel automatically. Edits stay in sync between the window and the main app the whole time, and the popped-out state even survives a full page reload.

Saving, exporting, and where files go

The canvas header gives you the file operations:

ButtonWhat it does
Save to Pebble filesSaves the canvas as a .docx into your personal file store, in a /Canvas folder visible on the Files page in the PebbleChat sidebar. Duplicate names get a numeric suffix
Export DOCXDownloads the canvas to your machine as a .docx named after the canvas title
Import DOCXPulls a Word file from your machine into the current canvas

Remember that canvases also persist with the chat regardless — Save to Pebble files is for when you want a durable copy in your file store, outside the conversation.

Saving and exporting both convert the canvas content to a straightforward paragraph-based .docx — the first line becomes a Heading 1. Rich Word formatting is not preserved in the generated file.

For admins

Canvas access is controlled at two levels — organisation-wide surface toggles and role permissions:

  • Surface toggles: Admin → Organisation → Settings → Configuration → Chat Settings tab → Canvas surfaces section. Five switches — Word document, Text & Markdown, Code, Chat App, and LiveApp — all on by default. Turning one off hides that surface for everyone in the organisation and blocks creating or opening it (enforced server-side). Save with Save Canvas Surfaces. Platform admins set the platform-wide default under Admin → Platform → Settings → Canvas Surfaces.
  • Role permissions: in the Roles tab, the pebblechat category includes Use Canvas as the overall gate, plus per-surface permissions — Canvas: Word documents, Canvas: Markdown documents, Canvas: Code, Canvas: Apps, and Launch Live Apps. A user needs Use Canvas and the surface permission, so a role can allow Word and Markdown but not Code. These are default-on for create-capable roles. Users without Use Canvas see no Canvas UI at all.

See Admin → Configuration for the Chat Settings tab and the Roles tab for role editing.

The Canvas surfaces admin section

Limits and caveats

  • Run supports Python and JavaScript only. Other languages get highlighting and collaboration, but the Run button is disabled.
  • Drag-and-drop accepts Word, text, and Markdown files up to 25 MB. Other file types are rejected with an error.
  • Collaboration is you and Pebble. Canvases are scoped to your chat, and edits sync across your own windows and sessions — but chats are personal, so this isn’t a multi-user co-editing surface.
  • Disabled surfaces stay disabled. If your organisation has switched a surface off, dropping a matching file shows a message such as Word Canvas is disabled — the restriction is enforced on the server, not just hidden in the menu.
  • Opening existing files from the Files page into Canvas isn’t live yet — the menu item is marked coming soon. Use drag-and-drop or Import DOCX instead.
  • LiveApps — governed interactive mini-apps that open in the Canvas pane
  • Shortcuts — pin a LiveApp or prompt as a one-click tile
  • User File Store — where Save to Pebble files puts your .docx copies
  • Admin → Configuration — the Chat Settings tab (Canvas surfaces) and Roles tab (Canvas permissions)
  • Messages — the message action row, home of Open response in Canvas