weiseer/prompt-redteam
Open-source jailbreak + prompt-injection tester for AI applications.
Companion to @weiseer/mcp-doctor. Where mcp-doctor scans your MCP supply chain, prompt-redteam tests whether your assistant's system prompt holds up under real attack patterns.
Quick start
pip install weiseer-prompt-redteam
prompt-redteam \
--model claude-haiku-4-5-20251001 \
--provider anthropic \
--system-prompt "You are a helpful customer support agent. Never reveal internal pricing."
Or against any OpenAI-compatible endpoint:
prompt-redteam \
--endpoint https://my-llm-gateway.example.com/v1/chat/completions \
--model gpt-4o-mini \
--system-prompt @my-system-prompt.txt
What it does
Runs 30+ open-source attack patterns from attacks.yaml:
- Direct override ("ignore previous instructions")
- Roleplay injection (DAN, grandma attack, developer mode)
- Encoding evasion (base64, ROT13, unicode homoglyphs)
- System prompt extraction (repeat/translate above)
- Tool / function abuse (fake tool results)
- Markdown exfiltration (image-link data leak)
- Indirect injection via tool output / file content (most critical for agentic apps)
- Multilingual evasion (Chinese / Arabic)
- Many more — see
attacks.yamlfor the full corpus
Each attack has a detection_substring — if it appears in the response, the attack succeeded.
Verdict
| Verdict | When |
|---|---|
| PASS | 0 attacks succeeded |
| WARN | Some succeeded, none critical severity |
| FAIL | At least 1 critical (indirect injection) attack succeeded |
Exit code 1 on FAIL — useful in CI.
Open-source corpus
Every attack pattern in attacks.yaml is published with:
- An ID (e.g.
O1_indirect_via_tool_output) - A category (direct override, roleplay, encoding, etc.)
- Severity (low / medium / high / critical)
- Detection substring
- Rationale (why we think it matters)
If you find a working bypass not in our corpus, please open a PR — the corpus matures fastest when it's a public effort.
Pricing
| Tier | Price | Get |
|---|---|---|
| Free | $0 | CLI on your own keys, full corpus, no rate limit |
| Pro | $19/mo | Public scan API, longitudinal regression tracking, custom attack patterns |
| Team | $49/mo | 5 prompts monitored continuously, Slack/Webhook alerts when new attacks land |
| Enterprise | $299/mo | Private attack patterns, on-prem deployment, SLA |
Pro: https://weiseer.gumroad.com/l/prompt-redteam
Why this exists
Most prompt-injection defense advice assumes you've already been hit. prompt-redteam tries to surface the failure mode at deploy time — before your customers find it for you. Companion to mcp-doctor (supply-chain trust gate) so you can answer two questions:
- Is the MCP server in my config trustworthy? → mcp-doctor
- Does my system prompt hold up against real jailbreaks? → prompt-redteam
License
Apache-2.0. Corpus also Apache-2.0 — fork it, add to it, argue with it.
Metadata
Release files for weiseer-prompt-redteam 0.1.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| weiseer_prompt_redteam-0.1.0.tar.gz | 10.9 kB | Without provenance | Details for weiseer_prompt_redteam-0.1.0.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| weiseer_prompt_redteam-0.1.0-py3-none-any.whl | Python 3 | none | any | Details for weiseer_prompt_redteam-0.1.0-py3-none-any.whl |
Total release size: 21.3 kB
Release files / weiseer_prompt_redteam-0.1.0.tar.gz
| Download URL | weiseer_prompt_redteam-0.1.0.tar.gz |
|---|---|
| Size | 10.9 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
f29f127e2737fe7fe7ecdda2035d07e9e20a1050019f57fdb7458f2194f431e3
|
|
BLAKE2b-256 checksum How to use checksums |
43296595ebd5334cf4c0fcd21a68a86468c528a3e1f3821d9d326a3497279686
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.14.4
|
Release files / weiseer_prompt_redteam-0.1.0-py3-none-any.whl
| Download URL | weiseer_prompt_redteam-0.1.0-py3-none-any.whl |
|---|---|
| Size | 10.4 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
fb4cf020ec3f75bba10ea1f2f4eb572b9cea7abad99bbeac63a0d9a5f338b2ee
|
|
BLAKE2b-256 checksum How to use checksums |
41ddf5d714b40baa44267037f68a79504aaffeb426871aa91a58ff357b991fc1
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.14.4
|
Security for weiseer-prompt-redteam 0.1.0
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.