mofa-eval

Score agent outputs against expected results using an LLM judge.

11|12|Updated Feb 28, 2026
One-click install
npx skills add https://github.com/mofa-org/mofa-skills --skill mofa-eval
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: mofa-eval
Source: https://github.com/mofa-org/mofa-skills/tree/main/_unpublished/mofa-eval
Command: npx skills add https://github.com/mofa-org/mofa-skills --skill mofa-eval

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

This skill automatically scores and tracks the quality of agent outputs against a defined rubric, enabling rapid detection of regressions and consistency issues across runs.

Core Features & Use Cases

  • LLM-as-a-judge: Evaluates actual outputs against expected results using a rubric and returns a structured JSON score.
  • Evaluation persistence: Stores every evaluation in SQLite by run_id for audit trails and trend analysis.
  • Batch and regression: Supports batch_eval, score_summary, and compare_runs to assess performance changes over time across multiple tests.

Quick Start

Run a single evaluation by piping a JSON object with run_id, expected, and actual to mofa-eval evaluate_response.

Frequently Asked Questions about mofa-eval

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I use an LLM to evaluate agent outputs against expected results?

LLM-as-a-judge evaluation scores actual agent outputs against expected results using a defined rubric, returning a structured JSON score via the OpenAI API for automated quality assessment.

What is the best way to track LLM evaluation regressions across multiple test runs?

Regression testing across runs is tracked by persisting every evaluation in SQLite by run_id, enabling compare_runs and score_summary functions to detect performance changes and consistency issues over time.

Does this LLM evaluation tool require an OpenAI API key to function?

Interfacing with the OpenAI API is required for the LLM-driven judge to score agent outputs against expected results, meaning valid OpenAI API credentials are necessary for execution.

Can I evaluate batch test cases and store the results in SQLite?

Batch evaluation of agent outputs is supported via batch_eval, which scores multiple test cases against expected results and persists every evaluation in SQLite by run_id for audit trails.

How do rubrics work when scoring agent outputs with an LLM judge?

Rubrics guide the LLM judge by defining scoring criteria, loaded from the styles directory or using a built-in default, to evaluate actual agent outputs against expected results accurately.

Why do I need to persist LLM evaluation results by run_id?

Persisting evaluation results by run_id in SQLite creates an audit trail and enables trend analysis, allowing compare_runs to detect regressions and consistency issues in agent output quality over time.