refactor(doc): 接上 shared 共用規範,去除重抄段落並修正時區/機密遮蔽引用
依 todo.md 執行的規範治理專案:worklog/funcs/issues-analyze/ issues-analyze-to-file/issues-sync/notifications/docker 七個 skill 改為 引用 shared 新增的 14 個共用 spec(token 優先序、issue 讀取、TODO list、 ask-user、subagent、no-scratch-files、skill-invocation、script-path 等), 不再重抄內容;wiki_api.py 改用 zoneinfo 而非硬編 +8 offset,並補上與 shared/scripts/lib/redact-patterns.json 的對應註記;worklog 的 --tune 改為 呼叫 /jsc-shared:models --task summary。 Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
@@ -73,120 +73,16 @@ doc/
|
||||
|
||||
## 安裝 / 更新 / 移除(各助理)
|
||||
|
||||
> 指令中的 repo 網址:`https://gitea.jsc.idv.tw/plugins/doc.git`
|
||||
> 完整的安裝/更新/移除指令(Claude Code、Codex、Antigravity、OpenCode、GitHub Copilot CLI 五種助理),一律以 [`/jsc-shared:spec-plugin-cli`](https://gitea.jsc.idv.tw/plugins/shared/src/branch/master/skills/spec-plugin-cli/SKILL.md) 為唯一權威版本,套用時代入下列佔位符:
|
||||
>
|
||||
> **Claude / Codex 從 git URL 安裝(會 clone 遠端),請先把本 repo `push` 到 gitea。**
|
||||
> **Antigravity 的 `agy plugin install <url>` 目前只支援 github.com**;gitea 請改用「clone + 本地路徑」(見 Antigravity 節)。
|
||||
> 本機/離線:Claude 可用本地路徑加 marketplace;Antigravity 用本地路徑安裝。
|
||||
|
||||
### Claude Code
|
||||
|
||||
```bash
|
||||
# 安裝
|
||||
claude plugin marketplace add https://gitea.jsc.idv.tw/plugins/doc.git
|
||||
claude plugin install jsc-doc@doc
|
||||
|
||||
# 更新
|
||||
claude plugin marketplace update doc
|
||||
claude plugin update jsc-doc@doc
|
||||
|
||||
# 移除
|
||||
claude plugin uninstall jsc-doc@doc
|
||||
claude plugin marketplace remove doc
|
||||
```
|
||||
|
||||
- 工作階段內 slash 版(等價):把 `claude plugin` 換成 `/plugin`。
|
||||
- 本機開發(免 push):`claude plugin marketplace add C:\Users\h3285\source\repos.plugins\doc`(本地路徑)後再 install。
|
||||
- **呼叫**:`/jsc-doc:<name>`(例 `/jsc-doc:docker`)。
|
||||
|
||||
### Codex
|
||||
|
||||
```bash
|
||||
# 安裝
|
||||
codex plugin marketplace add https://gitea.jsc.idv.tw/plugins/doc.git
|
||||
codex plugin add jsc-doc@doc
|
||||
|
||||
# 更新(重新抓取 marketplace 的 git 快照)
|
||||
codex plugin marketplace upgrade doc
|
||||
|
||||
# 移除
|
||||
codex plugin remove jsc-doc@doc
|
||||
codex plugin marketplace remove doc
|
||||
```
|
||||
|
||||
- 安裝 token `jsc-doc@doc` = plugin 名(`.codex-plugin/plugin.json` 的 `name`)@ marketplace 名(`.agents/plugins/marketplace.json` 的 `name`)。
|
||||
- 本 repo 的 Codex marketplace 以 `url` 來源指向自己,故 Codex **一律從 gitea 安裝**(需先 push);安裝後重啟 Codex。
|
||||
- **呼叫**:`$<name>`(例 `$docker`),或用 `/skills` 選單。
|
||||
|
||||
### Antigravity(`agy`)
|
||||
|
||||
> `agy plugin install <url>` 目前**只支援 github.com**;gitea 等自架 git 不支援 URL 安裝,請先 `git clone` 再用**本地路徑**安裝。
|
||||
|
||||
```bash
|
||||
# 安裝:clone 後用本地路徑
|
||||
git clone https://gitea.jsc.idv.tw/plugins/doc.git ~/plugins/doc
|
||||
agy plugin install ~/plugins/doc
|
||||
|
||||
# 更新(agy 無 update 子指令 → git pull 後重裝)
|
||||
git -C ~/plugins/doc pull
|
||||
agy plugin uninstall jsc-doc
|
||||
agy plugin install ~/plugins/doc
|
||||
|
||||
# 移除
|
||||
agy plugin uninstall jsc-doc
|
||||
```
|
||||
|
||||
- 若把 skills 放到 GitHub,則可直接 `agy plugin install https://github.com/<owner>/<repo>`。
|
||||
- 其他:`agy plugin list`、`agy plugin enable jsc-doc` / `disable jsc-doc`、`agy plugin validate <path>`。安裝後重啟工作階段。
|
||||
- **呼叫**:`/jsc-doc:<name>`(例 `/jsc-doc:docker`)或依描述自動觸發。
|
||||
|
||||
### OpenCode
|
||||
|
||||
OpenCode 的「plugin」是 TypeScript/npm 套件,不適用於 skill 包;skills 改用**目錄安裝**。
|
||||
OpenCode 會讀 `~/.config/opencode/skills/`(也會讀 `~/.claude/skills/`、`~/.agents/skills/`)。
|
||||
|
||||
```bash
|
||||
# 安裝
|
||||
git clone https://gitea.jsc.idv.tw/plugins/doc.git ~/plugins/doc
|
||||
mkdir -p ~/.config/opencode/skills
|
||||
cp -r ~/plugins/doc/skills/* ~/.config/opencode/skills/
|
||||
|
||||
# 更新
|
||||
git -C ~/plugins/doc pull
|
||||
cp -r ~/plugins/doc/skills/* ~/.config/opencode/skills/
|
||||
|
||||
# 移除
|
||||
rm -rf ~/.config/opencode/skills/docker ~/.config/opencode/skills/funcs ~/.config/opencode/skills/issues-analyze-to-file ~/.config/opencode/skills/issues-analyze ~/.config/opencode/skills/issues-sync ~/.config/opencode/skills/worklog
|
||||
```
|
||||
|
||||
> **worklog 在 OpenCode 的 skills 目錄安裝不可用**:上面的複製只帶 `skills/`,不含 `scripts/` 與 `hooks/`,worklog 的所有模式都會失敗;若以完整 plugin 目錄執行並能解析 `scripts/worklog`,可用 `WORKLOG_CLI=opencode` 作為摘要 CLI。
|
||||
|
||||
> **Windows PowerShell**:`cp -r A B` → `Copy-Item A B -Recurse -Force`、`rm -rf X` → `Remove-Item X -Recurse -Force`、`~` → `$HOME`。
|
||||
|
||||
- **呼叫**:直接描述需求,模型會依 skill 描述自動透過 skill 工具呼叫。
|
||||
|
||||
### GitHub Copilot CLI
|
||||
|
||||
Copilot CLI 支援與 Claude Code 類似的原生 plugin / marketplace 指令,可直接從 marketplace 安裝、更新與移除本 plugin。
|
||||
|
||||
```bash
|
||||
# 安裝
|
||||
copilot plugin marketplace add https://gitea.jsc.idv.tw/plugins/doc.git
|
||||
copilot plugin install jsc-doc@doc
|
||||
|
||||
# 更新
|
||||
copilot plugin marketplace update doc
|
||||
copilot plugin update jsc-doc@doc
|
||||
|
||||
# 移除
|
||||
copilot plugin uninstall jsc-doc@doc
|
||||
copilot plugin marketplace remove doc
|
||||
```
|
||||
|
||||
- 安裝 token `jsc-doc@doc` = plugin 名(plugin manifest 的 `name`)@ marketplace 名。
|
||||
- `copilot plugin marketplace add` 支援 GitHub `owner/repo`、git URL 與本地路徑;Gitea repo 可用上方 HTTPS URL。
|
||||
- **呼叫**:在 Copilot CLI 中用自然語言描述需求,例如 `copilot -i "請使用 docker 整理 docker-compose 註解"`。
|
||||
- `worklog` 的 `Stop` hook 自動記錄仍只有相容 hook 環境會實際執行;Copilot CLI 可作為 `WORKLOG_CLI=copilot` 摘要執行器,但不會執行 Claude Code hook。
|
||||
> | 佔位符 | 值 |
|
||||
> | --- | --- |
|
||||
> | `<host>` | `gitea.jsc.idv.tw` |
|
||||
> | `<name>` | `doc` |
|
||||
> | `<plugin>` | `jsc-doc` |
|
||||
> | `<marketplace>` | `doc` |
|
||||
> | `<token>`(= `<plugin>@<marketplace>`) | `jsc-doc@doc` |
|
||||
> | `<url>` | `https://gitea.jsc.idv.tw/plugins/doc.git` |
|
||||
|
||||
---
|
||||
|
||||
@@ -291,3 +187,4 @@ copilot plugin marketplace remove doc
|
||||
- Antigravity:`git -C ~/plugins/doc pull && agy plugin uninstall jsc-doc && agy plugin install ~/plugins/doc`
|
||||
- OpenCode:`git pull` 後重新複製 `skills/`
|
||||
- Copilot:`copilot plugin marketplace update doc && copilot plugin update jsc-doc@doc`
|
||||
|
||||
|
||||
Reference in New Issue
Block a user