docs: jsc-wiki README 改為統一格式,補上新增領域自動產生技能

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
This commit is contained in:
root
2026-10-14 05:31:32 +00:00
co-authored by Claude Sonnet 5.5
parent f36c522a24
commit 9b3802d28a
2 changed files with 18 additions and 22 deletions
+17 -21
View File
@@ -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
```