TurboslideDocumentationNew Presentation

Comments

The actions of the comment group, with their input fields and their names on every transport.

16 actions: 16 on the command line, 16 as MCP tools, 16 as HTTP endpoints and 16 in the page.

comment.add

Comment. Starts a thread at an anchor (the deck, a slide, a block, a text range, a table cell or the notes) with a plain text body whose {@n} tokens name its mentions, optionally assigned; server side.

FieldTypeRequiredDescription
anchorobject | object | object | object | object | objectyesdeck, slide:<id>, <slide>#<block>, <slide>#<block>/<path>:<start>-<end>, <slide>#<block>/cell:<r>,<c> or notes:<slide> on the CLI; the anchor object elsewhere
bodyobjectyes
assigneeobject | objectno
baseRevisionintegernoThe comments revision the caller read; a stale value never refuses (SPEC-3 5.2)
  • Command line: turboslide comment add <anchor> -m <text> --mention <who> --assign <who>
  • MCP tool: deck_add_comment
  • HTTP: POST /api/actions/comment.add
  • Runs on: command line, MCP, HTTP, page.
  • Changes the presentation: yes; send the baseRevision you read.

comment.reply

Reply. Appends a reply to a thread; server side.

FieldTypeRequiredDescription
threadIdstringyes
bodyobjectyes
baseRevisionintegernoThe comments revision after the write, the number comment.list { since } takes
  • Command line: turboslide comment reply <threadId> -m <text> --mention <who>
  • MCP tool: deck_reply_comment
  • HTTP: POST /api/actions/comment.reply
  • Runs on: command line, MCP, HTTP, page.
  • Changes the presentation: yes; send the baseRevision you read.

comment.edit

Edit comment. Rewrites a comment’s body, its author only; 409 with the current thread when the thread moved since expectedUpdatedAt.

FieldTypeRequiredDescription
threadIdstringyes
commentIdstringyes
bodyobjectyes
expectedUpdatedAtstringyesThe thread’s updatedAt the caller read
baseRevisionintegernoThe comments revision after the write, the number comment.list { since } takes
  • Command line: turboslide comment edit <threadId> <commentId> -m <text>
  • MCP tool: deck_edit_comment
  • HTTP: POST /api/actions/comment.edit
  • Runs on: command line, MCP, HTTP, page.
  • Changes the presentation: yes; send the baseRevision you read.

comment.delete

Delete comment. Tombstones a comment, keeping its replies; the first comment’s tombstone keeps the thread; restore brings it back within 30 days.

FieldTypeRequiredDescription
threadIdstringyes
commentIdstringyes
restorebooleannoUndo a deletion within 30 days
baseRevisionintegernoThe comments revision after the write, the number comment.list { since } takes
  • Command line: turboslide comment delete <threadId> <commentId> --restore
  • MCP tool: deck_delete_comment
  • HTTP: POST /api/actions/comment.delete
  • Runs on: command line, MCP, HTTP, page.
  • Changes the presentation: yes; send the baseRevision you read.

comment.resolve

Resolve. Marks a thread resolved; last writer wins.

FieldTypeRequiredDescription
threadIdstringyes
baseRevisionintegernoThe comments revision after the write, the number comment.list { since } takes
  • Command line: turboslide comment resolve <threadId>
  • MCP tool: deck_resolve_comment
  • HTTP: POST /api/actions/comment.resolve
  • Runs on: command line, MCP, HTTP, page.
  • Changes the presentation: yes; send the baseRevision you read.

comment.reopen

Re-open. Reopens a resolved thread; last writer wins.

FieldTypeRequiredDescription
threadIdstringyes
baseRevisionintegernoThe comments revision after the write, the number comment.list { since } takes
  • Command line: turboslide comment reopen <threadId>
  • MCP tool: deck_reopen_comment
  • HTTP: POST /api/actions/comment.reopen
  • Runs on: command line, MCP, HTTP, page.
  • Changes the presentation: yes; send the baseRevision you read.

comment.assign

Assign. Assigns a thread to a principal or an invitation (an agent principal is assignable), or clears the assignment with null; last writer wins.

FieldTypeRequiredDescription
threadIdstringyes
assigneeobject | object | nullyes
baseRevisionintegernoThe comments revision after the write, the number comment.list { since } takes
  • Command line: turboslide comment assign <threadId> <who> --clear
  • MCP tool: deck_assign_comment
  • HTTP: POST /api/actions/comment.assign
  • Runs on: command line, MCP, HTTP, page.
  • Changes the presentation: yes; send the baseRevision you read.

comment.done

Mark as done. The assignee marks the thread done; last writer wins.

FieldTypeRequiredDescription
threadIdstringyes
baseRevisionintegernoThe comments revision after the write, the number comment.list { since } takes
  • Command line: turboslide comment done <threadId>
  • MCP tool: deck_done_comment
  • HTTP: POST /api/actions/comment.done
  • Runs on: command line, MCP, HTTP, page.
  • Changes the presentation: yes; send the baseRevision you read.

comment.react

React. Toggles the caller’s reaction on a comment from the 24 emoji palette; reactions are a set per emoji keyed by principal.

FieldTypeRequiredDescription
threadIdstringyes
commentIdstringyes
emojione of 24 valuesyes
onbooleanyes
baseRevisionintegernoThe comments revision after the write, the number comment.list { since } takes
  • Command line: turboslide comment react <threadId> <commentId> <emoji> --off
  • MCP tool: deck_react_comment
  • HTTP: POST /api/actions/comment.react
  • Runs on: command line, MCP, HTTP, page.
  • Changes the presentation: yes; send the baseRevision you read.

comment.list

Comments. The threads of the deck or a slide with their anchors resolved against the current document, filtered by block, state, assignment to the caller, author, search text or revision; 403 without readComments.

FieldTypeRequiredDescription
slideIdstringno
blockIdstringno
state"open" | "resolved" | "all"noopen unless set
forMebooleannoThreads that mention or are assigned to the caller
authorstringno
searchstringno
includeDeletedbooleannoKeep the tombstones in the answer
sinceintegernoThreads touched after this comments revision
limitintegerno
  • Command line: turboslide comments <slideId> --block <blockId> --state <state> --for-me --author <author> --search <search> --since <since>
  • MCP tool: deck_list_comments
  • HTTP: POST /api/actions/comment.list
  • Runs on: command line, MCP, HTTP, page.
  • Changes the presentation: no.

comment.get

Comment thread. One thread with its anchor resolved against the current document.

FieldTypeRequiredDescription
threadIdstringyes
  • Command line: turboslide comment get <threadId>
  • MCP tool: deck_get_comment
  • HTTP: POST /api/actions/comment.get
  • Runs on: command line, MCP, HTTP, page.
  • Changes the presentation: no.

Link to comment. The editor and the view URLs that open the deck on the thread’s slide with its card expanded; runs in the page on the window transport.

FieldTypeRequiredDescription
threadIdstringyes
  • Command line: turboslide comment link <threadId>
  • MCP tool: deck_comment_link
  • HTTP: POST /api/actions/comment.link
  • Runs on: command line, MCP, HTTP, page.
  • Changes the presentation: no.

notification.list

Notifications. The caller’s inbox, newest first: mentions, replies, assignments, resolutions, reactions, access requests and grants, coalesced per thread inside a 15 minute window.

FieldTypeRequiredDescription
unreadbooleannoUnread records only
sincestringnoAn ISO time; records updated after it
limitintegerno
  • Command line: turboslide notifications --unread --since <since>
  • MCP tool: deck_list_notifications
  • HTTP: POST /api/actions/notification.list
  • Runs on: command line, MCP, HTTP, page.
  • Changes the presentation: no.

notification.markRead

Mark as read. Marks the named notifications read, or every one; answers the unread count.

FieldTypeRequiredDescription
idsstring[]no
alltrueno
  • Command line: turboslide notifications read <ids> --all
  • MCP tool: deck_mark_notifications_read
  • HTTP: POST /api/actions/notification.markRead
  • Runs on: command line, MCP, HTTP, page.
  • Changes the presentation: yes.

notification.settings

Notification settings. Reads or writes the caller’s per deck level (All comments, Comments for you, None), the email switch and, for the owner, whether commenters read the Activity panel; a read when every field is absent.

FieldTypeRequiredDescription
level"all" | "forYou" | "none"no
emailbooleanno
activityForCommentersbooleanno
  • Command line: turboslide notifications settings --level <level> --email --activity-for-commenters
  • MCP tool: deck_notification_settings
  • HTTP: POST /api/actions/notification.settings
  • Runs on: command line, MCP, HTTP, page.
  • Changes the presentation: yes.

activity.list

Activity. The merged activity feed of the deck: version windows, comment events, share events, requests, role changes, renames, restores, named versions, exports, imports and trash; editors and the owner, commenters when allowed.

FieldTypeRequiredDescription
sincestringnoAn ISO time
kinds"version" | "comment" | "share" | "request" | "role" | "rename" | "restore" | "named" | "export" | "import" | "trash"[]no
limitintegerno
  • Command line: turboslide activity --since <since> --kind <kinds>
  • MCP tool: deck_list_activity
  • HTTP: POST /api/actions/activity.list
  • Runs on: command line, MCP, HTTP, page.
  • Changes the presentation: no.