Trust Assessment
agent-pulse received a trust score of 34/100, placing it in the Untrusted category. This skill has significant security findings that require attention before use in production.
SkillShield's automated analysis identified 6 findings: 2 critical, 0 high, 0 medium, and 2 low severity. Key findings include Arbitrary command execution, Remote code execution: curl/wget pipe to shell, Node lockfile missing.
The analysis covered 4 layers: Manifest Analysis, Static Code Analysis, Dependency Graph, LLM Behavioral Safety. All layers scored 70 or above, reflecting consistent security practices.
Last analyzed on February 14, 2026 (commit 13146e6a). SkillShield performs automated 4-layer security analysis on AI skills and MCP servers.
Layer Breakdown
Behavioral Risk Signals
Security Findings6
| Severity | Finding | Layer | Location | |
|---|---|---|---|---|
| CRITICAL | Arbitrary command execution Remote code download piped to interpreter Review all shell execution calls. Ensure commands are static (not built from user input), use absolute paths, and are strictly necessary. Prefer library APIs over shell commands. | Manifest | skills/openclaw-consensus-bot/agent-pulse/scripts/setup.sh:56 | |
| CRITICAL | Remote code execution: curl/wget pipe to shell Detected a pattern that downloads and immediately executes remote code. This is a primary malware delivery vector. Never pipe curl/wget output directly to a shell interpreter. | Static | skills/openclaw-consensus-bot/agent-pulse/scripts/setup.sh:56 | |
| LOW | Node lockfile missing package.json is present but no lockfile was found (package-lock.json, pnpm-lock.yaml, or yarn.lock). Commit a lockfile for deterministic dependency resolution. | Dependencies | skills/openclaw-consensus-bot/agent-pulse/package.json | |
| LOW | Skill requires high-privilege PRIVATE_KEY The skill's core functionality (sending on-chain pulses) requires access to a `PRIVATE_KEY`, granting full control over the associated wallet for signing transactions. While necessary for its purpose, this is a high-privilege credential. The skill mitigates this by advising best practices (dedicated wallet, bounded approvals) and not logging the key directly. Ensure `PRIVATE_KEY` is handled securely (e.g., via secure environment variables, not hardcoded or logged). The skill's current advice and implementation for `PRIVATE_KEY` handling (passing to `cast`, not logging) are good. | LLM | SKILL.md | |
| INFO | Unpinned system dependencies The skill relies on system-installed binaries (`cast`, `curl`, `jq`) without specifying exact versions. This introduces a supply chain risk where updates to these tools could introduce breaking changes or vulnerabilities that affect the skill's operation. Consider documenting or enforcing specific versions of external binaries if compatibility issues arise. For `cast`, using a specific Foundry release might be beneficial. | LLM | package.json:21 | |
| INFO | Public wallet address sent to external API The skill sends the agent's public wallet address (derived from `PRIVATE_KEY`) to an external API (`https://x402pulse.xyz` by default) for liveness status checks. While the address is public, this constitutes sending data to a third-party service. Document clearly that public wallet addresses are sent to the configured `API_BASE`. Users should be aware of the privacy implications of using the default API. | LLM | scripts/auto-pulse.sh:39 |
Scan History
Embed Code
[](https://skillshield.io/report/d8f11b86351f95f6)
Powered by SkillShield