github runkids/skillshare v0.23.4

2 hours ago

skillshare v0.23.4 Release Notes

TL;DR

  1. Marketplace cleanup works when settings lost the declaration. Excluding or removing a Claude plugin no longer fails with "could not finish removing its marketplace" on every sync.
  2. Skill and plugin name clashes are explained before install. Adding a Claude plugin named like a skill folder in Claude's skills directory now says which copy Claude will load.

Marketplace cleanup

In 0.23.3, Skillshare removed its Claude marketplaces with --scope user (or project). When a marketplace was only recorded in Claude's known_marketplaces.json, for example after a dotfile manager overwrote ~/.claude/settings.json, Claude refused that removal:

Marketplace 'skillshare-…' is not declared in user settings. Omit --scope to remove it from all scopes.

The Plugins page then kept showing the plugin as pending, and every sync failed the same way. Skillshare now removes the marketplace without a scope. It still checks first that the marketplace is registered from its own state directory, and lists again afterwards. If the same name is also declared at another path, Skillshare reports the conflict and removes nothing. Upgrade and sync once to clean up a marketplace left behind:

skillshare sync plugins -g

Skill and plugin name clashes

Claude reads a skill folder in its skills directory that has a plugin manifest (.claude-plugin/plugin.json) as a plugin named <name>@skills-dir, and it loads only one plugin per name. Installing a plugin from the same repository as a skill you already sync, such as humanizer, made /plugin report:

Not loaded — the name "humanizer" is already taken by an installed plugin

The install preview now explains this before you apply it. Claude loads the plugin and skips the skill folder until one of them is renamed or removed. Nothing is changed automatically; keep the copy you want.

Don't miss a new skillshare release

NewReleases is sending notifications on new releases.