Catalog PyPI
Back to packageRELEASE DETAILS

1.4.0

PyPI

aicordon

Prompt-injection detectors for untrusted text: Picket, a fast local rule, and Intent, the accurate AI Cordon detector over an API

ai-securitydetectordpiguardrailsindirect-prompt-injectionipijailbreak-detectionllm-securityprompt-injection
Published14 Oct 2026
Direct dependencies0
Transitive dependenciesNot calculated

README

Version 1.4.0 documentation

AI Cordon

PyPI License: Apache 2.0 Python Dependencies

Find prompt injections in the text your model reads: mail, pages, tool results, retrieved chunks.

Two detectors with the same Python API and CLI.

Picket — fastIntent — accurate
what it isa signature rule, runs in your processthe full AI Cordon detector, over an API
speed100–200 documents a second on one CPU corea network round trip per document
false alarms~1 in 1 000 clean documents~1 in 10 000 clean documents (FPR 1e-4)
catchesknown phrasings: "ignore previous instructions", "reveal your system prompt"instructions in any wording, including ones hidden in markup
needsnothing: no model, no network, no keyan API key
your textnever leaves the process: Picket has no network codeis sent to the AI Cordon API to be judged
detailsdocs/picket.mddocs/intent.md

Picket: bulk scanning, ingest pipelines, mail gateways, offline use. Intent: where a missed injection is expensive. They can be combined: Picket on everything, Intent on what matters.

Quick start

$ pip install aicordon
$ aicordon picket scan letter.txt          # local, works right away
$ aicordon login                           # once: stores the Intent API key
$ aicordon intent scan letter.txt
from aicordon import picket, intent

fast = picket.load()
full = intent.load()          # key: api_key=..., AICORDON_API_KEY, or `aicordon login`

for det in (fast, full):
    rep = det.check(text)
    if rep.flagged:
        for f in rep.findings:
            print(det.title, f.threat, text[f.span[0]:f.span[1]])

A report lists findings with their positions. No findings does not mean no injection.

Both on the same five texts

python examples/compare.py runs both over examples/texts:

text                         Picket (local rule)              Intent (API)
01-obvious-email.txt         alarm  IPI/Secret.Reveal.C       alarm  score 0.98
02-support-ticket.txt        —                                alarm  score 0.98
03-release-notes.html        —                                alarm  score 0.99
04-warning-question.txt      —                                —      score 0.40
05-quarterly-report.txt      —                                —      score 0.11

Both flag 01. Texts 02 and 03 contain no known phrasing, so only Intent flags them. Text 04 is an ordinary question that contains "ignore" and "previous instructions"; neither detector flags it.

Licensing

Apache License 2.0 (LICENSE), including the Picket rule base. Contributions are accepted under the DCO: sign off your commits with git commit -s.

Get an Intent key at ai-cordon.com.

Downloads & popularity

Awaiting observations

No metric observations yet

Download counts and popularity will appear here as the collector receives them.

Declared dependencies 0

Native requirements
0 direct targetsNot calculated transitive count
No declared dependencies in this collected response

Declarations describe requirements; they are not a resolved dependency graph.

Distribution files

2 collected
aicordon-1.4.0-py3-none-any.whl

bdist_wheel · 517.66 KB · Python py3

Source file
aicordon-1.4.0.tar.gz

sdist · 1,337.1 KB · Python source

Source file

Repository

PENDING
aicordon/aicordon

Shared repository data · GitHub

License detected in repository
Not collected

Metadata history

Meaningful changes
Current collected state Current

Observed since 21 Oct, 10:16 UTC

No superseded metadata states collected. Unchanged observations do not create new revisions.

Record identity

package_version:e8ab28092cf0952888fd5136e04b4bdde5212f0d794db1003a6ba601e0d33749

Other collected versions

View all collected versions →