Back to skill
Skillv1.0.3
ClawScan security
news-impact-analyzer · ClawHub's context-aware review of the artifact, metadata, and declared behavior.
Scanner verdict
ReviewMar 19, 2026, 6:30 AM
- Verdict
- Review
- Confidence
- medium
- Model
- gpt-5-mini
- Summary
- The skill largely does what it claims (sends news to a remote LLM-backed service for analysis) but has several mismatches and security concerns—most notably a default third‑party duckdns server, undisclosed environment variables, and insecure SSL behavior—which warrant caution before use.
- Guidance
- Before installing or running this skill: - Treat the EASYALPHA_API_KEY as sensitive. The bundled script will send that key and the full news text to a remote server (default: https://easyalpha.duckdns.org). Only use a key you are willing to expose to that host. - The default backend is a duckdns domain with no homepage or known publisher—verify the server operator and privacy policy. If you cannot verify it, do not use your real API key. - The code reads NEWS_EXTRACTOR_SERVER_URL and ALLOW_INSECURE_SSL even though those were not declared in the manifest; set NEWS_EXTRACTOR_SERVER_URL to a trusted endpoint if you run your own analysis service. - By default the script disables SSL certificate validation unless ALLOW_INSECURE_SSL='false' is set. That makes connections vulnerable to MITM attacks—set ALLOW_INSECURE_SSL='false' to enforce certificate validation or avoid using the default host. - If you need to use this skill but want stronger assurance: host the analysis backend yourself (set NEWS_EXTRACTOR_SERVER_URL to your server), inspect the backend code, or ask the publisher for code provenance and a canonical release (the package currently lacks a verified homepage/owner). Given the unclear ownership and the fact the script will transmit secrets to a third party with insecure defaults, proceed only after verifying the server and adjusting environment defaults; otherwise consider the skill suspicious and avoid using real credentials.
Review Dimensions
- Purpose & Capability
- noteThe skill's name/description (an LLM-based news→market-impact analyzer) aligns with the code: the Node script POSTs news text to a remote analysis backend and returns results. However the manifest only declares EASYALPHA_API_KEY while the runtime uses an additional NEWS_EXTRACTOR_SERVER_URL (defaulting to https://easyalpha.duckdns.org) and instructs users to register at that domain. The use of a duckdns host and lack of a homepage or known publisher is unexpected for a public service and should be validated.
- Instruction Scope
- concernThe SKILL.md instructs the agent to run the bundled script which will transmit the full news text and the EASYALPHA_API_KEY to the configured remote server (/api/v1/analyze). The instructions do not declare all environment variables the script reads (NEWS_EXTRACTOR_SERVER_URL, ALLOW_INSECURE_SSL) and do not warn about privacy/ownership of the target server. Transmitting a secret API key and arbitrary text to an external server is within the described functionality but deserves explicit disclosure and provenance.
- Install Mechanism
- okNo install spec; this is an instruction-only skill with a single Node.js script and no npm dependencies. Nothing is downloaded or extracted at install time.
- Credentials
- concernThe registry declares only EASYALPHA_API_KEY, but the script also accepts NEWS_EXTRACTOR_SERVER_URL and ALLOW_INSECURE_SSL from the environment. The script sends the EASYALPHA_API_KEY in both an X-EasyAlpha-API-Key header and an Authorization: Bearer header to the remote host. Requiring a single API key could be proportionate, but (a) the destination server is a duckdns host by default, (b) the manifest/instructions omit some env vars the code uses, and (c) the key will be transmitted to an externally hosted service of unclear provenance—raising risk of key exfiltration.
- Persistence & Privilege
- okThe skill does not request persistent or elevated platform privileges (always is false). It only runs a script and does not attempt to modify other skills or system configuration.
