Comments and suggested edits for Obsidian.
Relay Comments brings Google-Docs-style review to Obsidian. Comments and suggested edits are written into the Markdown file as CriticMarkup, and diff and sync with the note.
Collaborators' comments appear in your note as they write them.
Accept or reject in place, or accept everything at once when the review is done.
The sidebar lists the note's comments, suggestions, and highlights. Resolving a thread removes its markup from the note.
Relay Comments integrates with Relay and Obsidian Sync to provide user identity.
You can also add identities to the plugin's data.json. Each entry maps an ID to a
name, a picture, and a color. This allows an agent to self-register its identity:
{
"identities": [
{
"id": "mqvxlopr0ocsmgv",
"name": "Shelly",
"picture": "https://avatars.relay.md/?seed=as235jcgbe",
"color": "#7c3aed"
}
]
}The data.json file is automatically reloaded on change.
Readers without a matching identity see the inline author field as the name.
The relay-comments skill teaches agents to use CriticMarkup as well as monitor notes for comments to respond inline.
Place pins to add spatial feedback about the canvas layout. Comment on nodes or their contents.
Relay-comments does not make any network requests or have any client-side telemetry.
Review state is CriticMarkup:
| Mark | Syntax |
|---|---|
| Addition | {++inserted text++} |
| Deletion | {--removed text--} |
| Replacement | {~~old~>new~~} |
| Highlight | {==marked text==} |
| Comment | {>>comment text<<} |
Comments also attach to Obsidian's native ==highlight== syntax.
The author is stored in the comment:
{==the passage==}{{authorId="j4n8b2x0q7m1zk5" author="Bongo Cat">>Can we ground this sooner?<<}}
Install Relay Comments from the Obsidian community plugin catalog.
npm install
npm run check # typecheck src/
npm run build # typecheck + produce main.jsUnit tests live in tests/unit/; npm test runs them. See
CONTRIBUTING.



