Install any skill in seconds. Free to start, no credit card required.
Get Started Free →deonmenezes/detection-breadth
When and how to reach for the companion detectors -- bandit (Python SAST) and trivy (deps + secrets + IaC misconfig) -- alongside the core semgrep/CodeQL/osv/trufflehog toolchain
Passed 15 of 21 test cases with the skill, and 9 of 21 without it.
and 6 more in the full report
8 fixed8 passed either way5 still failing1 broke
Tokens, turns and time describe resource use, not a dollar price.
The instructions your model reads when the skill loads.
The core Detect toolchain is semgrep (broad SAST), CodeQL (dataflow SAST), osv-scanner (SCA), trufflehog (secrets), and program-analysis (AST/taint/SMT). Two companion servers widen coverage; reach for them deliberately, not reflexively.
bandit_scan (mantis_bandit): Python-specific SAST. Use it on Python targets in addition to semgrep -- bandit encodes Python-idiom checks (e.g. subprocess with shell=True, weak crypto, yaml.load, flask debug) that a generic ruleset can under-cover. Every hit is a candidate; bandit's own severity/confidence describe rule confidence, not demonstrated impact, so do not report them as final severity. Default confidence to low for full recall on a first sweep.trivy_scan (mantis_trivy): composition analysis in one pass -- vulnerable dependencies, embedded secrets, and IaC (Dockerfile/Terraform/k8s) misconfigurations. Use it to add container/IaC coverage that osv-scanner (deps only) and trufflehog (secrets only) don't reach. A vulnerable dependency being present does not mean its vulnerable code path is reachable -- that's a separate question for the reachability stage. Secret values are never returned, only rule/line references.Both degrade gracefully: if the underlying binary isn't installed they report available: false. When that happens, say so explicitly rather than claiming coverage you didn't get, and fall back to the core toolchain. Do not double-count: if trivy and osv-scanner both flag the same advisory for the same package, it's one candidate, not two.
Every result from either tool is a candidate in the findings lifecycle -- register it via mantis_findings finding_create, then trace reachability and attacker-simulate before it can become confirmed (see the mantis-pipeline and findings-spine skills).
test cases passed, vs 9 / 21 without
More skills from the same source and nearby in the registry, with their headline benchmark lift.