rainforest888/dsh-plugins-raincode

Make raincode the model layer of DeepSeek Harness (dsh): a cheap model pool with StablePrefix prompt caching, retries and failover, driven by a local OpenAI-compatible gateway (Rust).

catalog descriptioncatalog 简介 / catalog description:dsh plugin: DeepSeek Harness 的模型层 = raincode(模型池/缓存/重试) + /skills 浏览

Project Overview项目介绍

dsh-plugins-raincode is the raincode model layer for DeepSeek Harness, shipping as two plugins: skill and routing. It exposes a local OpenAI-compatible gateway, StablePrefix prompt caching, retries, failover, and auto-routing where a strong model decomposes tasks and dispatches cheaper subagents. Use it for cost-optimized LLM calls and multi-agent task decomposition. Caveat: requires the raincode CLI, a running proxy gateway, and proper baseURL and API key configuration.

dsh-plugins-raincode 是 DeepSeek Harness 的 raincode 模型层插件,含 skill 与 routing 两个子插件。它提供 OpenAI 兼容本地网关、StablePrefix 提示缓存、重试与故障切换,并通过强模型分解任务后调度廉价子代理。在需要低成本 LLM 调用与自动路由分发的编码代理场景中使用。注意:需先安装 raincode CLI 并启动代理网关,且 baseURL 与 API Key 必须正确配置。

Or use CLI install (for developers)或使用命令行安装(适合开发者)

CLI Install命令行安装

dsh plugin --profile web add dsh-plugins-raincode-skill

rainforest888/dsh-plugins-raincode 加入你的 DSH 配置(web profile)即可启用。

READMEREADME

dsh-raincode

Make raincode the model layer of DeepSeek Harness (dsh): a cheap model pool with StablePrefix prompt caching, retries and failover, driven by a local OpenAI-compatible gateway (Rust).

This repository is the dsh plugin monorepo for raincode. It ships that capability as two independently publishable dsh plugins that share the adapter core in packages/core.

Packages

Package Focus Tools / Commands
dsh-plugins-raincode-skill Skill self-evolution network — browse / search / load raincode skills and distill experience into SKILL.md /skills, raincode_skill_search, raincode_skill_load, raincode_learn, raincode_status
dsh-plugins-raincode-routing Model auto-routing — a strong main model decomposes a large task and dispatches cheaper subagents by direction raincode_route, raincode_agent_tree, raincode_refresh_model, raincode_status
@raincode-dsh/core Shared adapter core (OpenAI wire serialization, SSE translation, gateway auto-spawn); published so the two plugins can resolve it independently

Architecture

The plugins are the "mouth": they translate dsh's GenerateOptions into the OpenAI wire format and stream chunks back. The raincode gateway (Rust) is the "brain": it owns profile selection, prompt caching, retries and failover. The plugins hold no model logic.

Layout

packages/
  core/            shared adapter core (adapter, serialize, translate, sse, gateway manager)
  plugin-skill/    dsh-plugins-raincode-skill
  plugin-routing/  dsh-plugins-raincode-routing

Quick start

  1. Install the raincode CLI (>= 0.1.0): cargo install --path crates/rc-cli (or use ./install.sh).
  2. Configure your model pool: raincode setup (writes ~/.raincode/profiles.toml).
  3. Start the gateway: raincode proxy --port 8787, then verify curl http://127.0.0.1:8787/health{"ok":true,"service":"raincode-gateway"}.

Install in dsh

dsh plugin --profile web add dsh-plugins-raincode-skill
dsh plugin --profile web add dsh-plugins-raincode-routing

Then add a row for each plugin to the profile's patch layer (~/.dsh/profiles/web/cordis.patch.yml):

- insert:
    - id: raincode-skill
      name: dsh-plugins-raincode-skill
      config:
        baseURL: http://127.0.0.1:8787
        apiKeyEnv: RAINCODE_API_KEY
    - id: raincode-routing
      name: dsh-plugins-raincode-routing
      config:
        baseURL: http://127.0.0.1:8787
        apiKeyEnv: RAINCODE_API_KEY

Restart dsh web to load them. Each plugin has its own README (English + 中文) covering prerequisites, installation, configuration fields and the tools it provides.

Development

npm install            # links @raincode-dsh/core into each plugin via workspaces
npm run build          # builds core, plugin-skill, plugin-routing
npm test               # runs every package's vitest suite

License

MIT

上一个 Prev dsh-session-pause 下一个 Next dsh-subagent-ui