Releases: tomaszboloz/SkillSync
Release list
v1.2.6
SkillSync v1.2.6 — Atomic multi-location update recovery
Released: 18 September 2026
Fixed
- Safety snapshots preserve symbolic links rather than following them. A dangling link from a package manager no longer causes
No such file or directorywhile archiving a valid package. - Every discovered installation path is resolved and validated before the transaction starts. If one location has disappeared, is a broken symlink or is not a directory, SkillSync stops before writing anything and identifies the exact path.
- Nested resources from a single Git repository now use one repository-root snapshot and one checkout. This removes conflicting checkouts during bulk updates while still validating every logical resource location afterward.
- After checkout, all detected locations must expose a valid manifest and the same discovered version. A mismatch restores every snapshot instead of reporting a partial success.
- Snapshots of multiple copies of one package have distinct filenames, so every rollback source remains available.
Verification
- Added regression coverage for dangling-symlink snapshots, unavailable locations, and two nested resources sharing one Git worktree.
- Rust tests, Clippy, ESLint, TypeScript/Vite build and Prettier are required before publication.
Breaking changes
None. This is a backward-compatible patch release under Semantic Versioning.
v1.2.5
SkillSync v1.2.5 — Portable package skill recovery
Released: 18 September 2026
Fixed
- A tagged update can now remain valid when an upstream skill intentionally replaces its tracked
SKILL.mdwith the same named portable CLI package. - SkillSync creates a minimal local discovery adapter only after verifying that
package.jsonhas the same skill name and a command entry point; unrelated package directories and malformed manifests still fail safely. - A retry can safely replace the legacy, SkillSync-created
metadata.versiondelta inSKILL.md; any other tracked or staged local change still blocks the update and requires explicit confirmation.
Verification
- Added regressions for a tagged package migration without
SKILL.mdand for the legacy version-only worktree state. - Rust tests, Clippy, ESLint, TypeScript/Vite build and Prettier pass locally before release.
v1.2.4
SkillSync v1.2.4 — Tag-first update tracking
Released: 18 September 2026
Fixed
- Repositories that publish SemVer tags now track the highest remote tag instead of the branch that happened to be checked out during discovery.
- Repositories without a SemVer tag now track
main; whenmainis unavailable, SkillSync verifies the remote default branch and only then falls back to the detected branch. - A manually assigned branch remains authoritative and is the only branch setting that overrides tag tracking.
- The Update action refreshes the upstream state immediately before its safety snapshot, so it does not use an outdated manifest version from the initial scan.
- Git tag updates no longer rewrite upstream skill manifests after checkout.
- Unsupported non-Git MCP resources are rejected before creating a snapshot, preserving their configuration unchanged.
Dependency updates
- Updated compatible JavaScript, Tauri and Rust transitive dependencies and regenerated both lockfiles.
- Kept TypeScript on 6.0.3 because the installed
typescript-eslintrelease declares support below TypeScript 6.1; this avoids an invalid peer-dependency installation.
Verification
- 52 Rust unit tests pass, including remote SemVer tag selection and non-Git MCP safety coverage.
- Rust Clippy with
-D warnings, ESLint, TypeScript/Vite production build, Prettier and whitespace validation pass.
v1.2.3
SkillSync v1.2.3 — Cross-platform repository path normalization
Released: 18 September 2026
Fixed
- Normalized discovered Git repository roots across macOS, Linux and Windows path formats.
- Windows CI now validates nested repository detection without false failures caused by drive-prefix or extended-path representations.
Verification
- Rust tests, including Windows nested-repository coverage, pass.
- ESLint, TypeScript/Vite production build, Prettier and Rust formatting checks pass.
v1.2.1
SkillSync v1.2.1 — Reliable nested skill updates
Released: 18 September 2026
Fixed
- Nested skills now inherit the GitHub remote from their repository root, so the GitHub repository and update-check controls are visible for layouts such as
repo/skills/name. - The Bez gałęzi filter includes remote-backed packages that need a manually assigned tracking branch.
- A tracked branch is used as the source ref when updating a skill without a
.gitdirectory at the skill's nested path. - After a branch checkout, SkillSync reads the installed version again from the manifest instead of keeping the previous version in the interface.
- Forced Git updates preserve conflicting local paths in a timestamped
.skillsync-conflicts-*directory before checkout. - Branch override validation rejects repository URLs and accepts ref names such as
mainorfeature/branch.
Verification
- 50 Rust library tests passed.
- TypeScript/Vite production build passed.
- Prettier and Rust formatting checks passed.
- macOS DMG and Windows MSI/EXE artifacts are produced by the tagged GitHub Actions release workflow.
v1.2.0
SkillSync v1.2.0 — Branch-aware background monitoring
Released: 18 September 2026
Added
- SkillSync now detects the active branch of each Git-backed Skill, MCP integration and plugin. You can set a manual branch per package; the manual choice is always used instead of automatic detection.
- The new Bez gałęzi filter lists Git packages that need a branch assigned, making incomplete monitoring configuration visible and actionable.
- A new system menu-bar / system-tray option keeps a SkillSync icon beside the clock. Click it to restore the window or use its menu to show or quit the application.
Changed
- Scan now completes local discovery first, then queues upstream checks in the background. A single paced worker performs one remote check at a time with a 350 ms delay, so large installations do not create a request burst or block the interface.
- Branch monitoring compares the local HEAD with the selected branch in
originwithout changing files. If either the active branch or commit differs, the package is clearly marked as requiring an update; the normal safe update flow then aligns it with that branch. - Branch names are displayed as references (
main,develop) rather than misleading semantic versions.
Verification
This release is validated with ESLint, TypeScript, Vitest, Cargo tests, strict Clippy, Prettier, and production build checks. Every tagged macOS release includes a DMG. When Apple Developer ID credentials are configured, the workflow additionally verifies its code signature, notarization, Gatekeeper acceptance and disk-image integrity.
v1.1.2
SkillSync v1.1.2 — Reliable Bulk Upstream Checks
Released: 17 September 2026
Fixed
- Scan now verifies GitHub versions through a bounded queue instead of sending all requests at once. This prevents throttling and connection contention in installations with many Skills, MCP servers and plugins.
- A transient GitHub connection failure is retried once. If the source is still unavailable, SkillSync shows an actionable error on that item; it never labels an unchecked source as up to date.
- Bulk scanning and Check GitHub in the detail view now apply the same upstream-release result and SemVer decision, so they cannot disagree about an available update.
Verification
This release is gated by ESLint, TypeScript, Prettier, Vitest, Rust formatting, Cargo tests, strict Clippy, Cargo audit, and signed macOS/Windows release builds. The published release contains the signed updater manifest, platform installers, updater packages, signatures and SHA-256 checksums.
v1.1.1
SkillSync v1.1.1 — Signed Automatic Updates
Released: 17 September 2026
Fixed
- SkillSync now checks the signed update manifest automatically when the app starts, respecting the existing update-check setting.
- A persistent bottom footer makes application update status visible without opening Settings.
- When a newer release exists, Download and install downloads the matching signed macOS or Windows updater package, verifies it against the embedded public key, installs it and restarts SkillSync when required.
- The dashboard reserves bottom space so the footer never covers the last resource cards.
Update delivery
Every release includes latest.json, a signed updater package and its signature for macOS and Windows. The private signing key is stored only as GitHub Actions secrets; it is never committed, included in the application or published as a release asset.
Verification
The release is gated by ESLint, TypeScript, Prettier, Vitest, Rust formatting, Cargo check, Clippy with zero warnings, plus the GitHub macOS/Windows test and signed-build matrix.
v1.1.0
SkillSync v1.1.0 — Skills, MCP and Plugin Updates
Released: 16 September 2026
Highlights
- Manage and filter three resource types from one dashboard: Skills, MCP, and Plugins.
- Update Laravel Boost safely through Composer. SkillSync validates Composer before and after the update, runs the project test script when available, and confirms the installed package in
composer.lock. - Update active Claude Code Marketplace plugins through the official Claude CLI. This includes Marketplace installations such as
n8n-mcp-skills.
Important fixes
- Claude Code can retain old version directories in
~/.claude/plugins/cache. SkillSync now treatsinstalled_plugins.jsonas the source of truth, so an obsolete cache directory is never shown or updated as an active plugin. - Failed updates restore an exact snapshot, including removal of files created after the snapshot.
- The navigation header no longer presents a hard-coded
v1.0.0; application release status remains available from Settings.
Safety model
Every supported update performs manifest validation, dirty-worktree preflight when Git is involved, a snapshot, an official updater or Git operation, and post-update integrity verification. A failed local operation triggers rollback.
Upgrade
Download the macOS .dmg or Windows .msi/.exe artifact from the GitHub release, verify checksums.sha256, then install over the previous version. Restart Claude Code after a Marketplace plugin update so it reloads the new plugin version.
v1.0.0
SkillSync v1.0.0
Released: September 16, 2026
SkillSync v1.0.0 is the first stable public release of an open-source desktop application for discovering, checking, updating, and rolling back AI agent skills. It helps developers manage skills across Claude Code, OpenAI Codex, Cursor, Gemini CLI, and Antigravity without treating every folder or package as a safe update target.
Repository: https://github.com/tomaszboloz/SkillSync
Created by Tomasz Bołoz: https://www.damtox.pl
What is included
- Cross-platform desktop application built with Tauri, Rust, React, and TypeScript.
- Discovery of supported skill locations and explicit monitored paths.
- Recognition of
SKILL.md,skill.json, and deliberately enabled package-based skill manifests. - A seven-stage atomic update flow: preflight checks, safety snapshot, manifest update, file synchronization, integrity verification, rollback on failure, and outcome reporting.
- Point-in-time backups in
~/.skillsync/backups/for restoring a previous skill version. - Multi-location synchronization for one detected skill, with each target checked before files change.
- Clear handling of Git dirty state: modified tracked files stop the mutation and remain available for review instead of being silently overwritten.
- English-first interface with Polish, German, Spanish, French, Japanese, and Chinese localization support.
Supported AI skill ecosystems
SkillSync is designed for skills stored in locations used by:
- Claude Code:
~/.claude/skills - OpenAI Codex:
~/.codex/skills - Cursor:
~/.cursor/skills - Google Gemini CLI and Antigravity
- Custom Agent Skills-compatible folders added through Monitored Paths
Installation
Download the installer that matches your system from the release assets:
- macOS on Apple Silicon:
SkillSync_1.0.0_aarch64.dmg - Windows:
SkillSync_1.0.0_x64_pl-PL.msiorSkillSync_1.0.0_x64-setup.exe - Integrity data:
checksums.sha256
Release page: https://github.com/tomaszboloz/SkillSync/releases/tag/v1.0.0
After installation, open SkillSync, review the monitored paths, run a scan, and inspect an available update before selecting Update. For a Git-backed skill, commit or deliberately set aside modified tracked files first. For a non-Git skill, keep a valid SKILL.md, skill.json, or explicitly enabled package-skill manifest in the selected directory.
Bug fixes and release engineering
- Windows MSI builds now use the Polish WiX code page required by the publisher metadata, so the installer keeps the author name intact.
- The Windows packaging job runs on a WiX-compatible GitHub Actions runner.
- The release pipeline validates that macOS DMG, Windows MSI, Windows EXE, and SHA-256 checksums are present before publishing.
- CI verifies frontend linting, TypeScript, formatting, Rust formatting, Clippy, dependency audit, frontend tests, Rust tests, and native packages for macOS and Windows.
Breaking changes
None. This is the first stable public release, so there is no migration from an earlier public SkillSync API or installer format.
Upgrade notes
Future compatible updates follow Semantic Versioning. A patch release fixes defects, a minor release adds backward-compatible functionality, and a major release may change a skill contract. Review a major update before applying it. SkillSync creates a safety snapshot before the file-changing stage and validates the target manifest after synchronization.
Polski skrót
SkillSync v1.0.0 to pierwsze stabilne wydanie aplikacji desktopowej MIT do bezpiecznego zarządzania skills dla agentów AI. Ułatwia aktualizację skills Claude Code, Codex, Cursor, Gemini CLI i Antigravity. Przed zmianą plików tworzy kopię bezpieczeństwa, sprawdza manifest oraz umożliwia rollback. Jeśli katalog Git ma niezacommitowane zmiany w śledzonych plikach, aktualizacja zostaje zatrzymana do czasu świadomego rozwiązania problemu.
Jeśli projekt pomaga Ci utrzymać skills w porządku, zostaw gwiazdkę na GitHubie i udostępnij go osobie, która też utrzymuje kilka agentów AI.
License: MIT