mgechev/skillgrade

"Unit tests" for your agent skills

Skillgrade – AI コーディングエージェントのための評価ハーネス

機能 – Skillgrade を使用すると、コーディング関連タスク(例:lint エラーの修正、API の実装、コードレビュー)を定義し、それらに対して AI 搭載のコーディングエージェントを自動的に実行できます。各実行後、決定的スクリプト、LLM ベースのルーブリック、または人間のレビュアーで結果を採点し、合格率または加重スコアを生成します。

使用方法

  1. グローバルにインストールします(npm i -g skillgrade)。
  2. フォルダーで skillgrade init を実行して eval.yaml テンプレートを作成します(SKILL.md ファイルと API キーが存在する場合は、AI が提案するタスクを生成させることもできます)。
  3. eval.yaml を編集して、タスク、ワークスペースファイル、コンテキストファイル、採点者を記述します。
  4. 単一のコマンドで評価を実行します(例:skillgrade --smoke)。ツールは環境変数(GEMINI_API_KEY、ANTHROPIC_API_KEY、OPENAI_API_KEY)からエージェントを自動検出するか、--agent で強制できます。
  5. ターミナル(skillgrade preview)またはブラウザ UI(skillgrade preview browser)で結果を表示します。

主要な概念

  • エージェント – LLM を搭載したコーディングアシスタント(Gemini、Claude、Codex、OpenCode、または ACP 互換の CLI)。任意のコマンドを指定することもできます。
  • ワークスペースとコンテキスト – workspace ファイルはエージェントが操作する可変コードです。context ファイルは読み取り専用の参照資料です。
  • 採点者の種類 –
    • 決定的: JSON スコアを返すスクリプトを実行します。
    • LLM ルーブリック: エージェントのトランスクリプトをルーブリックとともに LLM に送信し、返されたスコアを解析します。
    • 人間: 手動レビューのために一時停止します。 採点者には重みを設定でき、最終スコアは加重平均です。
  • 試行とプリセット – タスクを複数回実行(trials)して信頼性を推定します。--smoke(5 回)や --regression(30 回)などのプリセットは、迅速または徹底的なチェックを提供します。
  • マルチターンタスク – タスクには一連の指示(turns)を含めることができ、ワークスペースはターン間で保持されます。
  • データセット拡張 – 単一のタスクテンプレートを JSONL/CSV データセット上で拡張し、行フィールドを指示に補間できます。
  • フィルタリング – --filter/--not-filter を使用して、メタデータフィールドに基づいてタスクのサブセットを選択します。
  • レポート – 結果を JSON、JUnit XML、CSV、または Markdown としてエクスポートします。CI パイプラインに役立ちます。

典型的なワークフロー例

# インストール
npm i -g skillgrade

# 評価スイートを作成
mkdir my-evals && cd my-evals
skillgrade init   # eval.yaml を作成

# eval.yaml を編集 – 壊れたファイルで superlint を実行するタスクを追加
# (完全な構文は README を参照)

# デフォルトの Gemini エージェントに対してクイックスモークテストを実行
GEMINI_API_KEY=… skillgrade --smoke

# 見栄えの良い Web UI を表示
skillgrade preview browser

# CI では次のように使用するかもしれません:
skillgrade --regression --ci --provider=local --threshold=0.85

重要性 – AI コーディングアシスタントが一般的になるにつれ、開発者はその信頼性、正確性、ワークフロー準拠を体系的に測定する方法を必要としています。Skillgrade は、多くの LLM プロバイダーと連携し、自動テストパイプラインに統合できる、柔軟で言語に依存しないハーネスを提供します。


範囲 – このプロジェクトは、AI コーディングエージェントを評価するための本格的なソフトウェアツールであり、AI/ML ツールエコシステムに完全に適合します。

関連

  • プロジェクト
  • プロジェクト
  • プロジェクト
  • Dispatch
  • プロジェクト