diff --git a/README.md b/README.md index 90290d5..e90247b 100644 --- a/README.md +++ b/README.md @@ -28,7 +28,7 @@ Matt Pocock 的工程技能整套(grilling、spec/ticket、TDD、code review ### [jsc-wiki](plugins/jsc-wiki) `0.0.2` -讀取本 repo 的 wiki「JSC 知識庫」(一本書),依領域提供 `/jsc-wiki:system`、`:network`、`:virt`、`:container`、`:database`、`:dev`、`:ai`、`:apps` 等指令,並可用 `book-search`/`book-import` 蒐集網路知識後加入 wiki。 +讀取本 repo 的 wiki「JSC 知識庫」(一本書),依領域提供 `/jsc-wiki:system`、`:network`、`:virt`、`:container`、`:database`、`:dev`、`:ai`、`:apps` 等指令;`book-search` 蒐集網路知識,`book-import` 依章節加入 wiki,新增領域時自動產生對應技能。 各插件的指令與可複製的程式碼片段請見其資料夾內的 README。 diff --git a/plugins/jsc-wiki/README.md b/plugins/jsc-wiki/README.md index 34c3cdb..4149d7f 100644 --- a/plugins/jsc-wiki/README.md +++ b/plugins/jsc-wiki/README.md @@ -1,18 +1,18 @@ # jsc-wiki -讀取並擴充 [JSC 知識庫](https://gitea.jsc.idv.tw/jiantw83/jsc-marketplace/wiki)(本 repo 的 wiki,一本書),依領域提供指令,並可把網路上的知識整理後加入 wiki。讀取指令唯讀,第一次使用會 clone 到 `~/.cache/jsc-wiki`,之後每次先更新,離線時使用快取。 - ## 指令 ### `/jsc-wiki:wiki [關鍵字]` -顯示目錄;給關鍵字則跨章搜尋並讀取最相關的頁面。 +顯示 [JSC 知識庫](https://gitea.jsc.idv.tw/jiantw83/jsc-marketplace/wiki)(本 repo 的 wiki,一本書)的目錄;給關鍵字則跨章搜尋並讀取最相關的頁面。 ```text /jsc-wiki:wiki traefik ``` -### 依領域 +### `/jsc-wiki:<領域> [主題]` + +依領域讀取對應章節。不給主題時列出該章篇目,給主題則讀取對應頁面回答。 | 指令 | 章 | 內容 | | --- | --- | --- | @@ -25,8 +25,6 @@ | `/jsc-wiki:ai` | 7 AI 工具 | ccstatusline、CLIProxyAPI、OpenClaw、OpenCode、PicoClaw | | `/jsc-wiki:apps` | 8 應用服務 | Emby、MeTube、Vaultwarden、ezBookkeeping | -不給主題時只列出該章篇目;給主題則讀取對應頁面回答。 - ```text /jsc-wiki:database 怎麼安裝 PostgreSQL 並建立使用者 ``` @@ -41,25 +39,23 @@ ### `/jsc-wiki:book-import <草稿路徑>` -把草稿加入 wiki:判斷知識領域與章節 → 主題已存在就修改該頁,否則新增 → 套用頁面格式 → 重建目錄與上下頁導覽 → lint → 你確認後推送。 +把草稿加入 wiki:判斷領域與章節 → 主題已存在就修改該頁,否則新增 → 套用頁面格式 → 重建目錄與上下頁導覽 → lint → 確認後推送。沒有合適的章節時可新增領域,並自動產生對應的 `/jsc-wiki:<領域>` 技能。 ```text /jsc-wiki:book-import ~/.cache/jsc-wiki/drafts/caddy-ubuntu-reverse-proxy.md ``` -推送需要 `tea` 的預設 login(或環境變數 `JSC_WIKI_TOKEN`)。寫入工具 `scripts/book.sh` 以 TypeScript(`book.ts`)實作,需要 Node 與 git;Node 不支援直接執行 TypeScript 時,會自動用 `npx tsx` 執行。 +## 說明 -## 頁面格式 +- 讀取:第一次使用會 clone wiki 到 `~/.cache/jsc-wiki`,之後每次先更新,離線時用快取。 +- 頁面格式:規則在 wiki 的 [頁面格式](https://gitea.jsc.idv.tw/jiantw83/jsc-marketplace/wiki/%E9%A0%81%E9%9D%A2%E6%A0%BC%E5%BC%8F) 頁,包含固定結構、簡化技術中文(參考 [ASD-STE100 skill](https://github.com/danyuchn/asd-ste100-skill)),以及繁體中文無亂碼、盡量用圖表。 +- 寫入:`scripts/book.sh`(TypeScript,需要 Node 與 git;Node 不支援直接執行 TypeScript 時自動用 `npx tsx`)。推送需要 `tea` 的預設 login,或環境變數 `JSC_WIKI_TOKEN`。 +- 新增領域:在 marketplace repo 的 clone 內執行 `book-import`,技能檔才會寫進 repo(可 commit);寫進已安裝的插件目錄,下次更新插件時會消失。新指令需 `/reload-plugins` 後才會出現。 +- 其他環境變數:`JSC_WIKI_URL`(wiki git 位址)、`JSC_WIKI_CACHE`(讀取快取)、`JSC_WIKI_WORK`(寫入工作副本)。 -格式規則放在 wiki 的 [頁面格式](https://gitea.jsc.idv.tw/jiantw83/jsc-marketplace/wiki/%E9%A0%81%E9%9D%A2%E6%A0%BC%E5%BC%8F) 頁,兩個技能都會讀取它。除了固定結構(簡介、步驟、補充),另有兩條規則: - -1. 簡化技術中文:參考 [ASD-STE100 skill](https://github.com/danyuchn/asd-ste100-skill),一句一個動作、祈使句、一詞一義、不用分號。 -2. 繁體中文無亂碼,盡量用圖表(Mermaid 與表格)。 - -`scripts/book.sh lint` 會檢查編碼與亂碼、結構、密碼與 token、STE 規則和圖表。 - -## 設定 - -環境變數可選:`JSC_WIKI_URL`(wiki git 位址)、`JSC_WIKI_CACHE`(讀取用快取目錄)、`JSC_WIKI_WORK`(寫入用工作副本)、`JSC_WIKI_TOKEN`(推送用 token)。 - -新增領域時,`book-import` 會執行 `book.sh add-chapter <標題> <說明> --key <名稱>`:建立章節頁,同時產生 `skills/<名稱>/SKILL.md`(`/jsc-wiki:<名稱>`),並更新本 README 的領域表與 `wiki` 技能的指令清單。在 marketplace repo 的 clone 內執行時加上 `--skills-dir`,技能檔才能 commit 進 repo;寫進已安裝的插件目錄,下次更新插件時會消失。重新載入插件(`/reload-plugins`)後新指令才會出現。 +```bash +scripts/book.sh chapters # 列出章節與篇目 +scripts/book.sh find redis # 找已存在的主題 +scripts/book.sh lint <頁面檔> # 檢查格式 +scripts/book.sh add-chapter "資訊安全" "防火牆與 SSH 加固。" --key security +```