← Back to Skills Marketplace
theshadowrose

WebClip Save & Summarize Web Pages

by Shadow Rose · GitHub ↗ · v1.0.0 · MIT-0
cross-platform ✓ Security Clean
522
Downloads
0
Stars
3
Active Installs
1
Versions
Install in OpenClaw
/install web-clip
Description
Fetch web pages, strip to clean readable text, summarize into agent-ready markdown. Research assistant foundation. No browser required.
README (SKILL.md)

WebClip Save & Summarize Web Pages

Fetch web pages, strip to clean readable text, summarize into agent-ready markdown. Research assistant foundation. No browser required.


Fetch any web page, strip the junk, extract clean readable text, and optionally summarize it. Perfect for research tasks.

Usage

const { WebClip } = require('./src/web-clip');
const clip = new WebClip();

// Fetch and clean
const page = await clip.fetch('https://example.com/article');
console.log(page.title);
console.log(page.text);      // Clean text, no HTML
console.log(page.markdown);  // Formatted markdown

// Fetch and summarize
const summary = await clip.summarize('https://example.com/article', {
  maxLength: 200,
  model: 'llama3.1:8b'
});

Features

  • HTML stripping — removes scripts, styles, nav, ads, footers
  • Readability extraction — finds main content automatically
  • Markdown conversion — preserves headings, lists, links, code blocks
  • Batch fetching — multiple URLs in parallel
  • Caching — don't re-fetch pages you've already clipped
  • Offline archive — save pages as local markdown files

Output Formats

Format Use Case
.text Raw clean text for agent context
.markdown Formatted for reading or storage
.summary Condensed version (requires model)
.metadata Title, author, date, word count

Zero Dependencies

Uses only Node.js built-in https module. No Puppeteer, no headless browser.

⚠️ Disclaimer

This software is provided "AS IS", without warranty of any kind, express or implied.

USE AT YOUR OWN RISK.

  • The author(s) are NOT liable for any damages, losses, or consequences arising from the use or misuse of this software — including but not limited to financial loss, data loss, security breaches, business interruption, or any indirect/consequential damages.
  • This software does NOT constitute financial, legal, trading, or professional advice.
  • Users are solely responsible for evaluating whether this software is suitable for their use case, environment, and risk tolerance.
  • No guarantee is made regarding accuracy, reliability, completeness, or fitness for any particular purpose.
  • The author(s) are not responsible for how third parties use, modify, or distribute this software after purchase.

By downloading, installing, or using this software, you acknowledge that you have read this disclaimer and agree to use the software entirely at your own risk.

DATA DISCLAIMER: This software processes and stores data locally on your system. The author(s) are not responsible for data loss, corruption, or unauthorized access resulting from software bugs, system failures, or user error. Always maintain independent backups of important data. This software does not transmit data externally unless explicitly configured by the user.


Support & Links

🐛 Bug Reports [email protected]
Ko-fi ko-fi.com/theshadowrose
🛒 Gumroad shadowyrose.gumroad.com
🐦 Twitter @TheShadowyRose
🐙 GitHub github.com/TheShadowRose
🧠 PromptBase promptbase.com/profile/shadowrose

Built with OpenClaw — thank you for making this possible.


🛠️ Need something custom? Custom OpenClaw agents & skills starting at $500. If you can describe it, I can build it. → Hire me on Fiverr

Usage Guidance
This skill appears coherent and does what it claims: fetch pages, remove junk, produce markdown, and save locally. Before installing or enabling it: 1) Review and (if needed) run the code in a sandboxed environment since it performs network fetches and writes files locally. 2) Note the advertised 'caching' behavior isn't implemented (fetch() always downloads); if you rely on caching, modify the code to check cacheDir. 3) save(filename) accepts a caller-supplied filename — consider restricting or sanitizing filenames to avoid path traversal (the code sanitizes generated slugs but will join any provided filename to cacheDir). 4) The fetcher blocks many internal IP ranges, limits redirects, and caps response size, which reduces SSRF/internal network risk, but you should still not expose this skill to untrusted agents or inputs. If you need stronger guarantees, run it in an isolated container, set cacheDir to a safe path, and add explicit filename validation and a real cache lookup.
Capability Analysis
Type: OpenClaw Skill Name: web-clip Version: 1.0.0 The WebClip skill is a utility designed to fetch web pages and convert them into clean markdown for AI agent consumption. The implementation in `src/web-clip.js` includes proactive security measures, such as an SSRF blocklist to prevent access to internal network resources and limits on response size and redirects. While there is a minor discrepancy where the `summarize` method mentioned in the documentation is missing from the source code, the overall package is well-structured, lacks suspicious dependencies, and shows no signs of malicious intent or data exfiltration.
Capability Assessment
Purpose & Capability
Overall the code matches the described purpose (fetch, clean, convert, batch, save). Minor mismatch: SKILL.md/README advertise a caching feature (“Caching — don't re-fetch pages you've already clipped”), but the implementation creates a cache directory and a save() method without implementing a read/cache lookup in fetch(); so 'caching' is not actually performed before fetching.
Instruction Scope
Runtime instructions do exactly what is expected: fetch arbitrary URLs, strip HTML, produce markdown, and optionally save files locally. The code explicitly blocks internal/metadata IP address ranges and limits response size and redirects. It writes files to a local cacheDir (default './web-cache'), which is expected behavior for an offline archive feature.
Install Mechanism
No install spec and the code uses only Node built-ins (https/http/fs/path). No remote downloads or third-party packages are introduced, so installation risk is low.
Credentials
No environment variables, credentials, or external service tokens are requested. The skill's filesystem writes (cache/archive) are proportionate to its stated functionality.
Persistence & Privilege
always:false and the skill does not request persistent platform privileges or modify other skills. It can be invoked autonomously (default), which is normal — no additional privileged behavior observed.
How to Use
  1. Make sure OpenClaw is installed (local or Docker)
  2. Run the install command in chat: /install web-clip
  3. After installation, invoke the skill by name or use /web-clip
  4. Provide required inputs per the skill's parameter spec and get structured output
Version History
v1.0.0
Initial upload
Metadata
Slug web-clip
Version 1.0.0
License MIT-0
All-time Installs 3
Active Installs 3
Total Versions 1
Frequently Asked Questions

What is WebClip Save & Summarize Web Pages?

Fetch web pages, strip to clean readable text, summarize into agent-ready markdown. Research assistant foundation. No browser required. It is an AI Agent Skill for Claude Code / OpenClaw, with 522 downloads so far.

How do I install WebClip Save & Summarize Web Pages?

Run "/install web-clip" in the OpenClaw or Claude Code chat to install it in one step — no extra setup required.

Is WebClip Save & Summarize Web Pages free?

Yes, WebClip Save & Summarize Web Pages is completely free, licensed under MIT-0. You can download, install and use it at no cost.

Which platforms does WebClip Save & Summarize Web Pages support?

WebClip Save & Summarize Web Pages is cross-platform and runs anywhere OpenClaw / Claude Code is available (cross-platform).

Who created WebClip Save & Summarize Web Pages?

It is built and maintained by Shadow Rose (@theshadowrose); the current version is v1.0.0.

💬 Comments