# NousResearch/hermes-agent · Claude Code CLI/SDK as native subscription provider

## Open now

- 2 issues, 2 PRs open on GitHub.
- #25267: \[Feature\]: Claude Agent SDK model provider with subscription OAuth (Codex-style)
- #52362: \[Feature\]: Claude SDK as Backend
- PR #65982: feat(providers): claude-agent-sdk provider — the official Agent SDK as a first-class runtime under subscription OAuth (fail-closed)
- PR #98533: feat: claude-code-cli provider — Claude subscription via the Claude Code CLI with real tool calls

Multiple requests and proposals to integrate Claude Code CLI and/or the Anthropic Agent SDK as a first-class provider, enabling routing through local subprocess execution using Max/Pro subscription OAuth credentials rather than API keys.

## TL;DR

- 12 member(s): 2 open issue(s), 7 closed issue(s), 2 open PR(s), 0 merged PR(s), 1 PR(s) closed without merging.
- No fix has been merged to main; one or more PRs were attempted (see below).
- **Recommended:** review the prior/competing PR(s) below. A fix was attempted but not merged; your case may extend or revive that work.

## Maintainer resolution verdict

- Internal-tracker verdict over this cluster's issue members: `unresolved`. This is distinct from the fix status above. Weigh it yourself.

## How this cluster was grouped

- Link evidence (`STRUCTURAL_PARTIAL`): some members are connected by structural evidence (shared changed files, or a closing/superseded reference); the rest are joined by an automated relevance judgement over their text.
- Members outside that structural core may belong to a different underlying problem.
- Pairwise link density `0.14`: the share of member pairs that carry a link, counting a structural link in full and a relevance-only link at 0.36. `1.00` means every pair is linked.

## Open related issues

- #25267: \[Feature\]: Claude Agent SDK model provider with subscription OAuth (Codex-style)
- #52362: \[Feature\]: Claude SDK as Backend

## Closed / duplicate issues

- #12122: feat(gateway): \`/cc\` command — route messages to Claude Code CLI without going through Hermes
- #16923: \[Feature\]: claude-cli backend provider just like openclaw
- #31385: Proposal: Subprocess executor bridge for delegating gateway turns to Claude Code CLI
- #32392: \[Feature\]: Feature Request: Support Claude Code / Claude Team Authentication as Hermes Provider
- #33462: feat(provider): register \`claude-code\` as first-class subprocess provider (Claude Max OAuth via local CLI)
- #33537: Register \`claude-code\` as first-class provider for native streaming + tool_use (currently alias-only)
- #48320: Feature Request: claude-code provider that shells out to claude -p for Max/Pro subscription quota

## Prior & competing PRs

- **#12124: feat(gateway): add \`/cc\` command to route messages to Claude Code CLI**. closed without merge
  - maintainer direction: category `uncategorized`; implication `needs_llm`; refs `eb9db0ce25a`
- **#65982: feat(providers): claude-agent-sdk provider — the official Agent SDK as a first-class runtime under subscription OAuth (fail-closed)**. open
  - maintainer direction: category `superseded_by_pr`; implication `superseded`; refs `4d04092cbf`, `948633ad66`, `3e2638e93f`
  - files: `.github/workflows/tests.yml`, `agent/agent_init.py`, `agent/agent_runtime_helpers.py`, `agent/auxiliary_client.py`, `agent/chat_completion_helpers.py`, `agent/claude_sdk_aux_client.py`, `agent/claude_sdk_runtime.py`, `agent/claude_sdk_runtime_compaction.py`, `agent/claude_sdk_runtime_context.py`, `agent/claude_sdk_runtime_continuity.py`, `agent/claude_sdk_runtime_fallback.py`, `agent/claude_sdk_runtime_prompt.py`, `agent/claude_sdk_runtime_session.py`, `agent/claude_sdk_runtime_state.py`, `agent/claude_sdk_runtime_tools.py`, `agent/claude_sdk_runtime_usage.py`, `agent/codex_runtime.py`, `agent/conversation_compression.py`, `agent/conversation_loop.py`, `agent/display.py` (+155 more)
- **#98533: feat: claude-code-cli provider — Claude subscription via the Claude Code CLI with real tool calls**. open
  - maintainer direction: category `implemented_elsewhere`; implication `superseded`; refs `287fd8083e938855fda02b8c0b0c422e4a2caaaf`, `a5bd246865bd`, `f42f579cf8ba`, `287fd8083e93`, `#109266`, `#25267`, `#25267`, `#98533`, `#25267`
  - files: `agent/agent_init.py`, `agent/background_review.py`, `agent/claude_code_runtime.py`, `agent/conversation_compression.py`, `agent/conversation_loop.py`, `agent/transports/claude_code_session.py`, `agent/turn_context.py`, `cli-config.yaml.example`, `hermes_cli/auth.py`, `hermes_cli/models.py`, `hermes_cli/providers.py`, `hermes_cli/runtime_provider.py`, `plugins/model-providers/claude-code/__init__.py`, `plugins/model-providers/claude-code/plugin.yaml`, `run_agent.py`, `tests/agent/test_claude_code_runtime.py`, `tests/agent/transports/fake_claude_cli.py`, `tests/agent/transports/test_claude_code_session.py`, `tests/hermes_cli/test_claude_code_cli_provider.py`, `website/docs/integrations/providers.md` (+1 more)

## Fix status

- No merged fix on record.
- Subsystem: `agent`
