文件预览

README.md

查看 Skill Trust Guard 技能包中的文件内容。

文件内容

README.md

# Skill Trust Guard

OpenClaw skill 安装安全门:在 `clawhub install` 之前自动调用 `skill-trust-scanner`,按评分决策是否放行。

## 1) 目录结构

```text
~/.openclaw/skills/skill-trust-guard/
├── SKILL.md
├── README.md
├── install.sh               # wrapper(方案 B)
├── integrate.sh             # 生成 clawhub shim(无缝集成)
└── hooks/
    └── pre-install.sh       # pre-install hook(可独立复用)
```

## 2) 决策逻辑

- `< 50`:阻断安装,输出完整 JSON 报告
- `50~74`:告警并询问继续(`--yes` 跳过确认)
- `>= 75`:直接安装

## 3) 使用方式

### A. 显式调用(最稳妥)

```bash
~/.openclaw/skills/skill-trust-guard/install.sh [global opts] [--yes] <slug|path|git-url> [install opts]
```

### B. 无缝集成(推荐)

```bash
~/.openclaw/skills/skill-trust-guard/integrate.sh
export PATH="$HOME/.openclaw/bin:$PATH"
```

此后:
```bash
clawhub install <slug>
```
会自动走 trust guard;其他子命令(search/list/update 等)仍走原始 clawhub。

> 若想永久生效,把 `export PATH="$HOME/.openclaw/bin:$PATH"` 写入 `~/.bashrc` 或 `~/.zshrc`。

## 4) Hook 说明

`hooks/pre-install.sh` 可作为独立 pre-install hook 使用:

```bash
hooks/pre-install.sh <local-skill-path>
# 输出:
# SCORE=...
# SUMMARY=...
# DECISION=allow|warn|reject
# exit code: 0/10/20/30
```

## 5) OpenClaw 原生 Hook 调研结论

已检查 `openclaw hooks` 机制:当前为**内部 agent hook 管理**(session-memory/boot-md/command-logger 类),未发现可直接拦截 `clawhub install` 的官方 preInstall 扩展点。

因此当前最佳可交付路径为:
- **方案 B(wrapper + PATH shim)主实现**
- 同时提供可复用 `pre-install.sh`,便于未来迁移到原生 hook

## 6) 错误处理

- scanner 缺失 / node 或 npx 缺失:fail fast
- clawhub 下载失败(网络/限流/认证问题):停止并提示日志 `/tmp/skill-trust-guard.install.log`
- 扫描解析失败:停止安装

## 7) WSL/Linux 兼容性

脚本全部使用 POSIX/Bash 常见能力(bash + coreutils),在当前 WSL2 Linux 环境已通过测试。