@stackone/defender 0.4.3 → 0.4.5
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 +6 -6
- package/dist/index.cjs +2 -2
- package/dist/index.d.cts +5 -2
- package/dist/index.d.mts +5 -2
- package/dist/index.mjs +2 -2
- package/package.json +2 -2
package/README.md
CHANGED
|
@@ -18,8 +18,9 @@ import { createPromptDefense } from '@stackone/defender';
|
|
|
18
18
|
|
|
19
19
|
// Create defense with Tier 1 (patterns) + Tier 2 (ML classifier)
|
|
20
20
|
// blockHighRisk: true enables the allowed/blocked decision
|
|
21
|
+
// Tier 1 (patterns) + Tier 2 (ML classifier) are both on by default.
|
|
22
|
+
// blockHighRisk: true enables the allowed/blocked decision.
|
|
21
23
|
const defense = createPromptDefense({
|
|
22
|
-
enableTier2: true,
|
|
23
24
|
blockHighRisk: true,
|
|
24
25
|
useDefaultToolRules: true, // Enable built-in per-tool base risk and field-handling rules (risky-field overrides always apply)
|
|
25
26
|
});
|
|
@@ -105,9 +106,10 @@ Create a defense instance.
|
|
|
105
106
|
```typescript
|
|
106
107
|
const defense = createPromptDefense({
|
|
107
108
|
enableTier1: true, // Pattern detection (default: true)
|
|
108
|
-
enableTier2: true, // ML classification (default: false
|
|
109
|
+
enableTier2: true, // ML classification (default: true) — set false to disable
|
|
109
110
|
blockHighRisk: true, // Block high/critical content (default: false)
|
|
110
111
|
useDefaultToolRules: true, // Enable built-in per-tool base risk and field-handling rules (default: false)
|
|
112
|
+
tier2Fields: ['subject', 'body', 'snippet'], // Scope Tier 2 to specific fields (default: all fields)
|
|
111
113
|
defaultRiskLevel: 'medium',
|
|
112
114
|
});
|
|
113
115
|
```
|
|
@@ -164,14 +166,13 @@ console.log(result.matches); // [{ pattern: '...', severity: 'high', ... }
|
|
|
164
166
|
ONNX mode auto-loads the bundled model on first `defendToolResult()` call. Use `warmupTier2()` at startup to avoid first-call latency:
|
|
165
167
|
|
|
166
168
|
```typescript
|
|
167
|
-
// ONNX mode (default) —
|
|
168
|
-
const defense = createPromptDefense(
|
|
169
|
+
// ONNX mode (default) — Tier 2 is on by default, warmup is optional
|
|
170
|
+
const defense = createPromptDefense();
|
|
169
171
|
await defense.warmupTier2(); // optional, avoids ~1-2s first-call latency
|
|
170
172
|
|
|
171
173
|
// MLP mode (legacy) — requires loading weights explicitly
|
|
172
174
|
import { createPromptDefense, MLP_WEIGHTS } from '@stackone/defender';
|
|
173
175
|
const mlpDefense = createPromptDefense({
|
|
174
|
-
enableTier2: true,
|
|
175
176
|
tier2Config: { mode: 'mlp' },
|
|
176
177
|
});
|
|
177
178
|
mlpDefense.loadTier2Weights(MLP_WEIGHTS);
|
|
@@ -187,7 +188,6 @@ import { generateText, tool } from 'ai';
|
|
|
187
188
|
import { createPromptDefense } from '@stackone/defender';
|
|
188
189
|
|
|
189
190
|
const defense = createPromptDefense({
|
|
190
|
-
enableTier2: true,
|
|
191
191
|
blockHighRisk: true,
|
|
192
192
|
useDefaultToolRules: true,
|
|
193
193
|
});
|