Skill flagged — suspicious patterns detected
ClawHub Security flagged this skill as suspicious. Review the scan results before using.
web-reader-pro
v1.0.0Advanced web content extraction skill for OpenClaw using multi-tier fallback strategy (Jina → Scrapling → WebFetch) with intelligent routing, caching, qualit...
⭐ 2· 63·0 current·0 all-time
byJialin@0xcjl
MIT-0
Download zip
LicenseMIT-0 · Free to use, modify, and redistribute. No attribution required.
Security Scan
OpenClaw
Suspicious
medium confidencePurpose & Capability
The name and SKILL.md describe a web extraction tool (Jina → Scrapling → WebFetch) which aligns with the included python code and an install script for Scrapling. However the registry metadata claims 'required env vars: none' while SKILL.md (and code) reference sensitive/important environment variables (e.g., JINA_API_KEY, WEB_READER_CACHE_DIR, WEB_READER_LEARNING_DB, WEB_READER_JINA_QUOTA). This metadata mismatch is an incoherence that reduces trust and should be corrected or explained.
Instruction Scope
SKILL.md instructs installing dependencies (pip), running the included install_scrapling.sh (which uses npm/npx), and creating/using persistent local paths (~/.openclaw/*) for cache, quota, and learned routes. These behaviors are consistent with the stated purpose (cache, persistent domain routing). There are no instructions to read unrelated system secrets or arbitrary files, but the code will write/read files under the user's home directory and may create a wrapper in ~/.local/bin.
Install Mechanism
There is no platform install spec, but the repository includes scripts/install_scrapling.sh which performs global npm installs and creates a wrapper that invokes 'npx --yes scrapling'. Using npx --yes executes code fetched from the npm registry at runtime, which is a supply-chain/execution risk. The installer also attempts global npm installs (npm install -g), which modifies the system-wide node/npm environment. These install steps are expected for a Node-based scraper but are higher risk than pure Python deps and should be reviewed before execution.
Credentials
The skill requires a Jina API key for Tier 1 (JINA_API_KEY) and defines other environment variables for cache and quota. Requesting a service API key for the tiered Jina integration is proportionate. However, the registry metadata lists no required env vars while the SKILL.md and code expect them — this mismatch is problematic. No unrelated credentials appear requested, but the presence of JINA_API_KEY (sensitive) means users should confirm the skill's network calls and where data is sent.
Persistence & Privilege
The skill persists state locally (cache, jina_quota.json, domain routing JSON) under ~/.openclaw which is consistent with its learning/caching features. It also installs a wrapper into ~/.local/bin (if using the provided installer) and suggests adding that path to shell rc files. The skill does not request 'always: true' or global agent modifications beyond its own files. Persisting local data is expected, but users should be aware of files created in their home directory.
What to consider before installing
Key points to consider before installing or running this skill:
- Metadata mismatch: The registry claims no required environment variables but SKILL.md and the code expect JINA_API_KEY and other WEB_READER_* vars. Treat the SKILL.md as authoritative unless the publisher clarifies the registry record.
- Sensitive credential: JINA_API_KEY is required for Tier 1. Only provide that key if you trust the skill and have reviewed the code paths that send data to Jina's API.
- Installer risk (npm / npx): The included scripts install npm packages globally and create a wrapper that runs 'npx --yes scrapling'. npx downloads and executes packages from the npm registry at runtime which can run arbitrary code. If you don't trust the upstream npm package or the author, avoid running the installer or run it in a contained environment (VM/container) and review the installed package contents first.
- Persistent local files: The skill writes cache, quota counters, and learned routing JSON under ~/.openclaw. Review and/or sandbox these files if you are concerned about persisted data.
- Code review recommended: Although behavior is broadly consistent with a web extractor, review scripts/web_reader_pro.py for any hardcoded endpoints, logging of sensitive data, telemetry, or unexpected network calls before supplying secrets.
- Safer options: If you want to test, run inside an isolated environment (container or throwaway VM), do not provide production API keys (use test keys), and inspect network traffic or code behavior before enabling on a production agent.
If you want, I can: (1) scan the remainder of web_reader_pro.py for any network endpoints or hardcoded URLs, (2) point out exact paths/files the skill will create, or (3) produce a safe installation checklist to minimize risk.Like a lobster shell, security has layers — review code before you run it.
latestvk973qjs5cdg374f2g7kc4jdjpd83hpzn
License
MIT-0
Free to use, modify, and redistribute. No attribution required.
