@f4bioo/berry-shield 2026.3.3-2 → 2026.3.17
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +39 -29
- package/dist/index.js +3801 -1126
- package/docs/wiki/deploy/installation.md +10 -0
- package/docs/wiki/layers/root.md +2 -0
- package/docs/wiki/layers/stem.md +5 -3
- package/docs/wiki/layers/vine.md +40 -0
- package/docs/wiki/operation/cli/README.md +7 -0
- package/docs/wiki/operation/cli/status.md +12 -0
- package/docs/wiki/operation/cli/vine.md +37 -0
- package/docs/wiki/tutorials/README.md +1 -0
- package/docs/wiki/tutorials/choose-vine-confirmation.md +94 -0
- package/openclaw.plugin.json +42 -2
- package/package.json +13 -8
package/README.md
CHANGED
|
@@ -1,6 +1,14 @@
|
|
|
1
|
-
# 🍓 Berry Shield
|
|
1
|
+
# 🍓 Berry Shield - Security plugin for OpenClaw
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
<p align="center">
|
|
4
|
+
<img src="docs/assets/demo/berry-shield-baner.png" alt="Berry Shield" width="720">
|
|
5
|
+
</p>
|
|
6
|
+
|
|
7
|
+
<p align="center">
|
|
8
|
+
<a href="https://github.com/F4bioo/berry-shield/actions/workflows/ci.yml?branch=master"><img src="https://img.shields.io/github/actions/workflow/status/F4bioo/berry-shield/ci.yml?branch=master&style=flat-square&logo=githubactions&logoColor=white&labelColor=18181A&color=2FBF71" alt="CI status"></a>
|
|
9
|
+
<a href="https://github.com/F4bioo/berry-shield/releases"><img src="https://img.shields.io/github/v/release/F4bioo/berry-shield?include_prereleases&style=flat-square&logo=github&logoColor=white&labelColor=18181A&color=FF5A2D&v=1" alt="GitHub release"></a>
|
|
10
|
+
<a href="LICENSE"><img src="https://img.shields.io/badge/License-Apache%202.0-blue.svg?style=flat-square&logo=apache&logoColor=white&labelColor=18181A&color=2980b9" alt="Apache 2.0 License"></a>
|
|
11
|
+
</p>
|
|
4
12
|
|
|
5
13
|
## 🧐 Why this exists
|
|
6
14
|
|
|
@@ -21,7 +29,7 @@ The goal of `Berry Shield` is to reduce that risk in day-to-day usage by adding
|
|
|
21
29
|
|
|
22
30
|
---
|
|
23
31
|
|
|
24
|
-
##
|
|
32
|
+
## What it is / What it is not
|
|
25
33
|
|
|
26
34
|
### ✓ What it is
|
|
27
35
|
|
|
@@ -63,29 +71,27 @@ Baseline runtime state before the demo (plugin enabled, `enforce` mode, all core
|
|
|
63
71
|
|
|
64
72
|
---
|
|
65
73
|
|
|
66
|
-
### 1) Enforce: external-risk action is blocked (Vine)
|
|
74
|
+
### 1) Enforce: external-risk action is blocked (Vine Layer)
|
|
67
75
|
|
|
68
|
-
|
|
69
|
-
# in chat/runtime: ingest external content with web_fetch, then preflight an exec write
|
|
70
|
-
bash -lc 'printf DEMO_VINE > /tmp/demo-vine-proof.txt'
|
|
71
|
-
```
|
|
76
|
+
<video src='https://github.com/user-attachments/assets/024aca2b-21d1-4d1b-b6f4-aad8a3bd54fb' alt="Berry.Vine Enforce" controls width="720"></video>
|
|
72
77
|
|
|
73
|
-
|
|
78
|
+
> In chat/runtime: ingest external content with web_fetch, then preflight an exec write
|
|
74
79
|
|
|
75
|
-
<img src="https://raw.githubusercontent.com/F4bioo/berry-shield/master/docs/assets/demo/Berry.Vine-ENFORCE.
|
|
80
|
+
<img src="https://raw.githubusercontent.com/F4bioo/berry-shield/master/docs/assets/demo/Berry.Vine-ENFORCE.png" alt="Berry.Vine Enforce" width="720"/>
|
|
81
|
+
|
|
82
|
+
Expected: denied in `enforce` after external untrusted ingestion.
|
|
76
83
|
|
|
77
84
|
---
|
|
78
85
|
|
|
79
|
-
### 2) Audit: same flow is allowed but logged as would_block
|
|
86
|
+
### 2) Audit: same flow is allowed but logged as would_block (Vine Layer)
|
|
80
87
|
|
|
81
|
-
|
|
82
|
-
# same write-like operation under audit mode
|
|
83
|
-
bash -lc 'printf VINE_AUDIT > /tmp/vine-audit-proof.txt'
|
|
84
|
-
```
|
|
88
|
+
<video src='https://github.com/user-attachments/assets/8fbff8e0-003c-4463-a6ae-319c3d909599' alt="Berry.Vine Audit" controls width="720"></video>
|
|
85
89
|
|
|
86
|
-
|
|
90
|
+
> Same write-like operation under audit mode
|
|
91
|
+
|
|
92
|
+
<img src="https://raw.githubusercontent.com/F4bioo/berry-shield/master/docs/assets/demo/Berry.Vine-AUDIT.png" alt="Berry.Vine Audit" width="720"/>
|
|
87
93
|
|
|
88
|
-
|
|
94
|
+
Expected: allowed execution plus `would_block` evidence in report/audit logs.
|
|
89
95
|
|
|
90
96
|
---
|
|
91
97
|
|
|
@@ -135,6 +141,16 @@ Evidence (real redacted output):
|
|
|
135
141
|
|
|
136
142
|
---
|
|
137
143
|
|
|
144
|
+
# ⚡ Quickstart
|
|
145
|
+
|
|
146
|
+
Install from npm package:
|
|
147
|
+
|
|
148
|
+
```bash
|
|
149
|
+
openclaw plugins install @f4bioo/berry-shield
|
|
150
|
+
```
|
|
151
|
+
|
|
152
|
+
---
|
|
153
|
+
|
|
138
154
|
## 🛡️ Security Audit & Installation Notice
|
|
139
155
|
|
|
140
156
|
> [!WARNING]
|
|
@@ -145,18 +161,10 @@ Evidence (real redacted output):
|
|
|
145
161
|
> This is a heuristic warning, not a malware verdict.
|
|
146
162
|
> For a code-level mapping of each warning, see [Security Audit](SECURITY_AUDIT.md).
|
|
147
163
|
|
|
148
|
-
---
|
|
149
|
-
|
|
150
|
-
## ⚡ Quickstart
|
|
151
|
-
|
|
152
|
-
Install from npm package:
|
|
153
|
-
|
|
154
|
-
```bash
|
|
155
|
-
openclaw plugins install @f4bioo/berry-shield
|
|
156
|
-
```
|
|
157
|
-
|
|
158
164
|
**Note:** Berry Shield is plug-and-play after install. No extra setup is required for baseline protection.
|
|
159
165
|
|
|
166
|
+
---
|
|
167
|
+
|
|
160
168
|
See more:
|
|
161
169
|
- [Berry Shield Installation guide](docs/wiki/deploy/installation.md)
|
|
162
170
|
|
|
@@ -222,13 +230,15 @@ See more:
|
|
|
222
230
|
|
|
223
231
|
Berry Shield's effectiveness is tied to the underlying OpenClaw SDK capabilities. We maintain a detailed diary that tracks known bugs and blind spots across OpenClaw versions.
|
|
224
232
|
|
|
225
|
-
### Key Points for v2026.
|
|
226
|
-
* **Hook Reliability**: In our v2026.
|
|
233
|
+
### Key Points for v2026.3.13:
|
|
234
|
+
* **Hook Reliability**: In our v2026.3.13 checkpoint, `before_tool_call` and `message_sending` were observed as functional, but hook behavior remains runtime/version-dependent.
|
|
227
235
|
* **Soft Guardrails**: Prompt-based defenses (`Berry.Root`) are advisory and can be bypassed by clever user instructions.
|
|
228
236
|
* **Timing Gaps**: Redaction happens during persistence, which might create a transient data exposure.
|
|
237
|
+
* **Host Hook Behavior**: If the host explicitly disables prompt-injection style prepend behavior for plugin hooks, `Berry.Root` guidance and Vine reminder text from `before_agent_start` can be partially degraded. This should be treated as host-configurable behavior, not as evidence that Berry Shield runtime protection is broken.
|
|
229
238
|
|
|
230
239
|
See more:
|
|
231
240
|
- [Security posture and known limits](docs/wiki/decision/posture.md)
|
|
241
|
+
- [Installation guide host note](docs/wiki/deploy/installation.md#host-hook-note)
|
|
232
242
|
|
|
233
243
|
---
|
|
234
244
|
|