measured-ui-callouts

Annotates real UI screenshots with measured highlight boxes and privacy masking for content images and GIFs.

366|90|Updated Aug 22, 2026
One-click install
npx skills add https://github.com/bam-bam-2/solo-skills --skill measured-ui-callouts-bam-bam-2
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: measured-ui-callouts
Source: https://github.com/bam-bam-2/solo-skills/tree/main/skills/measured-ui-callouts
Command: npx skills add https://github.com/bam-bam-2/solo-skills --skill measured-ui-callouts-bam-bam-2

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? When turning real web or app screens into content images or GIFs, highlight boxes often miss the actual element, personal data leaks into published visuals, and titles or cards get clipped outside the canvas. This Skill enforces a measurement-based workflow so annotations land exactly on the intended element and sensitive information is masked without destroying the original layout. ## Core Features & Use Cases - Measured callout placement: Measures target elements via getBoundingClientRect() on live DOM screens, or measures pixel boundaries on plain captures and converts them through render scale and offset values—no eyeballing coordinates. - Privacy masking that preserves structure: Mosaics or blurs only the personal-data region (names, addresses, phone numbers, application numbers, payment info) while keeping original cell boundaries visible instead of covering areas with gray boxes. - Full-frame visual QA: Verifies titles, cards, descriptions, and callouts all fit inside the final canvas, and checks every representative GIF frame rather than only the first one. - Use Case: You are preparing a product screenshot for a blog post showing a dashboard feature. The Skill measures the exact button position, blurs the customer names in adjacent rows, places a highlight box around only that button, and confirms the title text is not overlapped by the screenshot card before publishing. ## Quick Start Use the measured-ui-callouts skill to turn this app screenshot into a content image with the settings button highlighted and all personal information blurred.

Frequently Asked Questions about measured-ui-callouts

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I place a highlight box exactly on a UI element in a screenshot?

Measure the target element with getBoundingClientRect() on live DOM screens instead of estimating coordinates by eye. For plain capture images without DOM access, measure cell boundaries and text regions in original pixels, then convert them using the render scale and offset values.

How to blur personal information in screenshots without hiding the layout?

Apply mosaic or blur only to the region containing personal data while keeping the original cell boundaries intact. Avoid covering large areas with gray boxes, since that destroys the original structure and makes the screenshot useless as evidence of the real screen.

What personal data should be masked before publishing UI screenshots?

Mask real names, addresses, phone numbers, patent customer numbers, full application numbers, receipt numbers, and payment or authentication information. The final check before publishing should always be done by a human reviewer.

Why does my annotated screenshot look clipped after export?

Clipping happens when titles, cards, or descriptions extend beyond the canvas or when a partial clip region is exported as the final image. Capture the entire final canvas and verify the title, card, bottom description, and callouts all fit inside it.

How do I verify callouts in an animated GIF screenshot?

Check every representative frame of the GIF, not just the first frame. Confirm highlight position, privacy masking, and title visibility on each frame, and keep the canvas ratio and display size consistent between static images and the GIF.