Back to skill
Skillv1.0.2
ClawScan security
Local Whisper · ClawHub's context-aware review of the artifact, metadata, and declared behavior.
Scanner verdict
BenignFeb 27, 2026, 3:44 AM
- Verdict
- benign
- Confidence
- high
- Model
- gpt-5-mini
- Summary
- The skill's files and instructions are largely consistent with its stated purpose (setting up local whisper.cpp STT for OpenClaw), it does not request secrets or unusual credentials, and it downloads/builds code from known project hosts — however it modifies OpenClaw config and restarts the gateway and there is a minor mismatch between claimed supported model sizes and the runtime wrapper's enforced model list.
- Guidance
- This skill appears to do what it says: build whisper.cpp locally, download ggml models from Hugging Face, install a wrapper into ~/.local, and configure OpenClaw to call that wrapper for inbound audio. Before installing: (1) ensure you have build tools, ffmpeg, and enough disk space (models can be large); (2) review and back up your OpenClaw config because scripts will patch it and restart the gateway; (3) note the wrapper currently only accepts models 'base' or 'small' despite documentation mentioning larger models — if you plan to use medium/large, inspect/adjust bin/openclaw-whisper-stt.sh; (4) verify you trust the upstream GitHub and Hugging Face sources; (5) run the install commands interactively (not as root) and inspect what they do if you have security concerns. Overall the skill is coherent and proportional to its purpose.
Review Dimensions
- Purpose & Capability
- noteThe name/description (local whisper.cpp STT for OpenClaw) aligns with the scripts: they build whisper.cpp from the upstream GitHub repo, download ggml model binaries from Hugging Face, install a wrapper into ~/.local/bin, and patch OpenClaw to call the wrapper for inbound audio. One inconsistency: SKILL.md and download_models.sh advertise many model sizes (tiny/base/small/medium/large-*) but the runtime wrapper (bin/openclaw-whisper-stt.sh) enforces MODEL_NAME to be only 'base' or 'small'. This is a capability mismatch (documentation vs runtime).
- Instruction Scope
- okThe SKILL.md installation steps are explicit and limited to building whisper.cpp, downloading models into ~/.cache/whisper, installing the wrapper into ~/.local/bin, patching OpenClaw's tools.media.audio config, and restarting the gateway. The scripts operate on user-home directories (~/.local, ~/.cache) and do not attempt to read unrelated system files or export secrets. The patch script will restart the gateway (impactful), which is within the skill's stated goal but is a behavior the user should expect.
- Install Mechanism
- okThere is no packaged install spec; the provided scripts clone the known upstream repo (https://github.com/ggerganov/whisper.cpp) and download model binaries from Hugging Face (huggingface.co/ggerganov/whisper.cpp). Those are well-known sources. The build process compiles locally with cmake and installs artifacts under the user's home. This is expected for a local build; the main risk is the usual build-time exposure and disk usage for large models.
- Credentials
- okThe skill requests no credentials or secret environment variables. Runtime uses ordinary env items (HOME, optional OPENCLAW_WHISPER_MODEL and OPENCLAW_WHISPER_LANG) and checks for required tools (git, cmake, ffmpeg, curl). No unrelated service tokens or privileged system credentials are requested.
- Persistence & Privilege
- noteThe skill installs a wrapper symlink into ~/.local/bin, places libs in ~/.local/lib, stores models in ~/.cache/whisper, and PATCHES OpenClaw configuration and restarts the gateway to enable local STT. It does not set always:true, but it does modify OpenClaw's config persistently — users should be aware this changes their gateway behavior until reverted.
