[Bug] Bulk `sk update` reports Updated:0 with ghost entries while individual `sk update <name>` works
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 3/5
- Tempo stimato
- 1-2 giorni
- Idoneità per principianti
- 72/100
- Tipo di issue
- Bug
- Chiarezza
- Specificata chiaramente
- Stato di attività
- Tranquilla
- Stack tecnologico
- node.js, typescript
- Ambito
- cli
Direzione di ricerca
Start by comparing the bulk skillkit update entry point with the individual-skill update path, then trace how each bulk skill list is assembled and inspect the lock files named in the report. Reproduce with a small set of installed skills before investigating the larger environment. Done means bulk updates match individual updates and visit only skills with existing .skillkit.json metadata, with regression tests covering both behaviors.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
Summary
skillkit update (without arguments) consistently reports Updated: 0, Skipped: N, Failed: 0 for all skills, with messages like no SKILL.md in source (for managed skills) or no metadata, reinstall needed (for skills that no longer exist on disk).
However, running skillkit update <skill-name> on the same skills works perfectly and reports no changes detected.
Environment
- skillkit: 1.24.0
- Node: v24.14.0
- macOS: 26.5
- Shell: fish
Reproduction
Setup: ~94 skills installed via skillkit install <owner/repo> --all --global --force, all with .skillkit.json metadata in ~/.claude/skills/<name>/.
# 1. Bulk update — all fail
$ skillkit update
Skipping xlsx (no SKILL.md in source)
Skipping canvas-design (no SKILL.md in source)
# ... 78 similar lines
Updated: 0, Skipped: 110, Failed: 0
# 2. Same skills, individually — all succeed
$ skillkit update xlsx
xlsx: no changes detected
Updated: 0, Skipped: 1, Failed: 0
$ skillkit update canvas-design
canvas-design: no changes detected
Updated: 0, Skipped: 1, Failed: 0
# 3. Loop confirms: 78/78 OK individually
$ for d in ~/.claude/skills/*/; do
name=$(basename "$d")
[ -f "$d/.skillkit.json" ] && skillkit update "$name" 2>&1 | grep "no changes"
done
# 78 lines of "no changes detected"
Additional symptom: ghost entries
The bulk run also iterates over 110 skills when only ~94 exist on disk. The extras include names like imagegen, openai-docs, PowerPoint, Excel, plugin-creator, skill-installer — none of which exist anywhere under ~/.claude/skills/, ~/.agents/skills/, the project's .claude/skills/, the npx-skills lock (~/.agents/.skill-lock.json), or the skillkit lock (~/.skillkit/lock.json).
Things tried that did not clear the ghost list:
mv ~/.skillkit/marketplace/ <trash>(marketplace cache)- Removing ghost entries from
~/.agents/.skill-lock.json - Fixing wrong paths in
~/.skillkit/lock.json - Removing stale project-local
.claude/skills/
The ghost entries appear to come from some runtime/in-memory source I couldn't trace via grep -r.
Expected behavior
skillkit update should iterate only over skills with .skillkit.json metadata on disk and produce the same per-skill outcome as skillkit update <name>.
Workaround
Manual loop with individual updates works fine:
for d in ~/.claude/skills/*/; do
name=$(basename "$d")
[ -f "$d/.skillkit.json" ] && skillkit update "$name"
done
Happy to provide more debug info (lock files, env, etc.) if useful.
- Lingua principale
- TypeScript
- Stelle
- 1.6k
- Fork
- 156
- Metriche di merge delle PR
- Nessuna PR unita negli ultimi 30g
Preparare l'ambiente
- Nessun Dockerfile né file Docker Compose
- Nessun modello di pull request
- Leggi la guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di rohitg00/skillkit
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 68/100
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 64/100
-
[Publish] DatacircleAperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 68/100
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 70/100
-
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 76/100
Tutte le issue di rohitg00/skillkit
Issue simili
-
bug
Difficoltà 2/5 1-3 ore Idoneità per principianti 67/100
outline/outline#14529 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 1/5 1-3 ore Idoneità per principianti 86/100
g1331/phantom-circuit#93 ·
I maintainer di solito rispondono entro 1 giorno
-
bug
Difficoltà 2/5 1-3 ore Idoneità per principianti 68/100
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
I maintainer di solito rispondono entro 1 giorno
-
compiler
Difficoltà 2/5 1-3 ore Idoneità per principianti 74/100
HerringtonDarkholme/hd-lang#1699 ·
I maintainer di solito rispondono entro 1 giorno