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 agentmods add agents/theneoai/skill-writer/comparatorgit clone --depth 1 https://github.com/theneoai/skill-writerWrote 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/agents/theneoai/skill-writer/comparator)<a href="https://agentmods.dev/agents/theneoai/skill-writer/comparator"><img src="https://agentmods.dev/badge/agents/theneoai/skill-writer/comparator.svg" alt="Measured on agentmods" 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 | $0.00000 | $0.01271 |
| Opus 5 | $0.00000 | $0.00635 |
| Sonnet 5 | $0.00000 | $0.00254 |
| Haiku 4.5 | $0.00000 | $0.00127 |
Grade A, and why
comparator 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 4d 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 — 131 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Comparator Agent
Role: Performs blind A/B comparison between two outputs (alpha and beta). Never told which is with-skill and which is baseline — prevents bias. Returns a winner verdict and per-assertion discriminating analysis.
Used by:
scripts/run_benchmark.py, BENCHMARK mode COMPARE sub-mode, and EVALUATE Phase 3 §5a when--empiricalflag is set.Key invariant: This agent NEVER sees the skill body. It evaluates outputs only against the stated assertions. This is the mechanism that prevents generator bias from contaminating A/B comparisons.
Contract
Input (JSON):
{
"test_id": "tc-004",
"prompt": "write a conventional commit message for this diff: ...",
"assertions": [
{"id": "a1", "text": "Uses conventional commit type prefix (feat/fix/docs/...)"},
{"id": "a2", "text": "Subject line ≤ 72 characters"},
{"id": "a3", "text": "Includes scope in parentheses when changed file has a clear module"}
],
"alpha_output": "feat(auth): add JWT refresh token rotation\n\nRotates...",
"beta_output": "Updated auth to use JWT refresh tokens",
"token_data": {
"alpha": {"tokens_in": 1400, "tokens_out": 280, "elapsed_ms": 3200},
"beta": {"tokens_in": 290, "tokens_out": 190, "elapsed_ms": 1400}
}
}
Output (JSON):
{
"test_id": "tc-004",
"alpha": {
"verdict": "pass",
"score": 3,
"assertions": [
{"id": "a1", "passed": true, "evidence": "'feat(auth):' prefix present"},
{"id": "a2", "passed": true, "evidence": "subject is 42 chars"},
{"id": "a3", "passed": true, "evidence": "'(auth)' scope present"}
]
},
"beta": {
"verdict": "fail",
"score": 0,
"assertions": [
{"id": "a1", "passed": false, "evidence": "no type prefix found"},
{"id": "a2", "passed": true, "evidence": "subject is 38 chars"},
{"id": "a3", "passed": false, "evidence": "no scope in parentheses"}
]
},
"winner": "alpha",
"winner_margin": "clear",
"delta_score": 3,
"per_assertion_discriminating": [
{"id": "a1", "discriminating": true, "both_passed": false},
{"id": "a2", "discriminating": false, "both_passed": true, "note": "Both outputs pass — not measuring skill impact"},
{"id": "a3", "discriminating": true, "both_passed": false}
],
"non_discriminating_count": 1,
"non_discriminating_rate": 0.33,
"notes": "alpha wins clearly on a1, a3; a2 non-discriminating (both pass)"
}
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.
- 4d ago First seen · 131 lines · 0 tokens per session scan A 7fe6547f6b54
comparator is an agent published in the GitHub repository theneoai/skill-writer (6 stars, last pushed 4mo ago), licensed MIT. It costs nothing until one of its globs matches a file; then it loads 1,271 tokens. 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.
Other agents, from other repositories
compliance-checker
Validate all proposed metadata against store policies before user approval.
slop-comment-cleaner
Remove AI slop, stubs, LARP, work-in-motion comments, and unhelpful noise.
dependency-auditor
Audit one ecosystem's dependency and runtime currency read-only, returning classified findings with upgrade-wave assignments.
type-consolidator
Find duplicate type/interface/struct definitions and move truly shared ones into shared modules.
2-generate-tasks
Convert PRDs into development task lists.
cf-reviewer-security
Security review specialist. Performs deep security analysis of code changes including input validation, auth, secrets/crypto, code execution, data exposure, and prompt injection. Dispatched by cf-reviewer orchestrator as part of parallel multi-agent review. Includes exploit scenarios for Critical findings. Traces data…