Preface¶
The llm capability seam of DeepSeek Harness provides a unified interface, but connecting third-party models (such as Kimi K3) requires an additional adaptation layer. phillarmonic/dsh-llm-kimi is a direct-fetch LlmAdapter plugin that converts Kimi Code’s chat completions (OpenAI-compatible protocol) into DSH StreamChunks. It allows switching the base URL, catalog, or key between requests without restarting.
Plugin Introduction¶
This plugin is maintained by phillarmonic and aims to address the need to connect Kimi K3-series models in DeepSeek Harness. It supports streaming output, image input, and reasoning-effort configuration, and is mounted directly onto DSH’s model inference routing.
Core Features¶
- Model Support: Supports Kimi K3-series models, including
k3,k3-256k,kimi-for-coding, andkimi-for-coding-highspeed. - Streaming: Provides an OpenAI-compatible streaming protocol.
- Image Input: Supports image input and includes built-in budget limits to prevent exceeding the model’s single-message size limits.
- Reasoning Control: Supports reasoning-effort settings (
reasoningEffort). - Direct-Fetch: Directly implements
LlmAdapterand handles the underlying request logic.
Installation and Enablement¶
Install it using DeepSeek Harness’s plugin management commands. The plugin automatically registers to the llm route.
dsh plugin --profile <name> add @phillarmonic/dsh-llm-kimi
dsh --profile <name>
If directly composing cordis.yml, you can also add the dependency manually:
pnpm add @phillarmonic/dsh-llm-kimi
Configuration¶
Configure the plugin in cordis.yml. All fields are optional, and the default configuration points to the public Kimi Code endpoint.
plugins:
llm: {}
'@phillarmonic/dsh-llm-kimi':
apiKeyEnv: KIMI_CODE_API_KEY
reasoningEffort: low
Then export the Key in an environment variable (the Key can be obtained from the api.kimi.com console):
export KIMI_CODE_API_KEY=sk-...
Typical Usage¶
When using tasks or queries, select kimi-code as the provider and specify a concrete model (for example, k3). The plugin will read environment variables based on the configuration and process the requests.
Notes¶
- Fixed Sampling: Kimi enforces fixed sampling. Parameters such as
temperatureare not sent by default unlesssendTemperatureis explicitly enabled. - Tool Calls: Thinking content must be included in tool calls. The plugin automatically reuses reasoning blocks as the
reasoning_contentfield. - Image Limits: The plugin performs a budget check before reading attachments. The pixel budget cap is
8294400(default 4K), and the byte limit is1048576. Requests exceeding the limits will be rejected.
Ecosystem Context¶
The DeepSeek Harness ecosystem emphasizes “everything is a plugin.” This plugin directory and GitHub repository are only a community resource index and have no affiliation or subordinate relationship with DeepSeek or High-Flyer official. If you want to develop independently or review the source code, please refer to the links below.