A lightweight, automated utility to keep your Windows system clock in perfect synchronization.
Features • Installation • Usage • Configuration • Contributing • License
Time Sync Bot is a "set it and forget it" tool designed for Windows environments where maintaining precise system time is critical. It runs silently in the background, periodically synchronizing your computer's clock with the global Internet Time Servers using the built-in Windows Time Service (w32tm).
Unlike the default Windows synchronization which can be unreliable or infrequent, Time Sync Bot ensures your clock never drifts, making it perfect for:
- Trading & Financial Applications
- Server Environments
- Gaming & eSports
- Development & Debugging
| Feature | Description |
|---|---|
| 🛡️ Secure & Safe | Explicitly checks for Administrator privileges to prevent silent failures. |
| 🚀 Zero-Install | Portable design. No installers, registry changes, or bloatware. |
| 🤖 Automated | Runs in a continuous loop with a configurable interval (default: 2 minutes). |
| 👁️ Visible Status | Provides clear, color-coded console output (Green = OK, Red = Error). |
| ⚡ Robust Logic | Built with modern PowerShell for superior error handling and reliability. |
- Download the latest version from the repository.
- Click the
<> Codebutton and selectDownload ZIP.
- Click the
- Extract the contents to a folder of your choice (e.g.,
C:\Tools\Time-Sync-Bot). - Navigate to the
srcfolder.
- Navigate to the
srcdirectory. - Right-click on
run.bat. - Select "Run as administrator".
- A console window will appear and start synchronizing immediately.
Note: Administrator privileges are required because changing the system time is a protected action in Windows. The script will warn you if you forget this step.
To have the bot run automatically when you log in:
- Press
Win + R, typeshell:startup, and hit Enter. - Create a Shortcut to
src/run.batin this folder. - Important: Configure the shortcut to always run as Admin:
- Right-click the Shortcut > Properties.
- Click Advanced... button.
- Check "Run as administrator".
- Click OK > OK.
You can customize the synchronization interval by editing the script.
- Open
src/time_sync.ps1with a text editor (Notepad, VS Code, etc.). - Locate the configuration region at the top:
#region Configuration $INTERVAL_SECONDS = 120 # Change this value (in seconds) #endregion
- Change
120to your desired interval (e.g.,3600for 1 hour). - Save and restart the bot.
Contributions are welcome! If you have ideas for improvements:
- Fork the project.
- Create your feature branch (
git checkout -b feature/AmazingFeature). - Commit your changes (
git commit -m 'Add some AmazingFeature'). - Push to the branch (
git push origin feature/AmazingFeature). - Open a Pull Request.
Distributed under the MIT License. See LICENSE for more information.
Developed by Ilkay Beydah Saglam.