"Use PyRIT command-line scanners, backend service, shell, GUI entry
Scanned 9/9/2026
Install to Claude Code
npx -y skills add VectorSpaceLab/AREX-Skill --skill cli-backend-scanner --agent claude-codeInstalls into .claude/skills of the current project.
Are you the author of Cli Backend Scanner?
Add the live security badge to your README — it updates automatically with every re-scan.
[](https://www.skillsdirectory.com/skills/vectorspacelab-cli-backend-scanner)More formats (shields.io, HTML) on the badges page.
---
name: cli-backend-scanner
description: "Use PyRIT command-line scanners, backend service, shell, GUI entry
points, scanner configs, and CLI troubleshooting."
disable-model-invocation: true
metadata:
disco-role: operating
license: MIT
---
# PyRIT CLI, Backend, Scanner, and GUI Router
Use this sub-skill when the task is to run or diagnose PyRIT through `pyrit_scan`, `pyrit_shell`, `pyrit_backend`, the local REST backend, or the CoPyRIT browser UI. Treat these entry points as clients/services around the PyRIT scenario, target, dataset, converter, and scoring internals.
## Read First
- For exact command surfaces, server/client split, config precedence, REST routes, GUI notes, and Docker caveats, read [CLI and backend reference](references/cli-backend-reference.md).
- For task-oriented command recipes, including list commands, rapid-response scans, result inspection, shell sessions, GUI usage, and safe shutdown, read [scanner workflows](references/scanner-workflows.md).
- For backend startup failures, port conflicts, invalid config, missing targets/credentials, bad scenario or technique names, empty dataset filters, server URL mismatch, GUI/backend split, and container caveats, read [troubleshooting](references/troubleshooting.md).
- Before assuming console scripts are available, run the safe no-server smoke helper: [scripts/pyrit_cli_smoke.py](scripts/pyrit_cli_smoke.py).
## Route By User Intent
- **"Use pyrit_scan", "run a scan", "list scenarios", "inspect scenario results"**: use [scanner workflows](references/scanner-workflows.md) and confirm a backend is already running or the user explicitly wants `--start-server`.
- **"Start/stop/configure the backend" or "serve CoPyRIT"**: use [CLI and backend reference](references/cli-backend-reference.md#backend-service-pyrit_backend) plus [troubleshooting](references/troubleshooting.md#backend-startup-port-and-timeout-failures).
- **"Interactive scanner shell"**: use [scanner workflows](references/scanner-workflows.md#interactive-shell-workflow) and keep shell-only commands distinct from `pyrit_scan` flags.
- **"GUI", "CoPyRIT", "browser UI"**: use [CLI and backend reference](references/cli-backend-reference.md#copyrit-gui-high-level-usage) for the backend/UI split; do not enter frontend TypeScript development.
- **"Docker" or "container"**: use Docker guidance only as reference-oriented operational context; do not run Docker build/run helpers unless the user explicitly asks for container operations.
## Boundaries
- This sub-skill owns CLI syntax, backend service lifecycle, REST client behavior, scan command construction, result views, GUI high-level usage, and command troubleshooting.
- For scenario semantics, attack-technique selection, scenario parameters, result interpretation, and executor internals, route to sibling [`attacks-scenarios`](../attacks-scenarios/SKILL.md).
- For registering, configuring, and troubleshooting prompt targets, target credentials, scorer choices, and LLM-backed scoring failures, route to sibling [`targets-scorers`](../targets-scorers/SKILL.md).
- For dataset schemas, converter stacks, seed prompt formats, and dataset/converter optional dependencies, route to sibling [`converters-datasets`](../converters-datasets/SKILL.md).
- For PyRIT home files, memory backend selection, initialization files, registry behavior, and configuration-loader details, route to sibling [`setup-memory-core`](../setup-memory-core/SKILL.md).
- Frontend TypeScript development, Azure infrastructure deployment internals, broad Docker build automation, and low-level attack/target/scorer implementation changes are out of scope here.
## Safety Rules
- Do not invent or run a live scan against an external model without user authorization, a configured target, and credentials handled outside the command text.
- `pyrit_scan` discovery and run commands require a reachable backend unless the command is help-only or stopping a local backend.
- Prefer a local loopback backend (`localhost` or `127.0.0.1`) for ad hoc use. Binding `pyrit_backend` to a non-loopback host exposes an unauthenticated API unless the deployment has explicitly configured authentication controls.
- Keep secrets out of CLI arguments, logs, shell history, and generated examples. Use environment files or configured target initializers for credentials.
Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.
No comments yet. Be the first to comment!