diff --git a/.claude-plugin/plugin.json b/.claude-plugin/plugin.json index de089d6..c4490ba 100644 --- a/.claude-plugin/plugin.json +++ b/.claude-plugin/plugin.json @@ -1,6 +1,6 @@ { "name": "jsc-shared", - "version": "0.0.6", + "version": "0.0.7", "description": "JSC 跨 AI 助理共用規範 plugin(Claude Code / Codex / GitHub Copilot CLI / Antigravity / OpenCode),並提供整組 plugin 的安裝/更新/移除管理(plugins-install 一次安裝或更新 jsc-code/jsc-doc/jsc-persona/jsc-shared,plugins-uninstall 一次移除四個 JSC plugin)。安裝與更新一律以 Gitea 遠端 repo 的 README 與檔案為準,不依賴既有本機存取庫;所有 skills 以 SKILL.md 為共通標準;於 Claude Code 以 /jsc-shared: 前綴呼叫。", "skills": "./skills", "author": { diff --git a/.codex-plugin/plugin.json b/.codex-plugin/plugin.json index 8483dd8..97df34a 100644 --- a/.codex-plugin/plugin.json +++ b/.codex-plugin/plugin.json @@ -1,6 +1,6 @@ { "name": "jsc-shared", - "version": "0.0.6", + "version": "0.0.7", "description": "JSC 跨 AI 助理共用規範 skills plugin,`skills/` 為唯一真實來源,並提供整組 plugin 的安裝/更新/移除管理(plugins-install 一次安裝或更新 jsc-code/jsc-doc/jsc-persona/jsc-shared,plugins-uninstall 一次移除四個 JSC plugin)。安裝與更新一律以 Gitea 遠端 repo 的 README 與檔案為準,不依賴既有本機存取庫;所有 skills 以 SKILL.md 為共通標準。", "skills": "./skills/" } diff --git a/plugin.json b/plugin.json index 8483dd8..97df34a 100644 --- a/plugin.json +++ b/plugin.json @@ -1,6 +1,6 @@ { "name": "jsc-shared", - "version": "0.0.6", + "version": "0.0.7", "description": "JSC 跨 AI 助理共用規範 skills plugin,`skills/` 為唯一真實來源,並提供整組 plugin 的安裝/更新/移除管理(plugins-install 一次安裝或更新 jsc-code/jsc-doc/jsc-persona/jsc-shared,plugins-uninstall 一次移除四個 JSC plugin)。安裝與更新一律以 Gitea 遠端 repo 的 README 與檔案為準,不依賴既有本機存取庫;所有 skills 以 SKILL.md 為共通標準。", "skills": "./skills/" } diff --git a/skills/plugins-install/SKILL.md b/skills/plugins-install/SKILL.md index c83ad97..8681cb8 100644 --- a/skills/plugins-install/SKILL.md +++ b/skills/plugins-install/SKILL.md @@ -12,7 +12,7 @@ argument-hint: "[--assistant <助理清單,逗號分隔,或 all>] [--plugins | --- | --- | | A. 前置設定 | 決定要操作哪些助理(`--assistant` 可帶多個或 all/偵測本機有哪些 CLI/多個就讓使用者多選)→ 決定 gitea 主機 → 決定 plugin 清單(預設 code、doc、persona、shared) | | B. 現況盤點 | 對每個 plugin 查詢 marketplace 與 plugin 是否已存在,決定「安裝」或「更新」 | -| C. 安裝/更新 | 依助理的原生指令逐一執行;Antigravity 走 clone+本地路徑,沒有 plugin 匯入指令但可使用 skill 的助理則先 clone 技能組到工具專屬資料夾,再依 README.md 匯入到指定位置 | +| C. 安裝/更新 | 依助理的原生指令逐一執行;Antigravity 走 clone+本地路徑,預設把本機 clone 收在 `~/.gemini/plugins`(避免共用開發中工作區),沒有 plugin 匯入指令但可使用 skill 的助理則先 clone 技能組到工具專屬資料夾,再依 README.md 匯入到指定位置 | | D. 回報 | 以表格列出每個 plugin 的動作、結果與版本,並提醒重啟工作階段 | --- @@ -38,7 +38,7 @@ argument-hint: "[--assistant <助理清單,逗號分隔,或 all>] [--plugins - `--assistant <清單>`:要操作的助理,**可以多個**,以逗號分隔(`claude,codex,copilot,agy,opencode`),或用 `all` 代表本機找得到的全部。**省略時**依階段 A1 判斷(只有一個就直接用,多個就讓使用者多選)。 - `--plugins code,doc,persona,shared`:要處理的 plugin(以逗號分隔,用 repo 短名)。**省略時預設四個全做**。 - `--host `:gitea 主機,省略時預設 `gitea.jsc.idv.tw`。 -- `--clone-dir <目錄>`:Antigravity/其他會用到本機 clone 的工具的根目錄,**省略時預設 `~/plugins`**。 +- `--clone-dir <目錄>`:Antigravity/其他會用到本機 clone 的工具的根目錄。**省略時**,`agy` 預設用 `~/.gemini/plugins`,`opencode` 預設用 `~/plugins`;若兩者同時選中而且要共用同一個 clone root,必須由使用者明確指定 `--clone-dir`。 - `--yes`:全自動,不做確認式詢問(必要決策仍會中斷)。 --- @@ -85,7 +85,7 @@ argument-hint: "[--assistant <助理清單,逗號分隔,或 all>] [--plugins ### A2. 決定 gitea 主機與 clone 根目錄 - 主機:`--host` → `$GITEA_HOST` → 預設 `gitea.jsc.idv.tw`。 -- clone 根目錄(只有 `agy`/`opencode` 用得到):`--clone-dir` → 預設 `~/plugins`。目錄不存在就建立。 +- clone 根目錄(只有 `agy`/`opencode` 用得到):`--clone-dir` → `agy` 預設 `~/.gemini/plugins`、`opencode` 預設 `~/plugins`。若兩者同時選中且未指定 `--clone-dir`,先判斷是否要拆成兩個根目錄;不要默認共用同一份開發工作區。目錄不存在就建立。 ### A3. 決定 plugin 清單 @@ -102,7 +102,7 @@ argument-hint: "[--assistant <助理清單,逗號分隔,或 all>] [--plugins | Claude Code | `claude plugin marketplace list`、`claude plugin list` | 兩者都有 → 更新;缺 marketplace → 先 add;缺 plugin → install | | Codex | `codex plugin marketplace list`、`codex plugin list` | 同上 | | GitHub Copilot CLI | `copilot plugin marketplace list`、`copilot plugin list` | 同上 | -| Antigravity | `agy plugin list`,並看 `/` 是否存在 | 目錄在且已安裝 → 更新;否則安裝 | +| Antigravity | `agy plugin list`,並看 `~/.gemini/plugins/` 是否存在(除非使用者明確指定 `--clone-dir`) | 目錄在且已安裝 → 更新;否則安裝 | | 無 plugin 匯入指令但可使用 skill 的助理 | 先依工具設定或 README.md 找出**所有**候選匯入位置,再看哪個底下已有該 plugin 的 skill 目錄 | 有 → **更新該位置**(重新複製;注意不是覆蓋,見階段 C);都沒有 → 安裝到工具預設資料夾 | 盤點的迴圈是**助理 × plugin**:階段 A1 選定的每個助理,都要對每個 plugin 各判定一次,結果分開記。 @@ -152,7 +152,7 @@ copilot plugin update ### Antigravity(`agy`) -> `agy plugin install ` 目前只支援 github.com;gitea 一律走「clone + 本地路徑」。`agy` 沒有 update 子指令,更新=`git pull` 後重裝。 +> `agy plugin install ` 目前只支援 github.com;gitea 一律走「clone + 本地路徑」。`agy` 沒有 update 子指令,更新=`git pull` 後重裝。**預設 clone root 在 `~/.gemini/plugins`,不要偷用 `~/plugins` 的開發工作區。** ```bash # 取得或更新本機 clone(目錄已存在就 pull,不要無條件 clone)