github runkids/skillshare v0.18.4

5 hours ago

skillshare v0.18.4 Release Notes

Release date: 2026-03-31

TL;DR

  1. Branch support--branch / -b flag for skillshare install lets you clone from any branch, with full lifecycle support (update, check, registry rebuild)
  2. Target naming mode — new target_naming config lets you choose between flattened directory names (flat) and Agent Skills spec-compliant bare names (standard)
  3. Sync accuracy — Targets page now shows accurate skill counts and explains why skills were skipped (naming conflicts, collisions)
  4. Folder tree view — the Skills page folder layout is now a real tree with expand/collapse, sticky headers, and virtualized rendering
  5. GitHub Actions — one-step CI setup with setup-skillshare@v1

Branch Support

A new --branch / -b flag for skillshare install lets you clone from a specific git branch instead of the remote default:

skillshare install github.com/team/skills --branch develop --all
skillshare install github.com/team/skills --track --branch frontend

This works with both tracked repos and regular skill installs. The branch is persisted in metadata, so skillshare update and skillshare check automatically use the correct branch without you needing to specify it again.

To install the same repo on multiple branches, use --name to avoid collisions:

skillshare install github.com/team/skills --track --branch frontend --name team-frontend
skillshare install github.com/team/skills --track --branch backend --name team-backend

The Web UI Install form shows a Branch input field inline with the Source when a git URL is detected. The Skills page displays a branch badge on cards, and the Skill Detail page includes branch in the metadata section.

Sync Accuracy

The Targets page now shows accurate expected skill counts. Previously, targets using standard naming could display misleading numbers like 39032/64075 shared — the 64075 included skills that were silently dropped due to name collisions or validation failures, while all 39032 resolved skills were actually in sync.

Now the expected count reflects what sync actually resolves, and the Targets page and Sync page show a summary when skills are skipped (e.g. "12345 skill(s) skipped, 456 name collision(s)"), with a suggestion to switch to flat naming to include all skills.

The CLI sync command also no longer floods the terminal with per-skill validation warnings — these are now shown as a compact summary line.

Target Naming Mode

A new target_naming config option controls how synced skill directories are named in targets:

target_naming: standard
targets:
  claude:
    skills:
      target_naming: flat  # per-target override

In flat mode (the default, unchanged behavior), nested skills like frontend/dev become frontend__dev in targets. In standard mode, the SKILL.md name field is used directly (e.g. dev), following the Agent Skills specification.

Standard mode validates naming rules, detects collisions (multiple skills mapping to the same bare name), and warns about both. Switching from flat to standard automatically migrates existing managed entries — symlinks and copies are renamed in place. If a local skill already occupies the bare name, the legacy entry is preserved with a warning.

Name conflict output has also been redesigned: duplicate warnings are now deduplicated across targets and shown as a compact summary.

Folder Tree View (Web UI)

The second layout on /skills is now a true folder tree. Directories are rendered as collapsible nodes matching the structure you created with --into, and skills appear as leaf nodes inside their folders.

Key interactions:

  • Click any folder row to expand or collapse it
  • Expand All / Collapse All buttons in the toolbar
  • Sticky header — when scrolling through a long folder, the folder name stays pinned below the toolbar. Click it to scroll back to the folder
  • Search-aware — typing in the search box or applying a filter auto-expands all folders containing matches. Clearing the filter restores your previous collapse state
  • Hover tooltip — hovering over a skill row for 1.5 seconds shows its path, source, and install date at the cursor position
  • Collapse state persists across page reloads

The tree is virtualized, so it handles 10,000+ skills without slowing down.

Also in this release: the Enable/Update/Uninstall buttons on the Skill Detail page no longer wrap awkwardly on narrow screens.

Agent Target Paths

Targets that support agents (Claude, Cursor, OpenCode, Augment) now declare separate agents: paths in targets.yaml. This is internal groundwork for upcoming agent sync support — no user-facing changes yet, but the config structure is ready.

GitHub Actions

A new setup-skillshare action makes CI setup a single step:

- uses: runkids/setup-skillshare@v1

This replaces the manual curl-based installation in CI pipelines. The CI/CD documentation has been updated with examples using the action.

Changelog

  • 1791899 Support custom INSTALL_DIR variable in install.sh
  • 354db51 feat(check): branch-aware remote ref comparison and registry rebuild
  • 8def337 feat(install): add Branch field to InstallOptions, SkillMeta, SkillEntry, SkillEntryDTO
  • 1c4aeff feat(install): parse --branch / -b flag
  • 55ce0fb feat(install): pass --branch to discovery clone for regular installs
  • 09a40a4 feat(install): pass --branch to git clone for tracked repos
  • 428eb11 feat(install): persist branch to metadata and registry, read in update
  • db69638 feat(install): project mode --branch support and branch display in check
  • c760206 feat(list): show branch in CLI list TUI detail panel
  • 903df9f feat(server): add branch to skills API and install handlers
  • ccdafd3 feat(sync): add target_naming config option (flat/standard)
  • 6e3f7ea feat(ui): branch support in web UI
  • d2716e1 feat(ui): replace grouped view with folder tree view
  • 14713f9 fix(install): pass source.Branch to sparse checkout in subdir discovery
  • 24b7b4d fix(reconcile): write tracked repo branch to registry.yaml
  • 6f70e76 fix(sync): accurate expectedSkillCount and surface skipped skills
  • f01ec9e fix(sync): summarize resolution warnings instead of printing each one
  • 284b3cb fix(test): update sync warning assertion to match summary format
  • 0424a69 fix(ui): improve table name truncation, tooltip positioning, and detail metadata layout
  • c75ab36 fix(ui): optimistic update for target mode/naming dropdowns
  • f9163d7 fix(ui): reduce table tooltip delay from 1500ms to 1000ms
  • 178462d fix: three branch-related bugs found in review
  • f0f15ce refactor(targets): restructure targets.yaml to nested per-kind format
  • 94d7ccd refactor: deduplicate branch helpers and cache per-repo git calls

Notes

Contributors

@kevincobain2000

Don't miss a new skillshare release

NewReleases is sending notifications on new releases.