Skill flagged — suspicious patterns detected
ClawHub Security flagged this skill as suspicious. Review the scan results before using.
scanner
v1.0.0跨市场股票技术指标扫描系统。数据来源 TradingView,支持 A股/港股/美股/日股。 从用户 Obsidian vault 中的 watchlist 读取 ticker 列表,运行14项技术信号扫描 (MA交叉、RSI、MACD、BOLL、放量突破、缩量回调、量价背离、周K共振、综合评分等), 并将扫描报...
⭐ 0· 54·0 current·0 all-time
MIT-0
Download zip
LicenseMIT-0 · Free to use, modify, and redistribute. No attribution required.
Security Scan
OpenClaw
Suspicious
medium confidencePurpose & Capability
The skill claims to read an Obsidian watchlist, fetch OHLCV from TradingView, compute indicators, and write Markdown back to the vault — and the included scanner.py implements that workflow. This high-level purpose aligns with the requested file I/O and network calls. However, SKILL.md's recommended dependency list (e.g., tradingview_ta) does not include the actual library used in the code (tvDatafeed), and the SKILL.md references scripts/scanner.py while the package contains scanner.py at root — these inconsistencies suggest sloppy packaging or outdated documentation.
Instruction Scope
Instructions explicitly tell the agent/user to read files from the Obsidian vault and write back reports (expected). They also instruct installing Python packages and running the scanner. There are no instructions to access unrelated system files or to exfiltrate data to unknown endpoints. However, the install/run example uses a different path (/path/to/skill/scripts/scanner.py) than the provided file, and the pip install line includes the --break-system-packages flag (see install_mechanism), which broadens scope of system changes if followed blindly.
Install Mechanism
There is no registry install spec; instead SKILL.md asks the user to run pip install tradingview_ta pandas numpy requests openpyxl --break-system-packages. The included code actually imports tvDatafeed (not listed in the pip line). The --break-system-packages flag is potentially unsafe in shared or constrained environments because it allows pip to bypass some isolation; recommending system-level installs without a virtualenv is risky. These mismatches and system-level install guidance are disproportionate to a simple scanner script and merit caution.
Credentials
The skill declares no required environment variables or credentials and the visible code does not attempt to read secrets from environment variables. The data sources are TradingView (accessed via tvDatafeed) and user-supplied local file paths. Note: tvDatafeed can optionally be configured with TradingView credentials in some usages, but none are declared here — if you see credential usage in the rest of the code, that should be disclosed.
Persistence & Privilege
The skill does not request permanent presence (always:false) and does not indicate modifying other skills or global agent configuration. Its intended persistence is local scheduling or manual invocation, consistent with SKILL.md guidance to use cron or manual triggers.
What to consider before installing
What to check before installing or running this skill:
- Source/package mismatches: SKILL.md's pip list mentions tradingview_ta but the code imports tvDatafeed. Confirm which library is required and whether it has additional dependencies or auth requirements.
- Avoid system-wide installs: do not run the suggested pip install with --break-system-packages on a machine you care about. Instead create and use a Python virtualenv (python -m venv .venv; .venv/bin/pip install ...) to contain changes.
- Confirm file paths: SKILL.md examples reference scripts/scanner.py but the bundle contains scanner.py at the repository root — run the actual file provided and/or update commands to the correct path.
- Inspect full scanner.py before running: review the remainder of the file (it was truncated in the listing) to ensure there are no hidden network endpoints, telemetry calls, or obfuscated code that would transmit your vault contents elsewhere.
- Run in demo/safe mode first: use the script's --demo mode and verify outputs locally before pointing it at your real Obsidian vault.
- Limit network exposure while testing: if possible, run the scanner on a machine or environment with monitored network egress so you can detect unexpected outbound connections. Also be aware tvDatafeed scrapes TradingView and may be subject to TOS and rate limits.
- Back up your Obsidian vault first and confirm that the script only writes to the output directory you specify.
If the maintainer can (a) fix the documentation to list the correct dependency (tvDatafeed) and correct script path, (b) remove the recommendation to use --break-system-packages and advise using a venv, and (c) confirm there are no external endpoints in the remaining code, this would reduce the risk and could change the assessment to benign. Conversely, if the remaining code contains outbound POSTs or hidden upload endpoints, that would raise the severity.Like a lobster shell, security has layers — review code before you run it.
latestvk9761k1y1np5fhjf8f20s4nmas84gzn3
License
MIT-0
Free to use, modify, and redistribute. No attribution required.
