katsos/dsh-claude-cli

LLM provider that runs the locally installed Claude Code CLI as the model backend, so requests go through an existing Claude subscription instead of a metered API key; native tool calls are bridged over MCP.

Turns the Claude Code CLI you already have installed into a DeepSeek Harness LLM provider, with no API key: the plugin runs claude as a subprocess and streams its output back through the harness's LLM seam, so requests authenticate as whatever claude is logged in as. Because the CLI has no "hand tool calls back to me" mode, the plugin declares the harness's tools to it as an MCP server (bridge.mjs); the model then emits real tool_use blocks with provider-validated arguments, which are translated into harness tool-call chunks. The bridge never executes anything — the harness owns tool execution, and the plugin ends the request the moment the model's message ends, so the CLI process is gone before it could dispatch a call of its own.

Models & Providers ★ 0 updated 2026-08-15
View on GitHub ↗

Install

dsh plugin --profile web add ../dsh-claude-cli

README install: requires a working claude on PATH (Claude Code), Node ^22.19 || >=24, and a harness with @deepseek-ai/dsh-llm. Install it into the profile you actually run, pointing at your checkout of the repository — a path relative to where you run the command is fine. The plugin is not on npm, so the checkout directory is the only way to install it today. Restart the harness afterwards (a profile's layer stack is read at startup). The anthropic-claude-cli route then appears under Claude Code CLI in the model picker. A cordis.yml --patch overlay is also documented for trying it in a single run without modifying a profile.

Compatibility

Any harness build that ships @deepseek-ai/dsh-llm; Node ^22.19 || >=24; a logged-in claude CLI on PATH. The adapter switches the CLI's own agent loop, tools, settings, memory files and MCP servers off — only the model call is kept, driven by the harness's system prompt, history and tools.

Details

Recent updates

README carries a usage terms caution: check your plan's terms before automating a login you already use. Configurable fields include providers, executable, cwd, streamIdleTimeoutMs (default 300000), unsupportedFields (error rejects fields the CLI cannot honor; ignore drops them), defaultEffort and extraArgs. The dsh invocation table lists global dsh …, source checkout pnpm dsh …, or npx @deepseek-ai/dsh … (the unscoped dsh npm name is an unrelated JavaScript shell last published in 2022).

FAQ

How do I install dsh-claude-cli into DeepSeek Harness?
Run dsh plugin --profile web add ../dsh-claude-cli against your checkout of the repository, then restart the harness. It is not on npm, so the directory is the only install path.
Does dsh-claude-cli need an OpenAI or Anthropic API key?
No. It runs the already-installed, already-logged-in claude CLI as a subprocess, so requests authenticate as whatever claude is logged in as — no API key is used.
Will the Claude Code CLI's own tools and memory run inside the harness?
No. The plugin switches the CLI's agent loop, tools, settings, memory files and MCP servers off; only the model call is kept, driven by the harness's prompt, history and tools.

More plugins in Models & Providers

Browse more in Models & Providers

Guides for Models & Providers plugins