# skill-sync **Repository Path**: lvhaodeyeye/skill-sync ## Basic Information - **Project Name**: skill-sync - **Description**: 同步claude、opencode、kimi cli的skil,使用uv - **Primary Language**: Unknown - **License**: MIT - **Default Branch**: main - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-02-10 - **Last Updated**: 2026-02-10 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # Skill Sync [![Python](https://img.shields.io/badge/python-3.9+-blue.svg)](https://www.python.org/downloads/) [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT) A CLI tool for syncing skills across AI Code CLI tools. Manage and share your development skills, configurations, and best practices between different CLI tools like Claude, Kimi, and OpenCode. ## Features - 🚀 Easy-to-use CLI interface with rich terminal output - 🔄 Sync skills between multiple AI Code CLIs (Claude, Kimi, OpenCode) - 📝 Support for multiple skill formats (SKILL.md, .md, YAML) - 🌈 Rich terminal output with syntax highlighting - 🔗 Git integration with automatic commit generation - 📦 Cross-platform support - 🎯 Interactive skill selection - 🧪 Dry-run mode for safe testing ## Installation ### From Source (Recommended) ```bash git clone https://github.com/skill-sync/skill-sync.git cd skill-sync uv pip install -e . ``` Or using pip: ```bash git clone https://github.com/skill-sync/skill-sync.git cd skill-sync pip install -e . ``` ## Quick Start After installation, you can use the `skill-sync` command: ```bash # Show help skill-sync --help # Initialize skill-sync home directory skill-sync --init # List all skills in ~/.skill-sync/skills/ skill-sync --list # Sync skills to all installed CLIs skill-sync # Sync skills from a specific CLI to ~/.skill-sync skill-sync --sync-from kimi # Sync to local project directory skill-sync --cli-local claude # Sync only specific skill(s) skill-sync -s python-debug # Dry run - show what would be done skill-sync -n # Remove a skill skill-sync -r # Remove without confirmation skill-sync -r -y ``` ## CLI Reference ### Usage ``` skill-sync [OPTIONS] ``` ### Options | Option | Short | Description | |--------|-------|-------------| | `--help` | `-h` | Show help message and exit | | `--version` | | Show version and exit | | `--init` | | Initialize ~/.skill-sync directory only | | `--list` | | List all skills in ~/.skill-sync/skills/ | | `--cli-local ` | `-l` | Install to local directory of specified CLI | | `--sync-from ` | `-f` | Sync skills from CLI global directory to ~/.skill-sync | | `--skill ` | `-s` | Specify specific skill(s) to sync (supports glob patterns) | | `--remove ` | `-r` | Remove a skill by name (with confirmation) | | `--yes` | `-y` | Skip confirmation, select all by default | | `--dry-run` | `-n` | Show what would be done without making changes | | `--verbose` | `-v` | Enable verbose output | ### Supported CLIs - **claude** - Anthropic Claude Code CLI - **kimi** - Kimi CLI - **opencode** - OpenCode CLI ## Configuration ### Directory Structure Skill Sync uses the following directory structure: ``` ~/.skill-sync/ # Main home directory ├── skills/ # Your skill collection ├── .git/ # Git repository for version control └── .gitignore # Default gitignore ``` ### CLI Directory Mappings | CLI | Global Path | Local Path | |-----|-------------|------------| | claude | `~/.claude/skills` | `.claude/skills` | | kimi | `~/.config/agents/skills` | `.agents/skills` | | opencode | `~/.opencode/commands` | `.opencode/commands` | ### Project Configuration You can create a `skill-sync.yaml` in your project root: ```yaml version: "1.0" clis: claude: enabled: true kimi: enabled: true opencode: enabled: false ``` ## Skill Formats Skill Sync supports three skill formats: ### 1. Standard SKILL.md (directory-based) ``` skill-name/ └── SKILL.md ``` ### 2. OpenCode-style (.md files) ``` command-name.md ``` ### 3. YAML definitions ``` skill-name.yaml ``` ## Development ### Setup Development Environment ```bash # Clone the repository git clone https://github.com/skill-sync/skill-sync.git cd skill-sync # Install with development dependencies uv pip install -e ".[dev]" # Run tests pytest # Run linting ruff check . ruff format . # Run type checking mypy src/skill_sync ``` ## Project Structure ``` skill-sync/ ├── src/ │ └── skill_sync/ │ ├── __init__.py # Package version │ ├── __main__.py # Entry point for python -m │ ├── cli.py # Main CLI implementation │ ├── cli_discovery.py # CLI detection utilities │ ├── config.py # Configuration management │ ├── git_manager.py # Git operations │ ├── interactive.py # Rich UI components │ ├── skill_scanner.py # Skill discovery and parsing │ └── sync_engine.py # Synchronization logic ├── tests/ │ └── test_*.py ├── pyproject.toml ├── README.md └── .gitignore ``` ## Requirements - Python >= 3.9 - Git (for version control features) ## Dependencies - **click** >= 8.0 - CLI framework - **rich** >= 13.0 - Rich text and beautiful formatting - **pyyaml** >= 6.0 - YAML parsing - **gitpython** >= 3.1 - Git integration - **platformdirs** >= 4.0 - Platform-specific directories ## License This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details. ## Contributing Contributions are welcome! Please feel free to submit a Pull Request. 1. Fork the repository 2. Create your feature branch (`git checkout -b feature/amazing-feature`) 3. Commit your changes (`git commit -m 'Add some amazing-feature'`) 4. Push to the branch (`git push origin feature/amazing-feature`) 5. Open a Pull Request ## Support If you encounter any issues or have questions, please [open an issue](https://github.com/skill-sync/skill-sync/issues). --- Made with ❤️ by the Skill Sync Team