Skip to main content

update

Update a skill or tracked repository to the latest version.

skillshare update my-skill           # Update single skill
skillshare update team-skills # Update tracked repo
skillshare update --all # Update everything

update demo

What Happens

For Tracked Repositories

┌─────────────────────────────────────────────────────────────────┐
│ skillshare update _team-skills │
└─────────────────────────────────────────────────────────────────┘


┌─────────────────────────────────────────────────────────────────┐
│ 1. Check for uncommitted changes │
│ → "Repository has uncommitted changes" │
│ → Use --force to discard and update │
└─────────────────────────────────────────────────────────────────┘
│ (clean)

┌─────────────────────────────────────────────────────────────────┐
│ 2. Run git pull │
│ → Fetching from origin... │
│ → 3 commits, 5 files changed │
└─────────────────────────────────────────────────────────────────┘


┌─────────────────────────────────────────────────────────────────┐
│ 3. Show changes │
│ → abc1234 Add new feature │
│ → def5678 Fix bug in parser │
└─────────────────────────────────────────────────────────────────┘

For Regular Skills

┌─────────────────────────────────────────────────────────────────┐
│ skillshare update my-skill │
└─────────────────────────────────────────────────────────────────┘


┌─────────────────────────────────────────────────────────────────┐
│ 1. Read metadata │
│ → Source: github.com/user/skills │
└─────────────────────────────────────────────────────────────────┘


┌─────────────────────────────────────────────────────────────────┐
│ 2. Re-install from source │
│ → Cloning repository... │
│ → Updated my-skill │
└─────────────────────────────────────────────────────────────────┘

Options

FlagDescription
--all, -aUpdate all tracked repos and skills with metadata
--force, -fDiscard local changes and force update
--dry-run, -nPreview without making changes
--help, -hShow help

Update All

Update everything at once:

skillshare update --all

This updates:

  1. All tracked repositories (git pull)
  2. All skills with source metadata (re-install)

Example Output

┌─────────────────────────────────────────────────────────────────┐
│ skillshare update --all │
│ Updating 2 tracked repos + 3 skills │
└─────────────────────────────────────────────────────────────────┘

[1/5] ✓ _team-skills Already up to date
[2/5] ✓ _personal-repo 3 commits, 2 files
[3/5] ✓ my-skill Reinstalled from source
[4/5] ! other-skill has uncommitted changes (use --force)
[5/5] ✓ another-skill Reinstalled from source

┌────────────────────────────┐
│ Summary │
│ Total: 5 │
│ Updated: 4 │
│ Skipped: 1 │
└────────────────────────────┘

Handling Conflicts

If a tracked repo has uncommitted changes:

# Option 1: Commit your changes first
cd ~/.config/skillshare/skills/_team-skills
git add . && git commit -m "My changes"
skillshare update _team-skills

# Option 2: Discard and force update
skillshare update _team-skills --force

After Updating

Run skillshare sync to distribute changes to all targets:

skillshare update --all
skillshare sync
  • install — Install skills
  • upgrade — Upgrade CLI and built-in skill
  • sync — Sync to targets