
Latchshot Page Capture
OfficialFreeCapture public web pages as images or PDFs easily.
Free · Opens the source repo
What Latchshot Page Capture does
Latchshot Page Capture is a streamlined tool designed for developers and designers who need to create visual artifacts from public web pages. This skill allows users to take screenshots, generate thumbnails, or produce full-page captures in formats such as PNG, JPEG, or PDF. By leveraging a dependency-free client, it ensures that users can quickly convert a webpage URL into a validated local file without the complexities of browser automation or scraping. This is particularly useful for workflows involving reports, quality assurance, archiving, or creating social media previews.
The tool operates by confirming that the target webpage is publicly accessible over HTTP or HTTPS. It rejects any requests for private pages, signed URLs, or any content that requires authentication, ensuring that users can only capture publicly available information. This focus on public content simplifies the process and reduces the risk of handling sensitive data. Users can initiate a capture with straightforward commands, specifying the desired output format and file path, making it easy to integrate into existing workflows.
For those who may not have an API key, the skill offers a no-key demo option that allows for limited JPEG captures. This is beneficial for quick tests or when users want to validate the functionality before committing to the full capabilities of the tool. Additionally, the skill includes error handling and quota management features, providing clear feedback on usage limits and errors without compromising security or requiring user intervention for sensitive information.
Overall, Latchshot Page Capture is an efficient choice for anyone needing to create visual documentation or previews from public web pages, while maintaining a clear boundary around security and usability.
When to use it
Use this skill when you need to generate visual artifacts from publicly accessible web pages for reports, QA, or social media previews.
When not to use it
This skill is not suitable for capturing private pages, handling CAPTCHA, or performing scraping tasks.
What you can build with it
Generating Thumbnails for Reports
Use Latchshot to create quick thumbnails of public web pages for inclusion in project reports.
Creating Social Media Previews
Capture images of web pages to use as previews for social media posts, ensuring they are visually appealing.
Quality Assurance Checks
Utilize the skill to take screenshots of web pages during QA processes to document visual changes or issues.
How to install Latchshot Page Capture
View source1. Install with the skills CLI
npx skills add github/awesome-copilot/latchshot-page-capture --agent claude-code2. Or install it manually
Download the skill folder and drop it into ~/.claude/skills/ for all projects, or .claude/skills/ to scope it to one repo. Restart Claude Code so it picks up the new skill.
Anthropic's agentic coding CLI, and the reference implementation of Agent Skills. Drop a skill folder into ~/.claude/skills and Claude Code loads it automatically whenever a task matches the skill's description. Claude Code docs
Inside SKILL.md
Written by githubLatchshot 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-page -
For a PDF:
node scripts/latchshot.mjs capture \ --url 'https://example.com' \ --output './artifacts/example.pdf' \ --paper A4 -
Parse 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
Latchshot accepts public pages only and returns one binary artifact. It does not offer raw HTML input, DOM extraction, selectors, sessions, arbitrary JavaScript, authenticated/private pages, CAPTCHA solving, residential proxies, or anti-bot evasion. Only successful renders consume quota.
Frequently asked questions about Latchshot Page Capture
Similar skills
Convert Word to Markdown
Effortlessly convert .docx files to Markdown format.
Convert PDF to Markdown
Transform PDF documents into Markdown for easier analysis.
Convert Excel to Markdown
Effortlessly convert Excel files to Markdown format.
MarkItDown
Convert documents to Markdown for analysis and ingestion.
File Conversion
Easily convert files between 999 formats.
PDF to HTML
Convert PDFs into self-contained HTML files with ease.
