IDE Rules Sync
A VSCode extension that synchronizes configuration files across multiple IDEs to avoid duplicate configurations and maintain consistency.
Features
- Unified Configuration Management: Centralize all IDE configuration rules in a single
_master_rules directory
- Multi-IDE Support: Works with VSCode, Cursor, Claude Dev, Windsurf, and other compatible IDEs
- Automatic Detection: Automatically detects existing configuration files in your project
- Symbolic Link Management: Creates and manages symbolic links to keep configurations in sync
- Status Monitoring: Check the status of your configuration synchronization
- Easy Repair: Repair broken or missing symbolic links with a single command
Supported Configuration Files
.json files (ESLint, Prettier, TSConfig, etc.)
.md and .mdc files (documentation and rules)
.toml files (configuration files)
- Custom file extensions (configurable)
Installation
- Install from VSCode Marketplace (coming soon)
- Or install from VSIX file:
- Download the latest
.vsix file
- Open VSCode Command Palette (
Ctrl+Shift+P / Cmd+Shift+P )
- Run
Extensions: Install from VSIX...
- Select the downloaded
.vsix file
Usage
Initialize Configuration Sync
- Open Command Palette (
Ctrl+Shift+P / Cmd+Shift+P )
- Run
IDE Rules Sync: Initialize
- The extension will create a
_master_rules directory with template files
Create Symbolic Links
- Run
IDE Rules Sync: Create Links
- The extension will automatically detect configuration files and create symbolic links
Check Synchronization Status
- Run
IDE Rules Sync: Check Status
- View the status of all synchronized configuration files
Repair Broken Links
- Run
IDE Rules Sync: Repair Links
- Fix any broken or missing symbolic links
Configuration
Configure the extension through VSCode settings:
{
"rulesSync.masterConfigPath": "_master_rules",
"rulesSync.autoDetect": true,
"rulesSync.supportedExtensions": [".json", ".md", ".mdc", ".toml"],
"rulesSync.excludePatterns": ["node_modules", ".git"]
}
Settings
rulesSync.masterConfigPath : Directory for master configuration files (default: _master_rules )
rulesSync.autoDetect : Automatically detect configuration files (default: true )
rulesSync.supportedExtensions : File extensions to synchronize (default: [".json", ".md", ".mdc", ".toml"] )
rulesSync.excludePatterns : Directory patterns to exclude (default: ["node_modules", ".git"] )
How It Works
- Master Rules Directory: All configuration files are stored in the
_master_rules directory
- Symbolic Links: The extension creates symbolic links from project root to files in
_master_rules
- Multi-IDE Compatibility: Since all IDEs read from the same symbolic links, configurations stay synchronized
- Version Control: Only the
_master_rules directory needs to be committed to version control
Project Structure
your-project/
├── _master_rules/ # Master configuration directory
│ ├── .eslintrc.json # ESLint configuration
│ ├── .prettierrc.json # Prettier configuration
│ ├── instructions.md # Development instructions
│ └── mcp.json # MCP configuration
├── .eslintrc.json # → Symbolic link to _master_rules/.eslintrc.json
├── .prettierrc.json # → Symbolic link to _master_rules/.prettierrc.json
└── instructions.md # → Symbolic link to _master_rules/instructions.md
Benefits
- Consistency: All IDEs use the same configuration rules
- Maintainability: Update rules in one place, apply everywhere
- Version Control: Single source of truth for all configurations
- Team Collaboration: Share consistent development environment settings
- Reduced Duplication: Eliminate duplicate configuration files
Requirements
- VSCode 1.102.0 or higher
- File system that supports symbolic links (Windows, macOS, Linux)
Known Issues
- Symbolic links may not work properly on some Windows systems without developer mode enabled
- Some IDEs may not follow symbolic links for certain configuration files
Contributing
Contributions are welcome! Please feel free to submit a Pull Request.
License
This project is licensed under the MIT License - see the LICENSE file for details.
Changelog
0.1.0
- Initial release
- Basic configuration synchronization
- Support for JSON, Markdown, and TOML files
- Automatic detection and link creation
- Status monitoring and repair functionality
| |