Verdict: Hermes Agent v0.19.0 — the "Quicksilver Release" shipped July 20, 2026 by Nous Research — is the first open-source AI agent release where the agent wakes up in under a second, judges its own risky commands before running them, and keeps working through a crash. If you already run Hermes, update today (hermes update); if you don't, this is the release that finally makes a self-hosted agent feel as instant as a hosted chatbot, without giving up your model choice or your data. The headline is an ~80% cold-start cut from ~4.3s to ~0.9s (GitHub release notes) — but the real shift is that Hermes quietly closed the three gaps that made self-hosted agents painful to actually use: latency, babysitting approvals, and silent job loss.
Last verified: 2026-07-25 · One-line verdict: update today — sub-second start, smart approvals, crash-proof delivery.
- Cold-start time-to-first-token dropped from ~4.3s to ~0.9s (~80% cut) across CLI, TUI, desktop, gateway, and cron.
- Smart approvals are now the default: an independent LLM reviews flagged commands; your deny rules hold even in full-auto mode.
- A durable delivery ledger in
state.dbredelivers finished responses after a crash — no more silent job loss on Telegram/Discord/Slack.- One gateway can now route different channels to different profiles (each with isolated skills, memory, secrets).
- New providers: Fireworks AI, DeepInfra; new models: GPT-5.6, Grok 4.5 (GA), Kimi K3, Claude Sonnet 5, and Tencent HY3 (Hunyuan 3) GA.
- Pricing/limits note: Hermes itself is free and MIT-licensed. Running it costs the underlying LLM API calls you point it at — the official docs cite a $5/month VPS as a viable host.
What is the Hermes Agent v0.19 Quicksilver release?
Hermes Agent v0.19.0 is the July 20, 2026 release of Nous Research's open-source self-improving AI agent (GitHub). The codename "Quicksilver" refers to its headline feature: an approximately 80% reduction in cold-start latency (time-to-first-token), from ~4.3 seconds down to ~0.9 seconds, applied uniformly across every surface Hermes runs on — the CLI, the terminal UI, the native desktop app, the messaging gateway, and cron-scheduled jobs (release notes).
It is also a very large release by raw engineering scale: ~2,245 commits, ~1,065 merged pull requests, ~3,300 issues closed, and 450+ contributors in the window since v0.18.0 "The Judgment Release" (release notes). For comparison, that's roughly 30% more commits than v0.18.0 and the largest release window in the project's history by contributor count.
Underneath the speed work sits three quieter but higher-leverage changes: an LLM-reviewed approval layer that's on by default, a durable delivery ledger that survives gateway crashes, and a profile-routing system that turns one gateway into a fleet of specialist agents. We treat each as a separate upgrade below — they each fix a distinct failure mode of self-hosted agents.
How much faster is v0.19, and what does "80% faster" actually measure?
"80% faster" measures time-to-first-token on cold start — the gap between you pressing send and the first word appearing — not end-to-end task completion time. End-to-end time still depends mostly on which LLM you point Hermes at.
Before v0.19, every cold start showed an "Initializing agent..." phase that consumed roughly 4.3 seconds on every platform, on every first message of a session. Teknium's optimization (PRs #59332 and #59389) brought this down to ~0.9 seconds — a 79% cut, with no configuration changes required (release notes).
The fix applies uniformly: the agent now reaches first-token in under a second whether you're running it as a CLI on your laptop, a TUI in a remote SSH session, the native desktop app, a server-hosted gateway answering Telegram/Discord/Slack, or a cron job that bootstraps fresh on each tick.
There are two adjacent speed wins worth knowing about because they compound with the cold-start fix:
- Reasoning models stream thinking live by default. Earlier versions could appear frozen for 20–30 seconds when a reasoning model thought before answering; in v0.19 the response box paints per-token as the model reasons, instead of per-line (release notes).
- The desktop app got ~20 targeted performance PRs — reported 14× faster markdown splitting (incremental lexing instead of re-parsing on every token), virtualized diff review pane, and eliminated session-switch layout thrash (release notes).
Caveat: these are vendor-reported figures from Nous Research's own changelog, not an independent benchmark, and "cold start" specifically measures time-to-first-token. The full time to finish a job still depends on the model you connect.
How do smart approvals work, and why are they the default now?
In v0.19, when the agent wants to run a flagged command, an independent LLM reviewer assesses that exact command before it executes, instead of asking you to manually approve each one. You can still switch to fully manual approval, or to full-auto ("yolo") mode — but smart approval is the default.
What this means in practice:
- The reviewer is a separate model call, not the agent judging itself. Each verdict covers only that specific command, not a blanket permission.
- You can define deny rules that block commands even in full-auto mode, with
/deny <reason>telling the agent why you refused — so it learns the boundary. - The default gives you "the speed of autonomy with brakes you control" — you can leave Hermes running unattended without hand-approving every unfamiliar shell command, but a hard-coded deny rule still blocks anything you never want it to touch.
This is the upgrade that matters most if you've ever left an agent running overnight and worried about what it would do in the background. Manual approvals were friction; full-auto was risk. Smart approvals split the difference: an AI second brain watches the first one, your deny rules hold even when no human is watching, and you still get to flip the switch to fully manual or fully automatic.
We've written about the broader pattern of how to run Hermes Agent for free elsewhere — if you're new to the agent, that setup guide pairs well with this release overview.
What is the delivery-obligation ledger and why does it matter?
v0.19 writes every agent's final response into a durable ledger inside state.db. If the gateway crashes, the connection drops, or the host reboots mid-delivery, the owed response is redelivered automatically on the next boot. This closes what was previously a silent P1 loss window across every messaging channel — Telegram, Discord, Slack, WhatsApp, and the rest (release notes).
Before this, the failure mode was invisible: you'd hand the agent a long-running job, close your laptop, come back hours later, and find the job had finished but the final answer never arrived because the gateway died in the last second. You'd have no signal that anything went wrong. With the ledger, the work isn't lost — it's queued and redelivered when Hermes next boots.
This pairs with two related durability upgrades:
- Live subagent transcripts. When the main agent delegates to a subagent via
delegate_task, the dispatched task returns a live transcript file you cantail -fto watch it think in real time. - Durable background delegation. Subagent results are now restored through an ownership-checked ledger if a process restarts — a delegated task that was 90% done when the process died no longer has to start over.
How does profile routing turn one gateway into a fleet?
A single Hermes gateway sharing one bot token can now route specific guilds, channels, or threads to different agent profiles — and each profile is a fully separate agent with its own config, skills, memory, and secrets (release notes).
Practically: one gateway, one bot, but a Telegram channel about SEO talks to a specialist SEO agent, a Discord channel about ops talks to an ops agent, and a Slack channel about writing talks to a writing agent. They don't share memory or secrets unless you choose to share them.
Two side-effects make this safer than it sounds:
- Misconfigured profile isolation. A broken or misconfigured profile can no longer take down the whole gateway — the other profiles keep serving.
- Per-profile model routing. Each profile can use a different LLM API — so you can route the cheap, fast jobs through Hunyuan 3 or a free OpenRouter model, and reserve a frontier model for the profile that actually needs it. For the cost math on that kind of routing, our Gemini Flash vs Gemini Flash-Lite routing playbook walks through the same "start cheap, step up only when output breaks" pattern in a different context.
This is the upgrade that matters most if you've been running multiple bots to keep different specializations separate. One gateway now does the work of several, and the failure domain shrinks to per-profile.
Which new models and providers can you use with v0.19?
v0.19 added two first-class providers and several GA (generally available) models:
| Addition | Type | What it is | Source |
|---|---|---|---|
| Fireworks AI | Provider | First-class inference provider | Release notes |
| DeepInfra | Provider | First-class inference provider | Release notes |
| GPT-5.6 (Sol/Terra/Luna + Pro) | Model GA | OpenAI frontier, three sizes + Pro variants | Release notes |
| Grok 4.5 | Model GA | xAI frontier (now generally available) | Release notes |
| Moonshot Kimi K3 | Model GA | Long-context model from Moonshot AI | Release notes |
| Claude Fable 5 / Claude Sonnet 5 | Model GA | Anthropic models, GA in v0.19 | Release notes |
| Tencent HY3 (Hunyuan 3) | Model GA | 295B-parameter Mixture-of-Experts from Tencent, free API endpoint exists | Release notes |
| LM Studio JIT | Local | Just-in-time model loading for local setups | Release notes |
There are also per-model reasoning effort tiers — new max and ultra levels on the top GPT-5.6 and Codex tiers — and per-slot effort overrides inside Mixture-of-Agents presets, so an auxiliary model can run at a different reasoning depth than the primary.
If you want to use free models specifically with Hermes, our complete guide to running Hermes Agent for free with Hunyuan 3 covers the exact config — and v0.19's profile routing means you can now run that free Hunyuan endpoint on one profile and a paid frontier model on another, in the same gateway.
How do you handle secrets in v0.19 (without leaving plaintext keys on disk)?
Three changes address the long-standing problem of API keys sitting in plaintext ~/.hermes/.env:
- Native password manager integration. A pluggable
SecretSourceinterface fetches secrets from Bitwarden and 1Password (op://references) at load time. You can use multiple vaults simultaneously, with deterministic precedence, conflict warnings, and per-variable provenance (release notes). - Redact-on-export.
hermes sessions exportnow writes Markdown, Quarto, HTML, prompt-only, and Hugging Face-ready trace formats — with an opt-in--redactpass that scrubs secrets before a session leaves your machine. Previously, sharing a session with a teammate meant copy-pasting and hoping you'd stripped the keys. - Credential-hardening sweep. Google Vertex credentials are now scoped away from subprocess environments (so child processes can't inherit them), media/vision/image-gen local-file reads route through a shared credential-read guard, webhook body sizes are capped across every server component, and the redactor now handles Fireworks token prefixes and bot tokens in Telegram errors (release notes).
The principle: the more providers an agent can reach, the more places API credentials can leak if they're handled carelessly. Quicksilver expanded provider support and tightened credential handling in the same release — on purpose.
How do you update to v0.19?
One command. From the official updating docs:
hermes update
This pulls the latest code from main, updates dependencies, and prompts you to configure any new options added since your last update. Output is mirrored to ~/.hermes/logs/update.log so you can recover state if your SSH session drops mid-install — the update now ignores SIGHUP, so closing your terminal no longer kills it.
You can also update from any messaging platform by sending /update to your own bot — the bot briefly goes offline (5–15 seconds) and resumes.
If you installed manually (not via the quick installer), the docs give the equivalent path: git pull origin main, uv pip install -e ".[all]", then hermes config check and hermes config migrate to interactively add any new config options.
To confirm your version after updating:
hermes version
Compare against the latest tag on the GitHub releases page.
One caution worth knowing: rolling back to a previous tag (git checkout vX.Y.Z) can cause config incompatibilities if new options were added — run hermes config check after any rollback and remove unrecognized options from config.yaml if you hit errors.
What else shipped in v0.19?
Three smaller upgrades that aren't headline material but compound the main gains:
- Terminal billing.
/subscriptionand/topupcommands open the full billing flow inside the TUI/CLI — see your plan, preview upgrade costs, apply changes with undo. The desktop app got a matching billing tab. No more context-switching to a web dashboard to manage your Nous Portal subscription. - Safer-mode boot ("panic button"). A safe mode boots Hermes with every customization off, useful when a config is broken and you need to get back to a known-good state.
- Nicer inline buttons on Telegram, Discord, and Matrix for everyday interactive prompts.
And one upgrade worth flagging for users coming from another agent: the existing hermes claw migrate command imports an OpenClaw config into Hermes, so you can switch harnesses without redoing your setup.
Note: v0.19 is the first release where Nix is no longer an explicitly supported install path (it's now best-effort only) — if you installed via a Nix flake, manage updates through the Nix package manager (nix flake update hermes-agent), not hermes update.
Hermes Agent v0.18 vs v0.19: what changed?
| Area | v0.18 (Judgment) | v0.19 (Quicksilver) |
|---|---|---|
| Cold-start time-to-first-token | ~4.3s | ~0.9s (~80% cut) |
| Reasoning model UX | Could appear frozen 20–30s during thinking | Live per-token reasoning streaming by default |
| Command approvals | Manual per command, or full-auto with no brakes | Smart approvals (LLM reviewer) default; deny rules hold in auto |
| Background job durability | Silent loss if gateway crashed mid-delivery | Durable delivery ledger in state.db; redelivers on next boot |
| Subagent delegation | Background fan-out subagents | Live transcript tail -f; durable ownership-checked restoration |
| Gateway routing | One gateway, one agent per bot token | One gateway → many profiles, each isolated |
| Secrets | Plaintext .env (Bitwarden added in v0.15 for some flows) |
Native Bitwarden + 1Password SecretSource; --redact session export |
| Billing | Dashboard only | /subscription and /topup in terminal |
| New model providers | Google Vertex AI OAuth2, Mixture-of-Agents | Fireworks AI, DeepInfra; GPT-5.6, Grok 4.5 GA, Kimi K3, Claude Sonnet 5, Tencent HY3 GA |
| Reasoning controls | Per-model | Added max / ultra tiers; per-task effort overrides in MoA |
| Release scale | ~1,720 commits, ~1,000 PRs, 370+ contributors | ~2,245 commits, ~1,065 PRs, ~3,300 issues closed, 450+ contributors |
| Install path note | Nix still supported | Nix → best-effort only |
Sources: v0.19.0 release notes, v0.18.0 release notes, official docs.
What this means for you
If you already run Hermes Agent, the only decision is when to update — and the answer is now. Sub-second cold start removes the single biggest daily friction (staring at "Initializing agent..." for 4+ seconds every session), and smart approvals as default mean you can finally leave an unattended agent running without babysitting it or surrendering all brakes. Run hermes update, then hermes config migrate to pick up any new options.
If you've been comparing self-hosted agents to hosted chatbots, v0.19 is the release that closes the "but it feels slow" objection. A hosted assistant like Claude or ChatGPT is still simpler if you only want a chat tab — they don't require you to pick a model, host a process, or manage memory. But if any of control, privacy, model choice, messaging integration, or long-running background work matter to you, the latency tax that used to separate self-hosted from hosted is now mostly gone. Our how to run Hermes Agent for free with Hunyuan 3 guide shows the path from a fresh install to a working free setup in ~15 minutes — and v0.19 makes that setup feel as instant as a paid one.
If you want to run agents locally at the OS level, the same cold-start thinking now shows up across the ecosystem — for a broader tour of running models on hardware you own (CPU and GPU, llama.cpp and vLLM), see our no-hype guide to running local AI on your computer. And if your agent work is mostly coding, our free Claude Code 2026 setup guide covers how to point an agentic CLI through cheaper routes without paying the sticker price.
The honest framing: agents are not going to stabilize into a single finished product any time soon. A release that ships 2,245 commits in one window is moving fast. The people learning the moving target now are the ones who'll be unreachable when it settles — and v0.19 makes "learning it" a lot less tedious, because the agent finally answers back in roughly a second instead of leaving you looking at a blank screen.
FAQ
Q: What is the Hermes Agent Quicksilver release? A: Hermes Agent v0.19.0, codenamed "Quicksilver," released July 20, 2026 by Nous Research. The headline is an ~80% reduction in cold-start time-to-first-token, from ~4.3 seconds to ~0.9 seconds, applied across every platform Hermes runs on (GitHub release notes).
Q: Is Hermes Agent free to use? A: The software itself is free and open-source under the MIT license, with no per-seat fee. Running it costs money in two places: the compute you host it on (the official docs cite a $5-a-month VPS as viable) and the underlying LLM API calls it makes — which vary by which model you point it at. Free model endpoints exist (Tencent HY3 / Hunyuan 3 has a free API endpoint); see our free Hermes setup guide.
Q: How do I update Hermes Agent to v0.19?
A: Run hermes update. This pulls the latest code from main, updates dependencies, and prompts you to configure any new options added since your last update. Output is mirrored to ~/.hermes/logs/update.log. You can also send /update from Telegram, Discord, Slack, WhatsApp, or Teams (official updating docs).
Q: Does "80% faster" mean tasks finish 80% faster? A: No. The ~80% cut measures time-to-first-token on cold start — the gap between pressing send and the first word appearing. Total end-to-end task completion time still depends primarily on the underlying LLM you connect and how long the model takes to produce the answer.
Q: What are "smart approvals" and are they on by default?
A: Yes, by default. When the agent wants to run a flagged command, an independent LLM reviewer assesses that exact command before it executes — instead of asking you to manually approve each one. You can still switch to fully manual or full-auto/yolo mode. You can also write deny rules that block specific commands even in full-auto mode, with /deny <reason> telling the agent why (release notes).
Q: What happens to my running job if Hermes crashes mid-delivery?
A: In v0.19, final responses are written to a durable ledger in state.db and redelivered on the next boot if the gateway dies mid-delivery. The same durability applies to delegated subagent tasks through an ownership-checked ledger; background delegation no longer has to start over after a crash (release notes).
Q: Can one Hermes gateway run multiple different agents now? A: Yes. v0.19 adds profile-based message routing: a single gateway sharing one bot token routes specific guilds, channels, or threads to different agent profiles, each with isolated config, skills, memory, and secrets. A misconfigured profile can no longer take down the whole gateway (release notes).
Q: Which new models and providers landed in v0.19? A: New first-class providers are Fireworks AI and DeepInfra. New GA models include GPT-5.6 (Sol/Terra/Luna plus Pro variants), Grok 4.5 (GA), Moonshot Kimi K3, Claude Sonnet 5, and Tencent HY3 (Hunyuan 3) GA. LM Studio also got just-in-time model loading for local setups (release notes).

Discussion
0 comments