Configure Everything Claude Code
在當前執行程式內部執行一個對話式精靈。先清查庫存,僅收集支援的選項,預覽一次,確認一次,以非互動方式套用,驗證,然後僅在成功後顯示歡迎訊息。切勿將 ECC 克隆到臨時目錄或手動複製外掛元件。
對於人工操作的終端機,規範的進入點是 ecc setup 和 npx ecc-universal setup。在執行程式內部,請改用下列明確的非互動式指令。
根據當前執行程式路由
- 在 Claude Code 中,使用下面的完整範圍與鉤子精靈。
- 在 Codex 中,使用 Codex 的原生外掛生命週期。不要提供 Claude 的作用域或將 ECC 的四個 Claude 鉤子設定檔對應到 Codex。
- 在 Kimi 中,在
./.kimi-code下安裝專案表面。Kimi 不提供 ECC 的 Claude 生命週期鉤子設定檔。 - 如果無法確定執行程式,請說明檢測到的證據,並在執行變更指令前詢問要配置哪個執行程式。
此技能是安裝後的重新配置路徑。它無法攔截或取代供應商的內建首次安裝 UI。
Claude Code:執行完整的對話式精靈
1. 清查庫存而不做任何更改
執行以下兩個指令,並總結已安裝的 ECC 範圍、啟用狀態和 marketplace 來源:
claude plugin list --json
claude plugin marketplace list --json
將單個現有的 ecc@ecc 安裝視為重新配置。請勿將 Claude 供應商擁有的「開啟首頁」控制項解釋為安裝證據。若遇到多個 ECC 範圍、舊版/手動安裝、設定格式錯誤或 marketplace 衝突,請停止並報告 setup 傳回的復原方式;切勿猜測要刪除哪個狀態。
2. 收集恰好兩個選擇
問一個作用域問題,並要求一個值:
user | project | localuser是針對此使用者的全域設定。project透過儲存庫設定共享。local是僅限當前專案私有的設定。
僅在視覺上將選定的作用域標記為已選取或正在安裝。如果使用者從單個現有安裝中選擇了不同的作用域,請將其描述為作用域遷移,並在下面的指令中包含 --move-scope。
問一個鉤子模式問題,並要求一個值:
off | minimal | standard | strictoff保留技能和指令,但停用 ECC 鉤子自動化。minimal啟用最輕量的生命週期和安全自動化。standard平衡品質和安全自動化。strict啟用最強的檢查和提醒。
鉤子偏好是個人 Claude 外掛設定;它不會跟隨選定的安裝作用域。
3. 預覽並確認一次
優先使用外掛捆綁的 setup 腳本。替換兩個選定的值,並僅在作用域遷移時包含 --move-scope:
node "$CLAUDE_PLUGIN_ROOT/scripts/setup.js" --mode claude-plugin \
--scope <scope> --hooks <hooks> [--move-scope] --dry-run --json
如果 $CLAUDE_PLUGIN_ROOT 不可用,請使用已發布的 npm 套件:
npx --yes --package ecc-universal ecc setup --mode claude-plugin \
--scope <scope> --hooks <hooks> [--move-scope] --dry-run --json
僅顯示一個確認摘要,其中包含計劃中的動作、一個作用域、一個鉤子模式、marketplace 動作以及任何來源到目標的遷移。問一個是/否問題。不要透過執行程式 shell 工具執行純互動式 ecc setup,因為該 shell 通常是非 TTY。
4. 套用明確的選擇
確認後,不使用 --dry-run 重新執行相同的路徑。保持每個選擇明確,並請求 JSON 以便可以確定性地檢查成功與否:
node "$CLAUDE_PLUGIN_ROOT/scripts/setup.js" --mode claude-plugin \
--scope <scope> --hooks <hooks> [--move-scope] --yes --json
備用方案:
npx --yes --package ecc-universal ecc setup --mode claude-plugin \
--scope <scope> --hooks <hooks> [--move-scope] --yes --json
5. 驗證,然後顯示歡迎訊息
要求退出狀態為零,並且 setup 結果的 scope 和 hooks 等於選定的值。然後獨立執行:
claude plugin list --json
僅當存在恰好一個已啟用的 ecc@ecc 項目位於選定的作用域時,才繼續進行。當 $CLAUDE_PLUGIN_ROOT 可用時,將成功的 setup action(installed、updated、migrated、resumed 或 already-migrated)傳遞給捆綁的渲染器:
在調用之前,要求供應商報告的版本符合 scripts/lib/terminal-welcome.js 中的 ECC_VERSION_PATTERN。拒絕意外的版本文字,而不是將其插入到 shell 指令中。
node -e 'const { renderTerminalWelcome } = require(process.env.CLAUDE_PLUGIN_ROOT + "/scripts/lib/terminal-welcome"); process.stdout.write(renderTerminalWelcome({ action: process.argv[1], version: process.argv[2], color: process.stdout.isTTY }));' "<action>" "<installed-version>"
僅顯示一次歡迎訊息。在失敗、預覽、取消、作用域或鉤子不匹配或狀態無法驗證時,不要顯示它;而是報告錯誤和復原方法。在驗證變更後,告知使用者執行 /reload-plugins 或重新啟動 Claude Code。
Codex:使用原生外掛生命週期
使用 codex plugin marketplace list --json 和 codex plugin list --available --json 進行清查。Codex 的原生外掛指令沒有 Claude 風格的 user | project | local 選擇器。Codex 原生外掛確實支援提供者特定的鉤子,但 Codex 需要對它們的明確信任。讓 Codex 顯示該信任決策;不要詢問 Claude 的四個設定檔鉤子問題,也不要聲稱這些設定檔對應於 Codex。
如果 ECC marketplace 遺失,請新增它。否則重新整理其快照:
codex plugin marketplace add affaan-m/ECC
codex plugin marketplace upgrade ecc --json
要求一次確認,然後安裝或以冪等方式重新整理已安裝的快取並驗證它:
codex plugin add ecc@ecc --json
codex plugin list --json
僅當 JSON 報告 ECC 已安裝並提供其 installedPath 時才繼續。然後顯示已驗證套件的歡迎訊息:
僅使用 Codex JSON 傳回的絕對路徑 installedPath。拒絕控制字元,並要求安裝的版本符合 ECC_VERSION_PATTERN。直接使用此參數陣列調用 node;這是一個工具 API 調用,而不是 shell 指令:
["<installedPath>/scripts/welcome.js", "--action", "configured", "--version", "<installed-version>"]
如果當前執行程式無法使用單獨的參數陣列調用可執行檔,請跳過歡迎訊息。切勿從 Codex JSON 值構建 shell 指令。
切勿聲稱 Claude 的 off | minimal | standard | strict 設定檔已套用於 Codex。
Kimi:安裝專案表面
在確認之前說明功能摘要:目標 ./.kimi-code;hooks=unsupported 表示 ECC 生命週期鉤子。不要詢問 Claude 作用域或鉤子模式的問題。首先預覽:
npx --yes --package ecc-universal ecc install --profile core --target kimi --dry-run
為該專案目標顯示一次確認,然後套用相同的指令(不含 --dry-run)。使用以下指令驗證:
npx --yes --package ecc-universal ecc doctor --target kimi
僅在 doctor 成功且已安裝的說明和技能仍位於 ./.kimi-code 內之後,才顯示:
npx --yes --package ecc-universal ecc welcome --action configured
不要聲稱 Kimi 已安裝或配置了 ECC 生命週期鉤子。