sync #3

Merged
admin merged 9 commits from master into develop 2026-07-17 05:34:58 +00:00
2 changed files with 14 additions and 59 deletions
Showing only changes of commit 27b10ae154 - Show all commits
+14 -22
View File
@@ -3,7 +3,7 @@
一個可同時被 **Claude Code、Codex、Antigravity、OpenCode** 安裝的 plugin 模板。 一個可同時被 **Claude Code、Codex、Antigravity、OpenCode** 安裝的 plugin 模板。
核心是以 [Agent Skills`SKILL.md`](https://agentskills.io) 標準撰寫的共用 skills(唯一真實來源放在 `skills/`), 核心是以 [Agent Skills`SKILL.md`](https://agentskills.io) 標準撰寫的共用 skills(唯一真實來源放在 `skills/`),
搭配各助理各自的 plugin manifest,讓**同一個 repo** 可用各家**原生 plugin CLI** 安裝。 搭配各助理各自的 plugin manifest,讓**同一個 repo** 可用各家**原生 plugin CLI** 安裝。
在 Claude Code 與 Antigravity 中,skill 以 **`/jsc:` 前綴**呼叫(例如 `/jsc:hello`)。 在 Claude Code 與 Antigravity 中,skill 以 **`/jsc:` 前綴**呼叫(例如 `/jsc:spec-output`)。
--- ---
@@ -35,7 +35,7 @@ template/
│ └── marketplace.json # Codex marketplacename: "jsc-plugins"url source 指向本 repo │ └── marketplace.json # Codex marketplacename: "jsc-plugins"url source 指向本 repo
├── plugin.json # Antigravity 外掛定義(name: "jsc"skills: "./skills/" ├── plugin.json # Antigravity 外掛定義(name: "jsc"skills: "./skills/"
├── skills/ # ★ 唯一真實來源:所有 skills ├── skills/ # ★ 唯一真實來源:所有 skills
│ └── hello/SKILL.md │ └── spec-*/SKILL.md # 共用規範 skills(一規範一目錄)
├── AGENTS.md # 跨助理共用指引 ├── AGENTS.md # 跨助理共用指引
└── README.md └── README.md
``` ```
@@ -68,7 +68,7 @@ claude plugin marketplace remove template
- 工作階段內 slash 版(等價):把 `claude plugin` 換成 `/plugin` - 工作階段內 slash 版(等價):把 `claude plugin` 換成 `/plugin`
- 本機開發(免 push):`claude plugin marketplace add C:\Users\h3285\source\repos.plugins\template`(本地路徑)後再 install。 - 本機開發(免 push):`claude plugin marketplace add C:\Users\h3285\source\repos.plugins\template`(本地路徑)後再 install。
- **呼叫**`/jsc:<name>`(例 `/jsc:hello`)。 - **呼叫**`/jsc:<name>`(例 `/jsc:spec-output`)。
### Codex ### Codex
@@ -87,7 +87,7 @@ codex plugin marketplace remove template
- 安裝 token `jsc@template` = plugin 名(`.codex-plugin/plugin.json``name`@ marketplace 名(`.agents/plugins/marketplace.json``name`)。 - 安裝 token `jsc@template` = plugin 名(`.codex-plugin/plugin.json``name`@ marketplace 名(`.agents/plugins/marketplace.json``name`)。
- 本 repo 的 Codex marketplace 以 `url` 來源指向自己,故 Codex **一律從 gitea 安裝**(需先 push);安裝後重啟 Codex。 - 本 repo 的 Codex marketplace 以 `url` 來源指向自己,故 Codex **一律從 gitea 安裝**(需先 push);安裝後重啟 Codex。
- **呼叫**`$<name>`(例 `$hello`),或用 `/skills` 選單。 - **呼叫**`$<name>`(例 `$spec-output`),或用 `/skills` 選單。
### Antigravity`agy` ### Antigravity`agy`
@@ -109,7 +109,7 @@ agy plugin uninstall jsc
- 若把 skills 放到 GitHub,則可直接 `agy plugin install https://github.com/<owner>/<repo>` - 若把 skills 放到 GitHub,則可直接 `agy plugin install https://github.com/<owner>/<repo>`
- 其他:`agy plugin list``agy plugin enable jsc` / `disable jsc``agy plugin validate <path>`。安裝後重啟工作階段。 - 其他:`agy plugin list``agy plugin enable jsc` / `disable jsc``agy plugin validate <path>`。安裝後重啟工作階段。
- **呼叫**`/jsc:<name>`(例 `/jsc:hello`)或依描述自動觸發。 - **呼叫**`/jsc:<name>`(例 `/jsc:spec-output`)或依描述自動觸發。
### OpenCode ### OpenCode
@@ -127,7 +127,7 @@ git -C ~/plugins/template pull
cp -r ~/plugins/template/skills/* ~/.config/opencode/skills/ cp -r ~/plugins/template/skills/* ~/.config/opencode/skills/
# 移除 # 移除
rm -rf ~/.config/opencode/skills/hello rm -rf ~/.config/opencode/skills/spec-*
``` ```
> **Windows PowerShell**`cp -r A B` → `Copy-Item A B -Recurse -Force`、`rm -rf X` → `Remove-Item X -Recurse -Force`、`~` → `$HOME`。 > **Windows PowerShell**`cp -r A B` → `Copy-Item A B -Recurse -Force`、`rm -rf X` → `Remove-Item X -Recurse -Force`、`~` → `$HOME`。
@@ -140,17 +140,17 @@ rm -rf ~/.config/opencode/skills/hello
安裝好之後,不必進互動介面,一行指令就能叫某個 skill 跑完並印出結果: 安裝好之後,不必進互動介面,一行指令就能叫某個 skill 跑完並印出結果:
| 助理 | headless 指令 | 執行 `hello` skill | | 助理 | headless 指令 | 執行 `spec-output` skill |
| --- | --- | --- | | --- | --- | --- |
| Claude Code | `claude -p "<prompt>"` | `claude -p "/jsc:hello"` | | Claude Code | `claude -p "<prompt>"` | `claude -p "/jsc:spec-output"` |
| Codex | `codex exec "<prompt>"` | `codex exec '$hello'` | | Codex | `codex exec "<prompt>"` | `codex exec '$spec-output'` |
| Antigravity | `agy -p "<prompt>"` | `agy -p "/jsc:hello"` | | Antigravity | `agy -p "<prompt>"` | `agy -p "/jsc:spec-output"` |
| OpenCode | `opencode run "<message>"` | `opencode run "用 hello skill 打個招呼"` | | OpenCode | `opencode run "<message>"` | `opencode run "說明 JSC 共用輸出規範的內容"` |
- Claude / Antigravity 支援 `/jsc:` 前綴,直接 `-p "/jsc:<name>"` 即可。 - Claude / Antigravity 支援 `/jsc:` 前綴,直接 `-p "/jsc:<name>"` 即可。
- Codex 以 `$<name>` 觸發;在 shell 請用**單引號**避免 `$` 被展開:`codex exec '$hello'` - Codex 以 `$<name>` 觸發;在 shell 請用**單引號**避免 `$` 被展開:`codex exec '$spec-output'`
- OpenCode 沒有前綴,用自然語言描述需求,模型會自動透過 skill 工具呼叫。 - OpenCode 沒有前綴,用自然語言描述需求,模型會自動透過 skill 工具呼叫。
- 帶引數就接在後面,例如 `claude -p "/jsc:hello 參數"``codex exec '$hello 參數'` - 帶引數就接在後面,例如 `claude -p "/jsc:spec-output 參數"``codex exec '$spec-output 參數'`
--- ---
@@ -161,14 +161,6 @@ rm -rf ~/.config/opencode/skills/hello
<!-- JSC-SKILLS:START --> <!-- JSC-SKILLS:START -->
### `hello`
範例 skill,用來驗證 jsc plugin 是否安裝成功,也是新增 skill 的範本。當使用者輸入 hello、想測試 plugin、或想看 skill 模板長什麼樣子時觸發;回覆一句問候並簡述此 plugin 的用途。
- **Claude Code / Antigravity**`/jsc:hello`
- **Codex**`$hello`,或用 `/skills` 選單
- **OpenCode**:描述需求自動觸發
### 共用規範(spec-* ### 共用規範(spec-*
以下 skills 是 **codedoc plugins 各 skill 引用的共用規範**:其他 skill 內文以 `/jsc:spec-<name>` 引用時載入;也可單獨呼叫查看規範內容。 以下 skills 是 **codedoc plugins 各 skill 引用的共用規範**:其他 skill 內文以 `/jsc:spec-<name>` 引用時載入;也可單獨呼叫查看規範內容。
@@ -192,7 +184,7 @@ rm -rf ~/.config/opencode/skills/hello
## 新增一個 skill ## 新增一個 skill
1. 複製範本:`cp -r skills/hello skills/<your-skill-name>` 1. 複製範本:`cp -r skills/spec-output skills/<your-skill-name>`(或從 template repo 的 `skills/hello` 複製)
2. 編輯 `skills/<your-skill-name>/SKILL.md` 的 frontmatter 2. 編輯 `skills/<your-skill-name>/SKILL.md` 的 frontmatter
- `name`:小寫、數字、連字號(`-`),最長 64 字元。**這就是 Claude Code / Antigravity 的 `/jsc:<name>`**。 - `name`:小寫、數字、連字號(`-`),最長 64 字元。**這就是 Claude Code / Antigravity 的 `/jsc:<name>`**。
- `description`:第三人稱,寫清楚「何時用、何時不用」與觸發關鍵字 — 這是各助理自動載入的唯一依據。 - `description`:第三人稱,寫清楚「何時用、何時不用」與觸發關鍵字 — 這是各助理自動載入的唯一依據。
-37
View File
@@ -1,37 +0,0 @@
---
name: hello
description: 範例 skill,用來驗證 jsc plugin 是否安裝成功,也是新增 skill 的範本。當使用者輸入 hello、想測試 plugin、或想看 skill 模板長什麼樣子時觸發;回覆一句問候並簡述此 plugin 的用途。
---
# hello(範例 skill
這是 `jsc` plugin 的範例 skill。它有兩個用途:
1. **驗證安裝** — 跨各家 AI 助理確認 skill 已被正確載入。
2. **作為範本** — 複製這個資料夾即可新增一個新的 skill。
## 呼叫方式
| 助理 | 呼叫方式 |
| --- | --- |
| Claude Code | `/jsc:hello` |
| Antigravity | `/jsc:hello`,或描述需求自動觸發 |
| Codex | 在提示詞輸入 `$hello`,或用 `/skills` 選單 |
| OpenCode | 直接描述需求,模型會透過 skill 工具自動呼叫 |
## 行為
當這個 skill 被觸發時:
1. 回覆「Hello from **jsc** 👋」。
2. 用一句話說明 `jsc` 是一個跨 AI 助理的共用 skill 集合。
3. 提示使用者可以在 README 的「Skills 目錄」查看所有可用的 skills。
## 如何以此為範本新增 skill
1. 複製 `skills/hello/``skills/<your-skill-name>/`
2. 修改 `SKILL.md` 的 frontmatter
- `name`:小寫、數字、連字號(`-`),最長 64 字元。**這個名稱會成為 Claude Code / Antigravity 的 `/jsc:<name>` 指令**。
- `description`:第三人稱,寫清楚「什麼時候該用、什麼時候不該用」與觸發關鍵字 — 各家助理靠這段文字決定是否自動載入。
3. 在內文寫下 skill 的具體步驟。
4. 手動把新 skill 補進 README 的「Skills 目錄」區塊。