何乐为14 downloadsSmart two-way sync for your vault and submodules with GitHub, powered by AI commit messages.
AI-assisted two-way sync between your Obsidian vault and GitHub — including nested folders as separate repos — without ever touching a terminal.
Most git-based Obsidian sync plugins assume you know git. This one doesn't. Three things make it different:
Map any folder in your vault to its own GitHub repo. Keep personal notes private, sync a Projects/ folder with your team, push a Blog/ folder to a public repo — all from the same vault, each with independent sync settings. Adding a submodule is a single dialog: paste a URL, type a folder name, done.
Built in, optional. Let DeepSeek or Gemini read your diff and propose a clean semantic commit message (feat: …, fix: …, docs: …). You always get to edit before committing. Tokens stay local, only the diff goes to the LLM, and you can exclude any path patterns from being sent.
? icon next to the token field opens GitHub's PAT creation page directly — no need to know what a "personal access token" is403 mysteries.main.js, manifest.json, and styles.css from the latest release<your-vault>/.obsidian/plugins/smart-vault-sync/The setup wizard appears automatically on first launch. Three short steps:
ghp_…) — needs the repo scopegithub_pat_…) — give it Contents: read & write on the repos you'll sync| File | Where | Contains | Travels with the repo? |
|---|---|---|---|
data.json |
<vault>/.obsidian/plugins/smart-vault-sync/ |
Your tokens, sync history, per-machine state | ❌ Local only |
.github-sync.json |
<vault>/ |
Remote URLs, branches, AI model choice, submodule list | ✅ Committed (so a fresh clone on a new machine picks up your config automatically) |
Secrets never leave your device. The plugin's own .gitignore excludes .obsidian/, and .github-sync.json's schema has no token fields at all — there's no path by which the plugin can leak credentials into a commit.
Permission denied or 403 on push. Open Settings → Smart Vault Sync → Test connection. The third row (git auth) exercises the same credential path your sync uses. If that row fails while the API rows pass, your local git is using stale credentials (most commonly the macOS Keychain) — erase the cached entry or rotate the token.
Token sticks around after uninstall. Obsidian preserves plugin data across reinstalls by design. To fully wipe credentials, delete <vault>/.obsidian/plugins/smart-vault-sync/data.json.