All notable changes to this project will be documented in this file.
- Support for 32 additional global skill destinations: Aider Desk, Antigravity CLI, Antigravity IDE, AstrBot, Autohand Code, Bob, Claude Code, CodeArts Agent, CodeMaker, CodeStudio, DeepAgents, Devin, Dexto, Firebender, ForgeCode, Hermes Agent, Inference.sh, Jazz, Kimi Code CLI, Lingma, Loaf, Moxby, Ona, Qoder CN, Reasonix, Rovo Dev, Tabnine CLI, Terramind, TinyCloud, Warp, Zed, and Zenflow
- Ubuntu CI now smoke-tests
cargo install --path . --locked --force, covering the packaged install path in addition to normal build/test jobs - The install smoke test now runs across the current CI matrix environments instead of only Linux
- Fix build in Linux system
- Shared
gittransport plumbing for clone/install flows, centralizing repository clone, remote-branch detection, and credential callback handling
capsync cloneandcapsync installnow use the same low-level git transport layer instead of keeping duplicate git plumbing in service-specific modules- The binary entrypoint now calls into the library crate directly, removing duplicate module declarations and duplicate unit-test execution during validation
- Public GitHub clone/install flows now honor git2 credential callbacks consistently, avoiding
authentication required but no callback setfailures in environments that rewrite HTTPS remotes to SSH or otherwise require transport auth negotiation - Linux installs no longer force vendored OpenSSL builds by default; vendored
git2/OpenSSL is now limited to macOS socargo installdoes not depend on Perl-based OpenSSL source builds on Linux
- Darwin release builds now vendor
libgit2and OpenSSL throughgit2, avoiding macOS OpenSSL discovery failures during tagged release builds
capsync clone <repo>to materialize a whole remote skills repository intoskills_source- Supports
owner/repo,owner/repo.git, HTTPS, and SSH references - Resolves the remote default branch automatically and syncs after clone by default
- Supports
capsync install <reference>to install a single skill intoskills_source/<slug>- Supports explicit HTTPS
skills.shURLs, GitHub tree URLs, andowner/repo/...references - Resolves one concrete skill from a temporary checkout and syncs after install by default
- Supports explicit HTTPS
- New clone/install coverage and expanded technical documentation for workflow, configuration, and safety behavior
- Expanded README and technical documentation to explain the clone vs install mental model and current workflow limitations
- Renamed
documentation/detailed-working.mdtodocumentation/how-it-works.md - Updated dependencies:
toml1.0.3+spec-1.1.0→1.1.2+spec-1.1.0tempfile3.25.0→3.27.0clap4.5.60→4.6.0shellexpand3.1.1→3.1.2
- Supported-agent registry path mappings for Amp, Antigravity, GitHub Copilot, Kimi CLI, OpenClaw, Pi, Replit, Trae CN, and Windsurf
- Clone safety and correctness around same-repo detection, default-branch resolution, repo-without-origin handling, and branch-mismatch confirmation before re-cloning
- Install safety around HTTP
skills.shrejection, GitHub tree URL validation, URL-encoded branch handling, path traversal guards, symlink rejection, and staged replacement of existing installs
- Allow re-initialization with confirmation prompt
- Check gh auth status before creating PR
- Handle empty commands_source string gracefully
- Commands support: Sync custom slash commands alongside skills
- Supports OpenCode, Claude Code, Kilo Code, and Codex
- Auto-detects
commands/subdirectory during init
- New tools support: Added Augment, Cortex, iFlow CLI, Mistral Vibe
- Fixed tool paths: OpenClaw, Pi, Windsurf, GitHub Copilot, Replit
- Created detailed technical documentation in
documentation/detailed-working.md - Documentation covers design, approach, features, and working with conversational tone
- Renamed config field
source→skills_source(backward serde alias) - Renamed config field
path→skills_path(backward compatible via serde alias) - Added
commands_sourceandcommands_pathfields to configuration syncnow syncs both skills AND commands (if commands_source is configured)- Rewrote README with clearer explanations and better structure
- Added "Important Notice" section explaining what CapSync is and is not
- Simplified license section while maintaining accuracy
capsync add <tool>command to add tools to configuration- Tool validation - shows error if tool doesn't exist or is unsupported
--no-syncflag foraddcommand to skip syncing after adding- Tests for tools module (6 new tests)
initcommand now only adds detected tools to config (not all 40+)- Config output now only shows enabled tools (cleaner display)
- Support for 40+ AI tools (expanded from 6)
- Shell variable expansion ($HOME, ~) in paths
- Interactive init - requires user to enter source path (no default)
- Single source of truth for all tool definitions in
tools.rs
- Default source path - user must provide their own
- Emoji symbols (✓✗⚠) from output for cleaner display
- Unnecessary comments throughout codebase
- Release workflow binary naming (cap_sync → capsync)
- README download URLs
- Interactive init command requires user input for source path
- Interactive
initcommand with prompts - Auto-detection of installed tools during init
- Shell variable expansion support ($HOME, ~)
- Upgraded to Rust edition 2024
- Added crates.io metadata (license, repository, keywords, categories)
- Renamed package from
cap_synctocapsync
removecommand to remove symlinks from specific tools--allflag for remove commandstatuscommand to check symlink status
- Refactored to use directory symlinks instead of recursive file symlinking
- Simplified config structure (source + destinations map)
- Initial release of CapSync
- Configuration system with TOML support
- Tool detection for OpenCode, ClaudeCode, Codex, Cursor, Amp, Antigravity
- Symlink synchronization with cleanup
- CLI commands: init, config, detect-tools, sync, status
- CI/CD pipeline with testing and releases
- Cross-platform binary builds (Linux, macOS x86_64/aarch64)
- Manual sync mode with
capsync sync - Automatic tool detection
- Configurable source skills directory
- Enable/disable tools per configuration
- Broken symlink cleanup
- SHA-256 checksum generation for releases
- Complete README with installation and usage instructions
- Inline help and status reporting