# config-spec.tsv — jsc 技能組的設定規格表。體檢(/jsc-cli:doctor)與設定(/jsc-cli:setup)共用這一份。 # # 這張表是「必要或選擇」的唯一判準。掃描原始碼分不出必要與選擇,也分不出哪些是執行期內部 # 變數,所以判準用手寫規格表,掃描只負責抓出漏登錄的項目(scan-config.sh orphans)。 # 新增環境變數或設定檔時,同時補一列進來,體檢才看得到它。 # # 欄位:keykindscoperequireddefaultverifyfixdesc # kind env=環境變數 file=檔案或目錄 internal=執行期內部變數(體檢略過,只為登錄而存在) # scope global=整台機器 project=當前工作目錄 runtime=hook 執行當下才存在 # required yes=缺了就有技能跑不動 no=選擇性,缺了走預設或降級 # default 未設定時的實際值;沒有預設寫 - # verify set=有值即可 dir=目錄要在 file=檔案要在 gitea-api=站台連得上 # gitea-auth=認證過得了 wiki-repo=值可解析成 {owner}/{repo} none=不驗 # fix auto=工具算得出,可直接寫入 ask=值要人給,問完才寫 manual=只能人手動處理 -=不需修 # desc 一句繁中說明,直接印給使用者看 # # wiki 存取庫分兩路:目錄頁({TYPE}_CONTENTS)全部住 JSC_WIKI_REPO_CONTENTS 解出的專用存取庫, # 內容頁({TYPE}_{HASH})才看自己的型別變數。目錄頁不退回型別變數,型別變數也管不到目錄頁。 # GITEA_HOST env global yes - gitea-api ask Gitea 站台位址,所有 wiki 與 PR 操作的去處 GITEA_TOKEN env global yes - gitea-auth ask Gitea API token;未設定時退回 tea CLI 的登入金鑰 JSC_HOME env global no ~/.jsc dir auto hook 資料目錄,放工作階段計時、用量統計、版本快取 JSC_WIKI_REPO env global no - wiki-repo ask 未逐類設定時的共用 wiki {owner}/{repo} JSC_WIKI_REPO_CONTENTS env global no JSC_WIKI_REPO wiki-repo ask 全部目錄頁({TYPE}_CONTENTS)所在存取庫;沒有型別變數可退,只退 JSC_WIKI_REPO JSC_WIKI_REPO_QUESTION env global no JSC_WIKI_REPO wiki-repo ask QUESTION_{HASH} 內容頁所在存取庫 JSC_WIKI_REPO_PLAN env global no JSC_WIKI_REPO wiki-repo ask PLAN_{HASH} 內容頁所在存取庫 JSC_WIKI_REPO_ANALYZE env global no JSC_WIKI_REPO wiki-repo ask ANALYZE_{HASH} 內容頁所在存取庫 JSC_WIKI_REPO_DELIVER env global no JSC_WIKI_REPO wiki-repo ask DELIVER_{HASH} 內容頁所在存取庫 JSC_WIKI_REPO_MAINTAIN env global no JSC_WIKI_REPO none - 保留待用,不必設定:MAINTAIN 只有目錄頁 MAINTAIN_CONTENTS,沒有內容頁,目錄頁又已改看 JSC_WIKI_REPO_CONTENTS,這一列目前沒有頁面可管;留著這一列是為了讓孤兒掃描認得這個變數 JSC_WIKI_REPO_REPO env global no JSC_WIKI_REPO wiki-repo ask REPO_{HASH} 內容頁所在存取庫 JSC_WIKI_REPO_LOG env global no JSC_WIKI_REPO wiki-repo ask LOG_{HASH} 內容頁所在存取庫 JSC_WIKI_REPO_LEARN env global no JSC_WIKI_REPO wiki-repo ask LEARN_{HASH} 內容頁所在存取庫 JSC_WIKI_REPO_ERROR env global no JSC_WIKI_REPO wiki-repo ask ERROR_{HASH} 內容頁所在存取庫 JSC_WIKI_REPO_CHECK env global no JSC_WIKI_REPO wiki-repo ask CHECK_{HASH} 內容頁所在存取庫,體檢紀錄寫在這裡 JSC_WIKI_REPO_REPORT env global no JSC_WIKI_REPO wiki-repo ask REPORT_{HASH} 內容頁所在存取庫,年月週日報表寫在這裡 JSC_VERSION_GUARD env global no on set ask 設成 off 可完全略過版本前置檢查,離線工作時用 JSC_VERSION_TTL env global no 600 set ask 版本查詢快取秒數 JSC_RESTART_GATE env global no on set ask 設成 off 可略過部署後的重啟提示閘門,判讀在 jsc-hooks JSC_WIKI_REPO_SKILLSET env global no JSC_WIKI_REPO wiki-repo ask SKILLSET_{HASH} 內容頁所在的 {owner}/{repo},技能組異動報告寫在這裡 JSC_WIKI_REPO_TOOLING env global no JSC_WIKI_REPO wiki-repo ask TOOLING_{HASH} 內容頁所在的 {owner}/{repo},技能盤點寫在這裡 JSC_WIKI_REPO_MONITOR env global no JSC_WIKI_REPO wiki-repo ask MONITOR_{HASH} 內容頁所在存取庫,助理巡檢紀錄寫在這裡 JSC_LANG_GUARD env global no on set ask 設成 off 可關閉繁中編碼與簡體字守門,誤判時用 JSC_COMMENT_SCOPE env global no on set ask 設成 off 可關閉註解夾帶文件編號的守門,誤判時用 JSC_CHANGED_FILE internal runtime no - none - 非 Claude CLI 傳入的變更檔路徑,註解範圍與繁中編碼守門讀它 JSC_SIMPLIFIED_FILE internal runtime no - none - 自訂簡體字表路徑,ste100-lint.sh 讀它取代內建字表 JSC_PR_WATCH_INTERVAL env global no 60 set ask pr-watch.sh 輪詢 PR 狀態的間隔秒數,實作在 jsc-gitea/tools/pr-watch.sh JSC_LOCAL_PLUGINS env global no $JSC_HOME/plugins dir auto antigravity 安裝來源的本地 plugin 目錄 JSC_PLUGINS_ROOT env global no - dir ask 技能組工作目錄根位置,jsc-meta 的工具用它找各 domain JSC_CLAUDE_SETTINGS_DIR env global no ~/.claude dir ask claude 使用者層設定檔目錄,測試 purge 時才需覆寫 JSC_COPILOT_INSTRUCTIONS env global no ~/.config/copilot/copilot-instructions.md file ask copilot 指引檔位置,STE100 規則段落寫在這裡 JSC_ANTIGRAVITY_RULES env global no ~/.antigravity/AGENTS.md file ask antigravity 全域規則檔位置 JSC_KIRO_SKILLS env global no - dir ask kiro 技能目錄,接線與部署都會用到 JSC_GITEA_TOOLS env global no - dir ask jsc-gitea/tools 的位置,跨 domain 呼叫 gitea.sh 時用 $JSC_HOME/model-tags.tsv file global yes - file auto SDLC 階段閘門讀的能力標籤表,由 /jsc-cli:models 產生 $JSC_HOME/models.conf file global no - file ask 各 SDLC 階段的偏好模型鏈,專案 .jsc/models 可覆寫 $JSC_HOME/html-styles.conf file global no - file ask 各類頁面的 HTML 匯出版型與樣式,專案 .jsc/html-styles 可覆寫 $JSC_HOME/update-guide.md file global no - file manual 這台機器的更新指引,由 jsc-cli/tools/write-guides.sh 產生;缺了就重跑 /jsc-cli:deploy $JSC_HOME/remove-guide.md file global no - file manual 這台機器的移除指引,由 jsc-cli/tools/write-guides.sh 產生;缺了就重跑 /jsc-cli:deploy $JSC_HOME/restart-required.d file global no - none - 部署收尾寫下的重啟狀態檔目錄,一支 CLI 一份,執行期暫態;該 CLI 那份不存在代表這支沒有待重啟的部署,jsc-hooks 讀它提示重啟 .jsc/models file project no - file ask 本專案的 SDLC 偏好模型鏈,覆寫 $JSC_HOME/models.conf .jsc/html-styles file project no - file ask 本專案的 HTML 匯出版型與樣式,覆寫 $JSC_HOME/html-styles.conf .claude/settings.json file project no - file manual claude 的專案層設定;jsc hook 由 plugin 的 hooks.json 接線,這裡不該有 jsc 殘留接線 AGENTS.md file project no - file manual codex 與 antigravity 讀的專案層指引檔 .env file project no - none manual 專案層環境變數;覆寫全域設定時,體檢會標出實際生效值 .envrc file project no - none manual direnv 設定檔;覆寫全域設定時,體檢會標出實際生效值 JSC_CLI internal runtime no - none - 接線時帶入的 CLI 代號,hook 用來分辨宿主 JSC_SKILL internal runtime no - none - 目前呼叫的技能名,版本前置檢查與用量統計用 JSC_SESSION_ID internal runtime no - none - 工作階段代號,計時與 token 統計用 JSC_TOOL_NAME internal runtime no - none - 目前的工具名,PreToolUse hook 用來比對 matcher JSC_SCRIPT_DIR internal runtime no - none - 呼叫端腳本所在目錄,由 lib.sh 算出 JSC_HOOKS_DIR internal runtime no - none - hooks 目錄位置,包裝啟動器用 JSC_MODEL internal runtime no - none - 目前模型 id,SDLC 閘門用來比對能力標籤 JSC_GITEA_OWNER internal runtime no - none - 批次同步存取庫時鎖定的 owner JSC_DEPLOY_DRYRUN internal runtime no - none - 部署試跑旗標,只印指令不執行 JSC_WP_GATE internal runtime no - none - 工作包閘門的逃生門,實作在 jsc-sdlc/tools/wp-gate.sh JSC_CONFIG_SPEC internal runtime no - none - 改讀別份設定規格表,測試 scan-config.sh 時用 JSC_SYNC_DRY_RUN internal runtime no - none - 同步 domain 存取庫的試跑旗標,只印不動檔案 JSC_MK_DOMAIN internal runtime no - none - sync-marketplace.sh 傳給 python 的 domain 名 JSC_MK_URL internal runtime no - none - sync-marketplace.sh 傳給 python 的存取庫網址 JSC_MK_DESC internal runtime no - none - sync-marketplace.sh 傳給 python 的 plugin 描述 JSC_MK_IN internal runtime no - none - sync-marketplace.sh 讀入的 marketplace 檔路徑 JSC_MK_OUT internal runtime no - none - sync-marketplace.sh 寫出的 marketplace 檔路徑