扫描报告
5 /100
soul-in-sapphire
Notion LTM + continuity - 长期记忆、状态追踪、连续性检查、身份变更支持
soul-in-sapphire 是一个设计良好的 Notion LTM 技能,所有操作均通过官方 Notion API 或本地文件系统完成,无任何恶意行为或影子功能。
可以安装
可安全使用。无需额外限制。
安全发现 1 项
| 严重性 | 安全发现 | 位置 |
|---|---|---|
| 低危 | 间接凭证使用 | scripts/notionctl_bridge.js:15 |
| 资源类型 | 声明权限 | 推断权限 | 状态 | 证据 |
|---|---|---|---|---|
| 文件系统 | READ | READ | ✓ 一致 | scripts/ltm_common.js:51 - 读取 ~/.config/soul-in-sapphire/config.json |
| 文件系统 | WRITE | WRITE | ✓ 一致 | scripts/conflict_track.js:47 - 写入本地 JSONL 文件 |
| 命令执行 | WRITE | WRITE | ✓ 一致 | scripts/ltm_common.js:43 - execFileSync 调用 notionctl |
| 网络访问 | READ+WRITE | READ+WRITE | ✓ 一致 | scripts/ltm_common.js:43 - 通过 notionctl 调用 Notion API |
1 项发现
中危 外部 URL 外部 URL
https://www.notion.so/my-integrations README.md:159 目录结构
23 文件 · 86.4 KB · 2538 行 JavaScript 16f · 1773L
Markdown 2f · 706L
JSON 5f · 59L
├─
▾
scripts
│ ├─
bootstrap_config.js
JavaScript
│ ├─
conflict_track.js
JavaScript
│ ├─
continuity_check.js
JavaScript
│ ├─
emostate_config.js
JavaScript
│ ├─
emostate_notion.js
JavaScript
│ ├─
emostate_tick.js
JavaScript
│ ├─
identity_diff.js
JavaScript
│ ├─
input.json
JSON
│ ├─
journal_patch_schema.js
JavaScript
│ ├─
journal_write.js
JavaScript
│ ├─
ltm_common.js
JavaScript
│ ├─
ltm_search.js
JavaScript
│ ├─
ltm_write.js
JavaScript
│ ├─
notionctl_bridge.js
JavaScript
│ ├─
setup_ltm.js
JavaScript
│ ├─
state_recall.js
JavaScript
│ └─
subagent_spawn_plan.js
JavaScript
├─
▾
state
│ ├─
subagent-models.json
JSON
│ └─
subagent-models.template.json
JSON
├─
package-lock.json
JSON
├─
package.json
JSON
├─
README.md
Markdown
└─
SKILL.md
Markdown
依赖分析 1 项
| 包名 | 版本 | 来源 | 已知漏洞 | 备注 |
|---|---|---|---|---|
notion-api-automation | peer-dep | skill-reference | 否 | 通过本地 child_process 调用,非 npm 依赖 |
安全亮点
✓ 所有网络请求通过官方 Notion API(api.notion.com)
✓ 无 base64/bash 管道或远程脚本执行
✓ 无凭证收割、环境变量遍历或敏感路径访问
✓ 无 HTML 注释隐藏指令
✓ 代码结构清晰,文档与实现高度一致
✓ 使用 ESM 模块和类型安全的 JSON 处理
✓ 错误处理完善,无静默失败
✓ 依赖外部 notionctl 工具,职责分离清晰