Borrowing it
Nothing to install: this file belongs to eclipse-rdf4j/rdf4j. Take a copy, put it at the same path in your own repository, and replace the rules that are about this project with yours.
curl -O https://raw.githubusercontent.com/eclipse-rdf4j/rdf4j/main/.agent/skills/jmh-benchmark-compare/SKILL.mdgit clone --depth 1 https://github.com/eclipse-rdf4j/rdf4jWrote 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/eclipse-rdf4j/rdf4j/jmh-benchmark-compare)<a href="https://agentmods.dev/skills/eclipse-rdf4j/rdf4j/jmh-benchmark-compare"><img src="https://agentmods.dev/badge/skills/eclipse-rdf4j/rdf4j/jmh-benchmark-compare/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/eclipse-rdf4j/rdf4j/jmh-benchmark-compare"><img src="https://agentmods.dev/badge/skills/eclipse-rdf4j/rdf4j/jmh-benchmark-compare.svg" alt="Reviewed on agentmods" width="80" height="20"></a>- NVIDIA SkillSpector pass
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.00100 | $0.00792 |
| Opus 5 | $0.00050 | $0.00396 |
| Sonnet 5 | $0.00020 | $0.00158 |
| Haiku 4.5 | $0.00010 | $0.00079 |
Grade A, and why
jmh-benchmark-compare 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.
How it starts
The opening of the file, as written. The whole thing — 98 lines — stays where its author put it; the contents beside it link to each section on GitHub.
jmh-benchmark-compare
Use this skill when benchmark output comparison must be reproducible, sortable, and exportable.
Quick start
Run two-file comparison:
python3 .codex/skills/jmh-benchmark-compare/scripts/jmh_benchmark_compare.py \
/path/run-a.txt /path/run-b.txt \
--export-formats txt,md,csv,xlsx,html \
--output-dir /tmp \
--output-base jmh-compare
Sort by diff percent (descending):
python3 .codex/skills/jmh-benchmark-compare/scripts/jmh_benchmark_compare.py \
run-a.txt run-b.txt \
--sort-column "Diff % [run-b - run-a]" \
--sort-desc \
--export-formats md \
--output /tmp/jmh-diff.md
Core behavior
- Detect first JMH table header line:
line.startswith("Benchmark") and "Mode" in line and "Score" in line. - Derive column boundaries from that header.
- Parse all following benchmark rows into an internal table.
- Match overlapping benchmark keys across files.
- Add derived columns:
Diff Score [target - baseline],Diff % [target - baseline],Status [...].
Default key columns are all columns except Cnt, Score, Error. Override via --id-columns.
Inputs and overlap
- Pass any mix of files and directories.
- Directory entries are scanned for files that contain a JMH header.
--overlap-mode allkeeps only rows present in all files.--overlap-mode anykeeps rows present in at least two files.- Baseline selection:
--baseline <index-or-label>.
Filters and regression shortcuts
- Hide tiny deltas:
--min-deviation-pct 1.0 - Show only regressions above threshold:
--regressions-over-pct 3.0 - Control direction interpretation:
--score-direction auto|higher|lower
Historical analysis
Analyze trends across many runs:
python3 .codex/skills/jmh-benchmark-compare/scripts/jmh_benchmark_compare.py \
/path/bench-history \
--recursive \
--glob "*.txt" \
--timestamp-source auto \
--analyze-over-time \
--regressions-over-pct 2.5 \
--export-formats html,csv \
--output-dir /tmp \
--output-base jmh-history
What ships with it
6 files beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.
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.
- 8d ago First seen · 98 lines · 100 tokens per session scan A ef9fc56ee748
jmh-benchmark-compare is a skill published in the GitHub repository eclipse-rdf4j/rdf4j (412 stars, last pushed yesterday), licensed BSD-3-Clause. It adds 100 tokens to every session and 792 once invoked, about $0.0005 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-09-03.
Other skills, from other repositories
open-ontologies
AI-native ontology engineering using 50+ MCP tools backed by an in-memory Oxigraph triple store. Build, validate, query, and govern RDF/OWL ontologies with a generate-validate-iterate loop. Use when building ontologies, knowledge graphs, RDF data, SPARQL queries, BORO/4D modeling, SHACL validation, clinical…
mcp-sparql
Exposes SPARQL query capabilities to LLMs via the Model Context Protocol. Supports SELECT, ASK, CONSTRUCT, and DESCRIBE queries against any SPARQL endpoint.
knowledge-graph-sparql
Knowledge graph construction, SPARQL querying, and entity linking for library and research data management using RDF and Wikidata.
kg-modality-sparql
Query and update the engine's RDF/OWL store over the W3C SPARQL 1.1 Protocol — the engine IS the triplestore (epistemic-graph owns the /sparql wire). Use when you need SELECT/ASK/ CONSTRUCT/DESCRIBE/UPDATE over triples/quads, named graphs, property paths, or when an existing rdflib/Jena/Stardog client should point at…
tika-eval-compare
Compare extracts from two Tika builds over a corpus to detect regressions in content, encoding, exceptions, and embedded-document handling. Use for "compare before/after extracts", "eval this change against the corpus".
azure-security-keyvault-secrets-java
Azure Key Vault Secrets Java SDK for secret management. Use when storing, retrieving, or managing passwords, API keys, connection strings, or other sensitive configuration data.