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.
npx skills add maplibre/maplibre-agent-skills --skill maplibre-running-evalsgit clone --depth 1 https://github.com/maplibre/maplibre-agent-skillsWrote 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.
[](https://agentmods.dev/skills/maplibre/maplibre-agent-skills/maplibre-running-evals)<a href="https://agentmods.dev/skills/maplibre/maplibre-agent-skills/maplibre-running-evals"><img src="https://agentmods.dev/badge/skills/maplibre/maplibre-agent-skills/maplibre-running-evals/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.
<a href="https://agentmods.dev/skills/maplibre/maplibre-agent-skills/maplibre-running-evals"><img src="https://agentmods.dev/badge/skills/maplibre/maplibre-agent-skills/maplibre-running-evals.svg" alt="Reviewed on agentmods" width="80" height="20"></a>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.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00072 | $0.03161 |
| Opus 5.5 | $0.00029 | $0.01264 |
| Sonnet 5.5 | $0.00014 | $0.00632 |
| Haiku 4.5 | $0.00007 | $0.00316 |
Grade A, and why
maplibre-running-evals scanned grade A with 1 finding 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 yesterday.
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.
Makes network callslowCapability
Not a fault in itself. Listed so you know the mod talks to something, and to what.
curl -s -X POST https://api.groq.com/openai/v1/chat/completions \ How it starts
The opening of the file, as written. The whole thing — 110 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Running Promptfoo Evals
Every eval here runs two roles over provider APIs: a generator, the model under test, and a judge, the model that grades each llm-rubric assertion. evals/README.md covers what to test and how to write prompts and rubrics; this is the procedure for running them. Work the phases in order — do not start at phase 5 because content already exists.
1. Set up and budget the run
Budget before anything else. These providers are used on free tiers, and a run you cannot finish teaches nothing.
- Confirm a generator key and a judge key are set — presence only, never the value:
echo "generator: ${GROQ_API_KEY:+set}"andecho "judge: ${GOOGLE_API_KEY:+set}". If either is missing, stop and report; do not extrapolate a result from a run you did not make. - Both roles are pinned: the generator in
evals/prompts/lib/providers.yaml, the judge inpackage.json'seval:gradedscript. Use the pinned pair by default. The one hard requirement is that they are different models — never grade a generator with itself — and any result you report names both. - Send every recorded run through
npm run eval:graded, the only place--grader,--delay, and-jare set. Do not hand-type them, and do not copy a value out of an older results doc: that value documents that run, not this one. Do not pass--providerseither: it replaces the pinned generator with a bare one, so the run is no longer pinned and its results are mislabeled — evals/README.md, "Writing eval prompts" has the detail.--providers echois the probe case: it returns the rendered prompt in place of a generator answer, so you see exactly what the generator would be sent — but everyllm-rubricstill calls the judge, so even a probe spends judge calls. - Learn the provider's limits before launching: read its rate-limit documentation for the pinned model's tier, then make one minimal request to the endpoint with response headers shown. On an OpenAI-compatible endpoint the
x-ratelimit-*headers carry the per-minute token window (limit, remaining, reset) and the per-day request count; a daily token cap has no header of its own, so it surfaces only when a429arrives —retry-aftergives the wait, and the body names which limit tripped. Header names and what they count are provider-specific and change, so confirm them against the provider's own page.
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.
- yesterday Changed · +2 lines 2555fbdf923e
- 1mo ago First seen · 108 lines · 72 tokens per session scan A 044eec72b611
maplibre-running-evals is a skill published in the GitHub repository maplibre/maplibre-agent-skills (155 stars, last pushed yesterday), licensed MIT. It adds 72 tokens to every session and 3,161 once invoked, about $0.0003 per session on Opus 5.5. A static security scan graded it A with 1 finding (makes network calls). No closer match exists in the catalogue, so it is treated as the original; first seen 2026-09-27.
Other skills, from other repositories
prompt-regression-suite
Design a regression test suite that catches an LLM feature getting worse when the prompt, model, or context changes. Use when asked to stop prompt changes breaking production, set up golden tests or CI gates for an LLM feature, or test a model/prompt upgrade before shipping it. Produces a golden case set, per-case…
testing-dbt-models
Adds schema tests and data quality validation to dbt models. Use when working with dbt tests for: (1) Adding or modifying tests in schema.yml files (2) Task mentions "test", "validate", "data quality", "unique", "notnull", or "acceptedvalues" (3) Ensuring data integrity - primary keys, foreign keys, relationships (4)…
eval-llm-judge
Write LLM-as-judge evaluator prompts for AI products. Use this skill whenever you need to evaluate semantic properties of AI outputs that cannot be checked programmatically — output quality, tone, factual accuracy, edge case handling, reference alignment. Also use when auditing existing judge prompts for bias…
eval-code
Write deterministic, code-based evaluator functions for an AI product. Use this skill whenever you need to write evaluators that check structural properties of AI outputs (format, count, presence, schema compliance) without calling another LLM. Also use when auditing existing code-based evaluators for brittleness…
wjs-evaling-voicedrop-prompts
A local evaluation workflow for comparing a new VoiceDrop mining-system prompt with the version currently in use. It tests both prompts on the same prepared examples and uses blind judgments to compare the results.
prompt-testing
Use when comparing two prompt variants, defining quality/efficiency/robustness metrics, or deciding whether to adopt a challenger prompt over a baseline.