Audio Analyze

Security checks across static analysis, malware telemetry, and agentic risk

Overview

The skill largely matches its audio transcription purpose, but its helper script builds executable Python from unescaped file paths and settings, which creates a real code-execution risk.

Review before installing. The external transcription workflow and API key use are expected, but the included transcribe.sh script should be treated cautiously because it interpolates user-controlled values into executable Python. Prefer using a fixed, trusted filename and settings, run in a limited environment, and wait for a safer script implementation if you process untrusted files.

Static analysis

No static analysis findings were reported for this release.

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.

What this means

A maliciously crafted filename or setting could cause the helper script to run unintended local Python code when the agent tries to transcribe audio.

Why it was flagged

The shell expands user/config-controlled values into executable Python source instead of passing them as arguments or JSON data. Quotes or other crafted content in the filename, EVOLINK_MODEL, EVOLINK_API_KEY, or language option could break out of string literals and change the code that runs.

Skill content
python3 -c "\n...\nwith open('$FILE', 'rb') as f:\n...\n    'model': '${EVOLINK_MODEL:-gemini-3.1-pro-preview-customtools}',\n...\n{'type': 'text', 'text': '请转录这段音频 (Diarization: $DIARIZATION, Lang: $LANG)'},
Recommendation

Do not run this helper on untrusted paths or with untrusted option/env values until it is rewritten to pass inputs via argv/environment safely and construct the payload inside Python without source-code interpolation.

What this means

Audio or video files may contain private conversations or other sensitive information that will be sent to Evolink for processing.

Why it was flagged

The selected local file is encoded and sent to the Evolink API for transcription. This is aligned with the skill's purpose and is disclosed, but it is still an external data transfer.

Skill content
audio_base64 = base64.b64encode(f.read()).decode('utf-8') ... response = requests.post('https://api.evolink.ai/v1/chat/completions', json=payload, headers=headers)
Recommendation

Only transcribe files you are comfortable uploading to Evolink, and review Evolink's retention and privacy terms for sensitive recordings.

What this means

Anyone or anything that can read the environment where the skill runs may be able to use the Evolink API key.

Why it was flagged

The skill requires a provider API key. This is expected for the Evolink integration and the artifacts do not show hardcoded keys or unrelated credential use.

Skill content
`EVOLINK_API_KEY` (Required): Your API key from Evolink.
Recommendation

Use a dedicated, least-privilege API key if available, avoid sharing logs that include environment values, and rotate the key if you suspect exposure.

What this means

Future installs may receive a different requests version than the publisher tested.

Why it was flagged

The dependency is not version-pinned. Installing an unpinned package is common for simple tools, but it gives less reproducible provenance than a pinned or locked dependency.

Skill content
requests
Recommendation

Install in a virtual environment and prefer a pinned dependency set if using this in a controlled or production workflow.