chore(deps): update dependency nousresearch/hermes-agent to v2026.4.30 #17
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "renovate/nousresearch-hermes-agent-2026.x"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
This PR contains the following updates:
v2026.4.23→v2026.4.30Release Notes
NousResearch/hermes-agent (NousResearch/hermes-agent)
v2026.4.30: Hermes Agent v0.12.0 (2026.4.30)Compare Source
Hermes Agent v0.12.0 (v2026.4.30)
Release Date: April 30, 2026
Since v0.11.0: 1,096 commits · 550 merged PRs · 1,270 files changed · 217,776 insertions · 213 community contributors (including co-authors)
✨ Highlights
Autonomous Curator —
hermes curatorruns as a background agent on the gateway's cron ticker (7-day cycle default). It grades your skill library, consolidates related skills, prunes dead ones, and writes per-run reports tologs/curator/run.json+REPORT.md. Archived skills are classified consolidated-vs-pruned via model + heuristic. Defense-in-depth gates protect bundled/hub skills from mutation. Unified underauxiliary.curator— pick the curator's model inhermes model, manage it from the dashboard.hermes curator statusranks skills by usage (most-used / least-used). (#17277, #17307, #17941, #17868, #18033)Self-improvement loop — substantially upgraded — The background review fork (the core of Hermes' self-improvement: after each turn it decides what memories/skills to save or update) is now class-first (rubric-based rather than free-form), active-update biased (prefers the skill the agent just loaded), handles
references//templates/sub-files, and properly inherits the parent's live runtime (provider, model, credentials actually propagate). Restricted to memory + skills toolsets so it can't sprawl. Memory providers shut down cleanly. Prior-turn tool messages excluded from the summary so the fork sees a clean context. (#16026, #17213, #16099, #16569, #16204, #15057)Skill integrations — major expansion — ComfyUI v5 with official CLI + REST + hardware-gated local install, moved from optional to built-in by default (#17610, #17631, #17734). TouchDesigner-MCP bundled by default, expanded with GLSL, post-FX, audio, geometry, and 9 new reference docs (#16753, #16624, #16768 — @kshitijk4poor + @SHL0MS). Humanizer skill ports a text-cleaner that strips AI-isms (#16787). claude-design HTML artifact skill + design-md (Google DESIGN.md spec) + airtable salvage +
skill_manageedits inexternal_dirs+ direct-URL skill install +/reload-skillsslash command. (#16358, #14876, #16291, #17512, #16323, #17744)LM Studio — first-class provider — upgraded from a custom-endpoint alias to a full-blown native provider: dedicated auth,
hermes doctorchecks, reasoning transport, live/modelslisting. (Salvage of @kshitijk4poor's #17061.) (#17102)Four more new inference providers — GMI Cloud (first-class, salvage of #11955 — @isaachuangGMICLOUD), Azure AI Foundry with auto-detection, MiniMax OAuth with PKCE browser flow (salvage #15203), Tencent Tokenhub (salvage of #16860). (#16663, #15845, #17524, #16960)
Pluggable gateway platforms + Microsoft Teams — the gateway is now a plugin host. Drop-in messaging adapters live outside the core, and Microsoft Teams is the first plugin-shipped platform. (Salvage of #17664.) (#17751, #17828)
Tencent 元宝 (Yuanbao) — 18th messaging platform — native gateway adapter with text + media delivery. (#16298, #17424)
Spotify — native tools + bundled skill + wizard — 7 tools (play, search, queue, playlists, devices) behind PKCE OAuth, interactive setup wizard, bundled skill, surfacing in
hermes tools, cron usage documented. (#15121, #15130, #15154, #15180)Google Meet plugin — join calls, transcribe, speak, follow up. Realtime OpenAI transport + Node bot server, full pipeline bundled as a plugin. (#16364)
hermes -zone-shot mode +hermes update --check— non-interactivehermes -z <prompt>with--model/--provider/HERMES_INFERENCE_MODEL.hermes update --checkpreflight. Opt-in pre-update HERMES_HOME backup. (#15702, #15704, #15841, #16539, #16566)Models dashboard tab + in-browser model config — rich per-model analytics, switch main + auxiliary models from the dashboard. (#17745, #17802)
Remote model catalog manifest — OpenRouter + Nous Portal model catalogs are now pulled from a remote manifest so new models show up without a release. (#16033)
Native multimodal image routing — images now route based on the model's actual vision capability rather than provider defaults. (#16506)
Gateway media parity — native multi-image sending across Telegram, Discord, Slack, Mattermost, Email, and Signal; centralized audio routing with FLAC support + Telegram document fallback. (#17909, #17833)
TUI catches up to (and past) the classic CLI — LaTeX rendering (@austinpickett),
/reload.env hot-reload, pluggable busy-indicator styles (@OutThisLife, #13610), opt-in auto-resume of last session, expanded light-terminal auto-detection, session delete from/resumepicker withd, modified mouse-wheel line scroll, and a/mousetoggle that kills ConPTY's phantom mouse injection (@kevin-ho). (#17175, #17286, #17150, #17130, #17113, #17668, #17669, #15488)Observability + achievements plugins — bundled Langfuse observability plugin (salvage #16845) + bundled hermes-achievements plugin that scans full session history. (#16917, #17754)
TTS provider registry + Piper local TTS — pluggable
tts.providers.<name>registry; Piper ships as a native local TTS provider. (Closes #8508.) (#17843, #17885)Vercel Sandbox backend — Vercel sandboxes as an execute_code/terminal backend (@kshitijk4poor). (#17445)
Secret redaction off by default — default flipped to off. Prevents the long-standing patch-corruption incidents where fake secret-shaped substrings mangled tool outputs. Opt in via
redaction.enabled: truewhen you need it. (#16794)Cold-start performance — visible TUI cold start cut ~57% via lazy agent init (@OutThisLife), lazy imports of OpenAI / Anthropic / Firecrawl / account_usage, mtime-cached
load_config(), memoizedget_tool_definitions()with TTL-cachedcheck_fnresults, precompiled dangerous-command patterns. (#17190, #17046, #17041, #17098, #17206)Configurable prompt cache TTL —
prompt_caching.cache_ttl(5m default, 1h opt-in — cost savings for bursty sessions that keep cache warm). Salvage of #12659. (#15065)🧠 Autonomous Curator & Self-Improvement Loop
Curator — autonomous skill maintenance
hermes curatoras a background agent — runs on the gateway's cron ticker, 7-day cycle by default, umbrella-first prompt, inherits parent config, unbounded iterations (#17277 — issue #7816)logs/curator/run.json+REPORT.mdper cycle (#17307)hermes curator status— ranks skills by usage, shows most-used and least-used (#18033)auxiliary.curator— pick the model inhermes model, configure from the dashboard (#17868)logs/curator/directory, defer fire import (#17927)restore_skill(@0xDevNinja) (#17951)skill_managerefuses writes on pinned skills; pinning now blocks curator writes (#17562, #17578)bump_use()wired into skill invocation + preload + skill_view (salvage #17782) (#17932)Self-improvement loop (background review fork)
references/+templates/sub-files (#17213)🧩 Skills Ecosystem
Skill integrations — newly bundled or promoted
.env(#15838) (#16291)Skills UX
hermes skills install <url>(#16323)/reload-skillsslash command (salvage #17670) (#17744)hermes skills listshows enabled/disabled status (#16129)skill_managerefuses writes on pinned skills (#17562)skill_manageedits external_dirs skills in place (salvage #9966) (#17512, #17289)skill_view(#15376).archive/from skill index walk (salvage #17639) (#17931)google-workspaceshared HERMES_HOME helper + ship deps as optional extra (#15405)hermes-agentskill + docs site for Hermes questions (#16535)🏗️ Core Agent & Architecture
Provider & Model Support
New providers
/models(salvage of #17061 — @kshitijk4poor) (#17102)Model catalog
openai/gpt-5.5andgpt-5.5-proadded to OpenRouter + Nous Portal (#15343)deepseek-v4-proanddeepseek-v4-flashadded (#14934)qwen3.6-plusadded to Alibaba-supported models (#16896)Model configuration
prompt_caching.cache_ttl— 5m default, 1h opt-in (salvage #12659) (#15065)/fastwhitelist broadened to all OpenAI + Anthropic models (#16883)auxiliary.extra_body.reasoningtranslates into Codex Responses API (#17004)hermes fallbackcommand for managing fallback providers (#16052)Agent Loop & Conversation
child_timeout_secondsdefault bumped to 600s (#14809)/reload-mcpawareness — rebuild cached agents + prompt-cache cost confirmation (#17729)_toolsuffix tool-call emissions (#15124)json.JSONDecodeErrorinstead of treating as local validation error (#15107)tool_call.arguments(#15356)_copy_reasoning_content_for_api— cross-provider reasoning isolation (@Zjianru) (#15749)reasoning_contentfor DeepSeek/Kimitool_callsunconditionally (@Zjianru) (#15762)reasoning_contenton assistant turns (#16844) (#16892)get_tool_definitionsquiet_mode cache + dedup LCM injection (#17335) (#17889)hermes_toolsRPC calls fromexecute_code(#17770) (#17894, #17902)[SYSTEM:→[IMPORTANT:in all user-injected markers (dodges Azure content filter) (#16114)Compression
/compresswrapped in_busy_commandto block input during compression (#15388)_find_tail_cut_by_tokens(#16369)Session, Memory & State
tool_name+tool_callsin FTS5, with repair + migration (salvages #16866) (#16914)shutdown_memory_provideron gateway + CLI (#15165) (#16571)flush_memoriesentirely (#15696)Auxiliary models
max_tokensretry (#15633)📱 Messaging Platforms (Gateway)
New Platforms
Pluggable Gateway Platforms
Telegram
Discord
limitparameter to int beforemin()call (#16319)Slack
strict_mentionconfig — prevents thread auto-engagement (#16193)channel_skill_bindings— bind specific skills to specific Slack channels (#16283)Signal
Feishu / Mattermost / Email / Signal
Gateway Core
pre_gateway_dispatchhook — plugins can intercept before dispatch (#15050)pre_approval_request/post_approval_responsehooks (#16776)load_config()call against runtime exceptions (#16318)🔧 Tool System
Plugin-first architecture
pre_gateway_dispatchhook (#15050)pre_approval_request+post_approval_responsehooks (#16776)duration_msonpost_tool_call(inspired by Claude Code 2.1.119) (#15429)Browser
Execute code / Terminal
execute_code/ terminal (@kshitijk4poor) (#17445)task_ids to shared container (#16177)~/subpaths in wrappedcdcommands (#15394)LocalEnvironment._update_cwd(#17300)Image generation
TTS / Voice
tts.providers.<name>(#17843)Cron
hermes toolsconfig for the cron platform (#14798)workdir— project-aware cron runs (#15110)context_fromfield — chain cron job outputs (#15606)croniterto a core dependency (#17577)Web search
limitforweb_search(#16934)Maps
Approvals
ACP
API Server
/v1/runs/{run_id}/stop(salvage of #15656) (#15842)Nix
--rebuildin fix-lockfiles to bypass cached FOD store paths (#15444)extraPackagesnow actually works via per-user profile (#17047)🖥️ TUI
New features
/reload.env hot-reload — ported from the classic CLI (#17286)HERMES_TUI_THEME+ background hex (@OutThisLife) (#17113)/resumepicker withd(@OutThisLife) (#17668)/busy,/verbose(#16054)?in the input field (@ethernet8023) (#18043)Fixes
/mousetoggle command (@kevin-ho, WSL2 ghost-mouse fix) (#15488)🖱️ CLI & User Experience
New commands
hermes -z <prompt>— non-interactive one-shot mode (#15702)hermes -zwith--model/--provider/HERMES_INFERENCE_MODEL(#15704)hermes update --checkpreflight flag (#15841)hermes fallbackcommand for managing fallback providers (#16052)/busyslash command for busy input mode (#15382)/busyinput mode 'steer' as a third option (#16279)/btwas alias for/background(#16053)/reload-skillsslash command (salvage #17670) (#17744)/queue,/bg,/steerin agent-running placeholder (#16118)Setup / onboarding
/busyand/verbose(#16046)Update / backup
git pull(#16383)hermes update(opt-in, off by default) (#16539, #16566)checkpoints/from backups (#16572)Slash-command housekeeping
/provider,/planhandler, and clean up slash registry (#15047)persist_sessionplumbing + fix broken/btwmid-turn bypass (#16075)OpenClaw migration (for folks coming from OpenClaw)
~/.openclawresidue banner (#16327)openclawworkspace files fromagents.defaults.workspace(#16879)📊 Web Dashboard
--stopand--statusflags on the dashboard CLI (#17840)⚡ Performance
load_config()andread_raw_config()(#17041)get_tool_definitions()+ TTL-cachecheck_fnresults (#17098)🔒 Security & Reliability
redaction.enabled: true(#16794)[SYSTEM:→[IMPORTANT:in all user-injected markers (Azure content filter dodge) (#16114)mask_secrethelper; fix status.py DIM drift (#17207)/dev/ttyby opening it, not bare existence (#17024)🐛 Notable Bug Fixes
This window includes 360
fix:PRs. Selected highlights from across the stack:HINDSIGHT_TIMEOUTenv var (#15077)no_mcpin_save_platform_tools(#15607)definitionsrefs to$defsin input schemas — closes provider-side 400s[SYSTEM:markers so Azure's content filter stops flagging them (#16114)croniterpromoted to a core dependency (#17577)limitparameter coerced to int beforemin()call (#16319)The vast majority of the 360 fixes landed in the streaming/compression/tool-calling paths across all providers — DeepSeek, Kimi, Moonshot, GLM, Qwen, MiniMax, Gemini, Anthropic, OpenAI — alongside TUI polish (resize, scroll, sticky-prompt) and gateway platform-specific edge cases.
🧪 Testing & CI
scripts/run_tests.sh) held across this window📚 Documentation
skill_managewrites (#17578)hermes-agentskill (#16355)⚖️ Removed / Reverted
/provider+/planslash commands dropped (#15047)flush_memoriesremoved entirely (#15696)👥 Contributors
Core
Top Community Contributors (by merged PR count since v0.11.0)
restore_skillnested-archive fix (#17951)useactivity fix (#17953)Also contributing
Salvaged or co-authored work from @isaachuangGMICLOUD (GMI Cloud), earlier upstream PRs from the original author of each salvage chain, and a long tail of one-shot fixes, documentation nudges, and skill contributions from the community.
All Contributors (alphabetical, excluding @teknium1)
@0xbyt4, @0xharryriddle, @0xDevNinja, @0z1-ghb, @5park1e, @A-FdL-Prog, @aj-nt, @akhater, @alblez, @alexg0bot,
@alexzhu0, @AllardQuek, @alt-glitch, @amanning3390, @amanuel2, @AndreKurait, @andrewhosf, @Andy283, @andyylin,
@angel12, @AntAISecurityLab, @ash, @austinpickett, @badgerbees, @BadTechBandit, @Bartok9, @beenherebefore,
@beesrsj2500, @BeliefanX, @benbarclay, @benjaminsehl, @BlackishGreen33, @bloodcarter, @BlueBirdBack,
@briandevans, @brooklynnicholson, @bsgdigital, @buray, @bwjoke, @camaragon, @cdanis, @cgarwood82,
@charles-brooks, @chen1749144759, @chengoak, @ching-kaching, @Contentment003111, @crayfish-ai, @CruxExperts,
@cyclingwithelephants, @dandaka, @danklynn, @ddupont808, @dhabibi, @difujia, @dimitrovi, @dlkakbs,
@dontcallmejames, @EKKOLearnAI, @emozilla, @ericnicolaides, @Erosika, @ethernet8023, @exiao, @Feranmi10,
@flobo3, @foxion37, @georgeglessner, @georgex8001, @ghostmfr, @H-Ali13381, @HangGlidersRule, @harryplusplus,
@haru398801, @heathley, @hejuntt1014, @hekaru-agent, @helix4u, @Heltman, @HenkDz, @heyitsaamir, @hharry11,
@hhhonzik, @hhuang91, @HiddenPuppy, @htsh, @iamagenius00, @in-liberty420, @innocarpe, @irispillars, @iRonin,
@isaachuangGMICLOUD, @Ito-69, @j3ffffff, @jackjin1997, @jakubkrcmar, @Jason2031, @JayGwod, @jerome-benoit,
@johnncenae, @Kailigithub, @keiravoss94, @kevin-ho, @knockyai, @konsisumer, @kshitijk4poor, @kunlabs, @l0hde,
@Leihb, @leoneparise, @LeonSGP43, @liizfq, @liuhao1024, @loongzhao, @lsdsjy, @luyao618, @ma-pony, @Magaav,
@MagicRay1217, @math0r-be, @MattMaximo, @maxims-oss, @MaxyMoos, @maymuneth, @mcndjxlefnd, @memosr,
@MestreY0d4-Uninter, @mewwts, @Mirac1eSky, @MorAlekss, @mrhwick, @mrunmayee17, @mssteuer, @Nanako0129,
@nazirulhafiy, @Nerijusas, @Nicecsh, @nicoloboschi, @nightq, @ningfangbin, @octo-patch, @Octopus,
@OutThisLife, @Paperclip, @pein892, @perlowja, @prasadus92, @qike-ms, @qiyin-code, @Readon, @ReginaldasR,
@revaraver, @rfilgueiras, @rmoen, @romanornr, @rugvedS07, @rylena, @samrusani, @Sanjays2402, @sasha-id,
@Satoshi-agi, @scheidti, @scotttrinh, @season179, @SeeYangZhi, @sgaofen, @shamork, @shannonsands, @SHL0MS,
@simbam99, @Societus, @socrates1024, @Sonoyunchu, @sprmn24, @stephenschoettler, @tangyuanjc, @TechPrototyper,
@tekgnosis-net, @ThomassJonax, @tmimmanuel, @tochukwuada, @Tosko4, @Tranquil-Flow, @twozle, @txbxxx,
@UgwujaGeorge, @Versun, @vlwkaos, @voidborne-d, @vominh1919, @Wang-tianhao, @Wangshengyang2004, @web3blind,
@westers, @Wysie, @xandersbell, @xiahu88988, @XieNBi, @xinbenlv, @xnbi, @y0shua1ee, @yatesjalex, @yes999zc,
@yeyitech, @Yoimex, @YueLich, @Yukipukii1, @zhiyanliu, @zicochaos, @Zjianru, @zkl2333, @zons-zhaozhy,
@ztexydt-cqh.
Also: @Siddharth Balyan, @YuShu.
Full Changelog: v2026.4.23...v2026.4.30
Configuration
📅 Schedule: (UTC)
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR has been generated by Renovate Bot.