Trust Assessment
NadName Agent received a trust score of 31/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 10 findings: 0 critical, 1 high, 7 medium, and 2 low severity. Key findings include Unsafe deserialization / dynamic eval, Unpinned npm dependency version, Node lockfile missing.
The analysis covered 4 layers: Manifest Analysis, Static Code Analysis, Dependency Graph, LLM Behavioral Safety. The Manifest Analysis layer scored lowest at 43/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 Findings10
| Severity | Finding | Layer | Location | |
|---|---|---|---|---|
| HIGH | Unsafe deserialization / dynamic eval Decryption followed by code execution Remove obfuscated code execution patterns. Legitimate code does not need base64-encoded payloads executed via eval, encrypted-then-executed blobs, or dynamic attribute resolution to call system functions. | Manifest | skills/daaab/nadname-agent/scripts/register-name.js:287 | |
| MEDIUM | Unsafe deserialization / dynamic eval Decryption followed by code execution Remove obfuscated code execution patterns. Legitimate code does not need base64-encoded payloads executed via eval, encrypted-then-executed blobs, or dynamic attribute resolution to call system functions. | Manifest | skills/daaab/nadname-agent/scripts/check-name.js:219 | |
| MEDIUM | Unsafe deserialization / dynamic eval Decryption followed by code execution Remove obfuscated code execution patterns. Legitimate code does not need base64-encoded payloads executed via eval, encrypted-then-executed blobs, or dynamic attribute resolution to call system functions. | Manifest | skills/daaab/nadname-agent/scripts/my-names.js:42 | |
| MEDIUM | Unsafe deserialization / dynamic eval Decryption followed by code execution Remove obfuscated code execution patterns. Legitimate code does not need base64-encoded payloads executed via eval, encrypted-then-executed blobs, or dynamic attribute resolution to call system functions. | Manifest | skills/daaab/nadname-agent/scripts/my-names.js:183 | |
| MEDIUM | Unsafe deserialization / dynamic eval Decryption followed by code execution Remove obfuscated code execution patterns. Legitimate code does not need base64-encoded payloads executed via eval, encrypted-then-executed blobs, or dynamic attribute resolution to call system functions. | Manifest | skills/daaab/nadname-agent/scripts/my-names.js:238 | |
| MEDIUM | Unsafe deserialization / dynamic eval Decryption followed by code execution Remove obfuscated code execution patterns. Legitimate code does not need base64-encoded payloads executed via eval, encrypted-then-executed blobs, or dynamic attribute resolution to call system functions. | Manifest | skills/daaab/nadname-agent/scripts/register-name.js:67 | |
| MEDIUM | Unsafe deserialization / dynamic eval Decryption followed by code execution Remove obfuscated code execution patterns. Legitimate code does not need base64-encoded payloads executed via eval, encrypted-then-executed blobs, or dynamic attribute resolution to call system functions. | Manifest | skills/daaab/nadname-agent/scripts/register-name.js:518 | |
| MEDIUM | Unpinned npm dependency version Dependency 'ethers' is not pinned to an exact version ('^6.0.0'). Pin dependencies to exact versions to reduce drift and supply-chain risk. | Dependencies | skills/daaab/nadname-agent/package.json | |
| 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/daaab/nadname-agent/package.json | |
| LOW | Plaintext Private Key File Allowed as Fallback The `register-name.js` script includes logic to read a private key from a plaintext file (`~/.nadname/private-key`) as a fallback if an encrypted key or environment variable is not found. While the script provides a strong warning to the user about the insecurity of this method, its presence as an available code path creates a potential risk. Users who ignore the warning or misconfigure their setup could inadvertently store their private key unencrypted on disk, making it vulnerable to unauthorized access. Remove the fallback logic that reads from `PLAIN_KEY_FILE`. Enforce the use of either the `PRIVATE_KEY` environment variable or the encrypted keystore. If a plaintext file is absolutely necessary for specific, highly controlled scenarios, ensure it's behind a more explicit user confirmation and not just a silent fallback. Update documentation to reflect this stricter policy. | LLM | scripts/register-name.js:199 |
Scan History
Embed Code
[](https://skillshield.io/report/97015d2e2a7e8935)
Powered by SkillShield