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.
git clone --depth 1 https://github.com/konveyor-ecosystem/playpen-pf-mig-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/agents/konveyor-ecosystem/playpen-pf-mig-skills/visual-compare)<a href="https://agentmods.dev/agents/konveyor-ecosystem/playpen-pf-mig-skills/visual-compare"><img src="https://agentmods.dev/badge/agents/konveyor-ecosystem/playpen-pf-mig-skills/visual-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/agents/konveyor-ecosystem/playpen-pf-mig-skills/visual-compare"><img src="https://agentmods.dev/badge/agents/konveyor-ecosystem/playpen-pf-mig-skills/visual-compare.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.00023 | $0.00988 |
| Opus 5 | $0.00012 | $0.00494 |
| Sonnet 5 | $0.00005 | $0.00198 |
| Haiku 4.5 | $0.00002 | $0.00099 |
Grade A, and why
visual-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 11d 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 — 124 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Visual Comparison
Compare screenshots between baseline and post-migration directories. Generate or update a checkbox-tracked report.
Inputs
- Work directory: workspace root (contains
baseline/,manifest.md, andvisual-diff-report.md) - Compare directory: directory with post-migration screenshots to compare against baseline
Prerequisites
Verify these exist before proceeding:
<work_dir>/manifest.md<work_dir>/baseline/with screenshots
If either is missing, report error and stop.
Ground Rules
- Baseline is the source of truth. Do not rationalize differences.
- Report every visible difference. False positives are acceptable; missed differences are not.
- Load each image exactly once. Do not write PIL scripts or use automated pixel-diffing — use the comparison script output plus your visual inspection.
- Compare regions independently. Check masthead, sidebar, content area, modals separately.
Process
1. Run Pixel Comparison Script
Run the automated comparison first to identify which screenshots have real differences:
python3 <scripts_dir>/compare_screenshots.py <work_dir>/baseline <compare_dir> > <work_dir>/pixel-comparison.json
If the script is not found, look for compare_screenshots.py in the workspace or scripts directory.
Read the JSON output. Screenshots with status identical or anti_aliasing_only need no further analysis. Only visually inspect screenshots with status different or missing_post_migration.
2. Verify Coverage
Read <work_dir>/manifest.md. Check the pixel comparison results for any missing_post_migration or missing_baseline entries. Report each as a ❌ Major issue.
3. Visually Inspect Changed Screenshots
Only for screenshots flagged as different by the pixel comparison script, load the baseline and post-migration images. Load each image exactly once.
For each changed screenshot:
- Load both images: baseline and post-migration — one read each
1a. Verify page content matches the manifest description. If the post-migration screenshot shows wrong content (404 page, different page, empty state), report as
❌ Major. - Describe what changed: Use the pixel comparison
diff_regionsto focus on areas with actual differences. Describe the specific visual changes you see. - Classify each difference:
- ⚠️ Minor — styling/spacing/color changes that do not break functionality
- ❌ Major — missing elements, broken layout, unreadable text, functional breakage
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.
- 11d ago First seen · 124 lines · 23 tokens per session scan A 53449828d4ff
visual-compare is an agent published in the GitHub repository konveyor-ecosystem/playpen-pf-mig-skills (2 stars, last pushed 4mo ago), licensed Apache-2.0. It adds 23 tokens to every session and 988 once invoked, about $0.0001 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.
Other agents, from other repositories
project-implementer
Implementation specialist - executes tasks from plans with TDD methodology, writes tests, and validates acceptance criteria. Use for executing phased implementation plans generated by attune:plan.
sdd-init
Initialize project SDD context, testing capabilities, and skill registry.
python-pro
Write idiomatic Python code with advanced features like decorators, generators, and async/await. Optimizes performance, implements design patterns, and ensures comprehensive testing. Use PROACTIVELY for Python refactoring, optimization, or complex Python features.
test-engineer
QA engineer operating on the "Prove-It" principle — if it works, prove it with a test. Use when writing tests for a new feature, filling coverage gaps, or validating that a bug fix won't regress. Can read, write and edit test files. Dispatch with Task tool for isolated test work.
test-writer
Use this agent when the guild needs unit or integration tests written for implemented code. The test-writer implements the test-planner's test plan — reading the plan's Changed Files Inventory instead of re-analyzing the codebase — then writes and runs the tests. Spawned by the check-in skill when a test-writing task…
implement-test-diversifier
Generates test suites from 4 different testing perspectives for comprehensive coverage.