Files
meta/skills/skill-update/SKILL.md
T
jiantw83 4454d62e82 feat(meta): 抽出技能目錄同步與引用查找為共用工具
什麼:新增 tools/sync-skill-manifest.sh(重建 domain README 的「Skills 目錄」區塊並將三份 plugin manifest 的版本一併 bump)與 tools/find-skill-refs.sh(掃描所有 jsc domain 存取庫,列出技能名稱或 /jsc-{domain}:{name} 指令形式的引用檔案),並更新 skill-check、skill-delete、skill-new、skill-update、skillset-update 五支 SKILL.md 改為呼叫這兩支工具。skill-delete 與 skill-update 的 frontmatter description 也一併收斂在此次改動內,配合本次流程調整精簡文字。
為何:五支技能先前各自以近乎相同的內嵌文字描述「同步 README、bump 版本」的機械流程,重複維護成本高且容易漂移;skill-delete 的引用盤點步驟先前只是一段沒有工具、也沒有標明子代理人的裸 grep 指示,稽核時難以驗證涵蓋範圍。
如何:把兩段機械流程各自抽成一支冪等 shell 工具,五支技能的對應步驟改為「子代理人只做內容判斷與修改,機械式同步與版本 bump 一律呼叫工具」;skill-delete 步驟 4 改呼叫 find-skill-refs.sh 取代裸 grep 說明。
負責範圍:jsc-meta 技能組自我管理,skill-check、skill-delete、skill-new、skill-update、skillset-update 五支技能共用的機械流程去重。
2026-08-24 14:49:23 +08:00

1.9 KiB

name, description
name description
skill-update Update an existing skill in the jsc skill set. List all skills from the Gitea canonical marketplace (cloning any missing domain repo) and let the user pick one, ask update details via decision tree, apply the change, then re-check against the guidelines checklist until it passes and open a PR via jsc-git pr. Use for modifying a skill; not for creating (skill-new) or removing (skill-delete).

skill-update — update a skill

Single source of guidelines: ../../references/guidelines.md.

Flow

  1. Query Gitea for the canonical skill set first: run jsc-gitea/tools/gitea.sh api GET /repos/plugins/jsc/raw/.claude-plugin/marketplace.json to get the authoritative domain list, then scan local jsc-*/skills/*/SKILL.md and present a "domain / name / description" list covering every domain in the marketplace. Completion condition: the list covers all marketplace domains.
  2. For any marketplace domain whose repo is missing from the working directory, clone it first (gitea.sh clone-url plugins/{domain}), then rescan. Completion condition: every domain repo exists locally.
  3. Let the user pick the skill to update.
  4. Ask for update details via the jsc-ask:ask decision tree (change the goal? the trigger? the flow? move rules down to a hook or a tool?). Every option states its impact scope (example: renaming breaks the existing invocation command).
  5. Update the skill — the modification part MUST run as a sub agent: modify SKILL.md and related files. Then run tools/sync-skill-manifest.sh {domain-path} directly (no sub agent needed) to sync the domain README's 「Skills 目錄」 section and bump the version in all three manifests.
  6. Check every item of the guidelines.md audit checklist. On any failure, return to step 4: ask again and fix, until all items pass.
  7. Call jsc-git:pr to open a Push Request.