909 plugins from the official Hermes plugin catalog: 20 official, 9 verified and 880 from the community. 206 were added in the last week. Search, filter by what you want to do, and copy the install command.
72 plugins. Sorted by HermesWatcher's picks: usefulness, polish and trust. Official: made by Nous Research. Verified: listed with a verified maintainer. Community: built by others, so read the source first.
Command Tray
Community
Session command tray — shell commands the Hermes agent ran via the terminal tool (success and failure).
Session command tray — shell commands the Hermes agent ran via the terminal tool (success and failure). Desktop pane and /commands. No API keys.
Good to know before installing
Records terminal commands with exit code, workdir and a 160-char redacted output preview to $HERMES_HOME/plugin-data/command-tray/state.json; the Desktop pane inserts text through Hermes Desktop's internal hermes:composer-insert event (not a public SDK API) with clipboard fallback; no network.
From the plugin's catalog listing.
How to install
Install it. Hermes asks for any API keys it needs, then asks whether to turn it on.
hermes plugins install command-tray
Said no? Turn it on later:
hermes plugins enable command-tray
Restart Hermes so it loads the plugin.
Some plugins also need a sign-in or settings: see Full setup & settings. Memory plugins ask whether to become your memory provider instead. Steps follow the official plugins guide↗ (opens in a new tab).
Native Hermes Agent plugin that runs the local Atoll notch monitor for Hermes session and turn status on macOS.
Good to know before installing
MacOS only. Starts a detached Node daemon on every Hermes session that reads state.db read-only and sends session titles, model/profile/token stats and a ≤96-char redacted preview of your latest request to the third-party Atoll notch app over localhost. hermes notch setup clones and builds the author's Atoll fork (github.com/himanusia/Atoll at a pinned commit, not reviewed here) with Xcode and installs an unnotarized app to ~/Applications. Node deps install via Hermes's npm ci prompt. Run hermes notch stop before removing.
From the plugin's catalog listing.
How to install
Install it. Hermes asks for any API keys it needs, then asks whether to turn it on.
hermes plugins install hermes-atoll
Said no? Turn it on later:
hermes plugins enable hermes-atoll
Restart Hermes so it loads the plugin.
Some plugins also need a sign-in or settings: see Full setup & settings. Memory plugins ask whether to become your memory provider instead. Steps follow the official plugins guide↗ (opens in a new tab).
Full setup steps, settings and screenshots are on the plugin's official catalog page from Nous Research.
Off-Peak Watch (offpeak-bekci)
Community
Makes Ollama Cloud's off-peak window visible and actionable in Hermes: a desktop status-bar chip shows the countdown and the queue item counts (Ollama off-peak hours: weekdays 18:00-12:00 UTC, weekends one block), a…
Makes Ollama Cloud's off-peak window visible and actionable in Hermes: a desktop status-bar chip shows the countdown and the queue item counts (Ollama off-peak hours: weekdays 18:00-12:00 UTC, weekends one block), a one-shot notice fires 30 minutes before the window opens, and approval is taken only from the user (`/offpeak-onayla <id,id>`) — work runs only if approved, and items never enter the queue by themselves. `/offpeak-durum` prints a readable report by default (machine-readable JSON with `/offpeak-durum json`), and `/offpeak-kur` prints the cron job it would install in full plus a `plan_hash`; nothing is installed without a hash-bound approval typed by the user, and the plugin never writes the cron store. One `llm_execution` middleware measures the call rate for Ollama Cloud calls during the peak window and ships measure-only (`kuru_kosu: true`): it records what it would delay and never delays. No network calls, no telemetry, no credential reads; the only local files it touches are the queue ledger, its own JSONL measurement log, and a read-only look at the profile's cron/jobs.json. Output language is English by default; `dil: tr` selects Turkish. Auto-delivery is host-dependent: in a classic CLI session the request enters the agent queue; on the Ink TUI / desktop-panel host the core asks for a persistent `session_key`, which the command handler does not receive, so the command prints the parameters as a single line of JSON. Injecting into a gateway additionally requires `plugins.entries.offpeak-bekci.allow_gateway_injection: true` (default off); the only in-process way to read that key is the private `gateway.session_context` module (rule 9 -> not used). Requires Hermes >= 0.22.2.
Good to know before installing
The llm_execution middleware can sleep Ollama Cloud calls during the peak window once `kuru_kosu: false` is set (default is measure-only); it writes a JSONL measurement log and, on `/offpeak-onayla`, rewrites the user's queue file; it reads the profile's cron/jobs.json read-only (on `/offpeak-durum`, `/offpeak-kaldir` and at every session end) to count enabled queue-consumer jobs; `/offpeak-kur` and `/offpeak-kaldir` leave cron install/removal requests in the session (or, with `allow_gateway_injection: true`, inject them into the gateway) for the agent's own cron tool to act on; no network calls, no credential reads, never writes the cron store.
From the plugin's catalog listing.
How to install
Install it. Hermes asks for any API keys it needs, then asks whether to turn it on.
hermes plugins install offpeak-bekci
Said no? Turn it on later:
hermes plugins enable offpeak-bekci
Restart Hermes so it loads the plugin.
Some plugins also need a sign-in or settings: see Full setup & settings. Memory plugins ask whether to become your memory provider instead. Steps follow the official plugins guide↗ (opens in a new tab).
Multi-repo GitHub issues & PRs in an Orca-style Tasks view for Hermes Desktop.
Good to know before installing
Uses your logged-in `gh` CLI and `git` through Hermes Desktop's shell bridge, or a GitHub token you paste in the panel (stored unencrypted in Desktop plugin storage, sent only to api.github.com); scans your configured clone folders for GitHub repos and reads skill names under ~/.hermes; polls the active-session list of every Hermes profile every 10 seconds for status chips; approve, close, reopen, comment and merge act on GitHub from the panel; creates git worktrees and opens Hermes sessions seeded with the issue/PR title and body as fenced untrusted text, and without a shell bridge asks the agent to run the worktree git commands.
From the plugin's catalog listing.
How to install
Install it. Hermes asks for any API keys it needs, then asks whether to turn it on.
hermes plugins install git-tasks
Said no? Turn it on later:
hermes plugins enable git-tasks
Restart Hermes so it loads the plugin.
Some plugins also need a sign-in or settings: see Full setup & settings. Memory plugins ask whether to become your memory provider instead. Steps follow the official plugins guide↗ (opens in a new tab).
Everything that snagged - cross-session shelf of failed tool calls. Full Desktop page, chip, pin, fix-prompt insert. No API keys.
Good to know before installing
Stores failed tool-call metadata (tool, truncated args with key-name redaction, error snippet) locally in plugin-data; no network.
From the plugin's catalog listing.
How to install
Install it. Hermes asks for any API keys it needs, then asks whether to turn it on.
hermes plugins install snag-shelf
Said no? Turn it on later:
hermes plugins enable snag-shelf
Restart Hermes so it loads the plugin.
Some plugins also need a sign-in or settings: see Full setup & settings. Memory plugins ask whether to become your memory provider instead. Steps follow the official plugins guide↗ (opens in a new tab).
Store a secret on the gateway host without showing it to the model.
Good to know before installing
Stores the value in plaintext in the profile .env (mode 0600) and adds the name to terminal.env_passthrough, so $NAME is available to the terminal tool; the model can still read the value with its own tools (cat .env, echo $NAME). Keeps secrets out of chat/prompt context and redacts verbatim output of credential-shaped values; it is not a boundary against a model that deliberately reads it. Adds a static system-prompt section and a /secret command. Imports private core helpers read-only (_config_profile_scope, _is_hermes_provider_credential, _CONFIG_LOCK).
From the plugin's catalog listing.
How to install
Install it. Hermes asks for any API keys it needs, then asks whether to turn it on.
hermes plugins install secret-drop
Said no? Turn it on later:
hermes plugins enable secret-drop
Restart Hermes so it loads the plugin.
Some plugins also need a sign-in or settings: see Full setup & settings. Memory plugins ask whether to become your memory provider instead. Steps follow the official plugins guide↗ (opens in a new tab).
Jev-powered Hermes plugin for skill/model routing, typed assess, DOM/Cua computer use, adaptive reasoning effort with a per-turn receipt line, and FTS rerank.
Good to know before installing
The default-on adaptive llm_request sends up to 1,200 characters of the current user message to TypeSafe/OpenRouter after Hermes redact_for_egress (no history or tool output); greetings and thanks are decided locally with no call; without the Hermes redactor it sends metadata only (disable via adaptive_reasoning_effort false). Separate default-on hosted skill routing sends up to 4,000 characters of the current user turn after Hermes redact_for_egress, plus skill names, to the same provider; without the redactor it stays local (opt down to local_only); light turns (greetings, closed acknowledgements, and read-only listings) skip that hosted call by default. Model routing remains advisory. Disclosure — By default, adaptive effort sends up to 1,200 characters of the current user message, and hosted skill routing sends up to 4,000 characters plus skill names, to TypeSafe/OpenRouter Jev after Hermes redact_for_egress (greetings and light turns stay local). The jev_session_search_rerank and jev_computer_use DOM tools send query/card and public-page text using the plugin's own masking. Off unless enabled: evidence prefetch sends source files the user names under evidence_finder_root (up t
From the plugin's catalog listing.
How to install
Install it. Hermes asks for any API keys it needs, then asks whether to turn it on.
hermes plugins install hermes-switchyard
Said no? Turn it on later:
hermes plugins enable hermes-switchyard
Restart Hermes so it loads the plugin.
Some plugins also need a sign-in or settings: see Full setup & settings. Memory plugins ask whether to become your memory provider instead. Steps follow the official plugins guide↗ (opens in a new tab).
EU Mode (beta): HaloGuard EU, Astroware's guard API hosted in the EU, checks each message and each reply (allow or block). EU Mode looks for personal data in what users send and masks what it finds before the request reaches the model, then puts the originals back in the reply, on your machine.
Good to know before installing
On every turn the conversation's user and assistant text (not system prompts, tool results, files or images) goes to api.astroware.ai (or the HALOGUARD_BASE_URL you set) with your own HaloGuard EU key, up to twice per turn (your message, then the reply); fail-open: if the API does not answer, the message goes on unchecked and not masked, and the reply says so; reads two Hermes settings (session titles, context compression) only to say when they are on; stores SHA-256 fingerprints of blocked messages, never their text.
From the plugin's catalog listing.
How to install
Install it. Hermes asks for any API keys it needs (this one needs HALOGUARD_API_KEY), then asks whether to turn it on.
hermes plugins install eu-mode
Said no? Turn it on later:
hermes plugins enable eu-mode
Restart Hermes so it loads the plugin.
Some plugins also need a sign-in or settings: see Full setup & settings. Memory plugins ask whether to become your memory provider instead. Steps follow the official plugins guide↗ (opens in a new tab).
Write one namespace in cluster.json to approve the scope, then use four reads: list pods, get one pod, list events, and read logs. Kubernetes is a registered trademark of The Linux Foundation. kubernetes-mcp-server 0.0.68 is the GitHub release binary. The plugin downloads kubernetes-mcp-server-<os>-<arch> from https://github.com/containers/kubernetes-mcp-server/releases/download/v0.0.68/ into the plugin data directory, checks the sha256 against constants taken from that release's GitHub asset digest, and starts that file. MCP initialize and tools/list are answered before that download. A partial download is kept and continued with HTTP Range. A mismatch, including a file that was already there, is refused. read_only is true, toolsets stay core, and only pods_list_in_namespace, pods_get, events_list, and pods_log are enabled. Helm is not offered. Secret, ConfigMap, and ServiceAccount are denied. configuration_view is not listed. prod, production, live, and prd names are refused unless allow_production is true. Public and link-local hosts are always refused. The host must be local, and DNS is not resolved. readOnlyHint is true, so no approval card is shown. Before the call, name the namespace, the object, and that it only reads, because status, events, and logs reach the model. This plugin does not create a cron job.
Good to know before installing
Reads the kubeconfig you name in cluster.json (read-only) and sends its token only to that kubeconfig's API host (plain http sends it unencrypted); on the first tool call downloads the kubernetes-mcp-server 0.0.68 GitHub release binary (~90 MB) into the plugin data directory, refuses it unless its sha256 matches the pinned release digest, and runs it as a subprocess (a file swap between the check and the start is not fully excluded); pod status, events and logs reach the model, with password-like env values and last-applied-configuration redacted; no HTTP proxy is used; gateway users can call these read tools with that kubeconfig; stop with hermes plugins disable kubernetes or hermes tools disable mcp-kubernetes.
From the plugin's catalog listing.
How to install
Install it. Hermes asks for any API keys it needs, then asks whether to turn it on.
hermes plugins install kubernetes
Said no? Turn it on later:
hermes plugins enable kubernetes
Restart Hermes so it loads the plugin.
Some plugins also need a sign-in or settings: see Full setup & settings. Memory plugins ask whether to become your memory provider instead. Steps follow the official plugins guide↗ (opens in a new tab).
Full setup steps, settings and screenshots are on the plugin's official catalog page from Nous Research.
Netplane
Community
Install, configure and operate a self-hosted Headscale control plane from Hermes. netplane_setup previews a configuration and, after approval, installs the pinned official Headscale v0.29.6 DEB on a fresh…
Install, configure and operate a self-hosted Headscale control plane from Hermes. netplane_setup previews a configuration and, after approval, installs the pinned official Headscale v0.29.6 DEB on a fresh Debian 12+ or Ubuntu 22.04+ systemd host (amd64/arm64). Installation runs on the Hermes host, requires root or noninteractive sudo, refuses existing deployments, and verifies the package SHA-256. It configures SQLite, MagicDNS, embedded DERP/STUN, local admin gRPC, and either Let's Encrypt HTTPS or a loopback backend for an existing reverse proxy. It starts the system service, creates the first user, and saves a 90-day API key and connection settings through Hermes's active-profile APIs. netplane_status reports health, netplane_nodes lists devices, and netplane_preauth lists metadata without stored join secrets or creates an approval-gated, single-use-by-default join key with a 1–168 hour lifetime. Desktop includes setup preview/confirmation, health, nodes, join keys and confirmed node expiration, with a FastAPI backend. Management requires NETPLANE_APIKEY; setup works before a key exists. Bundled protobuf stubs use pinned sources and a compatible toolchain.
Good to know before installing
The netplane_setup tool (after Hermes approval) and the Desktop pane (after confirmation) install the pinned official Headscale v0.29.6 DEB as root through noninteractive sudo on the Hermes host, downloading it from GitHub (SHA-256 verified) and possibly contacting configured APT repositories; it writes /etc/headscale, /var/lib/headscale and a systemd drop-in, and enables a persistent headscale service that in Let's Encrypt mode listens publicly on TCP 80/443 and UDP 3478 (admin gRPC and metrics stay on loopback); Let's Encrypt receives the chosen domain and email; setup saves a new 90-day Headscale API key as NETPLANE_APIKEY in the active Hermes profile; management reads credentials only from Hermes and uses TLS with system trust off-host; approved join-key creation returns the key into the chat; status runs systemctl is-active headscale and tailscale serve status; no telemetry and no automatic software updates.
From the plugin's catalog listing.
How to install
Install it. Hermes asks for any API keys it needs, then asks whether to turn it on.
hermes plugins install netplane
Said no? Turn it on later:
hermes plugins enable netplane
Restart Hermes so it loads the plugin.
Some plugins also need a sign-in or settings: see Full setup & settings. Memory plugins ask whether to become your memory provider instead. Steps follow the official plugins guide↗ (opens in a new tab).
Full setup steps, settings and screenshots are on the plugin's official catalog page from Nous Research.
Obscurify.ai
Community
Obscurify.ai as a Hermes model provider (`--provider obscurify`, or Obscurify.ai in `hermes model`): a privacy-focused, OpenAI-compatible API to 200+ models with zero-data-retention routes and account-number…
Obscurify.ai as a Hermes model provider (`--provider obscurify`, or Obscurify.ai in `hermes model`): a privacy-focused, OpenAI-compatible API to 200+ models with zero-data-retention routes and account-number sign-up (no email). The model list leaves out decision models and models under Hermes' 64K context minimum, context windows come from the catalog, and reasoning effort is sent as `reasoning_effort`.
Good to know before installing
Registers one model provider at import and nothing else (no tools, hooks, commands or threads); chat requests go to https://obscurify.ai/v1 through Hermes' own client with OBSCURIFY_API_KEY, which Hermes reads; the plugin itself only fetches the public model catalog (GET https://obscurify.ai/v1/models, no credentials) at most once an hour per process, reads and writes no files and starts no processes. Usage is billed from the user's prepaid Obscurify.ai balance; the plugin makes no payments.
From the plugin's catalog listing.
How to install
Install it. Hermes asks for any API keys it needs (this one needs OBSCURIFY_API_KEY), then asks whether to turn it on.
hermes plugins install obscurify-provider
Said no? Turn it on later:
hermes plugins enable obscurify-provider
Restart Hermes so it loads the plugin.
Some plugins also need a sign-in or settings: see Full setup & settings. Memory plugins ask whether to become your memory provider instead. Steps follow the official plugins guide↗ (opens in a new tab).
Full setup steps, settings and screenshots are on the plugin's official catalog page from Nous Research.
Tripwire
Community
Logs every refused agent action (a tool blocked by a guardrail or plugin, or a dangerous command denied, cancelled or timed out at approval) as one JSON line, so a no-agent cron script can send the owner one short alert.
Logs every refused agent action (a tool blocked by a guardrail or plugin, or a dangerous command denied, cancelled or timed out at approval) as one JSON line, so a no-agent cron script can send the owner one short alert. Observer only: it stores no tool arguments, results or message text, and fails open.
Good to know before installing
Appends one JSON line per refused action (profile, tool name, block type or approval choice, session id, and the first 120 characters of the block reason or approval rule) to ~/.hermes/tripwire/events.jsonl, shared by all profiles (path overridable with TRIPWIRE_EVENTS); a pre_tool_call hook reads ~/.hermes/tripwire/TEST_BLOCK and, only while that file exists, blocks the single tool it names for the single profile it names (a drill switch to prove the alarm). No network calls, no shell commands, no background processes, no stored credentials, no telemetry.
From the plugin's catalog listing.
How to install
Install it. Hermes asks for any API keys it needs, then asks whether to turn it on.
hermes plugins install tripwire
Said no? Turn it on later:
hermes plugins enable tripwire
Restart Hermes so it loads the plugin.
Some plugins also need a sign-in or settings: see Full setup & settings. Memory plugins ask whether to become your memory provider instead. Steps follow the official plugins guide↗ (opens in a new tab).
Full setup steps, settings and screenshots are on the plugin's official catalog page from Nous Research.
No plugins match that search.
Read before you install
Plugins run code inside your agent. Official plugins come from Nous Research's own repo. Community plugins are independent projects, so check the source, the permissions they ask for and any API keys they need. New to plugins? Start with skills vs plugins vs MCP.