Trust Assessment
feishu-vc received a trust score of 48/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: 1 critical, 1 high, 3 medium, and 1 low severity. Key findings include Missing required field: name, Unpinned npm dependency version, 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 48/100, indicating areas for improvement.
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 | Suspicious `dotenv` package version indicates typosquatting or malicious dependency The `package.json` specifies `dotenv` version `^17.2.3`. The official `dotenv` package on npm is currently at `16.x.x`. This version number is highly unusual and suggests a potential typosquatting attack or a malicious fork of the `dotenv` package. Using this package could lead to arbitrary code execution, data exfiltration, or other severe security breaches. Replace `"dotenv": "^17.2.3"` with `"dotenv": "^16.3.1"` (or the latest official stable version) and verify the integrity of the installed package. Ensure all dependencies are sourced from trusted registries and have expected version numbers. | LLM | package.json:7 | |
| HIGH | Sensitive API token cached outside skill's dedicated directory Both `invite.js` and `reserve.js` cache the `tenant_access_token` in `../../memory/feishu_token.json`. This path is outside the skill's immediate directory, implying broader filesystem write permissions. If the `memory` directory is shared or not adequately secured, this could expose the sensitive Feishu API token to other processes or skills, leading to unauthorized access to Feishu resources. Store sensitive tokens within the skill's dedicated, isolated storage area (e.g., `path.resolve(__dirname, './.cache/feishu_token.json')`) or use a secure, platform-provided credential store. Ensure the `memory` directory, if intended for shared use, has appropriate access controls and isolation mechanisms. | LLM | invite.js:7 | |
| 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/autogame-17/feishu-vc/SKILL.md:1 | |
| MEDIUM | Unpinned npm dependency version Dependency 'commander' is not pinned to an exact version ('^14.0.3'). Pin dependencies to exact versions to reduce drift and supply-chain risk. | Dependencies | skills/autogame-17/feishu-vc/package.json | |
| MEDIUM | Full API responses, potentially containing sensitive data, are logged to console The skill logs the full JSON response from the Feishu API to the console using `console.log(JSON.stringify(data, null, 2))`. These responses may contain sensitive information, including the `tenant_access_token` or details about meetings/users. If these logs are accessible or not properly managed, this could lead to unintended data exposure. Review API responses for sensitive data. Avoid logging full responses in production environments. Instead, log only necessary, non-sensitive information, or use a secure logging mechanism that redacts sensitive fields. | LLM | invite.js:45 | |
| 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/autogame-17/feishu-vc/package.json |
Scan History
Embed Code
[](https://skillshield.io/report/e4a6e1942bb7b56e)
Powered by SkillShield