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). 임의의 명령을 가리킬 수도 있습니다.
  • 작업 공간 vs. 컨텍스트 – 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

# 멋진 웹 UI 보기
skillgrade preview browser

# CI에서는 다음과 같이 사용할 수 있습니다:
skillgrade --regression --ci --provider=local --threshold=0.85

중요성 – AI 코딩 어시스턴트가 보편화됨에 따라 개발자는 신뢰성, 정확성 및 워크플로 준수를 체계적으로 측정할 방법이 필요합니다. Skillgrade는 많은 LLM 공급자와 함께 작동하고 자동화된 테스트 파이프라인에 통합할 수 있는 유연하고 언어에 구애받지 않는 하네스를 제공합니다.


범위 – 이 프로젝트는 AI 코딩 에이전트를 평가하기 위한 실제 소프트웨어 도구로, AI/ML 도구 생태계에 완전히 부합합니다.

관련

  • 프로젝트
  • 프로젝트
  • 프로젝트
  • Dispatch
  • 프로젝트