Skip to main content
Substring rules live in internal/rules/catalog_rules.yaml: data, not code. Adding one is a YAML entry plus a corpus fixture. Contributing →

Attack paths (AP001–AP006)

Conclusions about compositions, not observations. Each names two capabilities, the evidence for both, the path hop by hop, the impact and a remediation. Severity and confidence rules →

Scan rules (MCP)

Trace rules (AT)

Evaluated on recorded sessions; no proxy or runtime dependency. Stateful rules (AT011 error burst, AT013 mass enumeration, AT015 cross-server chain) track state across the whole session.

Agent hooks (HOOK000–HOOK005)

Severity

--fail-on (scan and trace) accepts these values. aspex scan --explain expands every High and Critical finding into WHY, EXPLOIT, IMPACT and CONFIDENCE.

Framework coverage

LLM01 Prompt Injection · LLM02 Sensitive Information Disclosure · LLM03 Supply Chain · LLM06 Excessive Agency · LLM08 Excessive Permissions

Contributing a rule

About 15 minutes: a YAML entry in catalog_rules.yaml (or a check function in internal/rules / internal/trace for stateful rules), a positive fixture that must fire and a negative fixture that must not, and a doc entry above. CONTRIBUTING.md →