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 buildVerifică 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