# Enhance documentation Release: dad2e0623acc56ece15d04a4baaff3f1e1f36c2114941c9e110479ef18927c25 - [Getting started](https://enhance3.karunalabs.ai/docs/getting-started.md) — Connect Enhance, finish browser sign-in, and make the first useful change on a populated canvas. - [Build products in the open](https://enhance3.karunalabs.ai/docs/index.md) — A shared visual workspace where people and agents design, review, and publish the same product artifact. - [CLI reference](https://enhance3.karunalabs.ai/docs/reference/cli.md) — The optional command-line surface generated from the released Enhance runtime. - [MCP capability reference](https://enhance3.karunalabs.ai/docs/reference/mcp.md) — The live, generated contract behind Enhance agent workflows. - [canvas.apply](https://enhance3.karunalabs.ai/docs/reference/mcp/canvas-apply.md) — Atomically apply bounded canvas edits and report their exact affected state. - [canvas.create](https://enhance3.karunalabs.ai/docs/reference/mcp/canvas-create.md) — Create a canvas and return the id required by canvas-scoped commands. - [canvas.createEditableFrame](https://enhance3.karunalabs.ai/docs/reference/mcp/canvas-createeditableframe.md) — Insert one validated primitive subtree beside its source screen as an atomic canvas edit. - [canvas.delete](https://enhance3.karunalabs.ai/docs/reference/mcp/canvas-delete.md) — Move a canvas to its recoverable bin; retention is currently indefinite. - [canvas.deletePermanently](https://enhance3.karunalabs.ai/docs/reference/mcp/canvas-deletepermanently.md) — Permanently delete a canvas already in the recoverable bin. - [canvas.document.get](https://enhance3.karunalabs.ai/docs/reference/mcp/canvas-document-get.md) — Read a canvas document, version, and attached screen manifest. - [canvas.document.save](https://enhance3.karunalabs.ai/docs/reference/mcp/canvas-document-save.md) — Replace a canvas document. A stale base version exits 5 as CONFLICT; read, merge, and retry. - [canvas.duplicate](https://enhance3.karunalabs.ai/docs/reference/mcp/canvas-duplicate.md) — Copy a canvas and its document into the selected shelf. - [canvas.get](https://enhance3.karunalabs.ai/docs/reference/mcp/canvas-get.md) — Read one canvas by id, including access and viewer capabilities. - [canvas.inspect](https://enhance3.karunalabs.ai/docs/reference/mcp/canvas-inspect.md) — Read the canonical browser URL for a canvas, its exact document version, kind counts, bounds, and next inspection commands. - [canvas.invites.accept](https://enhance3.karunalabs.ai/docs/reference/mcp/canvas-invites-accept.md) — Accept a canvas invitation using its secret token. - [canvas.invites.create](https://enhance3.karunalabs.ai/docs/reference/mcp/canvas-invites-create.md) — Invite an email address to access a canvas and return the pending invitation. - [canvas.invites.list](https://enhance3.karunalabs.ai/docs/reference/mcp/canvas-invites-list.md) — List pending and expired invitations for a canvas. - [canvas.invites.preview](https://enhance3.karunalabs.ai/docs/reference/mcp/canvas-invites-preview.md) — Inspect what an invitation grants before accepting it. - [canvas.invites.resend](https://enhance3.karunalabs.ai/docs/reference/mcp/canvas-invites-resend.md) — Replace a pending canvas invitation token and send the invitation again. - [canvas.invites.revoke](https://enhance3.karunalabs.ai/docs/reference/mcp/canvas-invites-revoke.md) — Revoke a pending canvas invitation. - [canvas.list](https://enhance3.karunalabs.ai/docs/reference/mcp/canvas-list.md) — Find canvas ids by collection, title, access, review state, or deletion state. - [canvas.markViewed](https://enhance3.karunalabs.ai/docs/reference/mcp/canvas-markviewed.md) — Record that the authenticated person has viewed a canvas. - [canvas.move](https://enhance3.karunalabs.ai/docs/reference/mcp/canvas-move.md) — Move a canvas between the personal shelf and a team shelf. - [canvas.node](https://enhance3.karunalabs.ai/docs/reference/mcp/canvas-node.md) — Read one stable node with its exact styles, props, children, and current version. - [canvas.participants.list](https://enhance3.karunalabs.ai/docs/reference/mcp/canvas-participants-list.md) — List people with direct access to a canvas. - [canvas.participants.revoke](https://enhance3.karunalabs.ai/docs/reference/mcp/canvas-participants-revoke.md) — Remove a participant’s direct access to a canvas. - [canvas.participants.setAccess](https://enhance3.karunalabs.ai/docs/reference/mcp/canvas-participants-setaccess.md) — Change a canvas participant between view and comment access. - [canvas.realtime.activity.begin](https://enhance3.karunalabs.ai/docs/reference/mcp/canvas-realtime-activity-begin.md) — Show that this agent has started work on a canvas. - [canvas.realtime.activity.end](https://enhance3.karunalabs.ai/docs/reference/mcp/canvas-realtime-activity-end.md) — Remove an agent-work indicator after work completes. - [canvas.realtime.activity.renew](https://enhance3.karunalabs.ai/docs/reference/mcp/canvas-realtime-activity-renew.md) — Renew an active agent-work indicator before its lease expires. - [canvas.rename](https://enhance3.karunalabs.ai/docs/reference/mcp/canvas-rename.md) — Rename a canvas owned by the authenticated person. - [canvas.render](https://enhance3.karunalabs.ai/docs/reference/mcp/canvas-render.md) — Render production-faithful canvas pixels into a protected PNG artifact. - [canvas.render.cancelImport](https://enhance3.karunalabs.ai/docs/reference/mcp/canvas-render-cancelimport.md) — Cancel a queued primitive import before compilation begins. - [canvas.render.getImport](https://enhance3.karunalabs.ai/docs/reference/mcp/canvas-render-getimport.md) — Inspect the progress or committed result of a primitive import. - [canvas.render.importSource](https://enhance3.karunalabs.ai/docs/reference/mcp/canvas-render-importsource.md) — Import one source through the canonical editable-primitives compiler. - [canvas.restore](https://enhance3.karunalabs.ai/docs/reference/mcp/canvas-restore.md) — Restore a canvas from the recoverable bin. - [canvas.selection](https://enhance3.karunalabs.ai/docs/reference/mcp/canvas-selection.md) — Read the accountable person’s most recently changed live browser selection at an exact canvas version. - [canvas.setAccess](https://enhance3.karunalabs.ai/docs/reference/mcp/canvas-setaccess.md) — Change how a canvas can be reached by people with its link. - [canvas.setReviewState](https://enhance3.karunalabs.ai/docs/reference/mcp/canvas-setreviewstate.md) — Change the authenticated person’s review state on a canvas. - [canvas.tree](https://enhance3.karunalabs.ai/docs/reference/mcp/canvas-tree.md) — List stable node ids, hierarchy, kinds, and world-space boxes for one canvas. - [canvas.version.get](https://enhance3.karunalabs.ai/docs/reference/mcp/canvas-version-get.md) — Read the document and screen manifest retained for one canvas version. - [canvas.version.list](https://enhance3.karunalabs.ai/docs/reference/mcp/canvas-version-list.md) — List retained versions of a canvas, newest first. - [canvas.version.name](https://enhance3.karunalabs.ai/docs/reference/mcp/canvas-version-name.md) — Name the current or a retained canvas version so it is kept. - [canvas.version.removeName](https://enhance3.karunalabs.ai/docs/reference/mcp/canvas-version-removename.md) — Remove a canvas version’s name and return it to automatic retention. - [canvas.version.updateMetadata](https://enhance3.karunalabs.ai/docs/reference/mcp/canvas-version-updatemetadata.md) — Replace the title and description of a named canvas version. - [canvas.writeHtml](https://enhance3.karunalabs.ai/docs/reference/mcp/canvas-writehtml.md) — Compile safe HTML and CSS into editable canvas nodes, then render the result. - [comment.attention](https://enhance3.karunalabs.ai/docs/reference/mcp/comment-attention.md) — List every open canvas comment that may need attention. - [comment.delete](https://enhance3.karunalabs.ai/docs/reference/mcp/comment-delete.md) — Delete an entire comment thread, or tombstone one message when its id is set. - [comment.edit](https://enhance3.karunalabs.ai/docs/reference/mcp/comment-edit.md) — Replace the body of a comment message authored by this person. - [comment.list](https://enhance3.karunalabs.ai/docs/reference/mcp/comment-list.md) — List comment threads and replies on a canvas. - [comment.move](https://enhance3.karunalabs.ai/docs/reference/mcp/comment-move.md) — Move a comment thread anchor to a new canvas location. - [comment.react](https://enhance3.karunalabs.ai/docs/reference/mcp/comment-react.md) — Set or remove one emoji reaction on a comment message. - [comment.reply](https://enhance3.karunalabs.ai/docs/reference/mcp/comment-reply.md) — Add a reply to an existing comment thread. - [comment.resolve](https://enhance3.karunalabs.ai/docs/reference/mcp/comment-resolve.md) — Set a thread resolved or reopened with an explicit target state. - [comment.start](https://enhance3.karunalabs.ai/docs/reference/mcp/comment-start.md) — Start a comment thread anchored to a canvas location. - [organisation.create](https://enhance3.karunalabs.ai/docs/reference/mcp/organisation-create.md) — Create a team and make the authenticated person its owner. - [organisation.delete](https://enhance3.karunalabs.ai/docs/reference/mcp/organisation-delete.md) — Delete a team and rehome every canvas to its creator’s personal shelf. - [organisation.invites.accept](https://enhance3.karunalabs.ai/docs/reference/mcp/organisation-invites-accept.md) — Accept a team invitation using its secret token. - [organisation.invites.create](https://enhance3.karunalabs.ai/docs/reference/mcp/organisation-invites-create.md) — Invite an email address to join a team with the selected role. - [organisation.invites.list](https://enhance3.karunalabs.ai/docs/reference/mcp/organisation-invites-list.md) — List pending and expired invitations for a team. - [organisation.invites.preview](https://enhance3.karunalabs.ai/docs/reference/mcp/organisation-invites-preview.md) — Inspect a team invitation before accepting it. - [organisation.invites.resend](https://enhance3.karunalabs.ai/docs/reference/mcp/organisation-invites-resend.md) — Replace a team invitation token and send it again. - [organisation.invites.revoke](https://enhance3.karunalabs.ai/docs/reference/mcp/organisation-invites-revoke.md) — Revoke a pending team invitation. - [organisation.list](https://enhance3.karunalabs.ai/docs/reference/mcp/organisation-list.md) — List teams the authenticated person belongs to. - [organisation.people.add](https://enhance3.karunalabs.ai/docs/reference/mcp/organisation-people-add.md) — Add an existing account by email; use organisation invites create when no account exists. - [organisation.people.list](https://enhance3.karunalabs.ai/docs/reference/mcp/organisation-people-list.md) — List the people and roles in a team. - [organisation.people.remove](https://enhance3.karunalabs.ai/docs/reference/mcp/organisation-people-remove.md) — Remove a person from a team without deleting their account. - [organisation.people.setRole](https://enhance3.karunalabs.ai/docs/reference/mcp/organisation-people-setrole.md) — Change a team member between administrator and member. - [organisation.people.transferOwnership](https://enhance3.karunalabs.ai/docs/reference/mcp/organisation-people-transferownership.md) — Transfer team ownership to another current member. - [organisation.update](https://enhance3.karunalabs.ai/docs/reference/mcp/organisation-update.md) — Rename a team managed by the authenticated person. - [person.me](https://enhance3.karunalabs.ai/docs/reference/mcp/person-me.md) — Resolve the current person and authentication kind. - [person.recipients.recent](https://enhance3.karunalabs.ai/docs/reference/mcp/person-recipients-recent.md) — List people recently selected as sharing recipients. - [person.recipients.search](https://enhance3.karunalabs.ai/docs/reference/mcp/person-recipients-search.md) — Find people who can be invited by matching a name or email. - [person.updateDisplayName](https://enhance3.karunalabs.ai/docs/reference/mcp/person-updatedisplayname.md) — Change the name shown for the current person throughout Enhance. - [prototype.publish](https://enhance3.karunalabs.ai/docs/reference/mcp/prototype-publish.md) — Package, upload, ingest, and attach a static prototype directory. - [recording.appendAudioChunk](https://enhance3.karunalabs.ai/docs/reference/mcp/recording-appendaudiochunk.md) — Commit metadata for the uploaded audio chunk at this index, then reserve the next upload. - [recording.appendChunk](https://enhance3.karunalabs.ai/docs/reference/mcp/recording-appendchunk.md) — Commit metadata for the uploaded DOM chunk at this index, then reserve the next upload. - [recording.complete](https://enhance3.karunalabs.ai/docs/reference/mcp/recording-complete.md) — Finish a recording and report any missing event or audio chunks. - [recording.confirmUpload](https://enhance3.karunalabs.ai/docs/reference/mcp/recording-confirmupload.md) — Confirm that a repaired recording chunk reached storage. - [recording.delete](https://enhance3.karunalabs.ai/docs/reference/mcp/recording-delete.md) — Soft-delete a completed recording while preserving screens and clearing their provenance. - [recording.discard](https://enhance3.karunalabs.ai/docs/reference/mcp/recording-discard.md) — Abandon an incomplete recording attempt and its uploaded chunks. - [recording.get](https://enhance3.karunalabs.ai/docs/reference/mcp/recording-get.md) — Read one recording and its replay metadata by id. - [recording.list](https://enhance3.karunalabs.ai/docs/reference/mcp/recording-list.md) — List recordings attached to one canvas. - [recording.refreshUpload](https://enhance3.karunalabs.ai/docs/reference/mcp/recording-refreshupload.md) — Replace an expired signed upload for a recording chunk. - [recording.snapshot](https://enhance3.karunalabs.ai/docs/reference/mcp/recording-snapshot.md) — Persist one visually accepted recording moment as an editable canvas screen. - [recording.start](https://enhance3.karunalabs.ai/docs/reference/mcp/recording-start.md) — Start a recording attempt and receive its first signed chunk upload. - [recordingAsset.confirm](https://enhance3.karunalabs.ai/docs/reference/mcp/recordingasset-confirm.md) — Confirm which reserved recording assets reached storage. - [recordingAsset.reserve](https://enhance3.karunalabs.ai/docs/reference/mcp/recordingasset-reserve.md) — Reserve signed uploads for external assets used by a recording. - [screen.complete](https://enhance3.karunalabs.ai/docs/reference/mcp/screen-complete.md) — Confirm a captured page after its bytes have been uploaded. - [screen.create](https://enhance3.karunalabs.ai/docs/reference/mcp/screen-create.md) — Reserve a signed upload for a captured page and return its screen id. - [screen.delete](https://enhance3.karunalabs.ai/docs/reference/mcp/screen-delete.md) — Delete an unattached captured page owned by this person. - [transcript.read](https://enhance3.karunalabs.ai/docs/reference/mcp/transcript-read.md) — Read timestamped speech cues for visually verified recording selection. - [transcript.retry](https://enhance3.karunalabs.ai/docs/reference/mcp/transcript-retry.md) — Retry a failed transcription for one recording. - [ChatGPT remote](https://enhance3.karunalabs.ai/docs/setup/chatgpt.md) — Connect ChatGPT to Enhance's remote MCP service and understand which workflows need the local plugin. - [Claude Code](https://enhance3.karunalabs.ai/docs/setup/claude-code.md) — Install Enhance from Claude Code's plugin surface, authenticate in the browser, and verify the local MCP connection. - [Codex](https://enhance3.karunalabs.ai/docs/setup/codex.md) — Install Enhance in Codex, complete browser sign-in, and start from a populated example canvas. - [Conductor](https://enhance3.karunalabs.ai/docs/setup/conductor.md) — Use Enhance in Conductor through the Claude Code or Codex agent selected for the workspace. - [Cursor](https://enhance3.karunalabs.ai/docs/setup/cursor.md) — Install the portable Enhance Agent Plugin in Cursor and verify the complete local design workflow. - [MCP-only fallback](https://enhance3.karunalabs.ai/docs/setup/mcp-only.md) — Connect Enhance through a host's native Add MCP surface when the complete plugin is unavailable. - [Support and recovery](https://enhance3.karunalabs.ai/docs/support.md) — Recover authentication, plugin state, publication, and compatibility failures without exposing credentials or retrying blindly. - [Terms](https://enhance3.karunalabs.ai/docs/terms.md) — The plain-language terms route used by Enhance agent plugin listings during closed alpha. - [Apply a canvas design](https://enhance3.karunalabs.ai/docs/workflows/apply-canvas-design.md) — Implement an approved canvas screen in its owning source, republish it, and compare the result with the design. - [Design on canvas](https://enhance3.karunalabs.ai/docs/workflows/design-on-canvas.md) — Turn a brief or existing product context into an editable, visually verified screen on Enhance. - [Publish a prototype](https://enhance3.karunalabs.ai/docs/workflows/publish-prototype.md) — Publish the local build you selected, exercise the result, and inspect complete desktop and mobile renders. - [Respond to feedback](https://enhance3.karunalabs.ai/docs/workflows/respond-to-feedback.md) — Action clear canvas comments, preserve ambiguity, and verify the underlying design or source change before resolving anything.