DeepSeek Harness plugin

dsh-session-pause

DSH web bundle: pause the current turn at the next step boundary (graceful drain), persist everything, and resume later — including after a DSH restart.

Jump to install

Source facts

Repository
watericetangcw/dsh-session-pause
Latest update
Aug 17, 2026
Category
Memory
GitHub stars
4
Format
plugin
Catalog evidence
Upstream dsh.bundle evidence
Evidence path
package.json#dsh.bundle
Checked against
0.1.0-rc.8
Upstream check date
2026-08-20

This evidence comes from the upstream catalog. This site has not installed, run, or security-reviewed the plugin.

Install

Start with a prompt that asks an agent to review the GitHub repository and source. Switch to the command if you want to install it yourself.

Copy this prompt into DSH, Codex, or another agent and ask it to review the GitHub repository and source first.

Do not install or run any commands yet. Read this plugin's GitHub repository, README, and relevant source code. Then answer the questions below clearly and directly so I can decide whether it fits my needs:

1. What is this plugin, and what problem does it solve?
2. Who is it for, and what are its typical use cases?
3. How is it used after installation? Include one minimal example.
4. What known limitations or privacy, security, compatibility, or maintenance risks does it have?
5. Give a clear recommendation: recommend, conditionally recommend, or do not recommend, with reasons.

Distinguish statements documented by the repository, inferences from source code, and unknowns. If evidence is insufficient, say so explicitly. Do not guess or simply repeat the README.

GitHub: https://github.com/watericetangcw/dsh-session-pause
Plugin: dsh-session-pause
Author: watericetangcw

Check the source files

Read the README and other files from this plugin directory before installing.

File explorer4 files
README.en.mdSource · read only
README language

<div align="center">

dsh-session-pause

Pause anything in DeepSeek Harness, then pick up right where you left off

![License: MIT](LICENSE) ![DeepSeek Harness](https://github.com/watericetangcw/dsh-session-pause)

简体中文 · English

</div>

Install once, use forever: click ⏸ Pause next to the send button, let the current turn finish gracefully (answer written, all tools run to completion), and the whole session is persisted — close or even restart DSH, come back and click ▶ Resume to continue from the exact pause point, as if nothing ever stopped. No DSH code is modified — the entire feature is a drop-in profile bundle.

✨ Features

⏸ One-click pause

A pause button appears right to the left of the send/stop button. Clicking it never interrupts an in-flight request; once the current step reaches its boundary, the turn closes as paused and everything is flushed to disk — the button then becomes a Resume button.

💾 Full persistence

Pausing = persisting everything: messages, chunks, tool calls and results, and request context are all written into the existing session JSONL — no new storage format is introduced. So as long as DSH is around, you can always continue.

🔄 Survives restarts

When the last turn in the session log ends paused, reopening the session after a DSH restart puts the agent straight back into the paused state, and the Resume button just works — shut DSH down or even move machines, and you lose nothing.

🛑 Three small things while draining

ActionEffect
Hover the spinning buttonThe icon briefly swaps to ✕, then back when you leave
Click ✕ (cancel pause)Cancels the pause request; later runs go back to normal
Click stopDoes not cancel the pause — it only aborts the current turn, and the spinner keeps waiting for the next pausable moment

> While paused the agent enters a paused state, so goal auto-rounds naturally never fire; they resume once you continue.

🚀 Quick install

One command:

dsh plugin --profile web add github:watericetangcw/dsh-session-pause

Then restart dsh web and refresh the browser page once.

> The bundle ships **no installable @deepseek-ai/* dependencies on purpose**: at runtime its host half resolves those packages from the DSH installation itself (the shared module instances), so the forked agent loop stays identity-compatible with the deployment's presets, scope, and session services. Install it through dsh plugin add (as above) — do not npm install it as a plain library into a profile.

<details> <summary>Uninstall</summary>

dsh plugin --profile web remove dsh-session-pause

Restart dsh web afterwards to restore the stock agent-loop behavior.

</details>

🧪 Try it now

Install, then give DSH a long tool-using task and let it run:

① Pause and resume

Click ⏸ to the left of the send button → wait for the spinner to finish and the button to turn into ▶ → click ▶. The model continues the original task from the persisted tool results — semantically identical to never having paused.

② Resume after a restart

Pause, then restart dsh web and reopen the same session → it is already paused; click ▶ to continue from the pause point.

③ Queued a message while paused?

New messages you send while paused stay in the session and get claimed together on resume — nothing is lost.

📖 Usage

  • Pause: click ⏸ while running (or type /pause); you can also arm it while idle so the next run pauses at its first step boundary.
  • Cancel pause: hover the spinner → click ✕ (or /pause-cancel).
  • Resume: click ▶ when paused (or /resume).
  • Commands: /pause, /pause-cancel, and /resume are all available from the slash menu.

🔗 Links

📄 License

[MIT](LICENSE) © 2026 WateRice