Real-time sync between your GitHub projects and Obsidian Vault
You write documentation in your GitHub repos and keep your knowledge in Obsidian. Copying files across by hand breaks your wiki-links, and Obsidian can't read GitHub's relative links. Pointing Obsidian straight at your GitHub folder is worse. All those git files and large repositories create serious lag.
ObsidianBridge runs in the system tray. It keeps your Obsidian vault in sync with your GitHub projects:
- Watches for changes in your GitHub folders in real-time
- Rewrites wiki-links so they work in Obsidian
- Generates indexes that make folders show up as connected nodes in your graph
- Creates hierarchical navigation - main index → folder indexes → files
- Keeps your vault fast by syncing only processed markdown, without git history
GitHub/ ObsidianBridge Vault/
├── project-a/ (processes & copies) ├── project-a/
│ ├── README.md → │ ├── README.md → │ ├── README.md
│ └── docs/ │ └── docs/ │ └── docs/
│ └── guide.md → │ └── guide.md → │ └── guide.md
├── project-b/ │ └── notes.md → │ └── notes.md
│ └── notes.md → │ └── index.md (generated) │ └── index_project.md
└── .git/ (ignored) │ └── index_project_docs.md
(one-way sync only)
Key insight: your vault holds processed copies. Nothing in it connects live to GitHub. That keeps Obsidian fast while giving you all the knowledge management power.
# Clone or download
cd ObsidianBridge
# Install dependencies
pip install -r requirements.txt# Launch the app
python ObsidianBridge.pyOn first run, you'll see setup instructions if directories don't exist.
Right-click the tray icon → Settings (or edit config.json):
{
"SOURCE_DIRECTORY": "C:\\Users\\You\\Documents\\GitHub",
"DESTINATION_DIRECTORY": "C:\\Users\\You\\Documents\\Vault",
"PRESERVE_STRUCTURE": true,
"ENABLE_TAGGING": false,
"COLLISION_DELAY": 2,
"DEBOUNCE_DELAY": 5,
"OLLAMA_MODEL": "llama3.1:8b"
}The app runs in your system tray:
| Action | How |
|---|---|
| View status | Double-click tray icon or "Show Window" |
| Force sync | Right-click → "Force Sync All" |
| Pause sync | Right-click → "Toggle Watch" |
| Open vault | Right-click → "Open Vault" |
| Settings | Right-click → "Settings..." |
| Exit | Right-click → "Exit" |
Status Window:
The status window shows sync activity in real time, with colored logs and quick actions.
If you want automatic tagging:
# Install Ollama
# https://ollama.com/download
# Pull a model
ollama pull llama3.1:8b
# Start Ollama server
ollama serveThen enable in Settings: ENABLE_TAGGING = true
You edit file.md in GitHub repo
↓
watchdog detects change
↓
Debounce wait (5s default)
↓
Check collision prevention
↓
Create backup
↓
Rewrite WikiLinks
↓
Generate AI tags (optional)
↓
Write to Vault
↓
Update index.md
↓
Clean up backup
I built this to give my AI IDE a contextual brain. Here's how I use it:
AI assistants lose context between sessions. I needed a way to:
- Persist knowledge across conversations
- Search my entire codebase before answering questions
- Maintain project memory without re-explaining everything
- Connect ideas across different repositories
By syncing all my GitHub projects to Obsidian, I get:
1. Persistent Memory
- Every project, every note, every decision lives in the vault
- AI can read the vault via MCP (Model Context Protocol)
- Context survives across sessions and tools
2. Connected Knowledge
- The graph view shows relationships between projects
- Folder indexes create hierarchical structure
- Wiki-links connect related concepts automatically
3. Searchable Context
- Before answering, AI can search the entire vault
- Find relevant files, past decisions, technical notes
- No more "I don't have context about your project"
GitHub Repos → ObsidianBridge → Vault → AI IDE (via MCP)
↑ ↓
└────────────── Context Memory ←───────────────────┘
- Sync all projects to the vault automatically
- Connect Obsidian MCP to my AI IDE
- AI reads vault for context before responding
- I write memory notes in Obsidian during work
- Start a new session with AI
- AI queries vault: "What do I know about this project?"
- Finds:
index_project.md→docs/→architecture.md - AI has full context: tech stack, decisions, current status
- We continue work without re-explaining
Your vault becomes a second brain that:
- Survives across AI sessions
- Connects all your projects visually
- Provides instant context retrieval
- Grows smarter as you work
That is knowledge infrastructure for AI-assisted development.
What the connected graph looks like:
Each hub is a project. The folder indexes create the structure that connects everything.
| Method | Command | Best For |
|---|---|---|
| Python | python ObsidianBridge.py |
Development |
| Batch | Launch ObsidianBridge.bat |
Quick start |
| Shortcuts | python create_shortcuts.py |
Desktop/Start Menu |
| EXE | python build_exe.py |
Sharing with others |
One-Way Sync Only:
- Edit in GitHub → Appears in Obsidian
- Edit in Obsidian → Does NOT sync back
Vault Contains Processed Copies:
- Vault files are copies with no live connection to GitHub
- No git history or version control in vault
- Links are rewritten for Obsidian compatibility
- Index files are auto-generated for navigation
This prevents conflicts and keeps GitHub as the source of truth.
File Safety:
- Backups created before every change (kept last 5)
- Automatic rollback on sync failure
- File size limits (10MB default) skip huge files
| Issue | Solution |
|---|---|
| App won't start | Check sync_log.txt for errors |
| "Python not found" | Add Python to PATH or use EXE version |
| Ollama errors | Set ENABLE_TAGGING: false or start ollama serve |
| High CPU | Normal during initial sync; idle after |
| Links broken | Enable PRESERVE_STRUCTURE: true |
MIT License - Use, modify, distribute freely.

