Category comparison

Runtime Guardrails vs Code and Dependency Scanners

This page compares three categories of developer security tooling as they apply to AI coding agents. Runtime guardrails (like HOL Guard) intercept actions before execution. Static code analyzers review source patterns. Dependency scanners match package versions against known CVE databases. They protect different things at different times and are complementary, not interchangeable.

Last reviewed: 2026-07-22. This comparison describes tool categories, not specific vendors. Capability descriptions are general to each category.

CategoryRuntime GuardrailsCode ScannersDependency Scanners
Intervention pointBefore execution, at runtimeAfter authoring, pre-commit or CIAfter publish, periodic or on install
Protected actionsShell commands, file reads, writes, MCP callsSource code patterns and data flowsPackage versions in lockfiles
Secret accessBlocks reads of .env, .npmrc, SSH keys before accessFlags hardcoded secrets in sourceNo direct secret-access protection
MCP and tool callsIntercepts and approves MCP registrations and tool callsNo runtime tool-call interceptionNo runtime tool-call interception
Dependency CVEsCan block installs of known-vulnerable packagesMay flag vulnerable imports if configuredPrimary capability: CVE matching
Source-code analysisNo static analysis of source patternsPrimary capability: taint, injection, code smellNo source-code analysis
Offline behaviorFully functional without networkWorks offline after rule downloadRequires CVE database access
Audit evidenceApproval receipts with command, hash, and timestampFindings report per scanVulnerability list per scan
LimitationsDoes not analyze source code staticallyCannot intercept runtime actionsCannot intercept runtime actions or read source
Best-fit workflowTeams using AI coding agents who need real-time controlCode review automation and secure coding enforcementSupply-chain risk management and patch prioritization

Which approach do you need?

Runtime guardrails are for teams whose primary risk is AI agents taking actions (reading secrets, running commands, modifying configs) that a human has not approved. They are the only category that can prevent a harmful action before it happens.

Code scanners are for teams who want to catch insecure code patterns before merge. They complement runtime guardrails by catching issues in the source itself.

Dependency scanners are for teams who need to know whether their installed packages contain known vulnerabilities. They are essential for supply-chain risk management but cannot protect against runtime actions.

Most teams using AI coding agents benefit from all three layers. Runtime guardrails are the newest category and the one most directly relevant to the risks AI agents introduce.

Questions

Are runtime guardrails a replacement for code or dependency scanners?

No. They protect different things at different times and are complementary, not interchangeable. Runtime guardrails intercept supported actions before execution. Static code analyzers review source patterns. Dependency scanners match package versions against known CVE databases.

Does a code, dependency, or plugin catalog scan mean an AI coding agent is safe to run?

No. A scan is not a safety guarantee and cannot intercept runtime actions. The current public catalog scanner is registry-broker-fallback static scoring, not a live exploit test. About 205 catalog plugins are not Registry Broker agent counts.

Does HOL Guard replace SCA, SAST, or mcp-scan?

No. HOL Guard is local-first runtime control on the developer machine for shell, secrets/file reads, MCP server change, and plugin/skill install. It does not replace SCA, SAST, mcp-scan, or a complete supply-chain security program. Runtime benchmark fixtures are modeled, not live attack measurements.

Can code or dependency scanners intercept an agent reading secrets or calling MCP tools?

No. Those scanners do not intercept runtime tool calls. HOL Guard can require approval at supported local action boundaries. It is not a complete prompt-injection preventer and does not stop the model from following instructions already in context.

Sources