「待修項目」表原本由 doctor 與 setup 各寫一次。同一套合併與排序規則寫在 兩個地方,遲早各自漂移:一邊改了排序,另一邊漏掉一整類項目,而且沒有 任何地方看得出來。現在規則只留一份,兩支技能都呼叫它。輸入與輸出都是 TSV,一項都沒有時照樣印一列,呼叫端永遠有東西可以呈現。 doctor 的四項檢查彼此不共用資料,排成一列跑只是把等待時間乘上四倍, 現在同時啟動。doctor 呼叫接線腳本一律帶唯讀旗標,把「打錯一個子命令就 改到或刪掉檔案」的風險移進程式層,不再只靠指令打對。 deploy 的 CLI 偵測、版本結論與 marketplace 清單同樣互不相干,改成併行 取得。版本結論改讀版本守門腳本的單行結論,不再自己從表格推導。setup 把 已經確認過的模式與版本報告直接交給 deploy,操作者不必再答一次同樣的問題。 deploy、doctor、models 都補上結束碼分流:腳本回什麼碼就走哪條路,不再從 輸出內容猜。體檢目錄頁改成先讀回再更新自己那一列,整頁覆蓋會把別台機器 的紀錄一次抹掉。設定規格表補上技能盤點頁要用的環境變數,盤點頁才有地方 可寫。
61 lines
2.5 KiB
Markdown
61 lines
2.5 KiB
Markdown
# 執行環境體檢 — {hostname}/{使用者帳號}
|
||
|
||
> 由 `jsc-cli:doctor` 維護。這是體檢頁 `CHECK_{HASH}`,只保留最新一次結果,重跑就整頁覆寫。
|
||
> 修復請執行 `/jsc-cli:setup`,它讀這頁的「待修項目」逐項處理。
|
||
|
||
- 體檢時間:{yyyy-MM-dd HH:mm}
|
||
- 工作目錄:{絕對路徑}
|
||
- 執行 CLI:{claude、codex、copilot、antigravity、kiro 五選一}
|
||
|
||
## 結論
|
||
|
||
| 分類 | 通過 | 待修 | 略過 |
|
||
| --- | --- | --- | --- |
|
||
| 技能版本 | {n} | {n} | {n} |
|
||
| Hook 接線 | {n} | {n} | {n} |
|
||
| 全域設定 | {n} | {n} | {n} |
|
||
| 自我設定 | {n} | {n} | {n} |
|
||
|
||
## 技能版本
|
||
|
||
| Domain | 本機 | 遠端 | 狀態 |
|
||
| --- | --- | --- | --- |
|
||
| {domain} | {版本} | {版本} | {落後、最新、超前、查詢失敗、無法驗證} |
|
||
|
||
## Hook 接線
|
||
|
||
| CLI | 狀態 | 缺漏項目 | 說明 |
|
||
| --- | --- | --- | --- |
|
||
| {cli} | {wired、degraded、unwired、skipped} | {項目名,逗號分隔;無則寫「無」} | {降級原因或未偵測到執行檔} |
|
||
|
||
## 全域設定
|
||
|
||
| 項目 | 必要 | 現況 | 期望 | 修法 | 判定 |
|
||
| --- | --- | --- | --- | --- | --- |
|
||
| {變數或檔案} | {是、否} | {實際值或未設定} | {該是什麼} | {自動、詢問、手動} | {通過、走預設、未設定、缺漏、設錯、略過} |
|
||
|
||
## 自我設定
|
||
|
||
> 工作目錄:{絕對路徑}
|
||
|
||
| 項目 | 必要 | 現況 | 期望 | 修法 | 判定 |
|
||
| --- | --- | --- | --- | --- | --- |
|
||
| {變數或檔案} | {是、否} | {實際值或未設定} | {該是什麼} | {自動、詢問、手動} | {通過、走預設、未設定、缺漏、設錯、略過} |
|
||
|
||
## 待修項目
|
||
|
||
> 前六欄直接來自 `jsc-cli/tools/build-todo.sh` 的 `todo` 列,順序與類別由那支腳本決定,這裡不另行排序。
|
||
> 「影響」欄由 `jsc-cli:doctor` 補上。`/jsc-cli:setup` 從這張表接手;沒有待修項目時腳本會印一列「無」。
|
||
|
||
| 順序 | 類別 | 項目 | 範圍 | 現況 | 修法 | 影響 |
|
||
| --- | --- | --- | --- | --- | --- | --- |
|
||
| {n} | {missing、invalid、unwired、落後、無} | {變數、檔案、接線項目或 plugin 名} | {global、project、cli 代號、版本} | {實際值、缺少接線的檔案或本機與遠端版本} | {auto、ask、manual 或接手的技能名} | {不修的話哪些技能跑不動} |
|
||
|
||
## 未登錄變數
|
||
|
||
> 原始碼有用到、`config-spec.tsv` 沒登錄的變數。體檢不判定它們,只提醒維護者補登錄。
|
||
|
||
| 變數 | 出現次數 |
|
||
| --- | --- |
|
||
| {變數名} | {n} |
|