agent-kernel: Skill for Claude Code

.agents/skills/ak-dev-new-evaluator-provider/SKILL.md

ak-dev-new-evaluator-provider is a skill for Claude Code, Codex from yaalalabs/agent-kernel. It costs 110 tokens per session (3,508 once invoked), scanned A, original, Apache-2.0.

A guide for adding a built-in test evaluator provider to Agent Kernel. An evaluator is a component that scores test results, sometimes by comparing text or asking a language model to judge an answer.

In plain words
What is it for?
Use it when adding a first-party evaluator with its own configuration name, scoring method, and integration with Agent Kernel's test framework.
Why use it?
It distinguishes a provider that ships for every Agent Kernel user from a project-specific custom evaluator, preventing unnecessary framework changes.

Skill for Claude CodeCodex

Written for no agent in particular: nothing here depends on one. Also seen: installed under .agents/ (shared by several agents).

This is yaalalabs/agent-kernel's own configuration. It tells Claude Code and Codex how to work on agent-kernel itself, so it is not a mod to install elsewhere. Copy it as a starting point and replace the rules that are about this project. Everything agent-kernel configures →

Reuse

Borrowing it

Nothing to install: this file belongs to yaalalabs/agent-kernel. Take a copy, put it at the same path in your own repository, and replace the rules that are about this project with yours.

Copy the file
curl -O https://raw.githubusercontent.com/yaalalabs/agent-kernel/develop/.agents/skills/ak-dev-new-evaluator-provider/SKILL.md
Clone the repo
git clone --depth 1 https://github.com/yaalalabs/agent-kernel

Made for: Claude Code, Codex.

Wrote this? Show the measurements

A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.

agentmods badge for ak-dev-new-evaluator-provider

README.md
[![agentmods](https://agentmods.dev/badge/skills/yaalalabs/agent-kernel/ak-dev-new-evaluator-provider/github.svg)](https://agentmods.dev/skills/yaalalabs/agent-kernel/ak-dev-new-evaluator-provider)
Your own site
<a href="https://agentmods.dev/skills/yaalalabs/agent-kernel/ak-dev-new-evaluator-provider"><img src="https://agentmods.dev/badge/skills/yaalalabs/agent-kernel/ak-dev-new-evaluator-provider/github.svg" alt="Measured on agentmods" height="20"></a>

Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.

agentmods 80×15 button for ak-dev-new-evaluator-provider

Your own site · 80×15
<a href="https://agentmods.dev/skills/yaalalabs/agent-kernel/ak-dev-new-evaluator-provider"><img src="https://agentmods.dev/badge/skills/yaalalabs/agent-kernel/ak-dev-new-evaluator-provider.svg" alt="Reviewed on agentmods" width="80" height="20"></a>
Per session 110 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 3,508 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. A grade says what 26 rules found in the file — not that it is safe.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5.1 $0.00110 $0.03508
Opus 5.5 $0.00044 $0.01403
Sonnet 5.5 $0.00022 $0.00702
Haiku 4.5 $0.00011 $0.00351

Measured 3d ago against content hash 9dc46eed38a9, method: parsed. Prices are Anthropic first-party input rates as of 2026-10-07, from the pricing page.

Security

Grade A, and why

ak-dev-new-evaluator-provider scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 3d ago.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

.agents/skills/ak-dev-new-evaluator-provider/SKILL.md · 261 lines

How it starts

The opening of the file, as written. The whole thing — 261 lines — stays where its author put it; the contents beside it link to each section on GitHub.

Adding a New Test Evaluator Provider

This guide walks through adding a new built-in evaluator provider to Agent Kernel's test framework. Use the existing DeepEval implementation (ak-py/src/agentkernel/test/core/evaluator/deepeval.py) as reference.

Before starting, check whether you actually need this skill: if the evaluator only needs to exist for your own project (not addressable by every AK user via a short built-in name), you don't need any of the steps below — just subclass AKEvaluator anywhere importable and point test-config.yaml's evaluator: at its dotted path. That's the "bring your own evaluator" path described in the user-facing ak-test skill and docs/docs/testing/cli-testing.md; examples/cli/custom-evaluator/ is a complete worked example of it. This skill is only for adding a first-party, in-repo provider that ships with AK and gets its own short type name.

Existing Providers

Provider Short name Scoring mode LLM-judge mode Extra
DeepEval deepeval Scorer.quasi_exact_match_score (whole-string, normalised) GEval LLM-as-judge metric agentkernel[test]
Opik opik LevenshteinRatio (fuzzy string similarity) GEval LLM-as-judge metric agentkernel[opik]
JEV jev — (AKMetricNotSupported) TypeSafe Noul (yes/no probability) agentkernel[jev]

Architecture Overview

  • AKEvaluator (ak-py/src/agentkernel/test/core/evaluator/base.py) is the abstract base every evaluator — built-in or bring-your-own — implements. It and the payload and error types are re-exported from agentkernel.test, the import path users and examples use; built-in providers inside the package import them from .base. A new interface type goes in core/evaluator/__init__.py's __all__ and in agentkernel/test/__init__.py. It has exactly two abstract methods:
    • evaluate_by_score(case: AKEvaluationCase) -> AKEvaluationResult — deterministic scoring, no LLM call
    • evaluate_by_llm(case: AKEvaluationCase) -> AKEvaluationResult — LLM-as-judge scoring
  • AKEvaluationCase carries the comparison inputs (user_input, actual, expected, threshold, context, criteria); AKEvaluationResult carries the outcome (score, passed, metric, evaluator, reason, cost, attempts, metadata).
  • Error contract (every evaluator must honor this, not just DeepEval):
    • Raise AKMissingInput when a field the requested metric needs (e.g. case.expected) wasn't supplied.
    • Raise AKMetricNotSupported from whichever of the two methods your backend structurally cannot implement (e.g. a pure LLM-judge service has no offline scoring mode).
    • Raise AKEvaluationError when a configured backend fails to produce a score (missing credentials, transport error, unparseable judge output). Never raise AssertionError and never silently return a 0.0 to stand in for a failure — 0.0 must only ever mean "scored zero", not "couldn't be scored". Test.compare is the only place that decides pass/fail fatality; evaluators only ever set result.passed.
  • Test._resolve_evaluator_class in ak-py/src/agentkernel/test/test.py is the factory. It shares the same pluggable-backend shape as guardrails, sandbox providers, and trace backends (core/util/factory.py's resolve_dotted/require_extra/AKConfigError): an if-per-built-in branch with the SDK import wrapped in require_extra (actionable ImportError naming the pip extra if missing), then a dotted-path bring-your-own fallback for anything else.
  • Evaluator instances are cached per-process on Test._evaluator (keyed by the configured value), guarded by Test._evaluator_lock — construction happens once per distinct evaluator: config value, not once per Test.compare call.

Read the full file on GitHub · 261 lines

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 3d ago Changed · +3 lines 9dc46eed38a9
  2. 1mo ago Changed · +7 lines cacebaae2564
  3. 1mo ago Changed · +5 lines · +3 tokens per session e73232f47fbe
  4. 1mo ago Changed · +1 tokens per session 9c9a724f3c45
  5. 2mo ago First seen · 246 lines · 106 tokens per session scan A ccdb67b859f5

Subscribe to this mod's changes

ak-dev-new-evaluator-provider is a skill published in the GitHub repository yaalalabs/agent-kernel (192 stars, last pushed yesterday), licensed Apache-2.0. It adds 110 tokens to every session and 3,508 once invoked, about $0.0004 per session on Opus 5.5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-09-07.

Related

ak-dev-new-evaluator-provider compared with skills from other repositories

ak-dev-new-evaluator-provider next to 6 skills from other repositories
ModTypeStarsLast pushLicenceScanTokensWorks with
ak-dev-new-evaluator-provideryaalalabs/agent-kernelSkill192yesterdayApache-2.0A110Claude Code, Codex
cloud-native-security-defensivej4flmao/agent-skillsSkill383d agoMITA127Claude Code, Codex
notionArvo-AI/auroraSkill454yesterdayApache-2.0A23Claude Code
datadogArvo-AI/auroraSkill454yesterdayApache-2.0A28Claude Code
scalewayArvo-AI/auroraSkill454yesterdayApache-2.0A29Claude Code
terrasharkLukasNiessen/terrasharkSkill7104d agoMITA56Claude Code, Codex
isaac-automatorisaac-sim/IsaacAutomatorSkill27011d agoApache-2.0A123Claude Code, Codex