Introduction

In DeepSeek Harness (DSH), planning, architecture, and review require stronger models, while daily implementation can use cheaper models. dsh-tier-router provides tiered model routing for DSH: the strong tier handles planning, architecture, and review, the cheap tier handles daily implementation, and it supports fallback chains, automatic failure escalation, advisor/review, high-impact gating, and subagent tiering.

Plugin Positioning

The repository is identified as BruceLanLan/dsh-tier-router with an MIT license. It splits model selection into strong/cheap tiers: the strong tier is for planning, architecture, and review, while the cheap tier is for daily implementation.

Routing remains agent-plane: tools, slash commands, prompt snippets, and routing listeners are only mounted when the session uses tiered.

Core Capabilities

Automatic Tier Routing

In auto mode, planning uses the strong tier, and execution uses the cheap tier.

The global default routing mode is auto.

Session Scope

The following command only affects the current session:

/tier strong|cheap|auto|delegated|off

Other sessions maintain their own tier. The off mode does not escalate automatically.

Advisor and Review

On-demand advisors can be used:

/advisor <question>

The corresponding tool is tier_advisor, which forwards the question to the strong tier and returns suggestions, evidence, risks, and acceptance criteria.

Reviews can be used:

/tier review <focus>

The corresponding tool is tier_review, which returns an APPROVE / NEEDS-CHANGES / BLOCKED conclusion from the strong tier.

Automatic Failure Escalation

When repeated step errors occur within a window, the session temporarily escalates to the strong tier. The default is 2 errors / 60s, with a TTL of 180s.

The off mode does not escalate.

Fallback Chains

Each tier supports an ordered fallback chain. Routing switches based on request error boundaries and returns to the primary model after TTL.

Fallback status is maintained per agent and tier, with a default TTL of 5 minutes; during plan switching, it does not switch from the cheap chain to the strong chain.

Reasoning Intensity

The cheap tier defaults to medium, which can be elevated to high/max due to retry errors, high-impact guard rejections, or tier_escalate_effort.

It can also be set manually:

/tier effort <medium|high|max>

High-Impact Gating

During cheap tier execution, tools/pre-execute rejects high-impact operations such as rm -rf, sudo, and sensitive paths.

High-impact guard rules are pure logic and unit-tested.

Subagent Tiering

tier_worker dispatches subagent tasks based on the selected tier, supporting outputSchema, toolFilter, maxDepth, persona, and background.

Subagent routing can also be selected with the following command:

/tier subagent <inherit|cheap|strong>

Prompt Escalation Rules

When unresolved ambiguities, architecture/security/data integrity issues, two failures, or high-risk completions occur, the system prompt guides calling tier_advisor / tier_review.

Installation and Activation

First, confirm the Node engine requirements:

node: ^22.19 || >=24

Then install to the web profile:

dsh plugin --profile web add dsh-tier-router

After the above steps, the profile bundle will sync the packaged tiered preset to the DSH discovery root on DSH startup.

Typical Usage

The following set of commands covers common switching and configuration paths:

/tier strong|cheap|auto|delegated|off
/advisor <question>
/tier review <focus>
/tier set <strong|cheap> <provider> <model> [effort]
/tier effort <medium|high|max>
/tier subagent <inherit|cheap|strong>

Tool interfaces include:

tier_advisor
tier_review
tier_configure
tier_worker
tier_escalate_effort

The README’s sequence diagram example is:

  1. /tier plan enters plan mode.
  2. After approving the plan, switch to cheap.
  3. Hard decisions use tier_advisor.
  4. Final review uses tier_review.

Configuration and Runtime Boundaries

Persistent configuration can be used:

/tier set <strong|cheap> <provider> <model> [effort]

Alternatively, use the tier_configure tool. Configuration is saved persistently by default and stored in the tier-router namespace. For temporary changes only, use sessionOnly: true.

The WebUI settings page allows configuration of providers, models, reasoning effort, follow-session, fallback chains, routing mode, and subagent policy.

Use Cases and Considerations

Suitable for DSH sessions that need to separate planning, architecture, review, and daily implementation:

  • Planning, architecture, and review assigned to the strong tier.
  • Daily implementation assigned to the cheap tier.
  • Requires automatic failure escalation, fallback chains, subagent tiering, or high-impact operation gating.

Considerations:

  • The plugin runs with the current dsh process permissions; review the source code and license before installation.
  • Routing mounting depends on whether the session uses tiered; sessions not using this mode will not see the corresponding tools, commands, and listeners.
  • /tier switching only affects the current session; the global default is auto.
  • The off mode does not escalate automatically.

Conclusion

Overall, the value of dsh-tier-router lies in transforming DSH’s model selection into a tiered routing strategy based on tasks: the strong tier handles planning, architecture, and review, the cheap tier handles daily implementation, and exceptions and high-risk operations have clear escalation, fallback, and gating paths.