HNT/LOG/HERMES-CLAUDEREVISION 2026.10.04STATUS: PUBLISHED
← Zurück zum Build Log agent // build-log

Hermes Claude Plugin: Run Claude on Your Claude Code Subscription, No API Key

An official Hermes plugin connects the agent straight to the Claude Code CLI. Your Claude Pro or Max subscription pays the requests, no API key needed. Official facts on setup, isolation, replay design, limits, and costs.

SYSTEM NOTE // CURRENT BUILD● LIVE ARCHIVE
DEVICEGOOGLE PIXEL 6A
INPUTRII K06
ROOT ACCESSNONE
RUNTIMETERMUX / HERMES
READ THIS AS FIELD NOTES

Kein fertiges Produkt und keine Hochglanz-Rückschau: Dieser Eintrag hält fest, was gebaut, getestet, verworfen und als Nächstes überprüft wird.

The headline from Julian Goldie reads like classic SEO bait: “Use Claude inside Hermes Agent without API keys using the new official plugin”. This time the substance matches the promise. The official Hermes Agent plugin catalog lists a model-provider plugin named claude-subscription-directsdk that connects Claude models to an existing Claude Code sign-in. If you already pay for Claude Pro or Max, you no longer need an Anthropic API key, a prepaid balance, or a second billing relationship. The catalog page carries the October 3, 2026 state, and the reviewed repository commit is ef73726. This post walks through the official facts: how the change differs from the API-key route, what prerequisites apply, how setup works, how the isolation is built, and where the hard limits sit.

One brain, one bill: what changes

The old route to Claude in Hermes went through a classic API key: create the key in the Anthropic console, top up a balance, paste the key into the config, and pay for every request token by token. Anyone who also ran Claude Code on a Pro or Max plan was operating the same model twice: one brain, two doors, two bills. That second door is exactly what the plugin closes. Hermes now talks to the official Claude Code executable as its model client instead of hitting the metered billing API directly. Sign-in stays with the CLI; charges stay with the subscription.

Day-to-day, the agent itself barely changes: Hermes keeps its normal agent loop, its tools, approvals, memory, and context compaction. The provider simply shows up as another option in the model picker and can be set as the default with one config line. In the video, Goldie demonstrates exactly this flow: write a message in Hermes, the plugin starts the program, the selected Claude model answers, Hermes runs the tools, and the reply comes back. Same brain, one door.

The official facts at a glance

The catalog entry is called Claude Subscription DirectSDK (Experimental) in full; the plugin id reads claude-subscription-directsdk-experimental. The core idea: it drives the unmodified, official Claude Code executable as a request-scoped model client. Despite the DirectSDK name, the implementation speaks native stream-json directly and does not require the Python Agent SDK package. Licensing is MIT.

The prerequisites from the official docs come as a trio. First, Hermes Agent 0.21.4 or newer, or main after commit 118984d7a02f, the core half of PR #117451. On older Hermes versions the plugin refuses to load and reports a clear warning (Failed to load user provider plugin) rather than half-working. Second, Python 3.10 or newer on Linux, macOS, or Windows; per the README the test suite runs on all three platforms in CI. Third, the official Claude Code CLI, installed and logged in: the plugin holds no credentials of its own, everything runs through the claude program.

What stands out is the discipline of the checks: the plugin probes at every seam and never guesses. At load time it logs a warning while staying registered. In the model picker it stops with an install hint and writes nothing to the config. On a request it fails immediately with the install hint instead of a traceback crash. The officially qualified CLI version is Claude Code 2.1.263.

Setup in four steps

The official setup takes four moves. First, install the Claude Code CLI if it is missing, via npm install -g @anthropic-ai/claude-code. If the binary lives outside PATH, point the environment variable CLAUDE_SUBSCRIPTION_DIRECTSDK_COMMAND at its absolute path. Second, install the plugin from the pinned, reviewed catalog with hermes plugins install claude-subscription-directsdk. If you prefer tracking the main branch, use the GitHub variant NousResearch/hermes-plugin-claude-subscription-directsdk; for a manual install a git clone into ~/.hermes/plugins/claude-subscription-directsdk-experimental is enough. Per-profile installs go under ~/.hermes/profiles/PROFILENAME/plugins/.

Third is the sign-in: claude auth login. Fourth is the selection: run hermes model and pick Claude Subscription DirectSDK (Experimental), or start directly with hermes --provider claude-subscription-directsdk-experimental -m sonnet. For a permanent setup, the config file carries the provider under model.provider and the default model under model.default. Goldie's video version compresses the same routine into roughly three minutes of setup after updating Hermes to 0.21.4 or newer. The official README remains the sturdier reference because it pins every step to a reviewed commit.

Security and isolation under the hood

The security design is the most remarkable part of the documentation. Authentication belongs entirely to the official CLI: the plugin never opens, copies, refreshes, or prints the credential files, and it neither requires nor sends a Hermes API key. The normal Hermes client path rejects inherited API-key overrides, custom Anthropic endpoints, and cloud-backend overrides before any process is even spawned. The error message names the conflicting environment variables without printing their values. According to the docs, there is no silent HTTP or API-key fallback anywhere in this client.

Every request starts a fresh process in a private temporary directory. Native tools, skills, and setting sources of Claude Code are disabled; MCP exposes only the current Hermes tool inventory, and execution is refused on the Claude side through dontAsk. The child program runs in its own process group: cancellation tears down the whole tree via killpg or taskkill /T, so the node child behind the npm shim never outlives a cancelled request. For authorization, a relay binds an ephemeral loopback port with a random route per request; auth headers travel straight through memory to the upstream and are neither logged nor persisted. If you keep credentials in a separate directory, set CLAUDE_CONFIG_DIR for the login and export CLAUDE_SUBSCRIPTION_DIRECTSDK_CONFIG_DIR to the same path.

Why the replay design keeps the route predictable

A quieter but operationally important point is the replay design. Every chat request starts fresh: Hermes replays the full conversation history in order. Historical user frames are marked so the native program issues no new queries for them; per the docs, each of those frames gets an acknowledgment without its own response round. Only the final user or tool-result frame actually triggers a query. There is no parked native session and no native approval wait, and the adapter adds no synthetic continue prompt. That keeps the conversation path predictable.

The relay also stops Claude Code's native recovery from firing extra upstream requests when Hermes wants exactly one. Hermes stays in charge of token budgets: because the model owner defines them, the native token-budget reminder is switched off on this route, and the replay reconstructs that reminder across the cache boundary. Other native annotations remain present, so the wire prompt is not byte-identical to the pure Hermes context, worth knowing for audits and cost reviews.

An honest status: experimental means experimental

The Experimental tag here is not marketing; it is a self-tested limit with a written log. The core feature is called single-request admission and is implemented and live-qualified. The background: Claude Code 2.1.263 sometimes attempts extra generations even though max-turns 1 is set and the HTTP retry is disabled. A request-scoped loopback relay therefore forwards only the first Messages request and blocks further attempts locally. Hermes receives the first completed answer with its real usage numbers and the native stop reason; a blocked native recovery never turns a completed result into an exception.

In the integrated subscription test, seven Hermes calls produced exactly seven upstream requests, plus twelve tool executions with twelve durably stored results. Context grew from 138,498 to 165,697 tokens, and follow-up cache reads averaged 97.13 percent. An earlier run started at 187,000 tokens and hit the 200,000-token ceiling of the native route once tools attached; that incomplete run does not count as a success. That is the most important operational limit: very long contexts currently face a hard cap on this route. The README also states it plainly: this is a review build with no claim to full parity or production readiness. Replay acknowledgments and extra-body behavior are version-sensitive interfaces, not a public SDK promise for arbitrary histories.

7 to 7Hermes calls vs. upstream requests in the integrated subscription test (README)
12tool executions with twelve durably stored results (README)
138,498 to 165,697context growth in tokens across the test (README)
97.13%average follow-up cache reads (README)
200,000 tokenscurrent native-route context ceiling; a run at 187,000 tokens failed (README)
2.1.263officially qualified Claude Code version (README)
0.8793728 USDlist-price estimate of the test run, not a subscription receipt (README)

What it costs: subscription pricing, not estimates

Cost honesty cuts both ways. The test run reported 0.8793728 US dollars in native list-price terms. The README is unambiguous: that figure is a list-price estimate, not proof of an actual subscription charge. Subscribers pay their plan price; the number only says what the same volume would have cost on API billing at list price. The counterpart: extra usage remains an account-level setting. Anyone who wants to avoid overage billing disables extra usage in their account; the plugin does not touch it and cannot switch it off.

The real punch of the video is still the cost structure: the same Claude model that bills token by token through the API runs over the subscription without a second invoice. For heavy users with an already-paid Max plan, that lowers the barrier to actually letting agents run instead of weighing every request against the balance. The end of the video points at a paid boardroom offer and a zip package with presets. Neither is evaluated here; the commands described in the catalog remain freely readable.

Who should switch

Three groups benefit most. First, Claude subscribers who avoided Hermes because the API-key route demanded a second billing setup. Second, heavy users of agent workflows who prefer a fixed plan over per-token accounting. Third, teams with Max seats that deploy agents for routine tasks and want to keep tools, approvals, and memory inside Hermes.

A poor fit would be contexts beyond the 200,000-token limit and anyone who expects parity guarantees with the API. Critical production pipelines should wait until the Experimental tag drops. For everyone else, this is the most consistent answer yet to an old double burden: one brain, one door, one bill.

Frequently asked questions

FAQ
What is the Hermes Claude plugin claude-subscription-directsdk?

An experimental model-provider plugin in the official Hermes catalog. It drives the unmodified Claude Code executable as Hermes Agent's model client and speaks native stream-json. Sign-in runs through your own Claude Code installation; Claude Subscription DirectSDK (Experimental) is the catalog name.

Do I still need an Anthropic API key?

No. The documentation states without qualification that the plugin neither requires nor sends an API key and knows no silent fallback to HTTP billing. Sign-in runs exclusively through the official Claude Code CLI via claude auth login.

What does usage through the plugin cost?

The subscription billing of your chosen Claude plan. The test run reported 0.8793728 US dollars in list-price terms; per the README that is an estimate, not proof of an actual subscription charge. To avoid overage, disable extra usage in your account.

Is this production-ready?

No. The status is explicitly experimental: a review build with no claim to full parity. Single requests and one integrated subscription test are qualified; Claude Code 2.1.263 is qualified, and newer versions may shift version-sensitive interfaces.

What context size works?

The subscription test ran from 138,498 to 165,697 tokens. An earlier run hit the 200,000-token ceiling of the native route at 187,000 tokens and does not count as a success. Very long contexts currently face a hard cap on this route.

About the author

I'm Marcel, a graphic designer running agent systems in daily work, including the HUNTER Cyberdeck. This post is based on the fully read transcript from the October 3, 2026 newsdesk intake and on the official catalog entry and README of the plugin, retrieved October 3, 2026. Last reviewed: October 3, 2026. Responsible: Marcel, reachable via d4sn3st.dev.

Sources

Hermes plugin catalog: Claude Subscription DirectSDK (Experimental), README at commit ef73726 (retrieved October 3, 2026) ↗

GitHub: NousResearch/hermes-plugin-claude-subscription-directsdk (retrieved October 3, 2026) ↗

Hermes documentation: LLM and model providers, Anthropic via Claude Code credentials (retrieved October 3, 2026) ↗

Julian Goldie: Use Claude inside Hermes Agent without API keys using the new official plugin, YouTube (retrieved October 3, 2026) ↗

Scope and limitations: technical details, numbers, and limits come from the official catalog entry and README (commit ef73726, state of October 3, 2026). The video serves as the trigger; the boardroom offer advertised at its end is not evaluated here. The experimental status is documented; newer Claude Code versions may change version-sensitive interfaces. Numbers apply to the qualified versions as stated in the README; the list-price estimate is not a subscription receipt.

Community Signal

Nachgebaut oder getestet?

Teile deine Erfahrung mit genau diesem Build-Log. Reviews werden vor der Veröffentlichung moderiert.

Noch keine Reviews für diesen Eintrag.

GitHub Discussions

Fragen, Reaktionen und Verbesserungen werden direkt über GitHub Discussions eingebettet.

GitHub-Bereich öffnen ↗
Dein Testbericht

Erfahrung zurückmelden