unisound-chief-complaint-disease-op

Security checks across malware telemetry and agentic risk

Overview

The skill’s code matches its stated medical-record quality-check purpose, but users should only send de-identified records, protect the app key, and verify the shared preprocessing/provenance details.

This skill appears purpose-aligned and not suspicious. Before installing or running it, verify the publisher/provenance, use the default or another trusted model endpoint, pass the app key carefully, de-identify medical records, and avoid the --save-prepared debug option unless local storage is acceptable.

VirusTotal

VirusTotal findings are pending for this skill version.

View on VirusTotal

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.

#
ASI07: Insecure Inter-Agent Communication
Medium
What this means

If records are not de-identified, patient information could be transmitted to the model provider.

Why it was flagged

The code sends LLM chat messages, including parsed medical-record content, to the configured HiVoice-compatible chat/completions endpoint. This is disclosed and purpose-aligned, but the content can be sensitive.

Skill content
DEFAULT_LLM_BASE = "https://maas-api.hivoice.cn/v1" ... payload = {"model": model, "messages": messages, "temperature": 0}
Recommendation

Use only de-identified records, confirm the provider endpoint is trusted, and ensure any required data-processing agreement or internal approval is in place.

#
ASI03: Identity and Privilege Abuse
Low
What this means

A leaked or misdirected app key could allow unauthorized model API use or billing under the user’s account.

Why it was flagged

The skill requires a user-provided app key and sends it as a bearer token to the configured model API. This is expected for the integration and there is no evidence of hardcoding or logging the key.

Skill content
def make_llm_caller(appkey: str, base: str = DEFAULT_LLM_BASE, model: str = DEFAULT_LLM_MODEL, timeout: int = 0): ... headers = {"Authorization": f"Bearer {appkey}"}
Recommendation

Provide the key only when needed, keep it out of shared files and command histories where possible, and avoid overriding --base to an untrusted URL.

#
ASI04: Agentic Supply Chain Vulnerabilities
Low
What this means

Running the multi-format path depends on whatever local _shared/doc-preprocess code is installed.

Why it was flagged

The multi-format entry point imports a shared preprocessing module outside this skill’s provided file manifest. The dependency is documented and purpose-aligned, but its behavior is not reviewable from the supplied artifacts.

Skill content
_preprocess_dir = SKILLS_ROOT / "_shared" / "doc-preprocess" / "scripts" ... from preprocess import
Recommendation

Verify the shared preprocessor is trusted and up to date, or use scripts/emr_qc.py with plain text input if the shared helper is not available or not reviewed.

#
ASI04: Agentic Supply Chain Vulnerabilities
Low
What this means

Users have less certainty that the package metadata consistently identifies the publisher and package lineage.

Why it was flagged

The embedded _meta.json owner and slug differ from the supplied registry metadata owner and slug, which is a provenance/packaging inconsistency rather than evidence of malicious behavior.

Skill content
"ownerId": "kn76wejkeqxfc03j0rfxp2jaj982m7aa", "slug": "doctor.emr-qc.chief-complaint-disease-op"
Recommendation

Verify the publisher and package provenance before using the skill with medical data or provider credentials.

#
ASI09: Human-Agent Trust Exploitation
Low
What this means

Using the debugging option may leave a local copy of sensitive record text.

Why it was flagged

The privacy statement says inputs and intermediate results are not persisted, while the documented --save-prepared option can save preprocessed text. Because this option is disclosed and user-directed, it is a notice rather than a concern.

Skill content
**不做本地持久化** ... `--save-prepared`:保存预处理后的文本,便于调试
Recommendation

Avoid --save-prepared for real patient records unless the output directory is protected and the file retention policy is clear.