Plugin directory / Developer / dsh-turn-budget
dsh-turn-budget
Verified · install-tested on dsh randerous
What it does
Advisory turn step-budget reminders for DeepSeek Harness — loop convergence guard (dsh-plugin)
Works — verified, early-stage project
Advisory turn step-budget reminders for DeepSeek Harness — loop convergence guard (dsh-plugin) It installs cleanly and boots without issues in our testing. It's early-stage but functional.
“Verified” means our automated CI actually ran dsh plugin add in a clean profile and it booted — nothing more. Feature descriptions and version compatibility are the author’s claims. This is not a security audit and not an endorsement of third-party code.
README
dsh-turn-budget
English | 锟斤拷锟斤拷
Advisory turn step-budget reminders for DeepSeek Harness.
Opt-in advisory step-budget reminders: when an agent turn exceeds a configured step count, the plugin appends a source-attributed reminder telling the model to wrap up. Advisory only 锟斤拷 it never rejects or rewrites a step, so it cannot deadlock the loop. Default compositions leave it disabled; opt in through a profile overlay.
Companion to @deepseek-ai/dsh-turn-meta (per-step metadata); a second first-plugin-style example in the guard group.
Config
- id: turn-budget
name: '@deepseek-ai/dsh-turn-budget'
config:
maxSteps: 12 # optional step budget per turn; default 12
remindEvery: 4 # optional cadence after the budget; default 4
enabled: true # optional master switch; default true
maxSteps and remindEvery must be positive safe integers; any other value fails plugin load. With defaults, steps 13, 17, 21, 锟斤拷 get one reminder each.
Reminder semantics
The plugin prepends an agent/pre-step listener and delegates first. It derives the current step from the durable session log (turn/start + step/start), so reminders survive resume and replay. When the derived step exceeds maxSteps by a multiple of remindEvery, it appends one sourced UserMessage; rejection or an in-budget step records nothing.
Each reminder uses the exact snapshot source { kind: 'plugin', plugin: 'turn-budget', form: 'snapshot', sections: [{ name: 'turn-budget', text: <same text> }] }. The ./invariant companion validates that shape, checks the named step against the open step boundary, and fails any reminder at or below its budget.
Model Experience
What the model sees
One line per cadence step past the budget:
[turn-budget] turn=<turn> step=<step> exceeds the <maxSteps>-step budget. Wrap up the remaining work now: prefer one decisive action and finish the turn.
Token effect
One short line per cadence step accumulates until compaction shadows it.
KV Cache effect
None: the reminder carries no state that later preparation steps depend on.
Known Limitations and Deferred Work
- The budget is per turn; there is no per-session budget yet. Add one by scanning
turn/startcounts the same waydsh-turn-metacounts prior turns. - Reminders are advisory text only; a hard stop would need a separate guard policy.
Install
Install the catalog once, then DeepSeek Harness can find and install any plugin from this site automatically:
dsh plugin add dshbase-catalog Then say "install dsh-turn-budget for me" — your agent finds it in the directory and installs it. Docs: dshbase-catalog · verified packs.
Web profile:
dsh plugin --profile web add dsh-turn-budget Headless (CLI) profile:
dsh plugin --profile headless add dsh-turn-budget Package
npm: dsh-turn-budget · version — · tested on dsh 0.1.0-rc.6
Test report
Verified end-to-end: L1 install + L2 load + L3 runtime Q&A on dsh 0.1.0-rc.6.
When to use it
Extend the agent's coding surface — give it a new tool, workflow, or integration so it handles a dev task it couldn't before.
Who it's for
Developers who want dsh to behave like a teammate on real codebases — editing, running, and verifying changes rather than just answering.
For developers — extending it
The tool/command surface is the seam: expose more of the SDK, add smarter context wiring, or tighten the loop between code changes and verification.