InsightsMarch 9, 20276 min read

What's New in ConfigSync: 2026 Year in Review

Everything we shipped in 2026: content-hash caching, parallel operations, watch mode, selective sync, diff command, lifecycle hooks, and 24 built-in modules.

A Year of Building

When we started 2026, ConfigSync was a simple tool that synced dotfiles with encryption. Twelve months later, it is a complete development environment management platform with 24 modules, a web dashboard, enterprise features, and a growing plugin ecosystem. Here is everything we shipped.

Performance: Content-Hash Caching and Parallel Operations

Early in 2026, we focused on making ConfigSync fast. Two changes made the biggest difference.

Content-hash caching means ConfigSync only uploads files that actually changed. Before this, every push uploaded every tracked file. Now it computes a SHA-256 hash of each file and compares it to the last pushed hash. If nothing changed, nothing uploads. This reduced typical push times by 80% for incremental syncs.

Parallel operations allow multiple modules to capture and restore simultaneously. Shell, git, and SSH modules no longer wait for each other. On machines with many modules enabled, restore times dropped by 60%.

Performance comparison
# Before (early 2026) $ configsync push # 12.4s (uploads everything) $ configsync pull # 18.2s (sequential restore) # After (content-hash + parallel) $ configsync push # 2.1s (only changed files) $ configsync pull # 7.3s (parallel restore)

Watch Mode

Watch mode was one of the most requested features. Instead of manually pushing after every change, watch mode monitors your tracked files and automatically pushes when they change.

Watch mode in action
$ configsync watch Watching 64 tracked files for changes... [10:15] ~/.zshrc modified. Pushing... [10:15] Pushed (0.3s, 1 file changed). [14:22] ~/.gitconfig modified. Pushing... [14:22] Pushed (0.2s, 1 file changed). [16:45] Remote snapshot updated. Pulling... [16:45] Updated: ~/.ssh/config (from work-desktop).

Watch mode works in both directions. It pushes local changes and pulls remote changes, keeping all your machines in sync in near real-time.

Selective Sync and the Diff Command

Two related features that give you more control over what syncs and when.

Selective sync lets you push or pull specific modules or files instead of everything. This is useful when you want to update your SSH config without touching your editor settings.

The diff command shows exactly what changed between your local state and the remote snapshot, so you can review changes before pulling.

Selective sync and diff
# Push only SSH changes $ configsync push --module ssh -m "Updated SSH config" # See what would change before pulling $ configsync diff Modified: ~/.ssh/config (from work-desktop) Added: ~/.ssh/staging_key (from work-desktop) Unchanged: 62 files # Pull only what you want $ configsync pull --module ssh

Lifecycle Hooks

Hooks let you run custom scripts at key points in the sync lifecycle. The most popular use case is running brew bundle after a pull to install new packages.

HookRuns WhenCommon Use
pre-pushBefore pushingRun tests, export conda env
post-pushAfter pushingNotify team, update docs
pre-pullBefore pullingBackup current state
post-pullAfter pullingbrew bundle, restart services

Bootstrap Scripts and the Setup Command

The configsync setup command and bootstrap scripts turned ConfigSync from a sync tool into a complete machine provisioning system. A single URL with an embedded token installs ConfigSync, authenticates, pulls your environment, and runs your bootstrap script.

One-URL machine provisioning
# Generate a setup URL from the dashboard # Share it with new team members or use on new machines $ curl -fsSL configsync.dev/install?token=cs_xxx | sh # Installs ConfigSync # Authenticates with the embedded token # Pulls latest snapshot # Runs bootstrap.sh (Homebrew, oh-my-zsh, fonts, etc.)

24 Built-In Modules

We shipped modules throughout 2026, ending the year with 24 built-in modules covering the most common developer tools:

CategoryModules
Shellszsh, bash, fish
EditorsVS Code, Neovim, Vim, JetBrains
Version Controlgit, GitHub CLI
SecuritySSH, GPG, AWS credentials
Package ManagersHomebrew, npm, pip, cargo
ContainersDocker
SystemmacOS defaults, Raycast, Ghostty
AI ToolsCursor, Claude Code

Snapshot History and the Web Dashboard

The web dashboard at configsync.dev launched with machine management, API token management, and snapshot history. You can see every sync event, manage which machines have access, and generate setup URLs for new machines.

Snapshot history turned ConfigSync into more than a sync tool. It became an audit trail and a backup system. Every push is a timestamped record of your environment that you can roll back to at any time.

What Is Planned for 2027

Looking ahead, we are working on several major features:

  • Team sharing and RBAC for organizations that need to share configurations with access controls.
  • Plugin marketplace where community-contributed plugins can be discovered and installed.
  • Conflict resolution for cases where two machines modify the same file between syncs.
  • Linux desktop support with modules for GNOME, KDE, and i3/sway configuration.
  • Mobile companion app for generating setup tokens and monitoring sync status from your phone.

2026 was about building the foundation. 2027 is about scaling ConfigSync from a personal productivity tool to a team platform. Thank you to everyone who used ConfigSync this year, reported bugs, requested features, and contributed plugins. The best is ahead.

Ready to try ConfigSync?

Sync your entire dev environment across machines in minutes. Free forever for up to 3 devices.