VeltSuperDoc

Comments and co-editing, built for SuperDoc

Add comments and co-editing, plus live presence, to your SuperDoc editor, for your users and your AI agents. Threads stay pinned to the paragraph as the document edits, and every agent edit lands as a suggestion your users approve, so a comment on a clause stays on that clause through a redraft.

Free tier. No credit card. First comment in 5 minutes.

SuperDocShared with your team
live

7.2 The Provider shall indemnify and hold harmless the Client against all claims arising from the Services.

Brand Agentnow

Flagged a missing liability cap on the clause and suggested a redline.

indemnify and hold harmlessindemnify, subject to a liability cap
2 Replies
Reply in SuperDoc…@

The problem

Build this into SuperDoc yourself, and you rebuild it on every release.

Your users expect to comment and co-edit in SuperDoc, and your AI agents need that same document with a human approving before they touch user work. Comments that survive SuperDoc's docx edits are a multi-quarter build, and the moment anchoring breaks, feedback lands on the wrong paragraph. Co-editing is the harder half: rolled by hand it means overwrites, lost work, and merge conflicts, the "my changes disappeared" bug reports, plus a websocket fleet and offline merge to keep alive. And the harder question is your agents: a useful agent needs to change the work, but an agent with write access to user content is what your buyers' security review blocks, so without a consent step you choose between an agent that is useful and an agent that is safe. Every quarter spent on this is a quarter not spent on your own product.

Velt is the review and collaboration layer built for SuperDoc: your users and your AI agents work the same document, with comment threads anchored to the paragraph, and every agent suggestion is a change a human approves before it lands.

Features

Everything your team and your agents need on SuperDoc

01agents
Review Agent2m

Clause 7 omits a liability cap. Suggested fix attached.

1 Reply
// agents.tsx
// An agent posts a suggestion as a first-class user.
await velt.comments().add({ author: agent, suggestion });
// On approve, the change fires through your webhook.

Agents as first-class users

Your AI agent comments and suggests on the document as a first-class user; a human approves or rejects, and on approve the change fires through your webhook with a permanent record.

02comments
Assigned toKim
Rogers2m

@Maya pulled into the thread

2 Replies
// comments.tsx
import { VeltComments } from "@veltdev/react";

<VeltComments textMode />

Comments

On paragraphs and ranges, with replies, @mentions, and attachments.

03co-editing
TiptapLexicalCodeMirrorBlockNoteReact Flow

plus the core library for your own editor, whiteboard, or grid

// co-editing.tsx
import { useVeltCrdtExtension } from "@veltdev/tiptap-crdt-react";

const extension = useVeltCrdtExtension({ editorId });

Co-editing

CRDT merge on the docx content, so two people work the same document without overwrites.

04presence
On this document6 here
5 people · 1 agentmaxUsers collapses the rest
Mayaediting slide 4
Devviewing
Sarahviewing
Review Agentreviewing clause 7
Chrisidle 5m
Youediting
// presence.tsx
import { VeltPresence, VeltCursor } from "@veltdev/react";

<VeltPresence />
<VeltCursor />

Presence and cursors

Live presence on the document.

05suggestions
Brand Agentnow

Suggested a tighter figure on the rate line.

12.010.5
1 Reply
// suggestions.tsx
// Propose changes reviewed like a diff.
<VeltComments suggestionMode />

Suggestions

Propose redlines as accept-or-reject suggestions.

06notifications
NotificationsFor You
For YouDocumentAll
Now

Maya mentioned you on Q3 forecastmention

“@you can you review before Friday?”

2m

Sarah replied on the Q3 threadreply

forecast.xlsx · cell B12

9m

Ethan requested your sign-offsign-off

contract.pdf · due today

1h
// notifications.tsx
import { VeltNotificationsTool } from "@veltdev/react";

<VeltNotificationsTool />

Notifications

In-app, email, and Slack alerts on every comment and @mention.

07recording
Recorder Notesanchored
forecast.xlsx · pinned to C18
0:42

voice note · pinned to this cell

“The variance comes from the vendor rate change, see row 18.”

on the worklands on the cell, the field, the frame: not a separate library
// recording.tsx
import { VeltRecorderControlPanel } from "@veltdev/react";

<VeltRecorderControlPanel />

Recording

Pin a quick voice, screen, or video clip in context on the document.

08version-history
Version checkpointsnamed snapshots
Live draftediting now · 3 collaboratorscurrent
Before pricing rewritesaved 09:14
Outline approvedsaved Mon 16:40
broadcastRestore via API reaches every connected client
// version-history.tsx
await velt.versions().save({ name: "Draft v3" });
await velt.versions().restore({ id });

Version history

Named checkpoints on the document, saved and restored by API.

09audit-trail
Activity logauto-captured
comment.addedSales deck · slide 4recorded
edit.mergedcontract.md · clause 7recorded
recording.sharedwalkthrough · 1:24recorded
approval.changedfiling-q3 · approvedrecorded
// audit-trail.tsx
const log = await velt.activities().get({ documentId });

Audit trail

Every markup and approval on the matter, exportable.

Agent

A clause-review agent flags an off-standard term on the paragraph and suggests the redline as a first-class user; a human approves or rejects, and on approve the change fires through your webhook with a permanent record of who allowed what.

Setup

Production-ready in minutes

01INSTALL
terminal
npm install @veltdev/react @veltdev/superdoc-crdt-react
02PROVIDER
App.tsx
import { VeltProvider } from "@veltdev/react";

<VeltProvider apiKey={API_KEY}>
  <App />
</VeltProvider>
03MOUNT
SuperDoc.tsx
// Mount Velt on SuperDoc
<VeltComments />
// + the CRDT adapter for co-editing

Why Velt

The consent step Liveblocks does not have

Liveblocks syncs people and agents into your app's state; Velt adds the step Liveblocks does not, every agent change on SuperDoc is a suggestion your user approves or rejects, on the record.

Enterprise

Enterprise-grade security and data control

The controls your buyers' security reviews ask for, in writing.

Adding Velt to SuperDoc does not move that surface's content off your stack. Per-feature data providers keep comment content, attachments, and user PII on your own infrastructure; Velt stores only minimal identifiers.

FAQ

Frequently asked questions

Comments only, or co-editing too?

Both. SuperDoc is a docx editor so Velt wires full CRDT co-editing alongside comment threads on the same document.

Do comments hold with docx fidelity?

Yes. Threads anchor to paragraphs by stable identifier, not byte offset, so they survive reformatting, copy-paste, and round-trips through docx.

Do tracked changes interop?

Yes. Velt suggestions map to the tracked-change model so suggestions your agents propose appear alongside native tracked changes.

Can an agent suggest a redline, for a human to approve?

Yes. An agent posts the suggestion on the paragraph as a first-class user, and a human approves or rejects before the change lands.

Do I need a backend?

No. Velt handles the realtime sync and persistence; you wrap your app in VeltProvider with your API key and mount the adapter.

How is Velt priced?

On usage, not seats or integrations: you pay for documents with review activity in a month, with a free tier for development and early production.

Related

Explore other integrations

See all libraries

Comments and co-editing, built for SuperDoc

Free tier. No credit card.

First comment in 5 minutes.