Trust Assessment
devbridge-frontend received a trust score of 54/100, placing it in the Caution category. This skill has some security considerations that users should review before deployment.
SkillShield's automated analysis identified 6 findings: 1 critical, 0 high, 2 medium, and 2 low severity. Key findings include Missing required field: name, Python file could not be statically analyzed, Node lockfile missing.
The analysis covered 4 layers: Manifest Analysis, Static Code Analysis, Dependency Graph, LLM Behavioral Safety. The LLM Behavioral Safety layer scored lowest at 68/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 Findings6
| Severity | Finding | Layer | Location | |
|---|---|---|---|---|
| CRITICAL | Prompt Injection via Untrusted User Input The skill constructs messages for other agents (backend, admin) by directly embedding untrusted user input from `problem['error']` and potentially `user_info` into f-strings. If these messages are processed by an LLM-based agent, a malicious user could craft their input (e.g., in the '/report' command's error description) to inject instructions, manipulate the receiving LLM's behavior, or extract sensitive information from that agent's context. The `problem['error']` field is directly taken from the user's message. Sanitize or escape all user-provided input before embedding it into messages intended for LLMs. Consider using structured data formats (e.g., JSON) for inter-agent communication instead of raw text messages, or implement robust input validation and LLM-specific sanitization techniques. | LLM | commands.py:169 | |
| MEDIUM | Missing required field: name The 'name' field is required for claude_code skills but is missing from frontmatter. Add a 'name' field to the SKILL.md frontmatter. | Static | skills/albertnjcn/devbridge-frontend/SKILL.md:1 | |
| MEDIUM | Python file could not be statically analyzed SyntaxError: invalid syntax. Perhaps you forgot a comma? (line 311) | Static | skills/albertnjcn/devbridge-frontend/commands.py:311 | |
| 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/albertnjcn/devbridge-frontend/package.json | |
| LOW | Unpinned Dependency Version The `package.json` file specifies `python-dateutil` as a required dependency without pinning a specific version. This means that any new deployment could pull the latest version of the package, which might introduce breaking changes, new vulnerabilities, or unexpected behavior if not thoroughly tested. While `python-dateutil` is a common and generally stable library, unpinned dependencies are a general supply chain risk. Pin the version of `python-dateutil` to a specific, known-good version (e.g., `"python-dateutil": "==2.8.2"`) to ensure deterministic builds and prevent unexpected updates. Regularly review and update pinned dependencies. | LLM | package.json:70 | |
| INFO | Transmission of Sensitive User Data to Other Agents The skill's core functionality involves reporting API problems, which includes transmitting user-provided request parameters (`problem['params']`) and `user_info` to 'backend' and 'admin' agents. While this is the intended behavior, the `problem['params']` can contain sensitive API request bodies (e.g., PII, authentication tokens if not properly handled by the user). This highlights a data flow where sensitive user data leaves the immediate skill context and is sent to other systems, requiring careful consideration of data handling, access controls, and logging on the receiving end. Ensure that all inter-agent communication channels are secure and that receiving agents have appropriate access controls and data retention policies. Document the types of sensitive data that may be transmitted and ensure users are aware of this data flow. Implement data masking or redaction for highly sensitive fields if possible. | LLM | commands.py:175 |
Scan History
Embed Code
[](https://skillshield.io/report/33ed0cb7bc14059d)
Powered by SkillShield