扫描报告
5 /100
daily-mood
Mood-aware daily message delivery — morning and evening emotional support messages for registered users, with real-time mood response
This is a genuine mood-message delivery skill with no malicious behavior — all scripts only read/write local JSON user files, generate LLM prompts to stdout, and perform strict input sanitization.
可以安装
No action needed. The skill is a benign multi-user daily message system. Consider adding an explicit allowed-tools declaration to SKILL.md metadata for completeness.
安全发现 1 项
| 严重性 | 安全发现 | 位置 |
|---|---|---|
| 低危 | Missing allowed-tools declaration in SKILL.md metadata 文档欺骗 | SKILL.md:1 |
| 资源类型 | 声明权限 | 推断权限 | 状态 | 证据 |
|---|---|---|---|---|
| 文件系统 | NONE | READ | ✓ 一致 | All scripts: fs.readdirSync + fs.readFileSync on data/users/ |
| 文件系统 | NONE | WRITE | ✓ 一致 | scripts/mood-response.js:57, scripts/register.js:73 — write to data/users/<userI… |
| 命令执行 | NONE | NONE | — | No child_process, exec, spawn, or system() calls found in any script |
| 网络访问 | NONE | NONE | — | No http, https, fetch, or curl calls found — no outbound connectivity |
| 环境变量 | NONE | NONE | — | No process.env iteration or sensitive key access |
| 技能调用 | NONE | NONE | — | No skill invocation or cross-skill calls |
| 剪贴板 | NONE | NONE | — | No clipboard access |
| 浏览器 | NONE | NONE | — | No browser automation |
| 数据库 | NONE | NONE | — | No database connectivity — only local JSON files |
目录结构
10 文件 · 34.2 KB · 831 行 JavaScript 5f · 639L
Markdown 1f · 149L
JSON 4f · 43L
├─
▾
data
│ └─
▾
users
│ ├─
alice.json
JSON
│ └─
bob.json
JSON
├─
▾
scripts
│ ├─
evening-push.js
JavaScript
│ ├─
mood-response.js
JavaScript
│ ├─
morning-push.js
JavaScript
│ ├─
push-toggle.js
JavaScript
│ └─
register.js
JavaScript
├─
_meta.json
JSON
├─
package.json
JSON
└─
SKILL.md
Markdown
安全亮点
✓ No shell execution — zero child_process, exec, spawn, or eval calls across all 5 scripts
✓ No network access — no http, https, fetch, curl, or outbound connectivity of any kind
✓ No credential theft — no access to .env, ~/.ssh, ~/.aws, or environment variable iteration
✓ No obfuscation — all code is human-readable with clear inline documentation
✓ No base64, no encoded payloads, no anti-analysis techniques
✓ No sensitive path access — only reads/writes to skill-local data/users/ directory
✓ Strict input sanitization — userId sanitized with regex /[^a-zA-Z0-9_-]/g and capped at 64 chars
✓ Mood allowlist enforcement — ALLOWED_MOODS is a Set of 9 pre-defined values with no injection surface
✓ No external dependencies — package.json declares no runtime dependencies, only npm scripts
✓ No cron execution — push-toggle.js only prints cron commands as instructions, never executes them
✓ Clean codebase — 639 lines across 5 scripts with consistent, readable style