Probe actor¶
The probe_actor package runs scans against an LLM endpoint described by an
HTTP spec.
Fuzzer¶
agentic_security.probe_actor.fuzzer is the scan engine:
generate_prompts— yield prompts from a list or async sourceget_modality_adapter— wrap the spec for image or audio endpointsprocess_prompt/process_prompt_batch— send a prompt and score the replyperform_single_shot_scan— one prompt at a timeperform_many_shot_scan— many-shot jailbreak conversationsscan_router— pick the scan mode from configuration
perform_single_shot_scan is an async generator; it needs a request factory
(typically an LLMSpec) plus budget and dataset settings, not a bare prompt
string.
from agentic_security.http_spec import LLMSpec
from agentic_security.probe_actor.fuzzer import perform_single_shot_scan
spec = LLMSpec.from_string(open("spec.http").read())
async for event in perform_single_shot_scan(spec, max_budget=1000):
print(event)
Refusal checks¶
There is no check_refusal helper. Use refusal_heuristic(response) in
agentic_security.probe_actor.refusal, which runs the detectors enabled under
[detectors] in agentic_security.toml.
from agentic_security.probe_actor.refusal import refusal_heuristic
refusal_heuristic("I'm sorry, I can't help with that.")
See refusal classifier plugins to add a custom detector.