---
name: security-check
description: Pre-execution risk assessment for tool calls. Checks file sensitivity, blast radius, irreversibility before running dangerous commands.
metadata: { "openclaw": { "emoji": "🛡️" } }
---

# Security Check — Tool Risk Assessment

Run risk assessment before executing potentially dangerous operations. Four-factor weighted scoring adapted from ECC.

## When to Use

- **Before Bash/exec** — always check risk
- **Before Write/Edit** — check file sensitivity
- **Before git push --force / rm -rf** — mandatory check
- **Before database DROP/TRUNCATE** — mandatory check
- **Before chmod/chown** — check blast radius

## Tool

```bash
# JSON input mode (preferred)
node src/security/risk-scorer.js '{"tool":"Bash","command":"rm -rf /tmp/build"}'

# Simple mode
node src/security/risk-scorer.js Write .env.production
```

## Risk Levels

| Score | Action | Meaning |
|:-----:|:------:|---------|
| < 0.35 | **ALLOW** | Safe operation |
| 0.35-0.60 | **REVIEW** | Review input before executing |
| 0.60-0.85 | **CONFIRM** | Ask user for confirmation |
| ≥ 0.85 | **BLOCK** | Refuse to execute |

## Four Factors

1. **Base tool risk** — Bash=0.20, Write=0.15, Read=0.02
2. **File sensitivity** — .env +0.25, /etc/ +0.20, SSH keys +0.25
3. **Blast radius** — rm -rf +0.35, curl-to-shell +0.25, SQL DROP +0.30
4. **Irreversibility** — git push --force +0.45, hard reset +0.35

## Integration Pattern

```
Before exec/write → risk-scorer → ALLOW → execute
                                → REVIEW → show risk factors
                                → CONFIRM → ask user
                                → BLOCK → refuse, explain why
```

## File Path

- `src/security/risk-scorer.js` — scoring engine
