Back to home

morphlinglan

dsh-llm-fallback

DeepSeek Harness plugin: provider/model fallback chain for the agent loop.

Stars
0
Language
JavaScript
Created
Aug 16, 2026
Updated
Aug 16, 2026

Introduction

dsh-llm-fallback

A DeepSeek Harness plugin that adds a provider/model fallback chain to the agent loop.

When a model request fails with an eligible error code (e.g. RATE_LIMIT from a 429, or QUOTA), instead of only retrying the same model, the plugin transparently moves to the next provider/model in the configured chain.

Install

dsh plugin --profile web add github:morphlinglan/dsh-llm-fallback

Then restart dsh web if it is already running.

Usage

Add an insert entry to the profile's cordis.patch.yml (or rely on the bundle default and configure it through your profile patch layer):

- insert:
    - id: dsh-llm-fallback
      name: dsh-llm-fallback
      config:
        codes:
          - RATE_LIMIT
          - QUOTA
        scope: turn
        fallbacks:
          # Replace these with your own backup providers/models.
          - provider: backup-provider-a
            model: backup-model-a
          - provider: backup-provider-b
            model: backup-model-b

The providers/models above are placeholders only. Replace them with providers and models you actually have access to.

Config

FieldTypeDefaultDescription
codesstring[]["RATE_LIMIT", "QUOTA"]Failure codes that trigger a fallback.
fallbacks{ provider, model }[][]Ordered chain of backup providers/models.
scope"step" | "turn" | "session""turn"How long the sticky fallback selection persists.

Scope behavior

  • step: each step starts on the primary model; only retries within one step walk the chain.
  • turn: once a fallback is selected, it is reused for the rest of the current turn; the next turn tries the primary again.
  • session: once a fallback is selected, it stays selected until the chain is exhausted; best when the primary is durably down.

License

MIT