可信 — 风险评分 5/100
上次扫描:10 小时前 重新扫描
5 /100
openclaw-manager
OpenClaw-native local control plane skill with shadow-first thread observation, durable state, and loopback-only sidecar
OpenClaw Manager 是一个设计良好的本地控制平面技能,具有多层安全防护机制(loopback-only sidecar、consent-gated autostart、受限进程启动),文档与代码行为一致,未发现恶意行为或可疑阴影功能。
技能名称openclaw-manager
分析耗时67.7s
引擎pi
可以安装
该技能可安全使用。建议在生产环境中遵循 SECURITY.md 的配置指导,特别是 loopback-only sidecar 绑定和显式 consent 配置。

安全发现 2 项

严重性 安全发现 位置
提示
依赖版本范围锁定 供应链
package.json 中 dependencies.express 使用 ^5.1.0 版本范围,未使用精确版本锁定
"express": "^5.1.0"
→ 考虑使用精确版本或 >= 约束以提高可重现性,但 Express 是成熟项目,当前风险较低
package.json:29
提示
文档与代码一致性良好 文档欺骗
SKILL.md 声明的能力与实际代码实现一致,包括 shadow-first observation、loopback-only sidecar、consent-gated autostart
所有声明功能均可在代码中找到对应实现
→ 无需修改,已是正面示例
SKILL.md:1
资源类型声明权限推断权限状态证据
文件系统 WRITE WRITE ✓ 一致 src/storage/fs-store.ts:22-80 - 本地状态管理,路径默认 ~/.openclaw/skills/manager/,符合 SKILL…
网络访问 READ READ ✓ 一致 src/skill/sidecar-health.ts:4-8 - 仅访问 loopback 健康检查端点;src/skill/local-config.ts:…
命令执行 NONE WRITE ✓ 一致 src/skill/sidecar-launcher.ts:18-25 - 使用 spawn() 且 shell:false,仅执行已知本地入口点,SECURI…
环境变量 READ READ ✓ 一致 src/skill/local-config.ts - 仅读取 OPENCLAW_MANAGER_* 前缀的环境变量,无敏感凭证遍历
技能调用 WRITE WRITE ✓ 一致 src/skill/bootstrap.ts - bootstrapManagerRuntime() 和 ensureSidecarRunning() 协调本地…
剪贴板 NONE NONE 未发现剪贴板访问代码
浏览器 NONE NONE 未发现浏览器自动化代码
数据库 NONE NONE 使用文件系统 JSON 存储而非数据库
6 项发现
🔗
中危 外部 URL 外部 URL
http://127.0.0.1:4318
README.md:113
🔗
中危 外部 URL 外部 URL
http://127.0.0.1:4318/health
README.md:378
🔗
中危 外部 URL 外部 URL
http://127.0.0.1:
SECURITY.md:36
🔗
中危 外部 URL 外部 URL
https://opencollective.com/express
package-lock.json:598
🔗
中危 外部 URL 外部 URL
https://json-schema.org/draft/2020-12/schema
schemas/capability-fact.schema.json:2
🔗
中危 外部 URL 外部 URL
http://127.0.0.1:45218
scripts/security-smoke.cjs:39

目录结构

63 文件 · 232.2 KB · 7061 行
TypeScript 37f · 4057L JSON 8f · 1652L Markdown 13f · 894L JavaScript 2f · 323L Shell 1f · 103L YAML 2f · 32L
├─ 📁 agents
│ └─ 📋 openai.yaml YAML 3L · 312 B
├─ 📁 docs
│ ├─ 📝 architecture.md Markdown 32L · 1.1 KB
│ ├─ 📝 capability-facts.md Markdown 35L · 704 B
│ ├─ 📝 connector-protocol.md Markdown 42L · 1.3 KB
│ ├─ 📝 event-schema.md Markdown 33L · 635 B
│ ├─ 📝 security-audit-response.md Markdown 83L · 2.8 KB
│ └─ 📝 session-model.md Markdown 58L · 1.0 KB
├─ 📁 schemas
│ ├─ 📋 capability-fact.schema.json JSON 17L · 625 B
│ ├─ 📋 event.schema.json JSON 15L · 436 B
│ ├─ 📋 run.schema.json JSON 16L · 480 B
│ ├─ 📋 session.schema.json JSON 24L · 1002 B
│ └─ 📋 skill-trace.schema.json JSON 18L · 570 B
├─ 📁 scripts
│ ├─ 🔧 install.sh Shell 103L · 2.9 KB
│ ├─ 📜 security-smoke.cjs JavaScript 88L · 3.4 KB
│ └─ 📜 smoke-test.cjs JavaScript 235L · 9.5 KB
├─ 📁 src
│ ├─ 📁 api
│ │ ├─ 📜 health.ts TypeScript 19L · 638 B
│ │ ├─ 📜 inbound.ts TypeScript 41L · 1.4 KB
│ │ └─ 📜 server.ts TypeScript 289L · 10.2 KB
│ ├─ 📁 connectors
│ │ ├─ 📜 base.ts TypeScript 48L · 1.7 KB
│ │ ├─ 📜 email.ts TypeScript 40L · 1.7 KB
│ │ ├─ 📜 github.ts TypeScript 42L · 2.1 KB
│ │ ├─ 📜 registry.ts TypeScript 16L · 537 B
│ │ ├─ 📜 telegram.ts TypeScript 39L · 1.8 KB
│ │ └─ 📜 wecom.ts TypeScript 39L · 1.7 KB
│ ├─ 📁 control-plane
│ │ ├─ 📜 attention-service.ts TypeScript 280L · 9.6 KB
│ │ ├─ 📜 binding-service.ts TypeScript 62L · 2.2 KB
│ │ ├─ 📜 checkpoint-service.ts TypeScript 60L · 2.5 KB
│ │ ├─ 📜 event-service.ts TypeScript 37L · 1.3 KB
│ │ ├─ 📜 run-service.ts TypeScript 70L · 2.4 KB
│ │ ├─ 📜 session-service.ts TypeScript 386L · 13.8 KB
│ │ ├─ 📜 shadow-classifier.ts TypeScript 242L · 7.7 KB
│ │ ├─ 📜 shadow-service.ts TypeScript 565L · 20.8 KB
│ │ ├─ 📜 share-service.ts TypeScript 103L · 4.1 KB
│ │ └─ 📜 spool-service.ts TypeScript 34L · 1.2 KB
│ ├─ 📁 exporters
│ │ ├─ 📜 markdown-report.ts TypeScript 77L · 2.8 KB
│ │ └─ 📜 snapshot-html.ts TypeScript 82L · 3.1 KB
│ ├─ 📁 skill
│ │ ├─ 📜 autostart-consent.ts TypeScript 43L · 1.2 KB
│ │ ├─ 📜 bootstrap.ts TypeScript 216L · 6.3 KB
│ │ ├─ 📜 commands.ts TypeScript 112L · 5.0 KB
│ │ ├─ 📜 hooks.ts TypeScript 50L · 1.8 KB
│ │ ├─ 📜 local-config.ts TypeScript 79L · 2.7 KB
│ │ ├─ 📜 sidecar-health.ts TypeScript 10L · 245 B
│ │ └─ 📜 sidecar-launcher.ts TypeScript 36L · 956 B
│ ├─ 📁 storage
│ │ ├─ 📜 fs-store.ts TypeScript 217L · 6.0 KB
│ │ ├─ 📜 indexes.ts TypeScript 23L · 995 B
│ │ └─ 📜 locks.ts TypeScript 22L · 530 B
│ ├─ 📁 telemetry
│ │ ├─ 📜 capability-facts.ts TypeScript 105L · 4.3 KB
│ │ ├─ 📜 capability-graph.ts TypeScript 99L · 3.2 KB
│ │ ├─ 📜 closure-metrics.ts TypeScript 16L · 883 B
│ │ ├─ 📜 scenario-tagging.ts TypeScript 13L · 432 B
│ │ └─ 📜 skill-trace.ts TypeScript 63L · 2.1 KB
│ └─ 📜 types.ts TypeScript 382L · 9.0 KB
├─ 📁 templates
│ ├─ 📝 capability-report.md Markdown 4L · 31 B
│ ├─ 📝 focus-digest.md Markdown 4L · 40 B
│ └─ 📝 session-summary.md Markdown 20L · 221 B
├─ 📝 AGENTS.md Markdown 27L · 1.2 KB
├─ 📋 package-lock.json JSON 1497L · 48.8 KB
├─ 📋 package.json JSON 48L · 1.3 KB
├─ 📝 README.md Markdown 405L · 9.7 KB
├─ 📝 SECURITY.md Markdown 114L · 3.0 KB
├─ 📝 SKILL.md Markdown 37L · 1.4 KB
├─ 📋 skill.yaml YAML 29L · 674 B
└─ 📋 tsconfig.json JSON 17L · 362 B

依赖分析 3 项

包名版本来源已知漏洞备注
express ^5.1.0 npm 成熟项目,版本范围风险低
tsx ^4.20.5 npm devDependencies 仅开发时使用
typescript ^5.9.2 npm devDependencies 仅开发时使用

安全亮点

✓ consent-gated autostart - 必须用户显式授权才能自动启动 sidecar
✓ loopback-only 默认绑定 - sidecar 绑定到 127.0.0.1,默认拒绝非 loopback URL
✓ shell: false 受限进程启动 - sidecar-launcher.ts 使用 spawn() 且 shell:false,仅执行已知入口点
✓ 环境变量白名单 - 仅读取 OPENCLAW_MANAGER_* 前缀的配置变量,不遍历 os.environ 收割凭证
✓ SECURITY.md 完整 - 详细说明网络行为、本地状态处理、autostart consent 机制
✓ security-smoke.cjs 测试 - 验证 loopback-only 约束、consent 默认值、远程 URL 拒绝等安全策略
✓ install.sh 脚本安全检查 - 检查 npm registry 配置是否指向官方源,防止供应链投毒
✓ Connector 代码无主动外联 - connector 仅规范化消息,不发起外部 HTTP 请求(除非用户配置)
✓ 数据本地化 - session/event/skill-trace 等数据存储在 ~/.openclaw/skills/manager/,不上传
✓ 红acted 导出 - snapshot 和 capability exports 默认脱敏