@cdot65/prisma-airs 0.1.0 → 0.1.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/README.md ADDED
@@ -0,0 +1,130 @@
1
+ # @cdot65/prisma-airs
2
+
3
+ OpenClaw plugin for [Prisma AIRS](https://www.paloaltonetworks.com/prisma/ai-runtime-security) (AI Runtime Security) from Palo Alto Networks.
4
+
5
+ ## Features
6
+
7
+ - **Gateway RPC**: `prisma-airs.scan`, `prisma-airs.status`
8
+ - **Agent Tool**: `prisma_airs_scan`
9
+ - **CLI**: `openclaw prisma-airs`, `openclaw prisma-airs-scan`
10
+ - **Bootstrap Hook**: Security reminder on agent startup
11
+
12
+ **Detection capabilities:**
13
+
14
+ - Prompt injection
15
+ - Data leakage (DLP)
16
+ - Malicious URLs
17
+ - Toxic content
18
+ - Database security
19
+ - Malicious code
20
+
21
+ ## Installation
22
+
23
+ ```bash
24
+ openclaw plugins install @cdot65/prisma-airs
25
+ ```
26
+
27
+ ## Configuration
28
+
29
+ ### 1. Set API Key
30
+
31
+ ```bash
32
+ export PANW_AI_SEC_API_KEY="your-key-from-strata-cloud-manager"
33
+ ```
34
+
35
+ ### 2. Plugin Config (optional)
36
+
37
+ ```yaml
38
+ plugins:
39
+ prisma-airs:
40
+ profile_name: "default"
41
+ app_name: "openclaw"
42
+ reminder_enabled: true
43
+ ```
44
+
45
+ ## Usage
46
+
47
+ ### CLI
48
+
49
+ ```bash
50
+ # Check status
51
+ openclaw prisma-airs
52
+
53
+ # Scan text
54
+ openclaw prisma-airs-scan "message to scan"
55
+ openclaw prisma-airs-scan --json "message"
56
+ ```
57
+
58
+ ### Gateway RPC
59
+
60
+ ```bash
61
+ # Status
62
+ openclaw gateway call prisma-airs.status
63
+
64
+ # Scan
65
+ openclaw gateway call prisma-airs.scan --params '{"prompt":"user input"}'
66
+ ```
67
+
68
+ ### Agent Tool
69
+
70
+ Agents can use `prisma_airs_scan` directly:
71
+
72
+ ```json
73
+ {
74
+ "tool": "prisma_airs_scan",
75
+ "params": {
76
+ "prompt": "content to scan",
77
+ "sessionId": "conversation-123"
78
+ }
79
+ }
80
+ ```
81
+
82
+ ### TypeScript
83
+
84
+ ```typescript
85
+ import { scan } from "@cdot65/prisma-airs";
86
+
87
+ const result = await scan({
88
+ prompt: "user message",
89
+ sessionId: "conv-123",
90
+ });
91
+
92
+ if (result.action === "block") {
93
+ console.log("Blocked:", result.categories);
94
+ }
95
+ ```
96
+
97
+ ## ScanResult
98
+
99
+ ```typescript
100
+ interface ScanResult {
101
+ action: "allow" | "warn" | "block";
102
+ severity: "SAFE" | "LOW" | "MEDIUM" | "HIGH" | "CRITICAL";
103
+ categories: string[];
104
+ scanId: string;
105
+ reportId: string;
106
+ profileName: string;
107
+ promptDetected: { injection: boolean; dlp: boolean; urlCats: boolean };
108
+ responseDetected: { dlp: boolean; urlCats: boolean };
109
+ sessionId?: string;
110
+ trId?: string;
111
+ latencyMs: number;
112
+ error?: string;
113
+ }
114
+ ```
115
+
116
+ ## Requirements
117
+
118
+ - Node.js 18+
119
+ - OpenClaw Gateway
120
+ - Prisma AIRS API key ([Strata Cloud Manager](https://docs.paloaltonetworks.com/ai-runtime-security))
121
+
122
+ ## Links
123
+
124
+ - [GitHub](https://github.com/cdot65/prisma-airs-plugin-openclaw)
125
+ - [Prisma AIRS Docs](https://docs.paloaltonetworks.com/ai-runtime-security)
126
+ - [API Reference](https://pan.dev/prisma-airs/)
127
+
128
+ ## License
129
+
130
+ MIT
package/index.ts CHANGED
@@ -96,7 +96,7 @@ export default function register(api: PluginApi): void {
96
96
  const hasApiKey = isConfigured();
97
97
  respond(true, {
98
98
  plugin: "prisma-airs",
99
- version: "0.1.0",
99
+ version: "0.1.1",
100
100
  config: {
101
101
  profile_name: cfg.profile_name ?? "default",
102
102
  app_name: cfg.app_name ?? "openclaw",
@@ -185,7 +185,7 @@ export default function register(api: PluginApi): void {
185
185
  const hasKey = isConfigured();
186
186
  console.log("Prisma AIRS Plugin Status");
187
187
  console.log("-------------------------");
188
- console.log(`Version: 0.1.0`);
188
+ console.log(`Version: 0.1.1`);
189
189
  console.log(`Profile: ${cfg.profile_name ?? "default"}`);
190
190
  console.log(`App Name: ${cfg.app_name ?? "openclaw"}`);
191
191
  console.log(`Reminder: ${cfg.reminder_enabled ?? true}`);
@@ -236,7 +236,7 @@ export default function register(api: PluginApi): void {
236
236
  // Export plugin metadata for discovery
237
237
  export const id = "prisma-airs";
238
238
  export const name = "Prisma AIRS Security";
239
- export const version = "0.1.0";
239
+ export const version = "0.1.1";
240
240
 
241
241
  // Re-export scanner types and functions
242
242
  export { scan, isConfigured } from "./src/scanner";
@@ -2,7 +2,7 @@
2
2
  "id": "prisma-airs",
3
3
  "name": "Prisma AIRS Security",
4
4
  "description": "AI Runtime Security scanning via Palo Alto Networks - TypeScript implementation with Gateway RPC, agent tool, and bootstrap reminder hook",
5
- "version": "0.1.0",
5
+ "version": "0.1.1",
6
6
  "hooks": ["hooks/prisma-airs-guard"],
7
7
  "configSchema": {
8
8
  "type": "object",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@cdot65/prisma-airs",
3
- "version": "0.1.0",
3
+ "version": "0.1.1",
4
4
  "description": "Prisma AIRS (AI Runtime Security) plugin for OpenClaw - TypeScript implementation with Gateway RPC, agent tool, and bootstrap hook",
5
5
  "type": "module",
6
6
  "main": "index.ts",
@@ -43,6 +43,7 @@
43
43
  ]
44
44
  },
45
45
  "files": [
46
+ "README.md",
46
47
  "index.ts",
47
48
  "src/",
48
49
  "hooks/",