github runkids/skillshare v0.23.1

latest release: v0.23.2
5 hours ago

skillshare v0.23.1 Release Notes

TL;DR

  1. Sync stops deleting files you made yourself. Skill links, agent links, extra links and copy-mode agent files are removed only when skillshare created them.
  2. Codex plugins can be updated. plugin update now works for Codex, and one Agent that cannot take an update no longer blocks the others.
  3. Git Sync handles two computers. Pull and merge diverged histories, and resolve conflicting files in the dashboard.
  4. Account targets reach further. Hooks can bind to account targets, and an account can run a compatible CLI such as omo for plugins.
  5. Pi MCP keeps up with Pi 0.99.2, and Pi can turn off a global server in one project.

Sync keeps what it did not create

Several prune paths removed more than they should, and some of the removals could not be undone:

  • In merge mode, a skill link that pointed into the source but was filtered out was deleted even when you made it by hand or with another tool. Now only links skillshare recorded in its manifest are removed, or any link with --force. Other links are kept and counted as local.
  • Agent and extra links to files outside the source are kept. Only broken links and links into the source are pruned. A link that cannot be read, for example because of permissions, is no longer treated as broken.
  • In copy and extension modes, agent files that did not match a source agent were deleted, including your own. Skillshare now tracks the copies it writes and removes only those you have not edited.
  • A prune that fails is reported as a warning instead of being counted as done.

Links made before 0.15.0, and agent copies that were already orphaned before this upgrade, are kept. Remove them by hand or with --force.

Codex plugin updates

Codex has no update command. Skillshare now refreshes the reviewed snapshot, adds the plugin again so Codex replaces the installed copy, and checks the installed version before recording success.

skillshare plugin update review --target codex --no-tui

A plugin disabled in Codex is skipped with the reason instead of being turned back on. Imported Codex plugins update through codex plugin marketplace upgrade, and imported Pi packages in global mode through pi update.

When a plugin is installed on several Agents and one of them cannot take the update, the others now update, the skipped one keeps its pending update, and each Agent's version is shown.

Git Sync across computers

When this computer and the remote both have new commits, Pull becomes Pull and merge and keeps both histories, so you can push the result. With uncommitted changes while the remote is ahead, Commit and push becomes Commit and pull.

If both sides changed the same files, Review conflicts shows each file's local and remote version side by side. Keep one whole-file version per file, then Apply choices and pull. Nothing changes until you confirm, and if either side moves on before you apply, the dialog asks you to choose again.

Discard changes restores tracked files to the last commit and removes untracked files after you confirm. Ignored files, nested repositories and the root config.yaml are kept.

Account targets

A global hook binding can name an account target, such as a second Codex home:

targets:
  codex-2:
    agent: codex
    config_dir: ~/.codex-2

An account target can also set cli, so its plugin commands run a compatible executable instead of the Agent's own:

skillshare target add omo --agent pi --config-dir ~/.omo/agent --cli omo

When CLAUDE_CONFIG_DIR, CODEX_HOME or PI_CODING_AGENT_DIR points at an account's folder, the plain Agent target now keeps its default home instead of following the variable, and sync warns about it.

MCP

A disabled entry for a project under mcp.projects now turns the global server off for Pi in that project. If a 0.23.0 sync removed pi from such an entry's targets, add it back.

mcp:
  projects:
    ~/work/project01:
      servers:
        context7:
          disabled: true

Pi 0.99.2 is supported:

  • Its auth: {provider: NAME} setting, which sends a provider's /login token to an HTTP server, is kept in piOptions instead of being refused or dropped as an old adapter setting. It needs an https url, or http on localhost, and global mode.
  • Turned on in Pi in a server's Pi settings on the dashboard turns the server off in Pi (enabled: false) without removing it.
  • Pi now reads names that differ only in - and _, such as my-docs and my_docs, as one server. Skillshare refuses the second before writing it, instead of leaving Pi to skip it.

In project mode, mcp check and the dashboard show pending syncs and conflicts again, and mcp remove --keep-files now really stops managing a project's Claude off switch.

Other fixes

  • Editing a hook from a target page keeps its account bindings.
  • skillshare hooks reports the real error when the global config cannot load.
  • Claude account targets list their plugins even when the dashboard runs from the home folder.
  • Plugin results on the dashboard are translated.
  • Beautify in Settings → Files keeps config sections in order and the schema line at the top.
  • A new Desktop App guide covers installing Skillshare App on macOS, Windows and Linux.

Don't miss a new skillshare release

NewReleases is sending notifications on new releases.