@cdot65/prisma-airs-cli 2.11.0 → 3.0.0
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 +27 -169
- package/dist/chunk-JXHYQFEK.js +1752 -0
- package/dist/cli/index.js +6511 -4
- package/dist/dlp-5XKWITZX.js +710 -0
- package/dist/index.d.ts +1396 -26
- package/dist/index.js +40 -37
- package/package.json +22 -25
- package/dist/airs/dlp/data-filtering-profiles.d.ts +0 -10
- package/dist/airs/dlp/data-filtering-profiles.d.ts.map +0 -1
- package/dist/airs/dlp/data-filtering-profiles.js +0 -17
- package/dist/airs/dlp/data-filtering-profiles.js.map +0 -1
- package/dist/airs/dlp/data-patterns.d.ts +0 -13
- package/dist/airs/dlp/data-patterns.d.ts.map +0 -1
- package/dist/airs/dlp/data-patterns.js +0 -26
- package/dist/airs/dlp/data-patterns.js.map +0 -1
- package/dist/airs/dlp/data-profiles.d.ts +0 -12
- package/dist/airs/dlp/data-profiles.d.ts.map +0 -1
- package/dist/airs/dlp/data-profiles.js +0 -23
- package/dist/airs/dlp/data-profiles.js.map +0 -1
- package/dist/airs/dlp/dictionaries.d.ts +0 -13
- package/dist/airs/dlp/dictionaries.d.ts.map +0 -1
- package/dist/airs/dlp/dictionaries.js +0 -34
- package/dist/airs/dlp/dictionaries.js.map +0 -1
- package/dist/airs/dlp/index.d.ts +0 -6
- package/dist/airs/dlp/index.d.ts.map +0 -1
- package/dist/airs/dlp/index.js +0 -6
- package/dist/airs/dlp/index.js.map +0 -1
- package/dist/airs/dlp/types.d.ts +0 -36
- package/dist/airs/dlp/types.d.ts.map +0 -1
- package/dist/airs/dlp/types.js +0 -2
- package/dist/airs/dlp/types.js.map +0 -1
- package/dist/airs/management.d.ts +0 -68
- package/dist/airs/management.d.ts.map +0 -1
- package/dist/airs/management.js +0 -317
- package/dist/airs/management.js.map +0 -1
- package/dist/airs/modelsecurity.d.ts +0 -74
- package/dist/airs/modelsecurity.d.ts.map +0 -1
- package/dist/airs/modelsecurity.js +0 -337
- package/dist/airs/modelsecurity.js.map +0 -1
- package/dist/airs/promptsets.d.ts +0 -50
- package/dist/airs/promptsets.d.ts.map +0 -1
- package/dist/airs/promptsets.js +0 -120
- package/dist/airs/promptsets.js.map +0 -1
- package/dist/airs/redteam.d.ts +0 -74
- package/dist/airs/redteam.d.ts.map +0 -1
- package/dist/airs/redteam.js +0 -406
- package/dist/airs/redteam.js.map +0 -1
- package/dist/airs/runtime.d.ts +0 -27
- package/dist/airs/runtime.d.ts.map +0 -1
- package/dist/airs/runtime.js +0 -158
- package/dist/airs/runtime.js.map +0 -1
- package/dist/airs/scanner.d.ts +0 -36
- package/dist/airs/scanner.d.ts.map +0 -1
- package/dist/airs/scanner.js +0 -101
- package/dist/airs/scanner.js.map +0 -1
- package/dist/airs/types.d.ts +0 -780
- package/dist/airs/types.d.ts.map +0 -1
- package/dist/airs/types.js +0 -6
- package/dist/airs/types.js.map +0 -1
- package/dist/audit/evaluator.d.ts +0 -17
- package/dist/audit/evaluator.d.ts.map +0 -1
- package/dist/audit/evaluator.js +0 -82
- package/dist/audit/evaluator.js.map +0 -1
- package/dist/audit/report.d.ts +0 -38
- package/dist/audit/report.d.ts.map +0 -1
- package/dist/audit/report.js +0 -141
- package/dist/audit/report.js.map +0 -1
- package/dist/audit/runner.d.ts +0 -18
- package/dist/audit/runner.d.ts.map +0 -1
- package/dist/audit/runner.js +0 -60
- package/dist/audit/runner.js.map +0 -1
- package/dist/audit/types.d.ts +0 -53
- package/dist/audit/types.d.ts.map +0 -1
- package/dist/audit/types.js +0 -5
- package/dist/audit/types.js.map +0 -1
- package/dist/backup/index.d.ts +0 -3
- package/dist/backup/index.d.ts.map +0 -1
- package/dist/backup/index.js +0 -3
- package/dist/backup/index.js.map +0 -1
- package/dist/backup/io.d.ts +0 -15
- package/dist/backup/io.d.ts.map +0 -1
- package/dist/backup/io.js +0 -67
- package/dist/backup/io.js.map +0 -1
- package/dist/backup/types.d.ts +0 -25
- package/dist/backup/types.d.ts.map +0 -1
- package/dist/backup/types.js +0 -2
- package/dist/backup/types.js.map +0 -1
- package/dist/cli/builders/profile-builder.d.ts +0 -45
- package/dist/cli/builders/profile-builder.d.ts.map +0 -1
- package/dist/cli/builders/profile-builder.js +0 -308
- package/dist/cli/builders/profile-builder.js.map +0 -1
- package/dist/cli/bulk-scan-state.d.ts +0 -15
- package/dist/cli/bulk-scan-state.d.ts.map +0 -1
- package/dist/cli/bulk-scan-state.js +0 -20
- package/dist/cli/bulk-scan-state.js.map +0 -1
- package/dist/cli/commands/audit.d.ts +0 -4
- package/dist/cli/commands/audit.d.ts.map +0 -1
- package/dist/cli/commands/audit.js +0 -113
- package/dist/cli/commands/audit.js.map +0 -1
- package/dist/cli/commands/backup.d.ts +0 -10
- package/dist/cli/commands/backup.d.ts.map +0 -1
- package/dist/cli/commands/backup.js +0 -102
- package/dist/cli/commands/backup.js.map +0 -1
- package/dist/cli/commands/dlp/build-body.d.ts +0 -28
- package/dist/cli/commands/dlp/build-body.d.ts.map +0 -1
- package/dist/cli/commands/dlp/build-body.js +0 -174
- package/dist/cli/commands/dlp/build-body.js.map +0 -1
- package/dist/cli/commands/dlp/dictionaries.d.ts +0 -3
- package/dist/cli/commands/dlp/dictionaries.d.ts.map +0 -1
- package/dist/cli/commands/dlp/dictionaries.js +0 -167
- package/dist/cli/commands/dlp/dictionaries.js.map +0 -1
- package/dist/cli/commands/dlp/filtering-profiles.d.ts +0 -3
- package/dist/cli/commands/dlp/filtering-profiles.d.ts.map +0 -1
- package/dist/cli/commands/dlp/filtering-profiles.js +0 -82
- package/dist/cli/commands/dlp/filtering-profiles.js.map +0 -1
- package/dist/cli/commands/dlp/generate.d.ts +0 -3
- package/dist/cli/commands/dlp/generate.d.ts.map +0 -1
- package/dist/cli/commands/dlp/generate.js +0 -51
- package/dist/cli/commands/dlp/generate.js.map +0 -1
- package/dist/cli/commands/dlp/index.d.ts +0 -3
- package/dist/cli/commands/dlp/index.d.ts.map +0 -1
- package/dist/cli/commands/dlp/index.js +0 -16
- package/dist/cli/commands/dlp/index.js.map +0 -1
- package/dist/cli/commands/dlp/patch.d.ts +0 -15
- package/dist/cli/commands/dlp/patch.d.ts.map +0 -1
- package/dist/cli/commands/dlp/patch.js +0 -70
- package/dist/cli/commands/dlp/patch.js.map +0 -1
- package/dist/cli/commands/dlp/patterns.d.ts +0 -3
- package/dist/cli/commands/dlp/patterns.d.ts.map +0 -1
- package/dist/cli/commands/dlp/patterns.js +0 -127
- package/dist/cli/commands/dlp/patterns.js.map +0 -1
- package/dist/cli/commands/dlp/profiles.d.ts +0 -3
- package/dist/cli/commands/dlp/profiles.d.ts.map +0 -1
- package/dist/cli/commands/dlp/profiles.js +0 -126
- package/dist/cli/commands/dlp/profiles.js.map +0 -1
- package/dist/cli/commands/modelsecurity.d.ts +0 -4
- package/dist/cli/commands/modelsecurity.d.ts.map +0 -1
- package/dist/cli/commands/modelsecurity.js +0 -605
- package/dist/cli/commands/modelsecurity.js.map +0 -1
- package/dist/cli/commands/profiles-cleanup.d.ts +0 -26
- package/dist/cli/commands/profiles-cleanup.d.ts.map +0 -1
- package/dist/cli/commands/profiles-cleanup.js +0 -113
- package/dist/cli/commands/profiles-cleanup.js.map +0 -1
- package/dist/cli/commands/redteam.d.ts +0 -12
- package/dist/cli/commands/redteam.d.ts.map +0 -1
- package/dist/cli/commands/redteam.js +0 -1071
- package/dist/cli/commands/redteam.js.map +0 -1
- package/dist/cli/commands/restore.d.ts +0 -11
- package/dist/cli/commands/restore.d.ts.map +0 -1
- package/dist/cli/commands/restore.js +0 -109
- package/dist/cli/commands/restore.js.map +0 -1
- package/dist/cli/commands/runtime.d.ts +0 -6
- package/dist/cli/commands/runtime.d.ts.map +0 -1
- package/dist/cli/commands/runtime.js +0 -822
- package/dist/cli/commands/runtime.js.map +0 -1
- package/dist/cli/commands/topics-apply.d.ts +0 -16
- package/dist/cli/commands/topics-apply.d.ts.map +0 -1
- package/dist/cli/commands/topics-apply.js +0 -69
- package/dist/cli/commands/topics-apply.js.map +0 -1
- package/dist/cli/commands/topics-create.d.ts +0 -16
- package/dist/cli/commands/topics-create.d.ts.map +0 -1
- package/dist/cli/commands/topics-create.js +0 -71
- package/dist/cli/commands/topics-create.js.map +0 -1
- package/dist/cli/commands/topics-eval.d.ts +0 -7
- package/dist/cli/commands/topics-eval.d.ts.map +0 -1
- package/dist/cli/commands/topics-eval.js +0 -65
- package/dist/cli/commands/topics-eval.js.map +0 -1
- package/dist/cli/commands/topics-revert.d.ts +0 -9
- package/dist/cli/commands/topics-revert.d.ts.map +0 -1
- package/dist/cli/commands/topics-revert.js +0 -52
- package/dist/cli/commands/topics-revert.js.map +0 -1
- package/dist/cli/commands/topics-sample.d.ts +0 -4
- package/dist/cli/commands/topics-sample.d.ts.map +0 -1
- package/dist/cli/commands/topics-sample.js +0 -27
- package/dist/cli/commands/topics-sample.js.map +0 -1
- package/dist/cli/debug-logger.d.ts +0 -11
- package/dist/cli/debug-logger.d.ts.map +0 -1
- package/dist/cli/debug-logger.js +0 -137
- package/dist/cli/debug-logger.js.map +0 -1
- package/dist/cli/index.d.ts +0 -3
- package/dist/cli/index.d.ts.map +0 -1
- package/dist/cli/index.js.map +0 -1
- package/dist/cli/parse-input.d.ts +0 -9
- package/dist/cli/parse-input.d.ts.map +0 -1
- package/dist/cli/parse-input.js +0 -109
- package/dist/cli/parse-input.js.map +0 -1
- package/dist/cli/program.d.ts +0 -3
- package/dist/cli/program.d.ts.map +0 -1
- package/dist/cli/program.js +0 -32
- package/dist/cli/program.js.map +0 -1
- package/dist/cli/renderer/audit.d.ts +0 -11
- package/dist/cli/renderer/audit.d.ts.map +0 -1
- package/dist/cli/renderer/audit.js +0 -58
- package/dist/cli/renderer/audit.js.map +0 -1
- package/dist/cli/renderer/backup.d.ts +0 -8
- package/dist/cli/renderer/backup.d.ts.map +0 -1
- package/dist/cli/renderer/backup.js +0 -50
- package/dist/cli/renderer/backup.js.map +0 -1
- package/dist/cli/renderer/common.d.ts +0 -14
- package/dist/cli/renderer/common.d.ts.map +0 -1
- package/dist/cli/renderer/common.js +0 -50
- package/dist/cli/renderer/common.js.map +0 -1
- package/dist/cli/renderer/dlp.d.ts +0 -34
- package/dist/cli/renderer/dlp.d.ts.map +0 -1
- package/dist/cli/renderer/dlp.js +0 -348
- package/dist/cli/renderer/dlp.js.map +0 -1
- package/dist/cli/renderer/eval.d.ts +0 -30
- package/dist/cli/renderer/eval.d.ts.map +0 -1
- package/dist/cli/renderer/eval.js +0 -61
- package/dist/cli/renderer/eval.js.map +0 -1
- package/dist/cli/renderer/index.d.ts +0 -9
- package/dist/cli/renderer/index.d.ts.map +0 -1
- package/dist/cli/renderer/index.js +0 -9
- package/dist/cli/renderer/index.js.map +0 -1
- package/dist/cli/renderer/modelsecurity.d.ts +0 -35
- package/dist/cli/renderer/modelsecurity.d.ts.map +0 -1
- package/dist/cli/renderer/modelsecurity.js +0 -339
- package/dist/cli/renderer/modelsecurity.js.map +0 -1
- package/dist/cli/renderer/redteam.d.ts +0 -216
- package/dist/cli/renderer/redteam.d.ts.map +0 -1
- package/dist/cli/renderer/redteam.js +0 -471
- package/dist/cli/renderer/redteam.js.map +0 -1
- package/dist/cli/renderer/runtime.d.ts +0 -107
- package/dist/cli/renderer/runtime.d.ts.map +0 -1
- package/dist/cli/renderer/runtime.js +0 -359
- package/dist/cli/renderer/runtime.js.map +0 -1
- package/dist/config/loader.d.ts +0 -3
- package/dist/config/loader.d.ts.map +0 -1
- package/dist/config/loader.js +0 -59
- package/dist/config/loader.js.map +0 -1
- package/dist/config/schema.d.ts +0 -63
- package/dist/config/schema.d.ts.map +0 -1
- package/dist/config/schema.js +0 -38
- package/dist/config/schema.js.map +0 -1
- package/dist/core/constraints.d.ts +0 -19
- package/dist/core/constraints.d.ts.map +0 -1
- package/dist/core/constraints.js +0 -82
- package/dist/core/constraints.js.map +0 -1
- package/dist/core/metrics.d.ts +0 -13
- package/dist/core/metrics.d.ts.map +0 -1
- package/dist/core/metrics.js +0 -73
- package/dist/core/metrics.js.map +0 -1
- package/dist/core/prompt-loader.d.ts +0 -14
- package/dist/core/prompt-loader.d.ts.map +0 -1
- package/dist/core/prompt-loader.js +0 -122
- package/dist/core/prompt-loader.js.map +0 -1
- package/dist/core/types.d.ts +0 -96
- package/dist/core/types.d.ts.map +0 -1
- package/dist/core/types.js +0 -5
- package/dist/core/types.js.map +0 -1
- package/dist/dlp/embed/docx.d.ts +0 -3
- package/dist/dlp/embed/docx.d.ts.map +0 -1
- package/dist/dlp/embed/docx.js +0 -54
- package/dist/dlp/embed/docx.js.map +0 -1
- package/dist/dlp/embed/index.d.ts +0 -6
- package/dist/dlp/embed/index.d.ts.map +0 -1
- package/dist/dlp/embed/index.js +0 -20
- package/dist/dlp/embed/index.js.map +0 -1
- package/dist/dlp/embed/jpeg.d.ts +0 -5
- package/dist/dlp/embed/jpeg.d.ts.map +0 -1
- package/dist/dlp/embed/jpeg.js +0 -60
- package/dist/dlp/embed/jpeg.js.map +0 -1
- package/dist/dlp/embed/pdf.d.ts +0 -7
- package/dist/dlp/embed/pdf.d.ts.map +0 -1
- package/dist/dlp/embed/pdf.js +0 -92
- package/dist/dlp/embed/pdf.js.map +0 -1
- package/dist/dlp/embed/png-chunks.d.ts +0 -12
- package/dist/dlp/embed/png-chunks.d.ts.map +0 -1
- package/dist/dlp/embed/png-chunks.js +0 -85
- package/dist/dlp/embed/png-chunks.js.map +0 -1
- package/dist/dlp/embed/png.d.ts +0 -5
- package/dist/dlp/embed/png.d.ts.map +0 -1
- package/dist/dlp/embed/png.js +0 -68
- package/dist/dlp/embed/png.js.map +0 -1
- package/dist/dlp/embed/svg.d.ts +0 -3
- package/dist/dlp/embed/svg.d.ts.map +0 -1
- package/dist/dlp/embed/svg.js +0 -28
- package/dist/dlp/embed/svg.js.map +0 -1
- package/dist/dlp/embed/zip.d.ts +0 -3
- package/dist/dlp/embed/zip.d.ts.map +0 -1
- package/dist/dlp/embed/zip.js +0 -25
- package/dist/dlp/embed/zip.js.map +0 -1
- package/dist/dlp/generate/docx.d.ts +0 -3
- package/dist/dlp/generate/docx.d.ts.map +0 -1
- package/dist/dlp/generate/docx.js +0 -24
- package/dist/dlp/generate/docx.js.map +0 -1
- package/dist/dlp/generate/index.d.ts +0 -5
- package/dist/dlp/generate/index.d.ts.map +0 -1
- package/dist/dlp/generate/index.js +0 -21
- package/dist/dlp/generate/index.js.map +0 -1
- package/dist/dlp/generate/jpeg.d.ts +0 -3
- package/dist/dlp/generate/jpeg.d.ts.map +0 -1
- package/dist/dlp/generate/jpeg.js +0 -8
- package/dist/dlp/generate/jpeg.js.map +0 -1
- package/dist/dlp/generate/pdf.d.ts +0 -3
- package/dist/dlp/generate/pdf.d.ts.map +0 -1
- package/dist/dlp/generate/pdf.js +0 -19
- package/dist/dlp/generate/pdf.js.map +0 -1
- package/dist/dlp/generate/png.d.ts +0 -3
- package/dist/dlp/generate/png.d.ts.map +0 -1
- package/dist/dlp/generate/png.js +0 -8
- package/dist/dlp/generate/png.js.map +0 -1
- package/dist/dlp/generate/raster.d.ts +0 -9
- package/dist/dlp/generate/raster.d.ts.map +0 -1
- package/dist/dlp/generate/raster.js +0 -20
- package/dist/dlp/generate/raster.js.map +0 -1
- package/dist/dlp/generate/svg.d.ts +0 -3
- package/dist/dlp/generate/svg.d.ts.map +0 -1
- package/dist/dlp/generate/svg.js +0 -17
- package/dist/dlp/generate/svg.js.map +0 -1
- package/dist/dlp/index.d.ts +0 -15
- package/dist/dlp/index.d.ts.map +0 -1
- package/dist/dlp/index.js +0 -54
- package/dist/dlp/index.js.map +0 -1
- package/dist/dlp/lorem.d.ts +0 -3
- package/dist/dlp/lorem.d.ts.map +0 -1
- package/dist/dlp/lorem.js +0 -65
- package/dist/dlp/lorem.js.map +0 -1
- package/dist/dlp/manifest.d.ts +0 -11
- package/dist/dlp/manifest.d.ts.map +0 -1
- package/dist/dlp/manifest.js +0 -14
- package/dist/dlp/manifest.js.map +0 -1
- package/dist/dlp/payload.d.ts +0 -6
- package/dist/dlp/payload.d.ts.map +0 -1
- package/dist/dlp/payload.js +0 -62
- package/dist/dlp/payload.js.map +0 -1
- package/dist/dlp/rng.d.ts +0 -9
- package/dist/dlp/rng.d.ts.map +0 -1
- package/dist/dlp/rng.js +0 -28
- package/dist/dlp/rng.js.map +0 -1
- package/dist/dlp/types.d.ts +0 -26
- package/dist/dlp/types.d.ts.map +0 -1
- package/dist/dlp/types.js +0 -2
- package/dist/dlp/types.js.map +0 -1
- package/dist/index.d.ts.map +0 -1
- package/dist/index.js.map +0 -1
- package/dist/llm/prompts/analyze-results.d.ts +0 -3
- package/dist/llm/prompts/analyze-results.d.ts.map +0 -1
- package/dist/llm/prompts/analyze-results.js +0 -52
- package/dist/llm/prompts/analyze-results.js.map +0 -1
- package/dist/llm/prompts/generate-companion.d.ts +0 -3
- package/dist/llm/prompts/generate-companion.d.ts.map +0 -1
- package/dist/llm/prompts/generate-companion.js +0 -42
- package/dist/llm/prompts/generate-companion.js.map +0 -1
- package/dist/llm/prompts/generate-tests.d.ts +0 -3
- package/dist/llm/prompts/generate-tests.d.ts.map +0 -1
- package/dist/llm/prompts/generate-tests.js +0 -46
- package/dist/llm/prompts/generate-tests.js.map +0 -1
- package/dist/llm/prompts/generate-topic.d.ts +0 -4
- package/dist/llm/prompts/generate-topic.d.ts.map +0 -1
- package/dist/llm/prompts/generate-topic.js +0 -41
- package/dist/llm/prompts/generate-topic.js.map +0 -1
- package/dist/llm/prompts/improve-topic.d.ts +0 -3
- package/dist/llm/prompts/improve-topic.d.ts.map +0 -1
- package/dist/llm/prompts/improve-topic.js +0 -77
- package/dist/llm/prompts/improve-topic.js.map +0 -1
- package/dist/llm/prompts/simplify-topic.d.ts +0 -3
- package/dist/llm/prompts/simplify-topic.d.ts.map +0 -1
- package/dist/llm/prompts/simplify-topic.js +0 -50
- package/dist/llm/prompts/simplify-topic.js.map +0 -1
- package/dist/llm/provider.d.ts +0 -21
- package/dist/llm/provider.d.ts.map +0 -1
- package/dist/llm/provider.js +0 -76
- package/dist/llm/provider.js.map +0 -1
- package/dist/llm/schemas.d.ts +0 -97
- package/dist/llm/schemas.d.ts.map +0 -1
- package/dist/llm/schemas.js +0 -24
- package/dist/llm/schemas.js.map +0 -1
- package/dist/llm/service.d.ts +0 -34
- package/dist/llm/service.d.ts.map +0 -1
- package/dist/llm/service.js +0 -268
- package/dist/llm/service.js.map +0 -1
- package/dist/llm/types.d.ts +0 -18
- package/dist/llm/types.d.ts.map +0 -1
- package/dist/llm/types.js +0 -2
- package/dist/llm/types.js.map +0 -1
- package/dist/report/html.d.ts +0 -6
- package/dist/report/html.d.ts.map +0 -1
- package/dist/report/html.js +0 -200
- package/dist/report/html.js.map +0 -1
- package/dist/report/json.d.ts +0 -11
- package/dist/report/json.d.ts.map +0 -1
- package/dist/report/json.js +0 -74
- package/dist/report/json.js.map +0 -1
- package/dist/report/types.d.ts +0 -58
- package/dist/report/types.d.ts.map +0 -1
- package/dist/report/types.js +0 -5
- package/dist/report/types.js.map +0 -1
package/README.md
CHANGED
|
@@ -1,21 +1,27 @@
|
|
|
1
|
-
|
|
1
|
+
<p align="center">
|
|
2
|
+
<picture>
|
|
3
|
+
<source media="(prefers-color-scheme: dark)" srcset="docs-site/static/img/logo-wordmark-dark.svg">
|
|
4
|
+
<img alt="prisma-airs-cli" src="docs-site/static/img/logo-wordmark.svg" width="400">
|
|
5
|
+
</picture>
|
|
6
|
+
</p>
|
|
2
7
|
|
|
3
8
|
[](https://github.com/cdot65/prisma-airs-cli/actions/workflows/ci.yml)
|
|
4
9
|
[](https://www.npmjs.com/package/@cdot65/prisma-airs-cli)
|
|
5
10
|
[](https://opensource.org/licenses/MIT)
|
|
6
11
|
[](https://nodejs.org/)
|
|
7
12
|
|
|
8
|
-
**Full operational coverage over Palo Alto Prisma AIRS AI security — guardrail refinement, runtime scanning, AI red teaming, model security
|
|
13
|
+
**Full operational coverage over Palo Alto Prisma AIRS AI security — guardrail refinement, runtime scanning, AI red teaming, and model security.**
|
|
9
14
|
|
|
10
15
|
> **[Read the full documentation](https://cdot65.github.io/prisma-airs-cli/)** — installation, configuration, architecture, CLI reference, and examples.
|
|
11
16
|
|
|
12
17
|
## Features
|
|
13
18
|
|
|
14
19
|
- **Runtime Scanning** — scan prompts and responses against AIRS security profiles, single or bulk with CSV export
|
|
15
|
-
- **Guardrail Optimization** — atomic CLI commands (`create`, `apply`, `eval`, `revert`) for custom topic guardrails, designed for autonomous agent loops (see `
|
|
20
|
+
- **Guardrail Optimization** — atomic CLI commands (`create`, `apply`, `eval`, `revert`) for custom topic guardrails, designed for autonomous agent loops (see [`AGENTS.md`](AGENTS.md))
|
|
16
21
|
- **AI Red Teaming** — adversarial scanning with static, dynamic, and custom prompt set attack modes
|
|
17
22
|
- **Model Security** — ML model supply chain scanning with security groups, rules, and violation tracking
|
|
18
|
-
-
|
|
23
|
+
- **`airs doctor`** — one-command diagnostics for environment, credentials, and API connectivity
|
|
24
|
+
- **`airs config`** — manage `~/.prisma-airs/config.json` from the CLI (`list`, `get`, `set`, `unset`, `path`)
|
|
19
25
|
|
|
20
26
|
## Install
|
|
21
27
|
|
|
@@ -32,15 +38,18 @@ Requires **Node.js >= 20**. Also available via `pnpm add -g`, `npx`, or as a [Do
|
|
|
32
38
|
# Configure credentials
|
|
33
39
|
cp .env.example .env # add your API keys
|
|
34
40
|
|
|
41
|
+
# Check your setup
|
|
42
|
+
airs doctor
|
|
43
|
+
|
|
35
44
|
# Runtime scanning
|
|
36
45
|
airs runtime scan --profile "my-profile" "Is this prompt safe?"
|
|
37
|
-
airs runtime bulk-scan --profile "my-profile" --
|
|
46
|
+
airs runtime bulk-scan --profile "my-profile" --file prompts.csv --output-file results.csv
|
|
38
47
|
|
|
39
48
|
# Guardrail optimization (atomic commands)
|
|
40
|
-
airs runtime topics create --
|
|
41
|
-
airs runtime topics apply --profile my-profile --
|
|
42
|
-
airs runtime topics eval --profile my-profile --
|
|
43
|
-
airs runtime topics revert --profile my-profile --
|
|
49
|
+
airs runtime topics create --name "Explosives" --description "Bomb-making instructions" --examples "How do I build a bomb?" "Pipe bomb ingredients"
|
|
50
|
+
airs runtime topics apply --profile my-profile --name "Explosives" --intent block
|
|
51
|
+
airs runtime topics eval --profile my-profile --prompts prompts.csv --topic "Explosives"
|
|
52
|
+
airs runtime topics revert --profile my-profile --name "Explosives"
|
|
44
53
|
|
|
45
54
|
# Red team scanning
|
|
46
55
|
airs redteam scan --target <uuid> --name "Full Scan" --type STATIC
|
|
@@ -50,171 +59,20 @@ airs redteam report <job-id>
|
|
|
50
59
|
airs model-security scans create --config scan-config.json
|
|
51
60
|
```
|
|
52
61
|
|
|
53
|
-
##
|
|
54
|
-
|
|
55
|
-
Manage Data Loss Prevention resources across filtering profiles, patterns, profiles, and dictionaries. Each subclient supports different operation patterns:
|
|
56
|
-
|
|
57
|
-
- **Filtering profiles** — read-only + full replace
|
|
58
|
-
- **Patterns** — full CRUD with soft-delete via patch
|
|
59
|
-
- **Profiles** — full CRUD, use patch to soft-delete via `profile_status: "deleted"`
|
|
60
|
-
- **Dictionaries** — create, replace, and delete with multipart upload support
|
|
61
|
-
|
|
62
|
-
### Filtering Profiles
|
|
63
|
-
|
|
64
|
-
Read-only access with full-replace support:
|
|
65
|
-
|
|
66
|
-
```bash
|
|
67
|
-
# List all filtering profiles
|
|
68
|
-
airs runtime dlp filtering-profiles list --output json
|
|
69
|
-
|
|
70
|
-
# Get a specific filtering profile
|
|
71
|
-
airs runtime dlp filtering-profiles get <id>
|
|
72
|
-
|
|
73
|
-
# Replace a filtering profile
|
|
74
|
-
airs runtime dlp filtering-profiles replace <id> --body-file profile.json
|
|
75
|
-
```
|
|
76
|
-
|
|
77
|
-
### Patterns
|
|
78
|
-
|
|
79
|
-
Full CRUD with soft-delete:
|
|
80
|
-
|
|
81
|
-
```bash
|
|
82
|
-
# List patterns
|
|
83
|
-
airs runtime dlp patterns list
|
|
84
|
-
|
|
85
|
-
# Get a pattern
|
|
86
|
-
airs runtime dlp patterns get <id>
|
|
87
|
-
|
|
88
|
-
# Create a new pattern
|
|
89
|
-
airs runtime dlp patterns create --body-file pattern.json
|
|
90
|
-
|
|
91
|
-
# Update a pattern
|
|
92
|
-
airs runtime dlp patterns patch <id> --set name="Updated Name"
|
|
93
|
-
|
|
94
|
-
# Soft-delete a pattern
|
|
95
|
-
airs runtime dlp patterns patch <id> --set is_archived=true
|
|
96
|
-
|
|
97
|
-
# Hard delete a pattern
|
|
98
|
-
airs runtime dlp patterns delete <id>
|
|
99
|
-
```
|
|
100
|
-
|
|
101
|
-
### Profiles
|
|
62
|
+
## Documentation
|
|
102
63
|
|
|
103
|
-
|
|
64
|
+
The full guides, complete CLI reference, configuration, and architecture live on the **[documentation site](https://cdot65.github.io/prisma-airs-cli/)**:
|
|
104
65
|
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
airs
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
airs
|
|
111
|
-
|
|
112
|
-
# Create a profile
|
|
113
|
-
airs runtime dlp profiles create --body-file profile.json
|
|
114
|
-
|
|
115
|
-
# Update a profile
|
|
116
|
-
airs runtime dlp profiles patch <id> --body-file - <<EOF
|
|
117
|
-
{ "name": "my-profile", "profile_type": "advanced", "description": "Updated description" }
|
|
118
|
-
EOF
|
|
119
|
-
|
|
120
|
-
# Soft-delete (set profile_status to "deleted")
|
|
121
|
-
airs runtime dlp profiles patch <id> --body-file - <<EOF
|
|
122
|
-
{ "profile_status": "deleted" }
|
|
123
|
-
EOF
|
|
124
|
-
|
|
125
|
-
# Hard delete a profile
|
|
126
|
-
airs runtime dlp profiles delete <id>
|
|
127
|
-
```
|
|
128
|
-
|
|
129
|
-
### Dictionaries
|
|
130
|
-
|
|
131
|
-
Multipart upload support for dictionary management:
|
|
132
|
-
|
|
133
|
-
```bash
|
|
134
|
-
# List dictionaries
|
|
135
|
-
airs runtime dlp dictionaries list
|
|
136
|
-
|
|
137
|
-
# Get a dictionary
|
|
138
|
-
airs runtime dlp dictionaries get <id>
|
|
139
|
-
|
|
140
|
-
# Create a dictionary with file upload
|
|
141
|
-
airs runtime dlp dictionaries create --name "Allowlist" --category Confidential \
|
|
142
|
-
--region us --file keywords.txt
|
|
143
|
-
|
|
144
|
-
# Replace a dictionary (multipart upload)
|
|
145
|
-
airs runtime dlp dictionaries replace <id> --file keywords.txt --name "Allowlist" \
|
|
146
|
-
--category Confidential --region us
|
|
147
|
-
|
|
148
|
-
# Delete a dictionary
|
|
149
|
-
airs runtime dlp dictionaries delete <id>
|
|
150
|
-
```
|
|
151
|
-
|
|
152
|
-
## Commands
|
|
153
|
-
|
|
154
|
-
| Command | Description |
|
|
155
|
-
|---------|-------------|
|
|
156
|
-
| `runtime scan` | Single prompt scanning against AIRS profiles |
|
|
157
|
-
| `runtime bulk-scan` | Batch prompt scanning with CSV output |
|
|
158
|
-
| `runtime topics` | Custom topic management (`list`, `get`, `create`, `apply`, `eval`, `revert`, `update`, `delete`) |
|
|
159
|
-
| `runtime profiles` | Security profile CRUD (`list`, `get`, `create`, `update`, `delete`) + multi-topic `audit` |
|
|
160
|
-
| `runtime api-keys` | API key management |
|
|
161
|
-
| `runtime customer-apps` | Customer app CRUD |
|
|
162
|
-
| `runtime deployment-profiles` | Deployment profile listing |
|
|
163
|
-
| `runtime dlp-profiles` | DLP profile listing |
|
|
164
|
-
| `runtime scan-logs` | Scan log querying |
|
|
165
|
-
| `runtime dlp filtering-profiles` | DLP filtering profile listing and full-replace |
|
|
166
|
-
| `runtime dlp filtering-profiles list` | List all filtering profiles |
|
|
167
|
-
| `runtime dlp filtering-profiles get` | Get a specific filtering profile |
|
|
168
|
-
| `runtime dlp filtering-profiles replace` | Replace a filtering profile |
|
|
169
|
-
| `runtime dlp patterns` | DLP pattern CRUD with soft-delete |
|
|
170
|
-
| `runtime dlp patterns list` | List all patterns |
|
|
171
|
-
| `runtime dlp patterns get` | Get a specific pattern |
|
|
172
|
-
| `runtime dlp patterns create` | Create a new pattern |
|
|
173
|
-
| `runtime dlp patterns patch` | Update a pattern or soft-delete via `is_archived` |
|
|
174
|
-
| `runtime dlp patterns delete` | Hard delete a pattern |
|
|
175
|
-
| `runtime dlp profiles` | DLP profile CRUD with soft-delete via `profile_status` |
|
|
176
|
-
| `runtime dlp profiles list` | List all profiles |
|
|
177
|
-
| `runtime dlp profiles get` | Get a specific profile |
|
|
178
|
-
| `runtime dlp profiles create` | Create a new profile |
|
|
179
|
-
| `runtime dlp profiles patch` | Update a profile or soft-delete via `profile_status: "deleted"` |
|
|
180
|
-
| `runtime dlp profiles delete` | Hard delete a profile |
|
|
181
|
-
| `runtime dlp dictionaries` | DLP dictionary management with multipart upload |
|
|
182
|
-
| `runtime dlp dictionaries list` | List all dictionaries |
|
|
183
|
-
| `runtime dlp dictionaries get` | Get a specific dictionary |
|
|
184
|
-
| `runtime dlp dictionaries create` | Create a dictionary with file upload |
|
|
185
|
-
| `runtime dlp dictionaries replace` | Replace a dictionary with multipart upload |
|
|
186
|
-
| `runtime dlp dictionaries delete` | Delete a dictionary |
|
|
187
|
-
| `redteam scan` | Adversarial scanning (STATIC, DYNAMIC, CUSTOM) |
|
|
188
|
-
| `redteam targets` | Red team target CRUD |
|
|
189
|
-
| `redteam prompt-sets` | Custom prompt set management |
|
|
190
|
-
| `model-security groups` | Security group CRUD |
|
|
191
|
-
| `model-security rules` | Security rule management |
|
|
192
|
-
| `model-security scans` | Model security scanning |
|
|
193
|
-
| `backup targets` | Export red team targets to local JSON/YAML files |
|
|
194
|
-
| `restore targets` | Import red team targets from backup files |
|
|
66
|
+
- **[Getting Started](https://cdot65.github.io/prisma-airs-cli/getting-started/installation/)** — install, configure credentials, run your first scan
|
|
67
|
+
- **[Runtime Security](https://cdot65.github.io/prisma-airs-cli/runtime/overview/)** — scanning, profiles, topics, and DLP management
|
|
68
|
+
- **[Guardrail Optimization](https://cdot65.github.io/prisma-airs-cli/runtime/guardrails/overview/)** — the agent-driven `topics create/apply/eval/revert` loop
|
|
69
|
+
- **[AI Red Teaming](https://cdot65.github.io/prisma-airs-cli/redteam/overview/)** — static, dynamic, and custom adversarial scans
|
|
70
|
+
- **[Model Security](https://cdot65.github.io/prisma-airs-cli/model-security/overview/)** — ML model supply-chain scanning
|
|
71
|
+
- **[CLI Reference](https://cdot65.github.io/prisma-airs-cli/cli/)** — every command, flag, and example
|
|
195
72
|
|
|
196
73
|
## Configuration
|
|
197
74
|
|
|
198
|
-
Credentials
|
|
199
|
-
|
|
200
|
-
| Variable | Purpose | Required |
|
|
201
|
-
|----------|---------|----------|
|
|
202
|
-
| `PANW_AI_SEC_API_KEY` | Scanning API authentication | Yes (for scanning) |
|
|
203
|
-
| `PANW_MGMT_CLIENT_ID` | Management API OAuth client ID | Yes (for management) |
|
|
204
|
-
| `PANW_MGMT_CLIENT_SECRET` | Management API OAuth client secret | Yes (for management) |
|
|
205
|
-
| `PANW_MGMT_TSG_ID` | Management API tenant security group ID | Yes (for management) |
|
|
206
|
-
| `PANW_DLP_ENDPOINT` | DLP API base URL override | No (defaults to `api.dlp.paloaltonetworks.com`) |
|
|
207
|
-
| `LLM_PROVIDER` | LLM provider for profile audits | Yes (for audit) |
|
|
208
|
-
| `ANTHROPIC_API_KEY` | Claude API key | Yes (if using Claude) |
|
|
209
|
-
| `GOOGLE_API_KEY` | Google Gemini API key | Yes (if using Gemini) |
|
|
210
|
-
|
|
211
|
-
**Required for scanning:** `PANW_AI_SEC_API_KEY`
|
|
212
|
-
**Required for management:** `PANW_MGMT_CLIENT_ID`, `PANW_MGMT_CLIENT_SECRET`, `PANW_MGMT_TSG_ID`
|
|
213
|
-
**Required for profile audits:** one LLM provider key + scanning + management credentials
|
|
214
|
-
|
|
215
|
-
## Live Smoke Testing
|
|
216
|
-
|
|
217
|
-
The unit suite uses fully mocked services — zero tests in this repo hit a real Prisma AIRS tenant. After every CLI release, after upgrading the SDK, or after an AIRS backend rollout, run the [live smoke test reference](https://cdot65.github.io/prisma-airs-cli/development/smoke-tests/) ([source](docs/development/smoke-tests.md)). Sixteen read-only commands across runtime security, red team, and model security that exercise the SDK's runtime Zod validation against your tenant.
|
|
75
|
+
Credentials come from environment variables or `~/.prisma-airs/config.json`. At minimum: `PANW_AI_SEC_API_KEY` (scanning) and `PANW_MGMT_CLIENT_ID` / `PANW_MGMT_CLIENT_SECRET` / `PANW_MGMT_TSG_ID` (management). See [`.env.example`](.env.example) and the [configuration guide](https://cdot65.github.io/prisma-airs-cli/getting-started/configuration/) for the full list.
|
|
218
76
|
|
|
219
77
|
## License
|
|
220
78
|
|