joao-paulo-santos/dsh-workspace-history0

dsh-workspace-history

Workspace History: journals every compaction summary to <workspace>/.dsh/history/<unix-ts>.<short-session-id>.md, and adds a History subtab to the Workspace Overview tab for reading the journal. Per-session toggle lives in the granular Settings tab — requires dsh-granular-settings (hard dependency).

包名
dsh-workspace-history
版本
0.6.0
许可证
MIT
最近更新
2026年8月28日

安装

$npx -p @deepseek-ai/dsh dsh plugin --profile web add github:joao-paulo-santos/dsh-workspace-history

dsh-workspace-history

A DeepSeek Harness (DSH) plugin: every compaction summary (auto-compaction or /compact) is journaled into the workspace of the session that compacted, and a History subtab reads the journal back.

/.dsh/history/..md
  • One file per compaction, named by the compaction's own unix timestamp: ls reads as the project's chronological timeline, and ls *0a57a14f* isolates one session. Full session id, workspace, and counts live in each file's header.
  • History subtab: with dsh-workspace-overview installed, a History subtab appears in the Workspace Overview tab: the journal listed newest first on the left, the picked entry rendered as markdown on the right. Entries load one at a time, on selection.
  • Per-session toggle (default on): "Save compaction history" lives in the granular Settings tab; its store is the single source of truth.
  • Failure-only diagnostics land in .dsh/history/.diag.log.

How to install

Requires a DeepSeek Harness checkout and a profile, here web. Clone the dependencies and this plugin into a plugins folder:

mkdir -p ~/dsh-plugins && cd ~/dsh-plugins
git clone https://github.com/joao-paulo-santos/dsh-granular-settings.git
git clone https://github.com/joao-paulo-santos/dsh-workspace-overview.git
git clone https://github.com/joao-paulo-santos/dsh-workspace-history.git

# from the harness checkout
pnpm dsh plugin --profile web add ~/dsh-plugins/dsh-granular-settings
pnpm dsh plugin --profile web add ~/dsh-plugins/dsh-workspace-overview
pnpm dsh plugin --profile web add ~/dsh-plugins/dsh-workspace-history

# verify the profile still composes
pnpm dsh --profile web --dump-config

Restart the harness; the History subtab appears in Workspace Overview.

Dependencies

  • dsh-granular-settings hosts the "Save compaction history" session toggle (required; without it the plugin does not run, because the toggle is the only control surface)
  • dsh-workspace-overview hosts the History subtab (optional; the journal keeps writing without it, the client half simply stays inactive)

Plugins dependent on this

(none)

Notes for plugin authors

  • The fs service is the SandboxedFileSystem: writeText without a per-call sandbox policy is denied even inside the workspace. Every write here passes { mode: 'workspace-write', workspaceRoot: }.
  • session/event delivers the envelope { type, seq, time, data }; the payload lives under event.data. Session workspace: session.header.cwd.
  • Consuming another plugin's service is ctx.get('granularSettings') with an undefined check: degrade gracefully when it is absent (as done here).