BitSoulStockSkill

Security checks across static analysis, malware telemetry, and agentic risk

Overview

This is a coherent stock-analysis skill that discloses its token use, remote market-data access, and local caching, with no artifact-backed evidence of hidden exfiltration or destructive behavior.

Before installing, make sure you trust the BitSoul/aicodingyard data service, protect your BITSOUL_TOKEN, and understand that the skill can cache market data locally and generate investment-style recommendations but does not show evidence of placing trades.

Static analysis

No static analysis findings were reported for this release.

VirusTotal

VirusTotal findings are pending for this skill version.

View on VirusTotal

Risk analysis

Artifact-based informational review of SKILL.md, metadata, install specs, static scan signals, and capability signals. ClawScan does not execute the skill or run runtime probes.

What this means

The agent may produce confident investment analysis or buy/sell suggestions, but the artifacts do not show it can place trades.

Why it was flagged

The skill tells the agent to call stock-analysis APIs based on user requests, including buy/sell signal analysis. This is aligned with the stated purpose and does not show actual trade execution.

Skill content
根据用户的自然语言,参考references/API_FOR_LLM.md 调用对应接口 ... 用户询问某只股票...直接调用 `api.get_trade_signal(code)`
Recommendation

Use the results as decision support only, verify important financial conclusions independently, and do not treat the skill as a licensed financial adviser.

What this means

Anyone with access to the configured token could potentially use the associated BitSoul data service access.

Why it was flagged

The code reads the BitSoul token from an environment variable or an explicitly configured env file. This credential use is disclosed and purpose-aligned for remote data access.

Skill content
token = os.environ.get("BITSOUL_TOKEN") ... env_file = os.environ.get("BITSOUL_TOKEN_ENV_FILE") ... _parse_dotenv_value(Path(env_file).expanduser(), "BITSOUL_TOKEN")
Recommendation

Store the token in a protected environment variable or tightly permissioned env file, and rotate it if exposed.

What this means

The quality and integrity of local analyses depend on data downloaded from the provider.

Why it was flagged

Initialization can download a base data file from the provider when it is missing. That is consistent with a stock-data skill, but it creates reliance on the provider's remote data package.

Skill content
if not os.path.exists(base_data_file): ... download_data_file("data_1.0.bin", base_data_file, max_retries=3)
Recommendation

Run initialization only when you trust the provider, and keep the skill/data source updated from the official homepage.