GitHub Repo
Hermes patches Claude CLI plugin so tools with no arguments no longer trigger fallback provider switches
Nous Research updates the DirectSDK plugin’s pinned commit to fix issues with tools that take no arguments, thinking settings, and interface compatibility. The version remains 0.3.0, so deployers must check the commit hash and actual tool execution flow.

Nous Research merged an update to the Hermes plugin catalog on September 22, changing the pinned commit for Claude Subscription DirectSDK from `c92c27c` to `f1c1220` to incorporate five fixes. The version remains 0.3.0, so the version string alone cannot indicate whether the fixes are installed; users who install through the catalog must check the commit hash. [Merge record](https://github.com/NousResearch/hermes-agent/pull/118750)
This experimental plugin lets Hermes call models through an authenticated official Claude Code CLI, using the native `stream-json` protocol without the Python Agent SDK. Hermes remains responsible for tool execution, human approval, and history compaction. Each model request starts a separate process, while a local relay allows only the first upstream request through to prevent extra model calls when the CLI attempts to recover on its own. [Official documentation](https://hermes-agent.nousresearch.com/docs/plugins/claude-subscription-directsdk)
The fix for tools with no arguments addresses an edge case in the streaming protocol: tools that require no arguments may send an empty `partial_json`, but the old code attempted to parse the empty string directly, preventing response extraction from completing. A subsequent retry was then rejected by the single-request limit, potentially causing Hermes to switch to a fallback provider. The code in the pinned commit now converts blank content to `{}`, allowing valid tool proposals to be passed back to the main agent for handling. [Issue analysis](https://github.com/NousResearch/hermes-plugin-claude-subscription-directsdk/pull/3), [Patch code](https://raw.githubusercontent.com/NousResearch/hermes-plugin-claude-subscription-directsdk/f1c1220/admission.py)
This also highlights how failures in agent systems can propagate across layers: a valid tool call may first be mishandled by a parser, then have the failure amplified by retry limits, ultimately changing the model used in the session. This suggests that regression tests should check not only the output but also the actual provider, the number of upstream requests, and whether tool results are fully preserved. These checks can establish whether the patch restores the intended flow and whether existing fallback routing inadvertently remains in place after a failure.
The same batch of changes also addresses adaptive thinking parameters unsupported by Haiku 4.5, HTTP 400 errors caused by combinators in top-level tool schemas, executable search paths, and error messages. For engineering teams, these fixes help distinguish model refusals, interface format errors, and relay-layer failures, reducing the risk of mistaking infrastructure failures for limitations in model capability. [Update details](https://github.com/NousResearch/hermes-agent/pull/118750)
Deployment still requires Hermes 0.21.4 or later and an authenticated CLI. Teams should retest using their own tools that take no arguments, cancellation operations, and multi-turn history replay. The maintainers explicitly state that compatibility is not yet guaranteed for all history conversions and cross-model replay. Successful tool calls also do not prove equivalent billing: the cost figures in the documentation are merely API pricing equivalents, while actual subscription allowances and overage charges depend on account settings. [Deployment limitations](https://hermes-agent.nousresearch.com/docs/plugins/claude-subscription-directsdk)