Skip to content
# Security checks
[Home](/en/ai)
[Catalog](/en/ai/catalog)
What ai_stp checks, which engines it uses, and which risks each check reduces.
## Pages
[Publishing and authoring](/en/ai/docs/authoring)
[CLI commands](/en/ai/docs/commands)
[Supported harnesses](/en/ai/docs/harnesses)
[Overview](/en/ai/docs)
[Quickstart](/en/ai/docs/quickstart)
[Security checks](/en/ai/docs/security-checks)
[Trust and safety](/en/ai/docs/trust)
[Catalog](/en/ai/docs/catalog)
[CLI](/en/ai/docs/cli)
[Install telemetry](/en/ai/docs/cli/telemetry)
[agent](/en/ai/docs/components/agent)
[command](/en/ai/docs/components/command)
[hook](/en/ai/docs/components/hook)
[Components](/en/ai/docs/components)
[instruction](/en/ai/docs/components/instruction)
[mcp](/en/ai/docs/components/mcp)
[plugin](/en/ai/docs/components/plugin)
[setting](/en/ai/docs/components/setting)
[skill](/en/ai/docs/components/skill)
[Concepts](/en/ai/docs/concepts)
[Publishing](/en/ai/docs/publishing)
[Setups](/en/ai/docs/setups)
[Troubleshooting](/en/ai/docs/troubleshooting)
[Trust and safety](/en/ai/docs/trust-and-safety)
## Content
ai_stp runs a staged, non-executing safety suite before a public component can be treated as verified. A passed scan reduces known risk; it is not a guarantee that an artifact is harmless. Required checks block publication when they fail or cannot run. Optional checks produce visible warnings or incomplete coverage. ## Result states - **Passed** — the engine completed without a policy finding. - **Failed** — a blocking finding was detected; the catalog shows the sanitized reason. - **Warning** — a non-blocking finding needs review. - **Not run / degraded** — the engine did not produce a verdict; required coverage remains pending. - **Not applicable / skipped** — the check does not apply and is excluded from the percentage. ## Check inventory | Family | Checks | Method or technology | Risk reduced | | ------------------------- | --------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------- | | Integrity and provenance | `structure`, `digest`, `license`, `tags`, `source_repo` | Pydantic schemas, canonical serialization, SHA-256, repository/commit pinning | Tampered or misrepresented artifacts; OWASP A08 Software and Data Integrity Failures | | Safe extraction | `artifact_unpack`, `path_denylist` | Bounded archive extraction, path normalization, deny rules | Zip-slip, traversal, unsafe files; A01 Broken Access Control, A08 | | Secrets | `secrets_heuristic`, `secrets_gitleaks` | Owned pattern/entropy rules and [Gitleaks](https://github.com/gitleaks/gitleaks) | Embedded tokens, passwords and private keys; A02 Cryptographic Failures | | Prompt and hidden content | `pi_content_pack`, `content_hidden` | Owned prompt-injection and invisible-content rules | Prompt injection and covert instructions; OWASP LLM01 Prompt Injection, LLM02 Sensitive Information Disclosure | | Generic SAST | `sast_opengrep` | Owned rules executed with [Opengrep](https://github.com/opengrep/opengrep) | Injection, unsafe subprocess and code patterns; A03 Injection, A04 Insecure Design | | MCP and hooks | `mcp_config_static`, `hook_schema_static`, `hook_command_argv` | Schema validation, URL/transport policy, argv analysis | SSRF, command injection, excessive capability; A03, A10 SSRF, LLM06 Excessive Agency | | Agent skills | `skill_static_gate` | Owned rules plus [NVIDIA SkillSpector](https://github.com/NVIDIA/SkillSpector) and [Cisco Skill Scanner](https://github.com/cisco-ai-defense/skill-scanner) when available | Malicious instructions, exfiltration and undeclared permissions; LLM01, LLM02, LLM06 | | Language SAST | `shell_obfuscation`, `sast_shellcheck`, `sast_bandit`, `sast_gosec`, `sast_eslint_security` | [ShellCheck](https://github.com/koalaman/shellcheck), [Bandit](https://github.com/PyCQA/bandit), [gosec](https://github.com/securego/gosec), [eslint-plugin-security](https://github.com/eslint-community/eslint-plugin-security) | Language-specific injection and insecure coding patterns; A03, A04 | | Dependencies | `sca_osv`, `sca_pip_audit`, `sca_govulncheck`, `sca_cargo_audit`, `sca_cargo_deny`, `sca_npm_audit` | [OSV-Scanner](https://github.com/google/osv-scanner), [pip-audit](https://github.com/pypa/pip-audit), [govulncheck](https://github.com/golang/vuln), [cargo-audit](https://github.com/rustsec/rustsec/tree/main/cargo-audit), [cargo-deny](https://github.com/EmbarkStudios/cargo-deny), native npm audit | Known vulnerable or prohibited dependencies; A06 Vulnerable and Outdated Components, LLM05 Supply Chain Vulnerabilities | | Documents | `document_pdf` | Static PDF action, JavaScript and suspicious-string inspection | Active document content and embedded prompt injection; A03, LLM01 | | Malware | `malware_clamav`, `malware_yara` | [ClamAV](https://github.com/Cisco-Talos/clamav), [YARA](https://github.com/VirusTotal/yara) | Known malware and policy signatures; A08 | | Setups | `setup_pin_aggregate` | Exact component pins and aggregate component evidence | A setup hiding an unsafe or unverified dependency; A06, A08, LLM05 | Checks are selected by component kind, detected languages and files, and the `minimal`, `standard`, or `strict` profile. External CLI engines run only when the platform enables them; an unavailable engine never becomes a pass. ## Why a check failed The expanded catalog view shows a sanitized reason next to every failed, warning, degraded, or not-run check. Sensitive values, secret material and local paths are never exposed. Use the check identifier when reporting an issue to the component author. The normative policy is maintained in `docs/contracts/validation-policy.md`; the catalog page is its reader-oriented projection.
ai_stp