Sincronizare Bidirecțională Skill-uri

Ce face

Skill-sync ține sincronizate sursele de skill-uri din vault (_infra/core/wednesday/skills/) cu plugin-ul Cowork (_infra/cowork/wednesday/skills/). Ori de câte ori adaugi, ștergi sau modifici un skill într-unul din cele două locuri, skill-ul detectează drift-ul și propagă schimbarea automat.

Direcția principală este vault → cowork: vault-ul e sursa canonică. Skill-urile cu cowork_exposed: true în frontmatter sunt exportate prin npm run plugin:build. Skill-sync marchează automat skill-urile eligibile (active, non-meta) ca expuse. Direcția inversă (cowork → vault) e doar informativă pentru plugin-urile externe; fișierele SKILL.md generate nu se editează manual.

Când îmi folosește

Rulează skill-sync când spui „I added a skill”, „Sync skills”, „rebuild plugin” sau „audit skills”. De asemenea, se declanșează automat după ce creezi un fișier nou de tip <NNN>_*_skill.md și vrei să-l faci disponibil în Cowork, sau imediat după hook-ul de install al plugin-ului.

Nu-l folosi când modifici doar conținutul unui skill existent (pipeline-ul de build preia editările automat) sau când actualizezi plugin-uri externe (acestea rămân gestionate de autorii lor).

Cum îl invoc / declanșez

Scriptul de referință este _infra/scripts/skill_sync.py și are trei moduri principale:

# Audit drift, afișează raport, exit code 1 dacă există diferențe
python3 _infra/scripts/skill_sync.py audit
 
# Marchează automat toate skill-urile eligibile din vault
python3 _infra/scripts/skill_sync.py expose-all
 
# Audit + auto-expose + build + install (pipeline complet)
python3 _infra/scripts/skill_sync.py build

Verifică doctrina pentru detalii exacte despre lista EXCLUDE_IDS și condițiile de eligibilitate.

Exemplu practic

Adaug un skill nou în vault cu status: active. Spui „make it Cowork-available”. Skill-sync rulează expose-all, adaugă frontmatter-ul necesar (cowork_exposed: true, cowork_name, cowork_description, cowork_first_exposed_phase: 330), apoi pornești build ca să genereze fișierele SKILL.md în plugin și să ruleze install-ul.

Output / unde aterizează

După build primești un raport de audit, skill-urile eligibile sunt marcate în vault, fișierele plugin-ului sunt regenerate și plugin-ul este reinstalat. Drift-ul este afișat clar, iar exit code-ul indică dacă mai există neconcordanțe.

Limite / gotchas

Skill-urile externe (telegram, imessage) apar doar ca inventar informativ și nu sunt importate înapoi. Modificările manuale în fișierele generate SKILL.md se pierd la următorul build. Skill-urile cu status diferit de active sau cele din lista de excludere nu sunt expuse automat. All guides