EVC Local Sync to AI Agent
approvedby entire-vc
Keep a vault folder and an external project documentation folder in two-way sync, so your notes and a codebase's docs stay current automatically without manual copy-paste. - This plugin has not been manually reviewed by Obsidian staff.
EVC Local Sync
Keep your project /docs and Obsidian notes always in sync — bidirectional, local-first, no copy/paste.
Built for AI-assisted coding workflows (Cursor / Claude Code / Copilot): let AI update repo docs while your Obsidian specs stay fresh automatically.

The Problem
You code with AI. Your AI writes and updates docs in /docs. But your Obsidian specs go stale.
Or you update specs in Obsidian, and the repo doesn't know.
Result: AI hallucinates from outdated context. Teammates read wrong docs. You copy-paste manually.
Local Sync fixes this: bidirectional, automatic, local-first.
Install
- Settings → Community plugins → Browse → search "EVC Local Sync"
- Install, then Enable
Or open directly: obsidian://show-plugin?id=evc-local-sync
Plugin page: https://obsidian.md/plugins?id=evc-local-sync
Manual install
- Download
main.js,manifest.json, andstyles.cssfrom the latest release - Create folder
.obsidian/plugins/evc-local-sync/in your vault - Copy downloaded files to this folder
- Enable in Settings → Community plugins
Quickstart (3 minutes)
- Open plugin settings → Add mapping
- Vault path:
Specs/ - Local path:
/path/to/project/docs/
- Vault path:
- Click Sync Now
- (Optional) Enable Auto sync and choose a conflict strategy
✅ Changes now mirror in both directions.
Workflows
1 — AI writes docs → Obsidian stays fresh
AI updates /docs while you code → Local Sync keeps your Obsidian notes current.
No more "AI hallucinated because the spec was outdated."
2 — You edit in Obsidian → repo docs update for teammates and CI
Edit spec in Obsidian → sync → teammates and CI pipelines always read the latest docs.
3 — Dev team docs that never go stale
Connect your team's project docs to a shared vault. When any dev updates /docs (or AI does), the vault stays current. End the cycle of stale documentation.
Key Features
- Bidirectional sync (vault ↔ local folders)
- Multiple mappings (multiple projects / subfolders)
- Configurable conflict handling (keep both / overwrite / prompt)
- Auto sync (on-change, on-startup, scheduled)
- File deletion sync — deleted files sync across locations
- Per-mapping settings — override conflict resolution and file types per project
- Dry-run preview — see changes before syncing
- File watching with configurable debounce
- Symlink support for complex project structures
- Detailed logging with filtering and CSV export
- Backup creation before overwriting files
- Import/Export configuration for portability
- Supports .md, .canvas, .excalidraw.md files
- Fully local — works offline, nothing sent to external servers
Conflict Handling
Sync conflicts happen when both sides change before a sync runs.
Recommended starting point:
- Start with manual sync while testing your mapping
- Use Keep both copies until you're confident
- Check
docs/Troubleshooting.mdfor common edge cases
Comparison
| Copy/paste | Manual export | Git submodule | Local Sync | |
|---|---|---|---|---|
| Always current | ❌ | ❌ | partial | ✅ |
| Bidirectional | ❌ | ❌ | ❌ | ✅ |
| Conflict handling | manual | none | merge conflicts | configurable |
| Offline / private | ✅ | ✅ | ✅ | ✅ |
| Setup complexity | none | none | high | 3 steps |
| AI IDE workflow | ❌ | ❌ | partial | ✅ |
Working with a Team?
Local Sync is designed for solo workflows. If you need team collaboration or want to publish your vault as a website (private, protected, or public):
→ EVC Team Relay — self-hosted collaborative editing for Obsidian teams.
Feedback
Edge cases and integration requests help make this solid:
Troubleshooting
Common topics: renames/moves · case sensitivity (Windows/macOS) · watcher missed events · rapid edits
Community
License
MIT
For plugin developers
Search results and similarity scores are powered by semantic analysis of your plugin's README. If your plugin isn't appearing for searches you'd expect, try updating your README to clearly describe your plugin's purpose, features, and use cases.