🛡️ DevGuard — Zero Conflict Collaboration
One install. Works instantly. No setup.
DevGuard prevents merge conflicts before they happen by showing every developer — in real-time — who is editing which files, on which branch, across the entire team.
✅ How It Works
- Developer A opens
src/api/auth.js on branch feature-login
- Developer B opens the same file on branch
feature-oauth
- Both developers instantly see a warning — in the status bar, file explorer, and inline in the editor
- They coordinate. No merge conflict. Ever.
🚀 Install in 30 Seconds
Step 1: Install the extension from the VSCode Marketplace
ext install devguard.devguard
Step 2: Open any git project. DevGuard activates automatically.
Step 3: Enter your name when prompted. You're live.
That's it. Every developer on your team who installs DevGuard will instantly see each other's activity.
🎯 Features
Real-Time Presence
- See who is editing which file, right now
- Shows branch name alongside developer name
- Updates within 1 second of a file being opened
Visual Warnings
- Status bar — always shows conflict count at the bottom
- File explorer — badge on conflicting files with editor count
- Editor gutter — yellow/red highlight when you open a conflicted file
- Inline diagnostics — shows in Problems panel
Hard Locks (Optional)
- Right-click any file → "DevGuard: Lock This File"
- Other developers see a 🔒 and cannot save (in
block mode)
- Lock auto-expires when you close the file or disconnect
- Unlock anytime: Right-click → "DevGuard: Unlock This File"
Branch Conflict Check
- Command:
DevGuard: Check Branch Conflicts
- Shows all files being edited across all branches
- Perfect to run before opening a PR
⚙️ Configuration
Open Settings (Ctrl+,) and search "DevGuard":
| Setting |
Default |
Description |
devguard.username |
(prompted) |
Your display name |
devguard.lockMode |
warn |
warn = notify only, block = prevent saving |
devguard.enabled |
true |
Enable/disable extension |
🏗️ Architecture
[VSCode Extension] ←→ [Shared MongoDB Database] ←→ [Other Developers' VSCode]
↕ ↕
Git hooks Mongoose Change Streams
(branch info) (fully real-time via sockets)
DevGuard connects directly to a shared Mongoose database. It uses MongoDB Change Streams to listen for file presence changes in real-time, functioning exactly like a WebSocket without needing a standalone backend server. Each client spins up this logic internally.
🔒 Privacy
- DevGuard transmits only: filename, branch name, your display name
- No file contents are ever sent
- No code is ever transmitted
- Traffic is isolated per repo (using a hash of your git remote URL)
- Self-host the relay for 100% private operation
💬 Commands
| Command |
Description |
DevGuard: Show Team Activity Panel |
Open the activity panel |
DevGuard: Lock This File |
Hard-lock the active file |
DevGuard: Unlock This File |
Release your lock |
DevGuard: Set Your Name |
Change your display name |
DevGuard: Check Branch Conflicts |
See all cross-branch conflicts |
📖 Example Scenario
Team: Aarav, Priya, Ravi
Aarav → opens src/utils/auth.js (branch: feature-google-login)
Priya → opens src/utils/auth.js (branch: feature-oauth-refresh)
Ravi → opens src/utils/auth.js
⚠️ STATUS BAR: "DevGuard: Aarav, Priya editing"
⚠️ NOTIFICATION: "Aarav (feature-google-login), Priya (feature-oauth-refresh) are editing this file"
Ravi asks in Slack: "hey I need to touch auth.js too, who's got it?"
Aarav: "I'll be done in 10 mins"
Priya: "I can move mine to a separate function"
Result: Zero merge conflicts. ✅
📄 License
MIT — free for personal and commercial use.