設定一切 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 範圍、啟用狀態和市集來源:
claude plugin list --json
claude plugin marketplace list --json
將單一現有的 ecc@ecc 安裝視為重新配置。請勿將 Claude 提供者擁有的「開啟首頁」控制項視為安裝證據。如果遇到多個 ECC 範圍、舊版/手動安裝、設定錯誤或市集衝突,請停止並回報設定傳回的復原方式;切勿猜測要刪除哪個狀態。
2. 收集恰好兩個選擇
詢問恰好一個範圍問題,並要求一個值:
user | project | localuser是此使用者的全域設定。project是透過儲存庫設定共用的範圍。local是僅限於當前專案的範圍。
僅將選取的範圍視覺化標示為已選取或安裝中。如果使用者從單一現有安裝選擇了不同範圍,請將其描述為範圍遷移,並在後續命令中包含 --move-scope。
詢問恰好一個鉤子模式問題,並要求一個值:
off | minimal | standard | strictoff保留技能和命令,但停用 ECC 鉤子自動化。minimal啟用最輕量的生命週期與安全自動化。standard平衡品質與安全自動化。strict啟用最強的檢查與提醒。
鉤子偏好是個人 Claude 外掛設定;它不會跟隨選取的安裝範圍。
3. 預覽並確認一次
優先使用外掛隨附的設定腳本。將兩個選取的值代入,並僅在範圍遷移時包含 --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
顯示一個包含預計動作、一個範圍、一個鉤子模式、市集動作以及任何來源到目標遷移的確認摘要。詢問一個是/否問題。請勿透過工具 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. 驗證,然後顯示歡迎畫面
要求退出狀態為零,且設定結果的 scope 和 hooks 與選取的值相符。然後獨立執行:
claude plugin list --json
僅在選取的範圍下存在恰好一個啟用的 ecc@ecc 項目時,才繼續進行。當 $CLAUDE_PLUGIN_ROOT 可用時,將成功的設定 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 市集缺失,請新增它。否則重新整理其快照:
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 生命週期鉤子。