Communitygithub.com

UiPath/init

在此儲存庫中設定 coder-eval — 掃描值得評估的項目(Claude Code 技能、MCP 伺服器、CLI),然後建立一個包含真實任務與執行指令的任務目錄。

init 是什麼?

此技能為特定儲存庫自動化 coder-eval 評估框架的初始設定流程。它會檢查必要條件(如 coder-eval CLI 是否已安裝),確認儲存庫是否已設有評估任務以避免覆寫,並掃描儲存庫內容以尋找可測試的元件,包含 Claude Code 技能、MCP 伺服器或 CLI 進入點。基於掃描結果,它會建立一個真實且可直接執行的任務,並附上具體驗證標準,而非僅建立空殼模板。此技能支援 Claude Code、Coder Eval 等平台,並可與 /coder-eval:check-skill、lint-tasks、analyze 及 ci 等其他技能搭配使用。透過引導使用者建立結構化任務、管理環境變數(如 .env.example)並驗證任務語法,此技能確保評估任務從一開始就具備高品質且可執行,是為專案導入系統化評估管線的第一步。

相容平台✓Claude Code~Codex CLI~Cursor
npx skills add https://github.com/UiPath/coder_eval/tree/main/plugins/coder-eval/skills/init

在你喜歡的 AI 中提問

開啟一個已預先載入此 Agent Skill 的新對話。

說明文件

在此儲存庫中設定 coder-eval

目標:為使用者留下一個包含一個真實任務的任務目錄,讓他們可以立即執行,而非空的模板。此任務必須實際測試此儲存庫所提供的功能。

使用者的請求為:$ARGUMENTS

步驟 1 — 檢查必要條件

執行 coder-eval --version。安裝此插件並不會一併安裝 CLI,而後續所有步驟都依賴它。

如果缺少 CLI,請遵循 ${CLAUDE_PLUGIN_ROOT}/reference/cli-setup.md 的操作說明:提供安裝選項,執行前務必先詢問使用者,並在安裝後使用 coder-eval --version 確認。絕對不要在未經提示的情況下安裝,如果使用者拒絕,則不要繼續。

該參考文件也涵蓋了版本檢查的另一部分:此專案是否鎖定了某個 coder-eval 版本,以及當已安裝版本與其不符時該如何處理。

步驟 2 — 檢查此儲存庫是否已設定完成

此技能用於建立第一組測試套件。如果對一個已擁有測試套件的儲存庫執行此技能,它會將「第一個任務」寫在現有任務樹旁邊並報告成功 — 因此請在寫入任何內容之前先確認狀況。

根據 ${CLAUDE_PLUGIN_ROOT}/reference/repo-layout.md 找到評估任務樹的位置。如果儲存庫已有任務,請報告庫存清單並停止:包含任務檔案數量與位置、執行目錄數量,以及是否有實驗目錄。然後引導使用者使用操作現有項目的技能:

  • /coder-eval:lint-tasks 用以檢視已有的任務;
  • /coder-eval:analyze 用以讀取已完成的執行結果。

只有在儲存庫完全沒有任務,或使用者看到庫存清單後明確要求增加更多任務時,才建立新的任務結構。無論使用者要求為何,絕對不要覆寫現有的任務檔案;僅能在旁邊新增。

一個有任務但沒有實驗目錄的儲存庫是部分設定完成的狀態,而非完全空白。請如實報告此狀態並提供缺少部分的選項 — 不要像完全空白一樣建立第一個任務。

步驟 3 — 掃描可測試的項目

請依優先順序尋找以下項目,並在寫入任何內容前先報告你的發現:

  1. Claude Code 技能 — 使用 glob 模式 .claude/skills/*/SKILL.md 和 **/skills/*/SKILL.md 搜尋。技能是最有價值的評估項目,因為它們是否被觸發在失敗前是看不見的。如果找到任何技能,建議對每個技能使用 /coder-eval:check-skill — 那是專為此目的建立的活化測試套件,不應在此手動建立。
  2. MCP 伺服器 — 尋找 .mcp.json、package.json 或 pyproject.toml 中的 mcpServers 鍵,或伺服器進入點(註冊了工具的 server.py / index.ts)。記錄它暴露了哪些工具。
  3. CLI 進入點 — pyproject.toml 中的 [project.scripts]、package.json 中的 bin 或 scripts,或含有可用目標的 Makefile。

如果此儲存庫是一個包含許多技能或套件目錄的 monorepo,請限制掃描範圍並詢問應專注於哪個子樹,而不是報告數十個候選項目。

如果在這三個類別中都找不到任何內容,請明確說明。然後提供一個最小但有用的替代方案 — 建立一個執行儲存庫中現有腳本或測試指令並檢查其輸出的任務 — 而不是建立一個證明不了任何事情的空白套件。

步驟 4 — 建立一個真實任務

將任務寫入步驟 2 所解析的任務樹中。如果儲存庫中沒有任何任務樹,請提出一個位置並詢問使用者。步驟 2 的「永不覆寫」規則在此仍然適用 — 這是該規則唯一存在的地方。

根據步驟 3 的發現,建立一個任務:

  • CLI — 一個提示要求執行 CLI 某項功能的任務,其標準應檢查結果檔案的內容,而不僅僅是檔案是否存在。
  • MCP 伺服器 — 一個使用特定工具並驗證其效果的任務。
  • 技能 — 改為引導使用 /coder-eval:check-skill;活化測試套件與能力測試任務的形態不同,該技能可以正確建立它。

提示用於指導,標準用於驗證。不要在提示中重複標準要檢查的內容 — 一個提示說「確保檔案包含 X」測試的是閱讀理解能力,而非實際能力。

在撰寫標準之前,請閱讀 ${CLAUDE_PLUGIN_ROOT}/reference/task-rubric.md。這是檢查任務是否可能因錯誤原因而通過的共用清單,而你在這裡建立的這個任務將會是此儲存庫中所有後續任務的範例 — 因此值得一次做好,而不是之後再修正。關於標準類型及其欄位,請閱讀 ${CLAUDE_PLUGIN_ROOT}/reference/criteria.md。

如果使用者在此任務之後想要更多任務,請使用 /coder-eval:task;它提供相同的撰寫流程,並接受自然語言簡介。

步驟 5 — 環境變數

將所選代理程式所需的變數(例如預設的 claude-code 代理程式需要 ANTHROPIC_API_KEY)寫入 .env.example — 建立此檔案或在其中附加。

絕對不要寫入 .env:它可能已經包含真實的機密資訊。如果 .env 不存在,請檢查它是否被列在 .gitignore 中,然後再建議使用者建立它;如果沒有被忽略,請明確告知。

步驟 6 — 驗證

執行 coder-eval plan <任務目錄>/*.yaml 並反覆進行,直到它返回退出碼 0。這會透過真實的模型驗證任務的結構定義,因此任何猜錯的欄位名稱都會在此顯現。plan 接受的是任務檔案:直接傳入目錄參數會被直接拒絕(Expected a YAML task file but got a directory),因此請始終傳入明確的路徑或使用 glob 模式。不要建議使用無參數的 coder-eval plan — 零參數的發現功能僅在 coder-eval 原始碼目錄中有效,在其他任何地方執行都會返回退出碼 1。

空目錄或沒有任務的目錄並不代表有意義的成功 — 如果 plan 報告沒有任務,請將其視為建立失敗,而非通過。請注意,傳入目錄的錯誤是不同的結果:那表示你傳入了錯誤的參數類型,而非建立的任務是空的。

步驟 7 — 報告

告知使用者:

  • 你在掃描中發現了什麼,以及你選擇先評估哪一項;
  • 執行的確切指令:coder-eval run <路徑>,並附上一段說明:執行此指令會消耗真實的 token,並且需要步驟 5 中的憑證;
  • 如果此儲存庫提供了技能,下一步是 /coder-eval:check-skill;
  • 之後可以使用 /coder-eval:analyze 讀取執行目錄,而 /coder-eval:ci 則可以將此測試套件轉換為 GitHub Actions 的閘門。

Individual skills in this repo

This repo contains 5 individual skills — each has its own dedicated page.

相關技能