docs(README): 補上 Copilot CLI 使用說明 #13
@@ -1,6 +1,6 @@
|
|||||||
# jsc — 跨 AI 助理程式碼工作流 Plugin
|
# jsc — 跨 AI 助理程式碼工作流 Plugin
|
||||||
|
|
||||||
一個可同時被 **Claude Code、Codex、Antigravity、OpenCode** 安裝的 plugin,提供一組以 **程式碼工作流** 為核心的 skills:
|
一個可同時被 **Claude Code、Codex、Antigravity、OpenCode、GitHub Copilot** 使用的 plugin,提供一組以 **程式碼工作流** 為核心的 skills:
|
||||||
**Gitea AI review findings 修復、分類提交、push 與 PR 建立流程**、**Gitea 議題 TODO 彙整與逐項實作流程**、**C# / .NET NuGet 套件更新流程**、**Gitea 專案批次同步**,以及 **action / Dockerfile 標準化流程**。
|
**Gitea AI review findings 修復、分類提交、push 與 PR 建立流程**、**Gitea 議題 TODO 彙整與逐項實作流程**、**C# / .NET NuGet 套件更新流程**、**Gitea 專案批次同步**,以及 **action / Dockerfile 標準化流程**。
|
||||||
核心是以 [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** 安裝。
|
||||||
@@ -16,8 +16,9 @@ plugin 名為 `jsc`,在 Claude Code 與 Antigravity 中 skill 以 **`/jsc:`
|
|||||||
| Codex | `codex plugin`(marketplace) | `$<name>` 或 `/skills` 選單 | ❌(用 `$name`) |
|
| Codex | `codex plugin`(marketplace) | `$<name>` 或 `/skills` 選單 | ❌(用 `$name`) |
|
||||||
| Antigravity | `agy plugin install` | `/jsc:<name>` 或自動觸發 | ✅ |
|
| Antigravity | `agy plugin install` | `/jsc:<name>` 或自動觸發 | ✅ |
|
||||||
| OpenCode | skills 目錄(複製/clone) | 描述需求自動觸發 | ❌(依名稱) |
|
| OpenCode | skills 目錄(複製/clone) | 描述需求自動觸發 | ❌(依名稱) |
|
||||||
|
| GitHub Copilot | repository instructions(`AGENTS.md` / `.github/copilot-instructions.md`) | 描述需求並要求讀取對應 `SKILL.md` | ❌(依指示檔) |
|
||||||
|
|
||||||
> Codex 不支援自訂前綴(skill 以 `$name` 呼叫);OpenCode 由模型依描述自動呼叫。兩者皆**不強制**前綴。
|
> Codex 不支援自訂前綴(skill 以 `$name` 呼叫);OpenCode 與 Copilot 由模型依描述與指示檔觸發。三者皆**不強制**前綴。
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
@@ -50,7 +51,7 @@ code/
|
|||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
## 安裝 / 更新 / 移除(各家原生 plugin CLI)
|
## 安裝 / 更新 / 移除(各助理)
|
||||||
|
|
||||||
> 指令中的 repo 網址換成你的:`https://gitea.jsc.idv.tw/plugins/code.git`
|
> 指令中的 repo 網址換成你的:`https://gitea.jsc.idv.tw/plugins/code.git`
|
||||||
>
|
>
|
||||||
@@ -142,6 +143,28 @@ rm -rf ~/.config/opencode/skills/{code-review-resolve,code-issues,code-nuget,cod
|
|||||||
|
|
||||||
- **呼叫**:直接描述需求,模型會依 skill 描述自動透過 skill 工具呼叫。
|
- **呼叫**:直接描述需求,模型會依 skill 描述自動透過 skill 工具呼叫。
|
||||||
|
|
||||||
|
### GitHub Copilot
|
||||||
|
|
||||||
|
GitHub Copilot 目前不是這類 `SKILL.md` plugin 的原生執行環境;安裝方式是把本 repo 作為 repository instructions 的來源,讓 Copilot 讀 `AGENTS.md` 與對應 `SKILL.md`。
|
||||||
|
|
||||||
|
```bash
|
||||||
|
# 安裝到目標 repo(把 code plugin vendored 進 .github/jsc-plugins/code)
|
||||||
|
git clone https://gitea.jsc.idv.tw/plugins/code.git .github/jsc-plugins/code
|
||||||
|
cp .github/jsc-plugins/code/AGENTS.md AGENTS.md
|
||||||
|
|
||||||
|
# 更新
|
||||||
|
git -C .github/jsc-plugins/code pull
|
||||||
|
cp .github/jsc-plugins/code/AGENTS.md AGENTS.md
|
||||||
|
|
||||||
|
# 移除
|
||||||
|
git rm -r .github/jsc-plugins/code
|
||||||
|
# 若 AGENTS.md 只供此 plugin 使用,再移除;若已有其他內容,請只刪除 JSC code 相關段落
|
||||||
|
# git rm AGENTS.md
|
||||||
|
```
|
||||||
|
|
||||||
|
- 也可把既有 `.github/copilot-instructions.md` 改成引用 `AGENTS.md` 與 `.github/jsc-plugins/code/skills/<skill>/SKILL.md`。
|
||||||
|
- **呼叫**:在 Copilot Chat/Coding Agent 任務中描述需求,例如「請依 `.github/jsc-plugins/code/skills/code-issues/SKILL.md` 處理議題」。
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
## 用 CLI 直接執行 skill(headless / 一次性)
|
## 用 CLI 直接執行 skill(headless / 一次性)
|
||||||
@@ -154,10 +177,11 @@ rm -rf ~/.config/opencode/skills/{code-review-resolve,code-issues,code-nuget,cod
|
|||||||
| Codex | `codex exec "<prompt>"` | `codex exec '$code-issues --tool api --repo plugins/code --issues 12,15 --yes'` |
|
| Codex | `codex exec "<prompt>"` | `codex exec '$code-issues --tool api --repo plugins/code --issues 12,15 --yes'` |
|
||||||
| Antigravity | `agy -p "<prompt>"` | `agy -p "/jsc:code-issues --tool api --repo plugins/code --issues 12,15 --yes"` |
|
| Antigravity | `agy -p "<prompt>"` | `agy -p "/jsc:code-issues --tool api --repo plugins/code --issues 12,15 --yes"` |
|
||||||
| OpenCode | `opencode run "<message>"` | `opencode run "讀 plugins/code 的 12、15 號議題,整理 TODO 並逐項實作、留言進度"` |
|
| OpenCode | `opencode run "<message>"` | `opencode run "讀 plugins/code 的 12、15 號議題,整理 TODO 並逐項實作、留言進度"` |
|
||||||
|
| GitHub Copilot | Copilot Chat / Coding Agent 任務 | `請依 .github/jsc-plugins/code/skills/code-issues/SKILL.md 處理 plugins/code 的 12、15 號議題` |
|
||||||
|
|
||||||
- Claude / Antigravity 支援 `/jsc:` 前綴,直接 `-p "/jsc:<name>"` 即可。
|
- Claude / Antigravity 支援 `/jsc:` 前綴,直接 `-p "/jsc:<name>"` 即可。
|
||||||
- Codex 以 `$<name>` 觸發;在 shell 請用**單引號**避免 `$` 被展開:`codex exec '$code-issues …'`。
|
- Codex 以 `$<name>` 觸發;在 shell 請用**單引號**避免 `$` 被展開:`codex exec '$code-issues …'`。
|
||||||
- OpenCode 沒有前綴,用自然語言描述需求,模型會自動透過 skill 工具呼叫。
|
- OpenCode 與 Copilot 沒有前綴,用自然語言描述需求;Copilot 任務中請明確指出要讀取的 `SKILL.md`。
|
||||||
- 帶引數就接在後面,例如 `claude -p "/jsc:code-issues --issues 12"`、`codex exec '$code-issues --issues 12'`。
|
- 帶引數就接在後面,例如 `claude -p "/jsc:code-issues --issues 12"`、`codex exec '$code-issues --issues 12'`。
|
||||||
|
|
||||||
---
|
---
|
||||||
@@ -267,3 +291,4 @@ rm -rf ~/.config/opencode/skills/{code-review-resolve,code-issues,code-nuget,cod
|
|||||||
- Codex:`codex plugin marketplace upgrade code`
|
- Codex:`codex plugin marketplace upgrade code`
|
||||||
- Antigravity:`git -C ~/jsc-plugin pull && agy plugin uninstall jsc && agy plugin install ~/jsc-plugin`
|
- Antigravity:`git -C ~/jsc-plugin pull && agy plugin uninstall jsc && agy plugin install ~/jsc-plugin`
|
||||||
- OpenCode:`git pull` 後重新複製 `skills/`
|
- OpenCode:`git pull` 後重新複製 `skills/`
|
||||||
|
- GitHub Copilot:更新 `.github/jsc-plugins/code` 後同步 `AGENTS.md` 或 `.github/copilot-instructions.md`
|
||||||
|
|||||||
Reference in New Issue
Block a user