"Use Microsoft PyRIT for generative-AI red teaming, prompt targets,
Scanned 9/9/2026
Install to Claude Code
npx -y skills add VectorSpaceLab/AREX-Skill --skill pyrit --agent claude-codeInstalls into .claude/skills of the current project.
Are you the author of Pyrit?
Add the live security badge to your README — it updates automatically with every re-scan.
[](https://www.skillsdirectory.com/skills/vectorspacelab-pyrit)More formats (shields.io, HTML) on the badges page.
---
name: pyrit
description: "Use Microsoft PyRIT for generative-AI red teaming, prompt targets,
scorers, converters, datasets, attack scenarios, scanner CLI, backend, and
troubleshooting."
disable-model-invocation: true
metadata:
disco-role: operating
license: MIT
---
# PyRIT repo skill
Use this skill when a task names PyRIT, `pyrit_scan`, `pyrit_backend`, CoPyRIT, Python Risk Identification Tool, AI red teaming, LLM robustness testing, prompt targets, scorers, converters, seed datasets, attack techniques, or scenario campaigns.
This skill is for operating PyRIT as a package. It does not authorize live red-team execution against external systems; require explicit user scope, target approval, credentials handling, and data rules before sending prompts to live services.
## First checks
1. Read [references/repo-provenance.md](references/repo-provenance.md) if you need to decide whether this skill is current for a checkout.
2. Read [references/install-configuration.md](references/install-configuration.md) for package install, optional extras, PyRIT home/config, and no-secret import checks.
3. Run [scripts/pyrit_api_smoke.py](scripts/pyrit_api_smoke.py) when you need a no-secret installed-package sanity check.
4. Use [references/troubleshooting.md](references/troubleshooting.md) for cross-cutting install/import, optional dependency, credential, CLI/backend, and layer-boundary problems.
## Route by task
| User need | Read |
|---|---|
| Initialize PyRIT, choose `InMemory`/SQLite/Azure SQL, load config/env files, inspect registries/models/output helpers | [setup-memory-core](sub-skills/setup-memory-core/SKILL.md) |
| Build converters, converter stacks, message normalization, seed prompts/datasets, and data/YAML schemas | [converters-datasets](sub-skills/converters-datasets/SKILL.md) |
| Configure prompt targets, target capabilities, scorers, score aggregation/evaluation, auth/rate-limit/model-service troubleshooting | [targets-scorers](sub-skills/targets-scorers/SKILL.md) |
| Choose/configure attacks, executors, attack techniques, scenarios, benchmarks, prompt generators, concurrency/retries/results | [attacks-scenarios](sub-skills/attacks-scenarios/SKILL.md) |
| Use `pyrit_scan`, `pyrit_shell`, `pyrit_backend`, backend REST service, scanner workflows, or CoPyRIT GUI operations | [cli-backend-scanner](sub-skills/cli-backend-scanner/SKILL.md) |
## Safe operating defaults
- Prefer no-secret import/signature checks before running examples or scans.
- Prefer offline components (`TextTarget`, rule scorers, offline converters, in-memory/temporary SQLite memory) for smoke tests.
- Treat OpenAI/Azure/HuggingFace/LiteLLM/HTTP/Playwright/Azure SQL paths as credentialed or service-bound.
- Treat GCG, HuggingFace, media, browser, and benchmark paths as optional/heavy unless the user explicitly selects them.
- Keep secrets out of prompts, command lines, logs, generated examples, and persisted memory unless the user explicitly authorizes the storage location.
## Minimal Python check
```python
import pyrit
print(pyrit.__version__)
from pyrit.converter import Base64Converter
from pyrit.prompt_target import TextTarget
from pyrit.score.true_false.substring_scorer import SubStringScorer
```
For deeper checks, run the bundled scripts in the relevant sub-skill. They are designed to work from any directory where PyRIT is installed and do not depend on the original repository checkout.
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!