latchshot-page-capture
Captures images of public web pages, like screenshots or PDFs. It's useful for creating reports, archives, or visual previews of websites.
What it does
This tool takes pictures (screenshots) of public webpages and saves them to your computer as PNG, JPEG, or PDF files. It can also save the entire page or create a PDF.
When to use it
- ✓Saving a webpage as an image for a report.
- ✓Creating a website thumbnail for social media.
- ✓Converting a webpage into a PDF file for archiving.
Example of what to ask your AI
“Take a screenshot of the NASA website homepage and save it as a PNG.”
Want more? Open the sections below.
How to use
The easiest way: copy the message below and paste it into Claude, ChatGPT, Cursor or any AI. It reads the skill and follows the instructions.
Skill link
Ready-to-paste message
How it works
You provide the link to a public webpage, and the tool accesses it to create an image or PDF file. It works by saving the visible content of the page.
Installation
Easiest way: copy the skill link and paste it into Claude, ChatGPT or Cursor asking it to follow the instructions.
In the terminal (Claude Code, Codex, Cursor), in your project folder:
npx skills add github/awesome-copilot --skill latchshot-page-captureOr download just the file:
curl -L https://raw.githubusercontent.com/github/awesome-copilot/main/skills/latchshot-page-capture/SKILL.md -o SKILL.mdTechnical content (original SKILL.md)
Original text by the author, straight from GitHub.
Latchshot page capture
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.
Prerequisite
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.
No-key demo
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.
Capture workflow
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--formatexplicitly.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 \ --url 'https://example.com' \ --output './artifacts/example-full.png' \ --full-page \ --scroll-pageFor a PDF:
node scripts/latchshot.mjs capture \ --url 'https://example.com' \ --output './artifacts/example.pdf' \ --paper A4Parse the one-line JSON result. Confirm
ok,output,format,contentType, andbytes; inspect the local artifact when the surrounding task requires visual or document verification. Report the path and relevant render/quota diagnostics without exposing the key.
Run node scripts/latchshot.mjs --help for the exact bounded options. Use --block-ads, --block-trackers, --block-chats, --hide-cookie-banners, and --hide-popups only as best-effort cleanup—not bypass. Use --allow-query only after confirming that the query contains no credential, signature, token, customer data, or other secret. The client refuses to overwrite a file unless --force is explicit.
Read quota
Use the read-only command when the user asks about remaining renders or reset time:
node scripts/latchshot.mjs usage
This does not consume render quota or change a plan.
Failure handling
- Read the structured error code and message from stderr; do not retry validation or authentication failures.
- For
demo_limit, wait for the hourly reset rather than looping or switching identities. - For
rate_limited, wait for the reported reset or retry-after boundary rather than looping. - For a render failure, state the failure and preserve any existing output file. Do not silently substitute a local browser, a different provider, or unsupported private-page access.
- Do not initiate an upgrade, checkout, payment, implementation request, or other commercial action. Those remain user- and owner-controlled.
Hard boundaries
…
FAQ
Can I use it for pages that require a login?
No, this tool only works with webpages that anyone can access without needing to log in or provide private information.
Can I extract specific information from the page?
No, the tool only captures the page as an image or PDF; it does not extract specific text or data for you.
What happens if the page doesn't load completely?
The tool attempts to capture the full page, even if content loads slowly, but it cannot guarantee everything is captured if there are loading issues.
Details
Original description by the author
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. Do not use it for private or authenticated pages, raw HTML, scraping or extraction, arbitrary browser actions, CAPTCHA or anti-bot bypass, or local-file capture.
repo: github/awesome-copilot
Popularity
- GitHub stars
- 40k
- Ranking position
- #5210
- License
- MIT
- Updated
- 10/15/2026
Comments
- …
More skills from this repository
acquire-codebase-knowledge
Helps your agent understand and document an existing code project. It's useful for onboarding new people or getting an overview of the architecture.
github/awesome-copilot
acreadiness-assess
Enables your agent to assess a project's readiness for AI and generate a report. It's useful for understanding how well a project is prepared to use AI tools.
github/awesome-copilot
acreadiness-generate-instructions
Helps your agent create instructions for AI tools based on an assessment. It's useful for improving how AI interacts with code and closing identified gaps.
github/awesome-copilot
acreadiness-policy
Enables your agent to help define or apply policies for AI project assessment. It's useful for standardizing how projects are evaluated and ensuring compliance.
github/awesome-copilot
Similar skills
ios-icon-gen
Lets your agent generate icons for iOS apps. It uses Apple symbols or icons from other sources to create the correct files.
affaan-m/ECC
algorithmic-art
Helps your agent create art using code, generating unique images. It's useful when you want original computer-generated art.
anthropics/skills
canvas-design
Helps your agent create beautiful visual art in files. It's useful when you ask for a poster, art, or any static design.
anthropics/skills