Auditeerib ja korrastab oskuste kogu ning ühtlustab nimetamise.
Kogu oskus — vaikeversiooni hoitakse GitHubis; sinu muudatused jäävad sinu enda klooni.
Korralda oskustekogu ümber nii, et nimed kodeerivad, mida iga oskus tegelikult puudutab, ning hoia symlink’id ja ristviited ümbernimetamisel järjepidevad.
Paljudes seadistustes on ÜKS kanooniline oskustekogu jagatud kataloogis ja see on symlinkitud iga tööriista hub’i
(nt ~/.claude/skills/, ~/.codex/skills/). Mõned oskused elavad projekti repos ja on
hub’i symlinkitud. Üks ümbernimetamine võib seega puudutada mitut symlink’i ning iga dokumenti, mis
viitab vanale nimele — seda hajumist see oskus haldab.
Loetle iga oskus ja kus see tegelikult elab. Hub’i kirje on tavaliselt symlink kanoonilisele kataloogile:
for hub in <hub-1> <hub-2>; do
echo "== $hub =="; ls -la "$hub"
done
Lahenda iga nimi tegelikuks kataloogiks käsuga readlink -f. Märgi, millised oskused elavad projekti repos
versus jagatud kogus — repo-siseste ümbernimetamiste jaoks peab selles repos kasutama git mv.
Konventsioon: eesliide nimetab backend’i, millest oskus sõltub, otsustatud selle järgi, mida see tegelikult kutsub, mitte teema järgi. Otsi igast oskusekataloogist iseloomulikku sõltuvust:
grep -rlE "<api-host>/api|/api/<x>|<db-client>|<AUTH_TOKEN_NAME>" "$skill_dir"
acme-*).acme-seo-* vs acme-reddit-*), et seotud oskused sorteeruksid koos.Esita klassifikatsioon kasutajale enne ümbernimetamist. Oskus, mis tundub tootespetsiifiline, aga ei tee ühtegi backend-kutset, kuulub kohalikku korvi, ja vastupidi — mine sõltuvuse järgi.
Iga ümbernimetamise OLD → NEW jaoks:
mv <lib>/OLD <lib>/NEW
- Repo-sisene: cd <repo> && git mv <skills-path>/OLD <skills-path>/NEW && git commit
- Valesti paigutatud valesse reposse? Teisalda see jagatud kogusse, mitte lihtsalt ümber nimetades kohapeal.name: frontmatter failis NEW/SKILL.md, et see vastaks kataloogile — laadija võtmeks on
see, mitte kausta nimi.OLD-i
nime või vana tee järgi:
bash
grep -rln "OLD" <lib> <memory-dirs> 2>/dev/null
Asenda esmalt kõige spetsiifilisem string (täielik vana tee enne paljast nime), et oskus, mis
samuti liikus, saaks oma tee puhtalt uuendatud.# broken symlinks in any hub
for hub in <hub-1> <hub-2>; do
find -L "$hub" -maxdepth 1 -type l ! -exec test -e {} \; -print
done
# no lingering old names
grep -rn "OLD" <lib> 2>/dev/null
# each renamed skill's name: matches its dir
grep -m1 "^name:" <lib>/NEW/SKILL.md
Kinnita, et laadija registreerib iga ümbernimetatud oskuse uue nime all. Eemalda kõik eelnevalt surnud symlink’id, mida pühkimisel leiad — odav parandada, segadust tekitav jätta.
mv.