@f4bioo/berry-shield 2026.3.3-1
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/CONTRIBUTING.md +32 -0
- package/LICENSE +201 -0
- package/README.md +251 -0
- package/SECURITY_AUDIT.md +96 -0
- package/docs/wiki/README.md +108 -0
- package/docs/wiki/decision/README.md +48 -0
- package/docs/wiki/decision/modes.md +176 -0
- package/docs/wiki/decision/patterns.md +137 -0
- package/docs/wiki/decision/posture.md +68 -0
- package/docs/wiki/deploy/README.md +51 -0
- package/docs/wiki/deploy/auditing.md +56 -0
- package/docs/wiki/deploy/build.md +92 -0
- package/docs/wiki/deploy/github-ci-cd.md +107 -0
- package/docs/wiki/deploy/installation.md +348 -0
- package/docs/wiki/engine/README.md +53 -0
- package/docs/wiki/engine/match-engine.md +91 -0
- package/docs/wiki/engine/performance.md +114 -0
- package/docs/wiki/engine/redaction.md +120 -0
- package/docs/wiki/layers/README.md +68 -0
- package/docs/wiki/layers/leaf.md +126 -0
- package/docs/wiki/layers/pulp.md +139 -0
- package/docs/wiki/layers/root.md +130 -0
- package/docs/wiki/layers/stem.md +139 -0
- package/docs/wiki/layers/thorn.md +139 -0
- package/docs/wiki/layers/vine.md +154 -0
- package/docs/wiki/operation/README.md +31 -0
- package/docs/wiki/operation/cli/README.md +122 -0
- package/docs/wiki/operation/cli/add.md +157 -0
- package/docs/wiki/operation/cli/help.md +83 -0
- package/docs/wiki/operation/cli/init.md +52 -0
- package/docs/wiki/operation/cli/list.md +78 -0
- package/docs/wiki/operation/cli/mode.md +93 -0
- package/docs/wiki/operation/cli/policy.md +202 -0
- package/docs/wiki/operation/cli/profile.md +98 -0
- package/docs/wiki/operation/cli/remove.md +96 -0
- package/docs/wiki/operation/cli/report.md +66 -0
- package/docs/wiki/operation/cli/reset.md +99 -0
- package/docs/wiki/operation/cli/rules.md +161 -0
- package/docs/wiki/operation/cli/status.md +103 -0
- package/docs/wiki/operation/cli/test.md +119 -0
- package/docs/wiki/operation/cli/toggle.md +90 -0
- package/docs/wiki/operation/cli/vine.md +193 -0
- package/docs/wiki/operation/web/README.md +27 -0
- package/docs/wiki/tutorials/README.md +40 -0
- package/docs/wiki/tutorials/audit-to-enforce-rollout.md +99 -0
- package/docs/wiki/tutorials/build-custom-rules.md +99 -0
- package/docs/wiki/tutorials/choose-profile.md +91 -0
- package/docs/wiki/tutorials/incident-triage-report.md +99 -0
- package/docs/wiki/tutorials/secure-session.md +115 -0
- package/docs/wiki/tutorials/tune-policy.md +111 -0
- package/openclaw.plugin.json +293 -0
- package/package.json +70 -0
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
---
|
|
2
|
+
summary: "CLI reference for `openclaw bshield profile` (set policy profile to strict, balanced, or minimal)"
|
|
3
|
+
read_when:
|
|
4
|
+
- You need to change policy behavior quickly without editing individual policy paths
|
|
5
|
+
- You want to standardize profile setup before security tests
|
|
6
|
+
title: "profile"
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
# `openclaw bshield profile`
|
|
10
|
+
|
|
11
|
+
Set the Berry Shield policy profile to `strict`, `balanced`, or `minimal`.
|
|
12
|
+
|
|
13
|
+
## What it does
|
|
14
|
+
- Validates profile argument against allowed values.
|
|
15
|
+
- Writes profile into policy config path.
|
|
16
|
+
- Returns explicit success or failure output.
|
|
17
|
+
|
|
18
|
+
## When to use
|
|
19
|
+
- When switching between policy behavior presets.
|
|
20
|
+
- Before adaptive behavior validation.
|
|
21
|
+
- When setting a consistent baseline in scripts.
|
|
22
|
+
|
|
23
|
+
## Syntax
|
|
24
|
+
|
|
25
|
+
### Set strict profile
|
|
26
|
+
Use this profile when full policy injection is required each turn.
|
|
27
|
+
```bash
|
|
28
|
+
openclaw bshield profile strict
|
|
29
|
+
```
|
|
30
|
+
Expected: CLI confirms switch to STRICT profile.
|
|
31
|
+
|
|
32
|
+
### Set balanced profile
|
|
33
|
+
Use this profile as the default operating baseline.
|
|
34
|
+
```bash
|
|
35
|
+
openclaw bshield profile balanced
|
|
36
|
+
```
|
|
37
|
+
Expected: CLI confirms switch to BALANCED profile.
|
|
38
|
+
|
|
39
|
+
### Set minimal profile
|
|
40
|
+
Use this profile when low-noise behavior is preferred.
|
|
41
|
+
```bash
|
|
42
|
+
openclaw bshield profile minimal
|
|
43
|
+
```
|
|
44
|
+
Expected: CLI confirms switch to MINIMAL profile.
|
|
45
|
+
|
|
46
|
+
## Options
|
|
47
|
+
Positional argument:
|
|
48
|
+
- `<profile>`: accepted values are `strict`, `balanced`, `minimal`.
|
|
49
|
+
|
|
50
|
+
## Tuning guide
|
|
51
|
+
|
|
52
|
+
| Profile | Use when | Expected behavior | Tradeoff |
|
|
53
|
+
| --- | --- | --- | --- |
|
|
54
|
+
| `strict` | You want maximum policy visibility and deterministic guardrails | Full policy is injected every turn | Strongest posture, highest context overhead |
|
|
55
|
+
| `balanced` | You need default production behavior with adaptive control | Full at session start, then adaptive reminders/escalation | Best general balance between safety and noise |
|
|
56
|
+
| `minimal` | You want low-noise interaction and rely on trigger-based escalation | No full injection on new session; escalates when needed | Lowest overhead, depends more on runtime triggers |
|
|
57
|
+
|
|
58
|
+
## Examples
|
|
59
|
+
|
|
60
|
+
### Apply balanced profile for standard operation
|
|
61
|
+
Use the balanced syntax command shown above before routine enforce-mode workflows.
|
|
62
|
+
Result: Policy profile is set to balanced and adaptive behavior follows balanced defaults.
|
|
63
|
+
|
|
64
|
+
### Verify profile after update
|
|
65
|
+
Use this check immediately after profile changes.
|
|
66
|
+
```bash
|
|
67
|
+
openclaw bshield status
|
|
68
|
+
```
|
|
69
|
+
Result: Policy section shows the selected profile in uppercase.
|
|
70
|
+
|
|
71
|
+
## Common errors
|
|
72
|
+
|
|
73
|
+
### Invalid profile value
|
|
74
|
+
Use this to validate input checking behavior.
|
|
75
|
+
```bash
|
|
76
|
+
openclaw bshield profile advanced
|
|
77
|
+
```
|
|
78
|
+
Expected: CLI fails with an invalid profile message listing supported values.
|
|
79
|
+
|
|
80
|
+
### Profile write failure
|
|
81
|
+
Use this when a valid profile update command (for example `openclaw bshield profile strict`) reports operation failure.
|
|
82
|
+
Expected: CLI prints operation failure and returns non-zero exit code.
|
|
83
|
+
|
|
84
|
+
Possible causes:
|
|
85
|
+
- Config write permission issue.
|
|
86
|
+
- Config backend/runtime error.
|
|
87
|
+
|
|
88
|
+
## Related commands
|
|
89
|
+
- [index](README.md)
|
|
90
|
+
- [policy](policy.md)
|
|
91
|
+
- [status](status.md)
|
|
92
|
+
- [mode](mode.md)
|
|
93
|
+
|
|
94
|
+
---
|
|
95
|
+
|
|
96
|
+
## Navigation
|
|
97
|
+
- [Back to CLI Index](README.md)
|
|
98
|
+
- [Back to Wiki Index](../../README.md)
|
|
@@ -0,0 +1,96 @@
|
|
|
1
|
+
---
|
|
2
|
+
summary: "CLI reference for `openclaw bshield rules remove custom` (delete one custom security rule by typed id)"
|
|
3
|
+
read_when:
|
|
4
|
+
- You need to remove a custom Berry Shield rule
|
|
5
|
+
- You are cleaning up test or deprecated custom rules
|
|
6
|
+
title: "remove"
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
# `openclaw bshield rules remove custom`
|
|
10
|
+
|
|
11
|
+
Remove one custom Berry Shield rule by its identifier.
|
|
12
|
+
|
|
13
|
+
## What it does
|
|
14
|
+
- Looks up a custom rule by typed identifier (`type:name`).
|
|
15
|
+
- Removes the rule from persistent custom storage.
|
|
16
|
+
- Returns success output when the rule is removed.
|
|
17
|
+
- Returns failure output when the rule does not exist.
|
|
18
|
+
- Does not mutate baseline rules.
|
|
19
|
+
|
|
20
|
+
## When to use
|
|
21
|
+
- Removing obsolete custom patterns.
|
|
22
|
+
- Cleaning up temporary testing rules.
|
|
23
|
+
- Replacing a rule with a new pattern/version.
|
|
24
|
+
|
|
25
|
+
## Syntax
|
|
26
|
+
|
|
27
|
+
### Remove one custom rule by id
|
|
28
|
+
Use this to remove one existing custom rule.
|
|
29
|
+
```bash
|
|
30
|
+
openclaw bshield rules remove custom <id>
|
|
31
|
+
```
|
|
32
|
+
Expected: CLI confirms successful removal or reports that rule was not found.
|
|
33
|
+
|
|
34
|
+
## Options
|
|
35
|
+
Positional arguments:
|
|
36
|
+
- custom: required target for custom-rule removal.
|
|
37
|
+
- `<id>`: custom rule identifier in `type:name` format.
|
|
38
|
+
|
|
39
|
+
## Examples
|
|
40
|
+
|
|
41
|
+
### Remove an existing custom rule
|
|
42
|
+
Use this when the exact custom rule id is known.
|
|
43
|
+
```bash
|
|
44
|
+
openclaw bshield rules remove custom secret:MyToken
|
|
45
|
+
```
|
|
46
|
+
Result: CLI confirms custom rule removal.
|
|
47
|
+
|
|
48
|
+
### Remove a custom file rule
|
|
49
|
+
Use this when a file-pattern custom rule must be removed.
|
|
50
|
+
```bash
|
|
51
|
+
openclaw bshield rules remove custom file:team-key
|
|
52
|
+
```
|
|
53
|
+
Result: CLI confirms custom file-rule removal.
|
|
54
|
+
|
|
55
|
+
### Verify removal through rules list
|
|
56
|
+
Use this to confirm the removed rule is no longer present.
|
|
57
|
+
```bash
|
|
58
|
+
openclaw bshield rules list
|
|
59
|
+
```
|
|
60
|
+
Result: Removed custom rule no longer appears in custom entries.
|
|
61
|
+
|
|
62
|
+
### Disable a baseline rule (separate command)
|
|
63
|
+
Use this when the target is a baseline ID.
|
|
64
|
+
```bash
|
|
65
|
+
openclaw bshield rules disable baseline secret:openai-key
|
|
66
|
+
```
|
|
67
|
+
Result: Baseline rule is marked disabled in rules inventory.
|
|
68
|
+
|
|
69
|
+
## Common errors
|
|
70
|
+
|
|
71
|
+
### Wrong target
|
|
72
|
+
Use this to validate explicit target semantics.
|
|
73
|
+
```bash
|
|
74
|
+
openclaw bshield rules remove baseline secret:openai-key
|
|
75
|
+
```
|
|
76
|
+
Expected: CLI returns usage error because remove supports only custom target.
|
|
77
|
+
|
|
78
|
+
### Rule not found
|
|
79
|
+
Use this to verify missing-rule behavior.
|
|
80
|
+
```bash
|
|
81
|
+
openclaw bshield rules remove custom secret:UnknownRule
|
|
82
|
+
```
|
|
83
|
+
Expected: CLI reports that the rule was not found.
|
|
84
|
+
|
|
85
|
+
## Related commands
|
|
86
|
+
- [index](README.md)
|
|
87
|
+
- [rules](rules.md)
|
|
88
|
+
- [list](list.md)
|
|
89
|
+
- [add](add.md)
|
|
90
|
+
- [test](test.md)
|
|
91
|
+
|
|
92
|
+
---
|
|
93
|
+
|
|
94
|
+
## Navigation
|
|
95
|
+
- [Back to CLI Index](README.md)
|
|
96
|
+
- [Back to Wiki Index](../../README.md)
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
---
|
|
2
|
+
summary: "CLI reference for `openclaw bshield report` (show or clear persisted audit events)"
|
|
3
|
+
read_when:
|
|
4
|
+
- You need to inspect persisted Berry Shield audit events
|
|
5
|
+
- You need to clear audit history before controlled tests
|
|
6
|
+
title: "report"
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
# `openclaw bshield report`
|
|
10
|
+
|
|
11
|
+
Show persisted audit report data or clear it.
|
|
12
|
+
|
|
13
|
+
## What it does
|
|
14
|
+
- Reads persisted audit events from Berry Shield storage.
|
|
15
|
+
- Prints event period, summary counters, and detail rows.
|
|
16
|
+
- Clears persisted events when `--clear` is provided.
|
|
17
|
+
|
|
18
|
+
## When to use
|
|
19
|
+
- After tests to confirm `blocked` and `would_block` activity.
|
|
20
|
+
- Before tests to reset report state.
|
|
21
|
+
- During incident analysis to inspect recent security decisions.
|
|
22
|
+
|
|
23
|
+
## Syntax
|
|
24
|
+
|
|
25
|
+
### Show persisted report
|
|
26
|
+
Use this to inspect current persisted audit events.
|
|
27
|
+
```bash
|
|
28
|
+
openclaw bshield report
|
|
29
|
+
```
|
|
30
|
+
Expected: CLI prints total events, period, summary counters, and detail rows.
|
|
31
|
+
|
|
32
|
+
### Clear persisted report
|
|
33
|
+
Use this to clear persisted audit events before a new test cycle.
|
|
34
|
+
```bash
|
|
35
|
+
openclaw bshield report --clear
|
|
36
|
+
```
|
|
37
|
+
Expected: CLI confirms clear operation and reports how many events were removed.
|
|
38
|
+
|
|
39
|
+
## Options
|
|
40
|
+
- `--clear`: clear persisted audit report data instead of printing it.
|
|
41
|
+
|
|
42
|
+
## Common errors
|
|
43
|
+
|
|
44
|
+
### Report backend read failure
|
|
45
|
+
Use this when report rendering fails unexpectedly.
|
|
46
|
+
Expected: CLI prints a report generation error and returns non-zero exit code.
|
|
47
|
+
|
|
48
|
+
Possible causes:
|
|
49
|
+
- Audit storage file is not readable.
|
|
50
|
+
- Runtime/config path permission issue.
|
|
51
|
+
- Corrupted persisted report payload.
|
|
52
|
+
|
|
53
|
+
### In-flight write visibility after clear
|
|
54
|
+
Use this when events appear shortly after `--clear`.
|
|
55
|
+
Expected: clear succeeds, but buffered in-flight events may still be written after the clear operation.
|
|
56
|
+
|
|
57
|
+
## Related commands
|
|
58
|
+
- [index](README.md)
|
|
59
|
+
- [status](status.md)
|
|
60
|
+
- [mode](mode.md)
|
|
61
|
+
|
|
62
|
+
---
|
|
63
|
+
|
|
64
|
+
## Navigation
|
|
65
|
+
- [Back to CLI Index](README.md)
|
|
66
|
+
- [Back to Wiki Index](../../README.md)
|
|
@@ -0,0 +1,99 @@
|
|
|
1
|
+
---
|
|
2
|
+
summary: "CLI reference for `openclaw bshield reset defaults` (restore built-in and optional full defaults)"
|
|
3
|
+
read_when:
|
|
4
|
+
- You need to restore built-in defaults after custom tuning
|
|
5
|
+
- You need to reset all custom state and policy to defaults
|
|
6
|
+
title: "reset"
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
# `openclaw bshield reset`
|
|
10
|
+
|
|
11
|
+
Restore Berry Shield defaults with explicit scope control.
|
|
12
|
+
|
|
13
|
+
## What it does
|
|
14
|
+
- Supports `reset defaults` as the default restoration target.
|
|
15
|
+
- Scope builtins clears disabled built-in IDs only.
|
|
16
|
+
- Scope all clears disabled built-ins, custom rules, and restores default policy.
|
|
17
|
+
- Requests confirmation unless `--yes` is provided.
|
|
18
|
+
|
|
19
|
+
## When to use
|
|
20
|
+
- Reverting built-in tuning after a temporary exception.
|
|
21
|
+
- Returning to baseline protection before deployment.
|
|
22
|
+
- Recovering from heavy local customization during testing.
|
|
23
|
+
|
|
24
|
+
## Syntax
|
|
25
|
+
|
|
26
|
+
### Reset built-in defaults only
|
|
27
|
+
Use this to restore built-in baseline and keep custom rules.
|
|
28
|
+
```bash
|
|
29
|
+
openclaw bshield reset defaults --scope builtins
|
|
30
|
+
```
|
|
31
|
+
Expected: Disabled built-in IDs are cleared; custom rules remain intact.
|
|
32
|
+
|
|
33
|
+
### Reset full defaults
|
|
34
|
+
Use this to restore both rule state and policy defaults.
|
|
35
|
+
```bash
|
|
36
|
+
openclaw bshield reset defaults --scope all
|
|
37
|
+
```
|
|
38
|
+
Expected: Disabled built-ins and custom rules are cleared; policy is restored to default config.
|
|
39
|
+
|
|
40
|
+
### Non-interactive reset
|
|
41
|
+
Use this in automation where prompts are not allowed.
|
|
42
|
+
```bash
|
|
43
|
+
openclaw bshield reset defaults --scope builtins --yes
|
|
44
|
+
```
|
|
45
|
+
Expected: Command executes without confirmation prompt.
|
|
46
|
+
|
|
47
|
+
## Options
|
|
48
|
+
Supported options:
|
|
49
|
+
- `--scope <scope>`
|
|
50
|
+
- builtins (default): reset disabled built-in IDs only
|
|
51
|
+
- all: reset disabled built-ins + custom rules + policy defaults
|
|
52
|
+
- `--yes`: skip confirmation prompt
|
|
53
|
+
|
|
54
|
+
Positional arguments:
|
|
55
|
+
- `<target>` currently supports defaults.
|
|
56
|
+
|
|
57
|
+
## Examples
|
|
58
|
+
|
|
59
|
+
### Restore only built-in baseline
|
|
60
|
+
Use this to keep your custom rules while undoing built-in disables.
|
|
61
|
+
```bash
|
|
62
|
+
openclaw bshield reset defaults
|
|
63
|
+
```
|
|
64
|
+
Result: Same behavior as `--scope builtins`.
|
|
65
|
+
|
|
66
|
+
### Restore full baseline for clean-room testing
|
|
67
|
+
Use this before a full smoke test.
|
|
68
|
+
```bash
|
|
69
|
+
openclaw bshield reset defaults --scope all --yes
|
|
70
|
+
```
|
|
71
|
+
Result: Rules and policy return to default baseline without prompt.
|
|
72
|
+
|
|
73
|
+
## Common errors
|
|
74
|
+
|
|
75
|
+
### Invalid target
|
|
76
|
+
Use this to validate target parsing behavior.
|
|
77
|
+
```bash
|
|
78
|
+
openclaw bshield reset unknown
|
|
79
|
+
```
|
|
80
|
+
Expected: CLI returns usage failure and exits with error.
|
|
81
|
+
|
|
82
|
+
### Invalid scope
|
|
83
|
+
Use this to validate scope values.
|
|
84
|
+
```bash
|
|
85
|
+
openclaw bshield reset defaults --scope unknown
|
|
86
|
+
```
|
|
87
|
+
Expected: CLI returns failure with valid scope values.
|
|
88
|
+
|
|
89
|
+
## Related commands
|
|
90
|
+
- [index](README.md)
|
|
91
|
+
- [rules](rules.md)
|
|
92
|
+
- [list](list.md)
|
|
93
|
+
- [policy](policy.md)
|
|
94
|
+
|
|
95
|
+
---
|
|
96
|
+
|
|
97
|
+
## Navigation
|
|
98
|
+
- [Back to CLI Index](README.md)
|
|
99
|
+
- [Back to Wiki Index](../../README.md)
|
|
@@ -0,0 +1,161 @@
|
|
|
1
|
+
---
|
|
2
|
+
summary: "CLI reference for `openclaw bshield rules` (baseline/custom rule management)"
|
|
3
|
+
read_when:
|
|
4
|
+
- You need to manage baseline and custom rule state from one namespace
|
|
5
|
+
- You are onboarding operators to the new rules command family
|
|
6
|
+
title: "rules"
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
# `openclaw bshield rules`
|
|
10
|
+
|
|
11
|
+
Manage baseline and custom Berry Shield rules from one command group.
|
|
12
|
+
|
|
13
|
+
## What it does
|
|
14
|
+
- Centralizes rule operations under rules.
|
|
15
|
+
- Reads and writes custom rule state from `pluginConfig.customRules` (single CLI/Web source).
|
|
16
|
+
- Lists baseline and custom inventory with explicit status.
|
|
17
|
+
- Removes custom rules by target + id (`type:name`).
|
|
18
|
+
- Enables or disables baseline and custom rules by ID or in bulk.
|
|
19
|
+
|
|
20
|
+
## When to use
|
|
21
|
+
- Day-to-day rule operations in terminal automation.
|
|
22
|
+
- Security hardening sessions for baseline tuning.
|
|
23
|
+
- Cleanup or rotation of custom patterns.
|
|
24
|
+
|
|
25
|
+
## Syntax
|
|
26
|
+
|
|
27
|
+
### List inventory
|
|
28
|
+
Use this to review the current baseline and custom inventory before applying any change.
|
|
29
|
+
```bash
|
|
30
|
+
openclaw bshield rules list
|
|
31
|
+
```
|
|
32
|
+
Expected: Shows Baseline and Custom sections with explicit status.
|
|
33
|
+
|
|
34
|
+
### List inventory with detailed patterns
|
|
35
|
+
Use this to inspect identifier and raw pattern together.
|
|
36
|
+
```bash
|
|
37
|
+
openclaw bshield rules list --detailed
|
|
38
|
+
```
|
|
39
|
+
Expected: Shows the same inventory plus `pattern:` lines for baseline and custom rules.
|
|
40
|
+
|
|
41
|
+
### Remove custom rule
|
|
42
|
+
Use this to remove one custom rule by its stable custom identifier.
|
|
43
|
+
```bash
|
|
44
|
+
openclaw bshield rules remove custom <id>
|
|
45
|
+
```
|
|
46
|
+
Expected: Removes one custom rule by typed id (`secret:<name> | file:<name> | command:<name>`).
|
|
47
|
+
|
|
48
|
+
### Disable one baseline rule
|
|
49
|
+
Use this to disable a single baseline rule when you need a controlled exception.
|
|
50
|
+
```bash
|
|
51
|
+
openclaw bshield rules disable baseline <id>
|
|
52
|
+
```
|
|
53
|
+
Expected: Marks one baseline rule as disabled.
|
|
54
|
+
|
|
55
|
+
### Disable one custom rule
|
|
56
|
+
Use this to disable one custom rule without deleting it.
|
|
57
|
+
```bash
|
|
58
|
+
openclaw bshield rules disable custom <id>
|
|
59
|
+
```
|
|
60
|
+
Expected: Marks one custom rule as disabled and keeps it in inventory.
|
|
61
|
+
|
|
62
|
+
### Enable one baseline rule
|
|
63
|
+
Use this to re-enable a previously disabled baseline rule by ID.
|
|
64
|
+
```bash
|
|
65
|
+
openclaw bshield rules enable baseline <id>
|
|
66
|
+
```
|
|
67
|
+
Expected: Marks one baseline rule as enabled.
|
|
68
|
+
|
|
69
|
+
### Enable one custom rule
|
|
70
|
+
Use this to re-enable one custom rule by ID.
|
|
71
|
+
```bash
|
|
72
|
+
openclaw bshield rules enable custom <id>
|
|
73
|
+
```
|
|
74
|
+
Expected: Marks one custom rule as enabled.
|
|
75
|
+
|
|
76
|
+
### Disable all baseline rules
|
|
77
|
+
Use this only in controlled testing scenarios where default baseline coverage must be turned off.
|
|
78
|
+
```bash
|
|
79
|
+
openclaw bshield rules disable baseline --all --yes
|
|
80
|
+
```
|
|
81
|
+
Expected: Disables all baseline IDs and warns about protection impact.
|
|
82
|
+
|
|
83
|
+
### Enable all baseline rules
|
|
84
|
+
Use this to restore complete baseline coverage after bulk-disable scenarios.
|
|
85
|
+
```bash
|
|
86
|
+
openclaw bshield rules enable baseline --all --yes
|
|
87
|
+
```
|
|
88
|
+
Expected: Re-enables all baseline IDs.
|
|
89
|
+
|
|
90
|
+
### Disable all custom rules
|
|
91
|
+
Use this to keep custom entries persisted but inactive.
|
|
92
|
+
```bash
|
|
93
|
+
openclaw bshield rules disable custom --all --yes
|
|
94
|
+
```
|
|
95
|
+
Expected: Disables all custom entries across secret, file, and command categories.
|
|
96
|
+
|
|
97
|
+
### Enable all custom rules
|
|
98
|
+
Use this to reactivate all custom entries in one operation.
|
|
99
|
+
```bash
|
|
100
|
+
openclaw bshield rules enable custom --all --yes
|
|
101
|
+
```
|
|
102
|
+
Expected: Enables all custom entries across secret, file, and command categories.
|
|
103
|
+
|
|
104
|
+
### Disable all rules globally
|
|
105
|
+
Use this to disable baseline and custom rules together.
|
|
106
|
+
```bash
|
|
107
|
+
openclaw bshield rules disable --all --yes
|
|
108
|
+
```
|
|
109
|
+
Expected: Applies disable to full rule scope (`baseline + custom`) with impact warning.
|
|
110
|
+
|
|
111
|
+
### Enable all rules globally
|
|
112
|
+
Use this to restore full baseline and custom coverage in one step.
|
|
113
|
+
```bash
|
|
114
|
+
openclaw bshield rules enable --all --yes
|
|
115
|
+
```
|
|
116
|
+
Expected: Applies enable to full rule scope (`baseline + custom`).
|
|
117
|
+
|
|
118
|
+
## Option rules
|
|
119
|
+
- disable/enable accept exactly one mode:
|
|
120
|
+
- `<id>` OR `--all`
|
|
121
|
+
- target is optional only for global `--all`.
|
|
122
|
+
- Invalid combinations return usage failure:
|
|
123
|
+
- `<id> + --all`
|
|
124
|
+
- neither `<id>` nor `--all`
|
|
125
|
+
- `--yes` is meaningful only for `--all` operations.
|
|
126
|
+
|
|
127
|
+
## Common errors
|
|
128
|
+
|
|
129
|
+
### Wrong target for remove
|
|
130
|
+
Use this check to validate that remove only accepts the custom target.
|
|
131
|
+
```bash
|
|
132
|
+
openclaw bshield rules remove baseline secret:openai-key
|
|
133
|
+
```
|
|
134
|
+
Expected: Usage failure (remove supports only custom target).
|
|
135
|
+
|
|
136
|
+
### Unknown baseline ID
|
|
137
|
+
Use this check to validate error handling when an ID does not exist in baseline catalog.
|
|
138
|
+
```bash
|
|
139
|
+
openclaw bshield rules disable baseline secret:does-not-exist
|
|
140
|
+
```
|
|
141
|
+
Expected: Operation failure (`Unknown baseline rule id`).
|
|
142
|
+
|
|
143
|
+
### Unknown custom ID
|
|
144
|
+
Use this check to validate error handling when a custom rule is not found.
|
|
145
|
+
```bash
|
|
146
|
+
openclaw bshield rules disable custom secret:does-not-exist
|
|
147
|
+
```
|
|
148
|
+
Expected: Operation failure (`Unknown custom rule id`).
|
|
149
|
+
|
|
150
|
+
## Related commands
|
|
151
|
+
- [index](README.md)
|
|
152
|
+
- [list](list.md)
|
|
153
|
+
- [remove](remove.md)
|
|
154
|
+
- [add](add.md)
|
|
155
|
+
- [reset](reset.md)
|
|
156
|
+
|
|
157
|
+
---
|
|
158
|
+
|
|
159
|
+
## Navigation
|
|
160
|
+
- [Back to CLI Index](README.md)
|
|
161
|
+
- [Back to Wiki Index](../../README.md)
|
|
@@ -0,0 +1,103 @@
|
|
|
1
|
+
---
|
|
2
|
+
summary: "CLI reference for `openclaw bshield status` (runtime mode, policy, rules, and layers)"
|
|
3
|
+
read_when:
|
|
4
|
+
- You need to verify current Berry Shield runtime configuration
|
|
5
|
+
- You changed mode, profile, policy, or layers and want confirmation
|
|
6
|
+
title: "status"
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
# `openclaw bshield status`
|
|
10
|
+
|
|
11
|
+
Show the effective Berry Shield runtime state resolved from OpenClaw plugin config plus Berry defaults.
|
|
12
|
+
|
|
13
|
+
## What it does
|
|
14
|
+
- Reads plugin config from OpenClaw config storage.
|
|
15
|
+
- Merges config with Berry Shield defaults.
|
|
16
|
+
- Prints current plugin state (`Status`, `Mode`, and rule counters).
|
|
17
|
+
- Prints policy state (`Profile`, adaptive values, and global escalation toggle).
|
|
18
|
+
- Prints Vine state (`Mode`, thresholds, retention, and allowlist size).
|
|
19
|
+
- Prints each security layer status as `ACTIVE` or `OFF`.
|
|
20
|
+
|
|
21
|
+
## When to use
|
|
22
|
+
- After changing `mode`, `profile`, or `policy`.
|
|
23
|
+
- After toggling a layer.
|
|
24
|
+
- Before and after smoke tests to confirm runtime posture.
|
|
25
|
+
- During incident triage to verify what is effectively active.
|
|
26
|
+
|
|
27
|
+
## Syntax
|
|
28
|
+
|
|
29
|
+
### Base command
|
|
30
|
+
Use this command to inspect the full Berry Shield state.
|
|
31
|
+
```bash
|
|
32
|
+
openclaw bshield status
|
|
33
|
+
```
|
|
34
|
+
Expected: Output includes Status, Mode, Rules, Policy, Vine, and Security Layers sections.
|
|
35
|
+
|
|
36
|
+
## Options
|
|
37
|
+
This command has no command-specific flags or positional arguments.
|
|
38
|
+
|
|
39
|
+
## Output interpretation guide
|
|
40
|
+
|
|
41
|
+
### Status and mode
|
|
42
|
+
Command for this check: `openclaw bshield status`.
|
|
43
|
+
Result expected for an active deployment:
|
|
44
|
+
- `Status` should be `ENABLED`.
|
|
45
|
+
- `Mode` should be either `AUDIT` or `ENFORCE`, matching your intended test posture.
|
|
46
|
+
|
|
47
|
+
### Rules counters
|
|
48
|
+
Command for this check: `openclaw bshield status`.
|
|
49
|
+
Result expected:
|
|
50
|
+
- `BASELINE` count represents baseline shipped protections.
|
|
51
|
+
- `CUSTOM` count represents user-defined entries currently loaded.
|
|
52
|
+
|
|
53
|
+
### Policy section
|
|
54
|
+
Command for this check: `openclaw bshield status`.
|
|
55
|
+
Result expected:
|
|
56
|
+
- `Profile` is one of `STRICT`, `BALANCED`, `MINIMAL`.
|
|
57
|
+
- `Escalation`, `Stale (min)`, `Heartbeat`, and `Global Escalation` reflect configured values.
|
|
58
|
+
|
|
59
|
+
### Vine section
|
|
60
|
+
Command for this check: `openclaw bshield status`.
|
|
61
|
+
Result expected:
|
|
62
|
+
- `Mode` shows Vine behavior (`BALANCED` or `STRICT`).
|
|
63
|
+
- Thresholds and retention values match expected operational tuning.
|
|
64
|
+
- `Allowlist` shows the number of exempt tools.
|
|
65
|
+
|
|
66
|
+
### Security layers section
|
|
67
|
+
Command for this check: `openclaw bshield status`.
|
|
68
|
+
Result expected:
|
|
69
|
+
- Each layer is explicitly shown as `ACTIVE` or `OFF`.
|
|
70
|
+
- Use this as the authoritative source before any behavior validation run.
|
|
71
|
+
|
|
72
|
+
## Common errors
|
|
73
|
+
|
|
74
|
+
### Status command fails due to config read error
|
|
75
|
+
Use this check when the status command exits with operation failure.
|
|
76
|
+
Expected: CLI prints a failure message and returns non-zero exit code.
|
|
77
|
+
|
|
78
|
+
Possible causes:
|
|
79
|
+
- OpenClaw config path is unavailable or corrupted.
|
|
80
|
+
- Runtime permission issue when reading config.
|
|
81
|
+
- Unexpected config wrapper/backend failure.
|
|
82
|
+
|
|
83
|
+
### Output does not reflect a recent change
|
|
84
|
+
Use this check when you changed config in Web or CLI but output still looks stale.
|
|
85
|
+
Expected: after OpenClaw restarts its gateway, `status` reflects the new effective values.
|
|
86
|
+
|
|
87
|
+
Possible causes:
|
|
88
|
+
- Gateway restart has not happened yet.
|
|
89
|
+
- You edited a different environment/root than the active OpenClaw runtime.
|
|
90
|
+
- Another write operation overwrote your previous setting.
|
|
91
|
+
|
|
92
|
+
## Related commands
|
|
93
|
+
- [index](README.md)
|
|
94
|
+
- [mode](mode.md)
|
|
95
|
+
- [profile](profile.md)
|
|
96
|
+
- [policy](policy.md)
|
|
97
|
+
- [vine](vine.md)
|
|
98
|
+
|
|
99
|
+
---
|
|
100
|
+
|
|
101
|
+
## Navigation
|
|
102
|
+
- [Back to CLI Index](README.md)
|
|
103
|
+
- [Back to Wiki Index](../../README.md)
|