dsh-versatileds@0.4.0
多功能DS插件:B站小号代理 + QQ代理合体,左侧栏一个入口,B站/QQ 两模块分页;QQ 侧支持本地 GPT-SoVITS 语音(可一键部署)。仅供学习/个人使用,商用需取得所有版权方授权。
AI Security Review
scanned 10d ago · by lpm-firewall-aiThe package has a conditional credential exposure: a configured alternate model endpoint can receive the saved DeepSeek key and chat context. The default endpoint and intended model use reduce the risk, but the source does not bind the key to that destination.
Decision evidence
public snapshot- QQ API keys are read from plugin configuration, the DEEPSEEK_API_KEY environment variable, or a local key file.
- Model helpers send the key as a bearer token with prompts to llmBaseUrl. The URL can be configured for any OpenAI-compatible API.
- Proactive and poke-response routines call these model helpers when a key and endpoint are configured.
- The inspected Bilibili routine asks a model to rank video recommendations; the module has an enable setting, and its service helpers target Bilibili APIs.
- The manifest points to index.js; startup code checks for missing dependencies. No npm lifecycle script appears in the inspected manifest.
- Voice deployment downloads Python through the /voice_deploy feature and the deployment script.
- The model endpoint defaults to https://api.deepseek.com, and the key setting is labeled as a DeepSeek API key.
- The inspected source does not identify a publisher-controlled unrelated recipient or covert key collection.
Source & flagged code
9 flaggedSource file is highly similar to a previously finalized malicious package; route for source-aware review.
index.jsView on unpkgFindings
Affected versions and remediation
This report applies to dsh-versatileds@0.4.0.
See all versions of dsh-versatileds for other recorded verdicts.
- Review the evidence and your use of dsh-versatileds@0.4.0 before allowing it. Restrict the permissions described in this report.
- Choose an independently verified alternative or release. This report does not establish that other versions are safe.
Evidence last updated: .
Think this verdict is wrong? Dispute it on GitHub or read how reports are produced.