package-sync

Synchronize SEMO package sources with the .claude/ directory using rsync.

Updated Dec 11, 2025
One-click install
npx skills add https://github.com/semicolon-devteam/semo --skill package-sync
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: package-sync
Source: https://github.com/semicolon-devteam/semo/tree/main/packages/meta/skills/package-sync
Command: npx skills add https://github.com/semicolon-devteam/semo --skill package-sync

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill requires Bash, rsync, find, grep, and includes references (resource) components.

What problem does it solve?

This Skill automates the synchronization of SEMO package sources with the local .claude/ directory, ensuring that your development environment's symlinks and package components are always up-to-date and consistent after any changes or submodule updates.

Core Features & Use Cases

  • Source-to-Local Sync: Synchronizes sax/packages/{package}/ source with .claude/{package}/ using rsync.
  • Symlink Management: Updates symbolic links for Agents, Skills, and Commands within the .claude/ directory after submodule updates.
  • Priority Handling: Ensures semo-meta components correctly override semo-core components when names conflict.
  • Integrity Check Mode: Provides a --check-only option to verify synchronization status without making changes.
  • Use Case: After pulling the latest changes to your SEMO submodules, you can run "package-sync --symlinks" to automatically update all local symlinks and ensure your environment is consistent.

Quick Start

Sync docs repo: "rsync -av --delete sax/packages/semo-po/ .claude/semo-po/" Sync local symlinks: "package-sync --symlinks" Check sync status: "package-sync --check-only"

Frequently Asked Questions about package-sync

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I synchronize SEMO package sources with my local environment?

Package synchronization keeps your `.claude/` directory aligned with SEMO package sources using rsync-based sync. Run `package-sync --symlinks` after pulling submodule updates to automatically update symbolic links for Agents, Skills, and Commands in your local environment.

What's the best way to verify package synchronization without making changes?

Use the `--check-only` option to verify synchronization status. This integrity check mode inspects your current sync state against source packages and broken symlinks without modifying files, ideal for automated validation in CI pipelines.

How does symlink management work when semo-meta and semo-core components conflict?

Package sync implements priority handling that ensures `semo-meta` components correctly override `semo-core` components when names conflict. Symlinks are updated to resolve to the higher-priority version after each synchronization run.

Can I use rsync with package-sync for docs repository synchronization?

Yes. Package sync wraps idempotent rsync-based synchronization for docs repositories. You can sync docs directly with `rsync -av --delete sax/packages/semo-po/ .claude/semo-po/` or use `package-sync` for integrated symlink and integrity management.

What happens to broken symlinks when I update SEMO submodules?

Package sync includes broken-link checks and automatic symlink updates after submodule updates. The `--symlinks` flag re-establishes all symbolic links in `.claude/` and reports integrity issues through standardized output parseable by version-updater tools.