中医面诊分析工具
ReviewAudited by ClawScan on May 10, 2026.
Overview
The skill’s face-diagnosis purpose is mostly clear, but it handles sensitive face/health data and includes unclear shared-code and report-history scoping that should be reviewed before use.
Before installing, verify that you trust the provider and the exact runtime helper code, because this skill can upload face/health videos and query cloud report history. Use only videos you have permission to share, avoid using a phone number as the open-id if a less sensitive identifier works, and confirm the skill is using the intended HTTPS production endpoints.
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.
Face video, health-analysis output, and a user identifier may leave the local device and be stored or queried by the provider service.
The skill discloses sending face videos or video URLs to a server-side API and collecting an identifier such as username or phone number for saving/querying reports.
Supports uploading local MP4 videos or network video URLs to call the server-side API for facial diagnosis ... 提示用户提供用户名或手机号作为 open-id
Only upload videos you intend to share with the provider, avoid private/internal video URLs, and use a dedicated non-sensitive identifier if possible.
Historical health-report queries may be ambiguously scoped, which could expose the wrong report set if the server-side or helper code does not enforce the user boundary.
The history-list function accepts an open_id but the visible code does not enforce it or pass it into the listing call, relying on global or helper behavior not shown in this path.
def show_analyze_list(open_id, start_time=None, end_time=None):
# if not open_id:
# raise ValueError("必须提供本用户的OpenId/UserId")
...
output_content = skill.get_output_analysis_list()Make the open-id/auth scoping explicit in every history request, validate it server-side, and document exactly which reports a user can list.
The skill may execute shared or externally provided helper code for API requests and identity handling, making the actual behavior depend on files outside this skill package.
The script puts the workspace root first on Python's import path before importing shared helpers, so a workspace-level smyx_common package could shadow the bundled reviewed code.
parent_dir = os.path.dirname(os.path.dirname(os.path.dirname(current_dir))) sys.path.insert(0, parent_dir) ... from skills.smyx_common.scripts.util import RequestUtil
Use relative imports or a pinned vendored dependency, avoid prioritizing workspace-level packages, and ensure the exact helper code used at runtime is reviewed.
If the environment is switched to dev, sensitive video/report traffic could be sent to a local-network HTTP endpoint.
A bundled development config points to a raw private IP over HTTP. The active config appears to use prod, but the dev endpoint remains in the package.
base-url-open-api: "http://192.168.1.234:9601/smyx-open-api"
Remove development endpoints from published skills or ensure only documented HTTPS production endpoints can be selected by default.
If invoked by this or related helper code, it could start nested agent activity beyond the expected video-analysis task.
A bundled common helper can launch another OpenClaw agent and notes it may still run after timeout; this is not shown as part of the main face-analysis flow.
cmd = [
"openclaw",
"agent",
"-m", str(prompt),
"--session-id", session_id,
...
]
...
任务可能仍在后台运行Remove unused nested-agent helpers from this skill package or require explicit user approval and clear limits before any agent-spawning behavior.
