metamorphic-evaluation

metamorphic-evaluation is a skill for Claude Code from AURORA-NEURO/aurora-agent. It costs 81 tokens per session (1,260 once invoked), scanned A, original, Apache-2.0.

A method for expanding a test or benchmark suite by making changed versions of existing cases, then checking that each change has the expected result.

In plain words
What is it for?
Use it to create benchmark variants or augmented test cases when correct answers are scarce, and to measure different kinds of cases rather than simply counting instances.
Why use it?
It prevents a larger number of test cases from being mistaken for broader coverage. It also rejects mutations whose stated effect is not confirmed by an executable check.

Skill for Claude Code

Written for Claude Code: shipped in a Claude Code plugin.

Part of the aurora-science plugin — 6 skills shipped together

Good fit Use it to create benchmark variants or augmented test cases when correct answers are scarce, and to measure different kinds of cases rather than simply counting instances.

Compare 6 skills from other repositories ↓
Install with agentmods
npx agentmods add skills/aurora-neuro/aurora-agent/metamorphic-evaluation
Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

Any agent
npx skills add AURORA-NEURO/aurora-agent --skill metamorphic-evaluation
Clone the repo
git clone --depth 1 https://github.com/AURORA-NEURO/aurora-agent

Made for: Claude Code.

Or install aurora-science, the plugin that ships this one along with the rest of its 6 skills.

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 metamorphic-evaluation

README.md
[![agentmods](https://agentmods.dev/badge/skills/aurora-neuro/aurora-agent/metamorphic-evaluation/github.svg)](https://agentmods.dev/skills/aurora-neuro/aurora-agent/metamorphic-evaluation)
Your own site
<a href="https://agentmods.dev/skills/aurora-neuro/aurora-agent/metamorphic-evaluation"><img src="https://agentmods.dev/badge/skills/aurora-neuro/aurora-agent/metamorphic-evaluation/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 metamorphic-evaluation

Your own site · 80×15
<a href="https://agentmods.dev/skills/aurora-neuro/aurora-agent/metamorphic-evaluation"><img src="https://agentmods.dev/badge/skills/aurora-neuro/aurora-agent/metamorphic-evaluation.svg" alt="Reviewed on agentmods" width="80" height="20"></a>
Per session 81 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 1,260 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.00081 $0.01260
Opus 5 $0.00041 $0.00630
Sonnet 5 $0.00016 $0.00252
Haiku 4.5 $0.00008 $0.00126

Measured 8d ago against content hash c063973af9e5, method: parsed. Prices are Anthropic first-party input rates as of 2026-09-08, from the pricing page.

Security

Grade A, and why

metamorphic-evaluation 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 8d 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.

plugins/aurora-science/skills/metamorphic-evaluation/SKILL.md · 101 lines

How it starts

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

Note: the crate paths, documents, and measured numbers below are illustrations from the aurora-agent workspace where these methods were developed and tested. The methods themselves apply to any test generation or data augmentation effort.

Metamorphic evaluation

When ground truth is scarce, transformations with known consequences are the next best oracle: if renaming every subject should not change the verdict, and it does, something is wrong — in the system or in the mutation. The discipline is in never letting a transformation into the suite on its own say-so.

Postconditions are executable, and they gate admission

In the workspace's mutation engine (crates/mutation), a mutation declares what the oracle should do as a result of the transformation, and that declaration is checked by running the oracle. The crate's own header states the admission rule: "a mutation is admitted only when the oracle confirms its declared relation." Postconditions are typed, not prose — the verdict is preserved, or a named witness is removed, or a named witness is added — and the relation module draws the line that matters:

A mutation whose postcondition fails is a defect in the mutation, not a new benchmark instance, and is rejected. [...] This is the difference between a mutation engine and a paraphrase generator.

The rejected instance is retained with what the oracle actually did, because a failing postcondition is diagnostic evidence about your transformation code.

Declare both relation kinds where they exist. The metamorphic-response audit (docs/BIOEVAL_METAMORPHIC_AUDIT.md) distinguishes invariance ("this change should not move the response") from directional change ("this change should move it, in this named direction"), and its finding buckets are deliberately not synonyms: a directional trial that stayed put is false sensitivity (a missed response — not proof of invariance); an invariant trial that moved is false invariance (a shortcut); a move against the declaration is wrong direction. An incomparable observation stays undetermined — it is never coerced to "unchanged" and never counted as a pass or a fail. Keep those four apart in your own reports; collapsing them into one pass rate destroys exactly the information the method exists to produce.

Read the full file on GitHub · 101 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. 8d ago First seen · 101 lines · 81 tokens per session scan A c063973af9e5

Subscribe to this mod's changes

metamorphic-evaluation is a skill published in the GitHub repository AURORA-NEURO/aurora-agent (1 stars, last pushed today), licensed Apache-2.0. It adds 81 tokens to every session and 1,260 once invoked, about $0.0004 per session on Opus 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-08-31.

Related

Other skills, from other repositories

blazemeter-performance-testing

Comprehensive guide for BlazeMeter Performance Testing, including load configuration, reporting, JMeter configuration, Taurus, scenarios, and advanced features. Use when working with Performance tests for (1) Configuring load settings and distribution, (2) Creating and running tests (JMeter, Browser, URL/API…

Blazemeter/bzm-mcp · 138 tokens

blazemeter-api-reference

Comprehensive reference for BlazeMeter REST APIs, including authentication, identifiers, and API endpoints. Use when working with BlazeMeter APIs for (1) Understanding BlazeMeter REST API structure, (2) Authenticating API requests, (3) Obtaining identifiers (Workspace ID, Project ID, Test ID, etc.), (4) Using Test…

Blazemeter/bzm-mcp · 109 tokens

blazemeter-getting-started

Getting started guides for BlazeMeter, including onboarding, migration guides, continuous testing journey, glossary, and mobile testing. Use when getting started with BlazeMeter for (1) Navigating BlazeMeter University onboarding, (2) Migrating from Runscope or JMeter, (3) Understanding the continuous testing journey…

Blazemeter/bzm-mcp · 96 tokens

blazemeter-integrations

Comprehensive guide for BlazeMeter Integrations, including APM tools, CI/CD pipelines, and development tools. Use when working with integrations for (1) Integrating APM tools (AppDynamics, Datadog, New Relic, CloudWatch, DX APM, Dynatrace, Delphix), (2) Integrating CI/CD tools (Jenkins, GitHub Actions, GitLab CI/CD…

Blazemeter/bzm-mcp · 131 tokens

blazemeter-service-virtualization

Comprehensive guide for BlazeMeter Service Virtualization, including virtual services, transactions, templates, and management. Use when working with Service Virtualization for (1) Creating virtual services and transactions, (2) Managing services (clone, export/import, rename/delete), (3) Using templates and…

Blazemeter/bzm-mcp · 104 tokens

blazemeter-troubleshooting

Comprehensive troubleshooting guide for BlazeMeter, covering API Monitoring, Performance Testing, general issues, integrations, and security. Use when troubleshooting for (1) API Monitoring issues (Radar Agent auth, SSL certificates, debug tests), (2) Performance Testing issues (high response time, 500 errors, partial…

Blazemeter/bzm-mcp · 131 tokens