Skill flagged — suspicious patterns detected

ClawHub Security flagged this skill as suspicious. Review the scan results before using.

TCM Constitution Identification & Analysis Tool | 中医体质识别分析工具

v1.0.1

Determines nine TCM constitution types including Yin deficiency, Yang deficiency, Qi deficiency, phlegm-dampness, and blood stasis through facial features an...

0· 30·0 current·0 all-time
by生命涌现@raymond758
MIT-0
Download zip
LicenseMIT-0 · Free to use, modify, and redistribute. No attribution required.
Security Scan
VirusTotalVirusTotal
Suspicious
View report →
OpenClawOpenClaw
Suspicious
medium confidence
Purpose & Capability
The code implements face/video analysis and remote API calls consistent with the TCM/face-analysis purpose (scripts call analysis and page endpoints, format results, etc.). However the package includes a large shared 'smyx_common' component (SQLite DAO, many utilities) and a long list of unrelated dependencies; those common components add capability beyond what a minimal TCM face-analysis tool would need.
!
Instruction Scope
SKILL.md mandates strict rules (e.g., forbid reading local memory/LanceDB, require cloud-only retrieval of history, require a specific open-id lookup order and saving attachments). The code, however, touches configuration files and environment variables, contains a local DAO/SQLite implementation that writes data under a workspace data directory, and uses shared utilities — these are scope-expanding behaviors that contradict the 'no local memory' instruction and grant broader local state access than declared.
Install Mechanism
No install spec is provided (instruction-only from the registry point-of-view), which is lower installer risk. But the bundle contains many Python modules and two requirements.txt files, including a large 'smyx_common' dependency set. If a user were to pip-install these, they would pull many unrelated packages — heavier than expected for simple image upload + HTTP calls.
!
Credentials
The skill declares no required env vars, yet the code reads environment variables (OPENCLAW_WORKSPACE, OPENCLAW_SENDER_OPEN_ID, OPENCLAW_SENDER_USERNAME, FEISHU_OPEN_ID) and also relies on bundled YAML config files for API base URLs and keys. The SKILL.md prescribes a precise open-id retrieval order (file-based) but the code will accept open-id from environment, creating an inconsistency and a potential surprise data flow.
!
Persistence & Privilege
The code includes a local DAO that constructs and writes an SQLite DB under a workspace 'data' directory (derived from OPENCLAW_WORKSPACE). Even though the skill is not 'always: true', it can create local files and persist data; the SKILL.md forbids using local memory for history, yet the codebase contains local persistence primitives — an incoherence that increases risk.
What to consider before installing
This skill appears to implement remote face/video TCM analysis and will send images/URLs to external APIs (default base URLs are present in the bundled config). Before installing or running it: - Understand data egress: the scripts upload images (multipart/form-data) to remote endpoints (configured in skills/smyx_common config). If you don't trust the remote service, do not upload sensitive photos. - Verify endpoints and API keys: the repo contains default production/staging endpoints (lifeemergence.com variants) in config YAMLs. Confirm these are expected and safe for your use-case. - Check environment/locals: the code reads OPENCLAW_WORKSPACE and other env vars (OPENCLAW_SENDER_OPEN_ID, etc.) though the skill's metadata declares none. Decide whether you are comfortable with that implicit env access. - Local persistence: the included common code can create an SQLite DB under a workspace data directory. If you need to avoid local storage, do not run this skill or inspect and remove DAO usage first. - Inconsistencies to clarify with the author: SKILL.md forbids local memory and states a strict open-id lookup order, but the code will accept open-id from env and includes local DB/DAO code. Ask the maintainer which behavior is authoritative. - If you proceed, run the skill in a sandbox (restricted workspace, network isolation) and review the RequestUtil implementation (skills/smyx_common/scripts/util.py) to confirm where HTTP requests go and what headers/credentials are sent.
!
skills/smyx_common/scripts/config-dev.yaml:2
Install source points to URL shortener or raw IP.
About static analysis
These patterns were detected by automated regex scanning. They may be normal for skills that integrate with external APIs. Check the VirusTotal and OpenClaw results above for context-aware analysis.

Like a lobster shell, security has layers — review code before you run it.

latestvk97dkgg8d2vgb9c7t7qd305dg1845aha

License

MIT-0
Free to use, modify, and redistribute. No attribution required.

Comments