Skip to main content
qai ipi [OPTIONS] COMMAND [ARGS]
Indirect Prompt Injection — Generate payloads and detect AI agent execution via document ingestion.

Commands

CommandDescription
generateGenerate document(s) with hidden prompt injection payloads
techniquesList all available hiding techniques
formatsList supported output formats
listenStart the callback listener server
statusCheck campaign status and hits
exportExport campaigns and hits to JSON
resetReset all campaigns, hits, and generated files

generate

Generate document(s) with hidden prompt injection payload.
qai ipi generate [OPTIONS]
Creates one or more documents containing hidden prompt injection payloads using the specified technique(s). Each generated document is registered in the database for callback tracking.

Options

OptionTypeRequiredDefaultDescription
--callback, -cTEXTYesCallback server URL
--output, -oPATHNo./payloads/Output path (file or directory)
--formatTEXTNopdfOutput format (pdf, image, markdown, html, docx, ics, eml)
--technique, -tTEXTNoallTechnique(s): all, phase1, phase2, or specific names (comma-separated)
--payload-typeTEXTNocallbackPayload type: callback, exfil_summary, exfil_context, ssrf_internal, instruction_override, tool_abuse, persistence
--payload, --payload-style, -pTEXTNoobviousPayload style: obvious, citation, reviewer, helpful, academic, compliance, datasource
--name, -nTEXTNoreportBase filename
--dangerousFLAGNofalseEnable non-callback payload types (exfil, ssrf, override, etc.)
--seedINTNoSeed for deterministic UUID/token generation (reproducible corpus)

Technique Presets

PresetTechniques
allAll 34 techniques across all formats
phase1white_ink, off_canvas, metadata (PDF basic)
phase2tiny_text, white_rect, form_field, annotation, javascript, embedded_file, incremental (PDF advanced)
Individual technique names can also be specified directly or as a comma-separated list. When using --format, only techniques valid for that format are generated — incompatible techniques are skipped with a warning.

Examples

qai ipi generate --callback http://localhost:8080

techniques

List all available hiding techniques.
qai ipi techniques [OPTIONS]
Displays a table of all supported payload hiding techniques, organized by format and phase with descriptions.

Options

OptionTypeRequiredDefaultDescription
--format, -fTEXTNoFilter by format (pdf, image, markdown, html, docx, ics, eml)

Examples

qai ipi techniques

formats

List supported output formats.
qai ipi formats
Displays a table of all document formats with implementation status and technique count. No options.

listen

Start the callback listener server.
qai ipi listen [OPTIONS]
Launches the FastAPI server that receives and logs callback requests from AI agents that execute the hidden payloads. Also serves the web dashboard at /ui/.

Options

OptionTypeRequiredDefaultDescription
--port, -pINTNo8080Port to listen on
--host, -hTEXTNo127.0.0.1Host to bind to

Examples

qai ipi listen
The dashboard is available at http://localhost:<port>/ui/ once the listener starts.

status

Check status of campaigns and hits.
qai ipi status [UUID] [OPTIONS]
Without arguments, displays a table of all campaigns with hit counts and confidence breakdowns. With a UUID argument, shows detailed information for that campaign including all recorded hits.

Arguments

ArgumentDescription
UUIDOptional — show details for a specific campaign

Options

OptionTypeRequiredDefaultDescription
--formatTEXTNoFilter by format
--techniqueTEXTNoFilter by technique
--payload-typeTEXTNoFilter by payload type

Examples

qai ipi status

export

Export campaigns and hits to JSON.
qai ipi export [OPTIONS]
Exports all campaign and hit data to a JSON file for external analysis, reporting, or backup purposes.

Options

OptionTypeRequiredDefaultDescription
--output, -oPATHNotracking.jsonOutput file path

Examples

qai ipi export --output results.json

reset

Reset all campaigns, hits, and generated files.
qai ipi reset [OPTIONS]
Deletes all campaign and hit records from the database and removes generated payload files from disk. Prompts for confirmation unless --yes is passed.

Options

OptionTypeRequiredDefaultDescription
--yes, -yFLAGNofalseSkip confirmation prompt

Examples

qai ipi reset
This permanently deletes all campaign data and generated files. This action cannot be undone.