Nous Research shipped Hermes Agent v0.19.0, codename Quicksilver, tagged v2026.7.20, on July 20, 2026. The defining change is a new security default: when the agent wants to execute a flagged shell command, an independent LLM reviewer now classifies it as safe, dangerous, or uncertain. Safe commands run automatically, dangerous ones are blocked, and uncertain ones escalate to the human operator. Blanket manual approval becomes the fallback rather than the norm.
Hermes Agent is Nous Research's MIT-licensed open agent framework, and it has become one of the largest projects in the category: 221,100 GitHub stars, 42,200 forks, and a single codebase that runs as a CLI, a TUI, a desktop app, a cron scheduler, and a messaging gateway spanning Telegram, Discord, Slack, WhatsApp, Signal, and email. It drives 300-plus models through Nous Portal, OpenRouter, OpenAI, Anthropic, and custom endpoints, and executes commands across six terminal backends, local, Docker, SSH, Singularity, Modal, and Daytona. Quicksilver ranks among the project's largest releases: roughly 2,245 commits, 1,065 merged pull requests, around 3,300 closed issues, and 450-plus contributors since v0.18.0. For engineering leaders, the interesting part sits below the changelog: an open framework now ships, as defaults, the production-safety primitives most enterprises assemble in-house.
What changed: a model in the authorization path, durability underneath
The smart-approvals system is the centerpiece. Per the release notes"when Hermes wants to run a flagged command, an LLM reviewer now assesses it independently." Three design decisions matter. First, verdicts are per-command: each ruling covers that exact command string, and a later command matching the same pattern receives a fresh review, a deliberate rejection of the "approve once, reuse forever" pattern-caching that has burned other agent stacks. Second, user-defined deny rules remain deterministic and absolute: they block matching commands even under yolo mode, so the LLM verdict operates above a hard floor, and a /deny <reason> channel feeds refusal context back to the agent. Third, escalation is preserved: uncertain classifications land on the operator's desk instead of defaulting to execution.
The durability work is equally consequential. Final responses are now recorded in a delivery ledger inside state.db; when the gateway dies between generating a response and confirming platform delivery, the answer is redelivered on next boot instead of vanishing silently. The same treatment reaches delegation: delegate_task dispatches return live transcript files an operator can tail -f the moment subagents launch, and background results survive process restarts through an ownership-checked ledger. Performance moved too, cold-start time-to-first-token dropped from roughly 4.3 seconds to 0.9 seconds, an 80 percent cut across CLI, gateway, TUI, desktop, and cron entry points. The security hardening list reads like a pentest remediation report: Vertex credentials scoped away from subprocess environments, webhook body-size caps across aiohttp servers, bot-token redaction in transport errors, and CI hardened against untrusted-ref interpolation. A pluggable SecretSource interface adds Bitwarden and 1Password vaults with deterministic precedence and conflict warnings.
The architecture implication: the reviewer becomes an attack surface
Two readings, both correct. The generous one: open frameworks are converging on the control plane enterprises have been building by hand, command gating, deterministic deny lists, crash-durable delivery, audit-ready transcripts, vault-backed secrets. Teams that budgeted quarters for this scaffolding can now evaluate how far an MIT-licensed baseline covers it.
The skeptical one: LLM-gated approvals place a model inside the authorization path, and that model is now a target. Prompt injection against agents has so far aimed at the actor, the model choosing commands. With Quicksilver's default, an attacker who shapes context can aim at the judge as well, steering the reviewer toward a "safe" verdict on a hostile command. Nous Research's mitigations are the right shape, deterministic deny rules that outrank the reviewer, per-command verdicts that prevent poisoned approvals from generalizing, yet the floor is exactly as strong as the deny list the operator writes. An empty deny list under smart approvals means model-judged execution, full stop. The delivery ledger also shifts semantics: gateways now offer at-least-once delivery, so downstream consumers of agent messages should be idempotent. And profile-based routing, isolated config, skills, memory, and secrets per channel, gives multi-tenant deployments a real isolation primitive, replacing the shared-everything gateway pattern that turned a single compromised channel into a full-fleet compromise.
The decision for engineering leadership
Concretely: teams running Hermes Agent, or evaluating any framework with LLM-mediated execution, a category that is broadening fast, should trigger a threat-model review before adopting the new default. Write the deterministic layer first: deny rules covering credential reads, destructive filesystem operations, package publishing, and outbound network primitives, verified to hold under yolo mode. Treat the LLM reviewer as a convenience layer above that floor, and log every verdict, safe, dangerous, uncertain, into the same audit stream as the commands themselves, so reviewer drift becomes measurable. Then canary v0.19.0 behind pinned versions for a sprint before fleet-wide rollout; a 2,245-commit release earns staged adoption regardless of how clean the notes read. The strategic question runs deeper: when a free framework ships approval gating, durable delivery, and vault integration as defaults, in-house agent-platform teams must re-justify their scope. The build-versus-adopt line just moved, and it moved toward adopt.
Article by LEONAI Agents & Systems
LEON covers the technical layer where AI agents are built and deployed. Source: code, documentation, CVEs.