Obsidian Drift banner
ryanbbrown ryanbbrown

Obsidian Drift

Documentation community

Description

Diff viewer for changes to markdown files in Obsidian made by coding agents

Installation

This entry records only its repository, not the path inside it, so there is no exact command to give. Open the source below and copy the folder into ~/.claude/skills/, or the file into ~/.claude/agents/.

README

Drift

A VS Code-style side-by-side diff viewer that lives inside Obsidian. Automatically detects external file changes (including AI coding agents) and shows you a before/after view with per-chunk accept/reject, accept all/reject all, and collapsible unchanged regions.

![Drift demo](demo.gif)

Features

  • Instant detection — No polling or delays. Uses CodeMirror 6 transaction monitoring to detect external changes the moment they happen.
  • Per-chunk accept/reject — Cherry-pick individual changes, not just all-or-nothing. Revert buttons on each diff chunk let you keep what you want and undo what you don't.
  • Accept all / Reject all — Bulk actions when you have multiple files with pending diffs.
  • Persistence — Pending diffs survive Obsidian restarts. Stale diffs (file deleted or reverted) are automatically discarded on reload.
  • Edit protection — Editing a file with pending diffs shows a warning modal, preventing accidental data loss.
  • Tool-agnostic — Works with any tool that modifies vault files: AI coding agents, sync services, scripts, other plugins.

Installation

Install Drift from the [Obsidian community plugin directory](https://community.obsidian.md/plugins/drift).

Manual install

  1. Download main.js, manifest.json, and styles.css from the latest release
  2. Create a folder VaultFolder/.obsidian/plugins/drift/
  3. Copy the downloaded files into that folder
  4. Restart Obsidian and enable the plugin in Settings → Community plugins

Usage

Once enabled, the plugin runs automatically. When an external tool modifies a markdown file in your vault:

  1. A Drift tab opens in the background showing the side-by-side diff
  2. Use Accept All to keep the new content, or Reject All to revert to the original
  3. Use the revert button on individual chunks to selectively undo specific changes
  4. Use the Open diff viewer command to reopen the tab if you