Summary
When installing a tracked repo where SKILL.md sits at the repository root (non-spec layout, but common), skillshare install --track reports success but does not write an entry to .metadata.json, and the repo never appears in skillshare status --json under tracked_repos. The .gitignore entry is added correctly. Net effect: tracking is effectively broken — skillshare update <name> and re-install on another machine cannot recover the repo.
Version
skillshare v0.19.16 (Linux, Homebrew tap). Also reproduces on v0.19.13.
Reproduction
$ skillshare install op7418/guizang-ppt-skill --track --force
...
├─ Found 0 skill(s)
├─ Tracked _guizang-ppt-skill
└─ Location .../skills/_guizang-ppt-skill
$ grep guizang $SKILLS_SOURCE/.metadata.json
(no output)
$ skillshare status --json | jq '.tracked_repos[] | select(.name | contains("guizang"))'
(no output — tracked_repos only lists pre-existing entries)
$ cat $SKILLS_SOURCE/.gitignore
# BEGIN SKILLSHARE MANAGED - DO NOT EDIT
...
_guizang-ppt-skill/ # <-- this WAS added
# END SKILLSHARE MANAGED
Expected
.metadata.json should gain an entry such as:
"_guizang-ppt-skill": {
"source": "https://github.com/op7418/guizang-ppt-skill.git",
"tracked": true,
"branch": "main"
}
matching the format used for other tracked repos in v0.19.x (e.g. _blader-humanizer, _vercel-labs-agent-skills).
Why this matters
Cross-machine sync workflow:
- Machine A:
skillshare install <repo> --track, commit the skills source directory, git push
- Machine B:
git pull, then skillshare install (no args) to re-fetch tracked remotes from metadata
Step 2 silently does nothing for repos that hit this bug — skills end up missing on machine B with no diagnostic. The "Tracked _xxx" line in the install output also misleads users into thinking tracking succeeded.
Possibly related
Repos that trigger it
github.com/op7418/guizang-ppt-skill
github.com/alchaincyf/huashu-design
Both place SKILL.md at the repository root alongside README.md, LICENSE, assets/, etc. (i.e. they don't follow the Agent Skill Specification directory layout). Even so, the CLI should either reject the install or persist tracking metadata — not silently lie.
Summary
When installing a tracked repo where
SKILL.mdsits at the repository root (non-spec layout, but common),skillshare install --trackreports success but does not write an entry to.metadata.json, and the repo never appears inskillshare status --jsonundertracked_repos. The.gitignoreentry is added correctly. Net effect: tracking is effectively broken —skillshare update <name>and re-install on another machine cannot recover the repo.Version
skillshare v0.19.16(Linux, Homebrew tap). Also reproduces onv0.19.13.Reproduction
Expected
.metadata.jsonshould gain an entry such as:matching the format used for other tracked repos in v0.19.x (e.g.
_blader-humanizer,_vercel-labs-agent-skills).Why this matters
Cross-machine sync workflow:
skillshare install <repo> --track, commit the skills source directory,git pushgit pull, thenskillshare install(no args) to re-fetch tracked remotes from metadataStep 2 silently does nothing for repos that hit this bug — skills end up missing on machine B with no diagnostic. The "Tracked _xxx" line in the install output also misleads users into thinking tracking succeeded.
Possibly related
SKILL.mdmixed with source code), partially fixed in v0.19.1 / v0.19.6 for install/update behavior. This appears to be the same code path missing the metadata write.Repos that trigger it
github.com/op7418/guizang-ppt-skillgithub.com/alchaincyf/huashu-designBoth place
SKILL.mdat the repository root alongsideREADME.md,LICENSE,assets/, etc. (i.e. they don't follow the Agent Skill Specification directory layout). Even so, the CLI should either reject the install or persist tracking metadata — not silently lie.