Trust Assessment
vestige received a trust score of 65/100, placing it in the Caution category. This skill has some security considerations that users should review before deployment.
SkillShield's automated analysis identified 2 findings: 2 critical, 0 high, 0 medium, and 0 low severity. Key findings include Command Injection via Unescaped User Input in Helper Script.
The analysis covered 4 layers: Manifest Analysis, Static Code Analysis, Dependency Graph, LLM Behavioral Safety. The LLM Behavioral Safety layer scored lowest at 40/100, indicating areas for improvement.
Last analyzed on February 13, 2026 (commit 13146e6a). SkillShield performs automated 4-layer security analysis on AI skills and MCP servers.
Layer Breakdown
Behavioral Risk Signals
Security Findings2
| Severity | Finding | Layer | Location | |
|---|---|---|---|---|
| CRITICAL | Command Injection via Unescaped User Input in Helper Script The `~/bin/vmem` helper script, which the skill instructs to create, directly interpolates user-supplied arguments (`$*`) into a shell command that constructs a JSON string. This allows for command injection if the user input contains shell metacharacters or malformed JSON that can break out of the string context. An attacker could craft input to execute arbitrary commands on the host system where the script is run. Modify the helper script to properly escape user input before embedding it into the JSON string, or use a safer method for JSON construction. For example, use `jq`'s `--arg` feature to safely pass shell variables as JSON string values, preventing both shell injection and ensuring valid JSON. Example for 'search' case: ```bash query_arg="$*" jq -n --arg query "$query_arg" '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"search","arguments":{"query":$query}}}' | ~/bin/vestige-mcp 2>/dev/null | jq -r '.result.content[0].text // .error.message' ``` Apply similar escaping to the 'save' case. | LLM | SKILL.md:105 | |
| CRITICAL | Command Injection via Unescaped User Input in Helper Script The `~/bin/vmem` helper script, which the skill instructs to create, directly interpolates user-supplied arguments (`$*`) into a shell command that constructs a JSON string. This allows for command injection if the user input contains shell metacharacters or malformed JSON that can break out of the string context. An attacker could craft input to execute arbitrary commands on the host system where the script is run. Modify the helper script to properly escape user input before embedding it into the JSON string, or use a safer method for JSON construction. For example, use `jq`'s `--arg` feature to safely pass shell variables as JSON string values, preventing both shell injection and ensuring valid JSON. Example for 'save' case: ```bash content_arg="$*" jq -n --arg content "$content_arg" '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"smart_ingest","arguments":{"content":$content}}}' | ~/bin/vestige-mcp 2>/dev/null | jq -r '.result.content[0].text // .error.message' ``` Apply similar escaping to the 'search' case. | LLM | SKILL.md:108 |
Scan History
Embed Code
[](https://skillshield.io/report/747f2f576d771466)
Powered by SkillShield