Skill flagged — suspicious patterns detected
ClawHub Security flagged this skill as suspicious. Review the scan results before using.
finance_monitor
v1.0.4从 CNBC 抓取 18 个金融指标数据(宏观经济、指数ETF、美股个股),写入本地 SQLite 数据库。纯 stdlib,无需任何 API Key。
⭐ 0· 99·0 current·0 all-time
by@loonslo
MIT-0
Download zip
LicenseMIT-0 · Free to use, modify, and redistribute. No attribution required.
Security Scan
OpenClaw
Suspicious
medium confidencePurpose & Capability
Name/description claim: "纯 stdlib,无需任何 API Key" and the code scrapes CNBC pages and writes to a local SQLite DB (which is coherent). However SKILL.md repeatedly discusses FINNHUB_API_KEY and Finnhub as an optional/alternative data source — that contradicts the "no API key needed" claim and is unexplained in registry metadata (which lists no required env).
Instruction Scope
SKILL.md instructs the agent to run the included Python script with a required --db-path and optionally provide FINNHUB_API_KEY. Instructions focus on fetching CNBC pages, writing to local DB, and scheduling; they do not tell the agent to read arbitrary files or exfiltrate data. The README warns about not hard-coding API keys (good).
Install Mechanism
No install spec; script is stdlib-only Python (requirements.txt is comments). No downloads or executables are installed by the skill itself — lowest-risk installation model.
Credentials
Registry metadata declares no required env, but SKILL.md and examples use FINNHUB_API_KEY and a --finnhub-key option. It's not clear whether the script needs that key for some indicators or only as an optional fallback. Requesting an API key (if used) would be proportionate only as optional; the documentation ambiguity could lead a user to expose a secret unnecessarily (e.g., via command-line).
Persistence & Privilege
always is false and the skill does not request persistent platform privileges. The script writes only to the user-specified SQLite DB and log files and contains an explicit check to refuse obvious system paths, which limits privilege scope.
What to consider before installing
This skill appears to be a simple CNBC scraper that stores data in a local SQLite DB, but there are two things to check before installing:
1) API key ambiguity: The top-level description says no API key is required, yet SKILL.md shows FINNHUB_API_KEY and a --finnhub-key option. Before running, open scripts/fetch_data.py and confirm whether the script actually attempts to call Finnhub or any other API when the key is present, and whether it behaves correctly without a key. If you don't want to provide any API key, run the script once and verify it fetches the expected CNBC pages.
2) Secret handling: If you do need to provide FINNHUB_API_KEY, prefer environment variables (FINNHUB_API_KEY) over passing it on the command line (--finnhub-key) because command-line args can appear in process listings and logs. The SKILL.md already warns about this.
Other practical checks:
- Review the full fetch_data.py to confirm the only network endpoints contacted are CNBC (and optionally Finnhub) and that no hidden endpoints or data-exfiltration logic exist.
- Run the script in a controlled environment first (temporary directory, non-privileged user) and inspect the created DB and logs. The script includes a path-safety check refusing obvious system paths; still avoid running it as root.
- If you schedule it (cron/Task Scheduler/OpenClaw cron), ensure the DB path is to a directory you control and that the FINNHUB_API_KEY (if used) is set via secure environment variables, not in a public file or scheduler command line.
Given the inconsistent documentation (no API key claimed vs. Finnhub examples), exercise caution but the code and instructions are not obviously malicious. If you want, paste the remainder of scripts/fetch_data.py (it was truncated) and I can check the rest for hidden network calls or suspicious behavior.Like a lobster shell, security has layers — review code before you run it.
latestvk97dftq91atkfeqp0ra6jz64w583rt2r
License
MIT-0
Free to use, modify, and redistribute. No attribution required.
Runtime requirements
Binspython3
