脑卒中风险筛查分析技能
WarnAudited by ClawScan on May 13, 2026.
Overview
The skill has a plausible health-screening purpose, but it handles sensitive face and health report data with unclear identity controls and local retention.
Review the configured API endpoints and open-id behavior before installing. Do not use an API key or phone number as the open-id unless you understand how the provider protects report access, and confirm how uploaded face media is stored and deleted.
Findings (5)
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.
A wrong or shared open-id could save or retrieve sensitive health reports under the wrong identity, and using an API key as an identifier could expose or misuse a credential-like value.
The skill treats an API-key field, username, or phone number as the open-id used for sensitive report workflows, while no primary credential is declared in metadata. This makes the account and authorization boundary ambiguous.
如果文件存在且配置了 api-key 字段,则读取 api-key 作为 open-id ... 提示用户提供用户名或手机号作为 open-id
Use a dedicated, non-secret user identifier and require clear authentication for report history; do not reuse API keys or phone numbers as the authorization boundary.
If the default identifier is ever used as a fallback, reports could be associated with a shared or unintended account.
The active production config includes a hardcoded phone-like default open-id for a skill that saves and queries health reports.
ConstantEnum: default--open-id: "18069813808"
Remove hardcoded user identifiers from shipped configs and require an explicit per-user open-id at runtime.
Sensitive biometric or health-related media may remain on disk after the analysis and could be exposed or reused later.
The skill tells the agent to automatically persist uploaded face images/videos locally, but does not define retention, cleanup, access limits, or reuse boundaries.
如果用户上传了附件或者视频/图片文件,则自动保存到技能目录下 attachments
Ask before saving uploads, store only temporary copies when needed, and document deletion and retention behavior.
Your face photo/video and optional health indicators may be sent to the configured external service.
The code reads the selected local media file and submits it through the analysis API. This is expected for the skill's purpose, but it is a sensitive upload.
with open(input_path, 'rb') as f: file_content = f.read() ... files = {'file': ...} ... response = self.analysis(params=params, files=files)Only use files you intend to upload and verify the configured API provider before running the skill.
If the environment is switched to dev, sensitive health media or report queries could be sent to a private non-production endpoint.
A bundled development config points to a private raw-IP HTTP API. The active config is production by default, but the shipped dev endpoint creates provenance and misconfiguration risk.
base-url-open-api: "http://192.168.1.234:9601/smyx-open-api"
Remove raw-IP dev configs from published packages or clearly isolate them from user runtime.
