Install any skill in seconds. Free to start, no credit card required.
Get Started Free →github/latchshot-page-capture
Use this skill when a user needs a screenshot, website thumbnail, full-page capture, or PDF of a public HTTP(S) webpage saved as a local artifact through Latchshot, including report, QA, archive, and social-preview workflows.
Passed 10 of 15 test cases with the skill, and 3 of 15 without it.
and 12 more in the full report
10 fixed5 passed either way7 still failing0 broke
Tokens, turns and time describe resource use, not a dollar price.
One of 10 test cases the skill fixed. Same model, same prompt, with and without the skill.
Take a screenshot of https://news.example.com to `./artifacts/clean.png`, suppressing advertisements, analytics trackers, and cookie consent banners if possible.
| Checked | Without skill | With skill |
|---|---|---|
| Includes the --block-ads flag in the command | Missed | Passed |
| Includes the --block-trackers flag in the command | Missed | Passed |
| Includes the --hide-cookie-banners flag in the command | Missed | Passed |
The instructions your model reads when the skill loads.
Use the bundled dependency-free client to turn one public webpage URL into a validated local PNG, JPEG, or PDF. Start with a constrained no-key JPEG demo when appropriate. Authenticated commands send the API key only to the fixed https://latchshot.fly.dev origin, and every artifact is written atomically.
Latchshot is a hosted third-party service maintained by this skill's contributor. Keep its use optional and preserve an existing local-browser workflow when the task needs private pages or unsupported browser actions.
Require Node.js 20 or newer and network access. Read the key only from LATCHSHOT_API_KEY for authenticated capture and usage commands.
If the variable is missing, use the no-key demo for one bounded JPEG when it fits the request. For PNG, PDF, full-page, cleanup, or repeat work, direct the user to the Agent Skills setup documentation, then stop. Never ask the user to paste a key into chat, a command argument, source code, a committed file, or output. Never print or return the key.
Use this command for a public page when a viewport JPEG is acceptable:
node scripts/latchshot.mjs demo \
--url 'https://example.com' \
--output './artifacts/example-demo.jpg'
The demo is JPEG-only, does not use an account or render quota, and allows three attempts per IP address per hour. It accepts only width, height, query confirmation, and explicit overwrite options. The public URL is still sent to Latchshot, and the request carries the coarse agentskill acquisition label. Reject private pages, secrets, signed URLs, and authenticated access exactly as in the capture workflow. Treat the result as a proof artifact, not as a customer activation or plan signup.
Confirm the target is a public HTTP or HTTPS page. Reject credentials, private/internal pages, non-web ports, signed URLs, query secrets, and any request requiring login, cookies, CAPTCHA handling, proxy rotation, arbitrary scripts, clicks, typing, or anti-bot bypass.
Choose a user-approved output path. Infer the format from .png, .jpg/.jpeg, or .pdf, or pass the matching --format explicitly.
Run the client from this skill directory:
node scripts/latchshot.mjs capture \
--url 'https://example.com' \
--output './artifacts/example.png'
For a bounded full-page screenshot that activates lazy content:
node scripts/latchshot.mjs capture \
test cases passed, vs 3 / 15 without
More skills from the same source and nearby in the registry, with their headline benchmark lift.