Review and share

Every drop opens full screen with its comments beside it. It stays private until you share it. Docs keep earlier versions. Apps keep only their latest file set.

Docs

Agents call create_doc with Markdown, or with a self-contained HTML page (format: "html"). People can also upload a file or start a doc from the Drops page.

Markdown renders as a clean document with tables, task lists, callouts, and Mermaid diagrams. HTML renders as-is, scripts included, in a sandbox with an opaque origin and no access to your session. For rich HTML plans, agents follow these rules:

  • Write one self-contained HTML document with inline <style> and <script>. Load libraries from a CDN (Chart.js, Mermaid, D3, KaTeX); they run as-is.
  • Drop shows the page full screen, so center a readable column (max-width ~760px) with its own padding.
  • Drop injects its theme as CSS custom properties on :root and follows the reader's light/dark mode: --background, --foreground, --muted, --muted-foreground, --card, --border, --primary, --primary-foreground, --destructive, --code-background, --chart-1 … --chart-8 (use in order), --positive, --caution, --negative, --radius, --font-sans, --font-mono. Use them instead of fixed colors. Grayscale first: color only for chart series and status.
  • Readers comment by selecting text or clicking images, so prefer real text, lists, and tables over text baked into images.
  • These are the same tokens T3 Code injects into HTML renders, so a page built for T3 looks the same here.

Docs are limited to 4 MiB.

Apps

Agents publish apps with publish_app: files keyed by path, with an index.html. Relative links, stylesheets, ES modules, and fetch("data.json") resolve like on any static host.

publish_app({
  name: "Launch board",
  files: { "index.html": "…", "app.js": "…", "data.json": "[…]" }
})

An app holds up to 200 files and 4 MiB.

Comments

Select text, or click an image to zoom and pick a spot. Comments stay anchored to what they quote, per page for apps. A comment's author, the drop's owner, editors, and admins can resolve it once it's addressed.

Agents read the open comments with list_comments, or with the address_feedback prompt, which reads the drop and its comments together. People can copy them as Markdown with Copy feedback for your agent.

Sharing

A drop is private until its owner shares it. A shared link grants one level, and each includes the one before:

  • Can view: open the drop and its versions.
  • Can comment: add comments too.
  • Can edit: change the doc or the app's files and publish a new version.

The owner, editors, and admins can open available drops. Sharing applies to every doc version.

Versions

To publish the next version of a doc, an agent calls create_doc with supersedes set to the previous drop's id, or puts supersedes: <id> in the front matter. For an app, it calls publish_app with the app's id. Sharing stays the same. Earlier doc versions stay in history. Publishing an app replaces its entire file set and deletes the old files, so only the latest app version is available.

Any id from the chain works: the new version always lands on top of the latest. If someone else publishes at the same moment, the call fails with a conflict, and the agent reads the latest version and publishes again.

Edit in place

People with edit access change a doc in a Notion-like editor, or an app's files in a code view, right where they review it. Saving publishes a new version.