Skip to content

Releases

v0.1.2 — stylesheet can no longer be lost; README leads in Chinese

Choose a tag to compare

@huangxp12 huangxp12 released this 05 Oct 15:08

0.1.2 — the panel can no longer lose its stylesheet, and the README leads in Chinese

Fixed: the panel could come back stripped of all styling — default grey buttons, default checkboxes, default font — while still rendering every row correctly.

The stylesheet was injected exactly once, from the plugin's apply(). But document.head is not ours to keep: the shell injects its own <style>/<script> rows into it at boot, a plugin can be disabled and re-enabled, and hot-reload disposes effects in an order we do not control. Any of those can drop our <style> — and since apply() never runs a second time, the panel kept rendering the markup with no CSS behind it, permanently.

Every render of the panel, the thought strip and the floating pill now calls an idempotent ensureStyles() that re-appends the stylesheet when it is missing. There is no longer a reachable state where the panel is mounted without its styles.

The README now leads in Chinese. README.md is the Chinese documentation and README.en.md is the English one. The plugin market fetches README.md from the repository root by a hardcoded path, so Chinese is now the text shown on the storefront card and detail page, with English one click away at the top of the file.

Install

dsh plugin install https://github.com/huangxp12/dsh-recent-sessions/releases/download/v0.1.2/dsh-recent-sessions-0.1.2.tgz

Or through the plugin marketplace by repository URL.

Full changelog: CHANGELOG.md

v0.1.1 — floating pill fix

Choose a tag to compare

@huangxp12 huangxp12 released this 04 Oct 12:52

0.1.1 — the floating pill can no longer land in the top-left corner

Fixed

  • The floating Recent Sessions pill could appear pinned to the window's top-left corner, clipped, for the first moments after a cold start — and then settle by itself.

    Cause: the pill was rendered inside the shell's overlay layer, so position: fixed resolved against the nearest containing block rather than the viewport. While the shell was still laying itself out (column-width animation, viewport not settled), an ancestor could briefly become that containing block.

    Fix: the pill is now rendered through a React portal onto document.body, and its position is set inline. With no intermediate container between the pill and the viewport, that race is gone by construction. Visual styling still comes from the .dsh-recent-pill class, so nothing about its appearance changes. If react-dom is unavailable the pill simply falls back to rendering in place — it is an optional entry point and never affects the panel itself.

Install

dsh plugin install https://github.com/huangxp12/dsh-recent-sessions/releases/download/v0.1.1/dsh-recent-sessions-0.1.1.tgz

Or through the plugin marketplace by repository URL.

Full changelog: CHANGELOG.md

v0.1.0 - first public release

Choose a tag to compare

@huangxp12 huangxp12 released this 04 Oct 09:40

Changelog

0.1.0 — first public release

  • Recent sessions panel (global panel, not tied to any session): every session across every workspace, newest first, including sessions the sidebar is currently hiding (collapsed workspaces, unregistered directories).
  • Each row carries its workspace as a clickable filter chip, a status dot, pin state, and a second line with that session's last human prompt (hover for the last assistant reply preview, read from the host turnOutline projection).
  • Time grouping (Today / Yesterday / This week / Earlier) and two sort orders: most recent, or least recently touched (time buckets flip too). Filters: only unfinished / include blank / include subagent sessions; archived hidden by default. View state is remembered locally.
  • Find it again: full-text search over message content (host index) plus instant local title/path filtering; per-row actions to open the session, reveal its workspace folder in the file manager, and copy the path.
  • Deferred thoughts: jot a line on any row (stored locally, never sent). When you reopen that session a one-line strip appears above the composer — insert it into the draft (official, undoable editor insertion), silence it until something new arrives, or discard it.
  • Open the panel in its own same-origin window.
  • Zero writes to your conversations: the host half is an empty apply; notes, thoughts and view state live in localStorage only.