dsh-speak-up: A DSH plugin that lets DeepSeek Harness sessions speak first

yuuyuko-uu/dsh-speak-up

Skills & AgentsVerified
Listed on 2026-10-22
Page last updated 2026-10-31

Gives a DSH session a mind of its own: a local dice roll on a timer decides whether DeepSeek Harness speaks up first, costing no tokens to roll.

dsh-speak-up is a DSH plugin that gives DeepSeek Harness sessions a sense of initiative, solving the problem of an agent that can only wait passively for input. When the timer fires it rolls a local die first, and only on a hit does it send a line to the target session and trigger a fresh DSH turn with the same persona, history, tools and memory. The roll itself costs no tokens; only the step after a hit spends the model. It also offers peak and off-peak thresholds, timing factors, a miss bonus, quiet hours and cooldown, plus dry run and manual rehearsal, with its own config file in the user directory.

How to Install

install
dsh plugin --profile web add github:yuuyuko-uu/dsh-speak-up
Category
Skills & Agents
Platform
DSH Plugin
Author
yuuyuko-uu
Distribution
Plugin

dsh-speak-up Key Features

Local timed dice roll, zero token costOnly a hit triggers agent.followupPeak/off-peak, cooldown, quiet hoursMiss-streak bonus raises hit chanceSettings page for target sessions and prompt
Listed on dsh-plugin.org

dsh-speak-up Repo Summary

What Does It Do?

Speak Up is a DSH plugin for DeepSeek Harness that lets a chosen session start talking on its own when nobody is addressing it. It solves the problem of an agent that can only wait passively for input: when the timer fires, the plugin rolls a local die first, and only on a hit does it send a line to the target session and trigger a fresh DSH turn with the same persona, history, tools and memory. The roll itself is pure local randomness and costs no tokens; only the step after a hit spends the model.

Core Features

  • Local dice roll decides whether to speak: on each timer tick a local random check runs against a hit threshold; a miss only leaves a log entry, a hit calls followup so DSH opens its own turn.
  • Peak and off-peak thresholds: the hit threshold is low during peak hours (weekdays 09:00–12:00 and 14:00–18:00) and high the rest of the time, with the windows hardcoded rather than configurable.
  • Timing factors: less than 20 minutes since the last utterance multiplies the threshold by 0.15 (harder to speak), more than 360 minutes multiplies it by 1.5 (easier), and the middle range stays unchanged.
  • Miss bonus: each consecutive miss raises the next threshold by a configured percentage point amount up to a cap, resetting to zero after a hit.
  • Quiet hours and cooldown: quiet hours are start-inclusive and end-exclusive and may cross midnight, and no roll happens at all inside them; a cooldown also applies right after the agent speaks on its own.
  • Dry run and manual trigger: with dry run on, hits are only logged and never sent, while manual buttons can rehearse or really send without touching the cooldown or the miss counter.

How to Use This Plugin?

After enabling it in DSH, open Settings → Speak Up to see every option. First tick the target sessions (multiple allowed, saved immediately on click), then rewrite the trigger line in the agent's own voice, since it is the agent's motive rather than a system prompt. Keep dry run on at first and watch the roll log for a while before turning it off for real utterances. The roll interval, cooldown, miss bonus, bonus cap, quiet-hour start and end, and peak/off-peak thresholds can all be changed at any time and take effect on the next tick without a restart. Note that quiet hours override off-peak pricing: the default 1–8 window eats part of the cheap period, so shrink it or set start equal to end to disable it if you want those hours used. Configuration lives in its own speak-up-config.json in the user directory, separate from the harness config.

How to Troubleshoot This Plugin?

If DSH fails to start with Unexpected token … is not valid JSON, a package.json edited during manual installation was probably saved as UTF-8 with a BOM, adding three invisible bytes at the start; re-save that file as UTF-8 without BOM per the official instructions. Do not guess the path: a real profile directory contains cordis.yml, cordis.patch.yml and package.json together, so check each package.json for a BOM and fix the one that reports true. When asking an AI to rewrite the file, avoid the Windows built-in write methods that add a BOM by default. Also note that after changing plugin code only a full DSH restart is guaranteed to take effect; toggling the plugin off and on or reinstalling may not reload the code.

This page is an independent rewrite of the plugin's official README — for authoritative documentation and the latest changes, refer to the source: yuuyuko-uu/dsh-speak-up. The plugin is third-party code that runs on your machine once installed; inclusion does not imply endorsement — please review the source before installing.

Install, update, and uninstall this plugin in the Plugin Market of DeepSeek Harness's DSH Plugin Hub

DSH Plugin FAQ