Mystock
Security checks across static analysis, malware telemetry, and agentic risk
Overview
This appears to be a real stock-analysis assistant, but users should review it because its local web API is broadly accessible while it stores portfolio and memo data locally.
Install only if you are comfortable running a local stock-analysis web service. Before use, inspect the install script, clear the bundled portfolio and memo JSON files, restrict the backend to trusted local origins, and be cautious about entering private financial details into the AI chat.
Static analysis
No static analysis findings were reported for this release.
VirusTotal
VirusTotal findings are pending for this skill version.
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.
If the backend is running, a malicious or unrelated webpage may be able to call the local API and read or alter stock lists/notes if the documented write endpoints are present.
The local FastAPI service permits any web origin and all HTTP methods/headers. Because the same backend exposes portfolio and memo-related APIs, this broadens access beyond the intended local UI.
allow_origins=["*"], allow_credentials=True, allow_methods=["*"], allow_headers=["*"]
Restrict CORS to the exact local frontend origin, avoid wildcard methods, add a local auth token or CSRF protection for write actions, and stop the backend when not in use.
A new user could see or rely on someone else’s portfolio notes, and future analysis may be influenced by stale bundled data.
The package includes persistent portfolio/watchlist/history/insight data that looks user-specific rather than empty or clearly labeled sample data.
"portfolio": ["sh513130", "sh688123", "sz000725", ...], "insights": [{"content": "满仓满融,暴跌时候根本没工夫考虑跌多少,而是在担心会不会爆仓。。。"}]Clear or replace portfolio_data.json and memos.json before use, and the publisher should ship empty/sample-labeled data rather than real-looking financial notes.
Stock questions, portfolio details, or other text entered into chat may be sent to the selected AI provider.
The AI chat feature sends the user message and recent chat history to configured external AI providers, which is expected for AI chat but still affects financial privacy.
for h in history[-10:]: ... messages.append({"role": "user", "content": message}) ... url = "https://api.openai.com/v1/chat/completions"Do not enter confidential financial information unless you trust the configured AI provider and understand its data handling terms.
Users who enable AI chat must provide an API key that authorizes usage and billing with the selected provider.
The AI feature can use provider API keys. This is purpose-aligned and optional, but the registry metadata did not declare required credentials.
export AI_PROVIDER=openai; export AI_API_KEY=sk-your_key_here
Use environment variables or a local .env file, avoid hardcoding real keys into source files, and use keys with the minimum needed scope.
Setup may change the local Python/Node environment and install third-party packages.
The documentation asks users to run a local install script and install Python/Node dependencies even though the registry has no install spec. This is normal for a local web app but should be reviewed.
bash scripts/install.sh ... Install Node.js dependencies ... Install Python dependencies ... npm install -g jsdom
Inspect scripts/install.sh before running it, prefer a Python virtual environment, and avoid global npm installs when possible.
