Skip to content

v0.3.0 — real file edits, right-Sidebar tab, i18n

Choose a tag to compare

@flyer103 flyer103 released this 18 Oct 14:19
· 16 commits to main since this release

A side chat for the DeepSeek Harness Web GUI that can really modify files: it forks the
current session's context into an ephemeral conversation in the right sidebar, works with the
same agent and the same tool chain, and never writes into the main transcript.

Highlights

  • Real file edits — the side conversation inherits the parent's preset, tools, skills,
    cwd, model route, sandbox mode and approval policy, so write / edit / bash change the
    same workspace files. This is the difference from the read-only side-chat plugins.
  • Fork + live context — seeds the parent's completed-turn history and injects a snapshot
    of what the main session is doing right now (in-flight user/assistant messages, tool calls).
  • Right Sidebar tab — no standalone button, no floating overlay: open the session header's
    sidebar, add the Side chat (「侧边会话」) tab. Collapsing the column or switching tabs keeps
    the side session; closing the tab destroys it.
  • Follows the UI language — every string follows the DSH locale (zh / en; other
    languages fall back to English). Host error messages stay in English as a technical detail line.
  • Isolated — origin: 'subagent' without a parentSession, so the side chat never appears
    in the session list or the subagent catalog.
  • Destroy on close — the agent is disposed and its own persisted session directory is
    removed (best effort).

Install

# GitHub (default branch)
dsh plugin --profile desktop add github:flyer103/dsh-side-chat

# pinned to this release
dsh plugin --profile desktop add github:flyer103/dsh-side-chat#v0.3.0

# or from a local checkout
dsh plugin --profile desktop add /path/to/dsh-side-chat

Use the profile you actually run (desktop for the Desktop app, web for a self-hosted web
profile). Restart DSH afterwards. No manual cordis.patch.yml edit is needed — dsh plugin add
appends the bundle to dsh.profile.bundles for you.

Compatibility

  • Verified on DSH 0.2.1-rc.2 (Desktop app, Web GUI): plugin activation, all seven host
    routes, the client bundle, and an end-to-end side chat that created and verified a real file.
  • Node.js >= 22 (the plugin itself has zero runtime dependencies).
  • The package declares no engines.dsh / DSH peer range, so installation performs no DSH
    version gate; the tested target above is the compatibility claim.

Known limitations

  • Approval prompts are not rendered inside the tab: the side chat inherits the parent's policy,
    and an ask policy would wait with no answerer in the tab.
  • No token-level streaming — an assistant reply appears when its message commits.
  • A side chat cannot be reopened: closing the tab destroys it.
  • One side-chat tab per parent session and pane.

Docs

Full changelog: this is the first release.


给 DeepSeek Harness Web GUI 用的侧边会话:从当前会话 fork 出上下文,在右侧边栏里开一个临时会话,
用同一套 agent / 工具链真实修改同一工作区的文件,且不写主会话 transcript。

  • 能真改文件:继承父会话的 preset、工具、技能、cwd、模型路由、sandbox 与审批策略;write/edit/bash 的改动真实落盘。这是与只读型 side chat 插件的核心区别。
  • Fork + 实时上下文:继承父会话已完成轮次,并额外注入主会话此刻的进行中活动快照。
  • 右侧 Sidebar 原生 tab:没有独立按钮、没有浮层;展开侧边栏 → 添加「侧边会话」tab。收起侧栏/切 tab 只暂停轮询,关闭 tab 即销毁。
  • 跟随界面语言:文案跟随 DSH 语言设置(中文/English,其它语言回退英文);host 报错原文作为等宽技术详情保留。
  • 隔离:origin: 'subagent' 且无 parentSession,不进会话列表、不进 subagent 目录。
  • 关闭即销毁:dispose agent 并尽力删除它自己的落盘目录。

安装:dsh plugin --profile desktop add github:flyer103/dsh-side-chat(或 #v0.3.0 固定版本),重启 DSH。
在 DSH 0.2.1-rc.2 上实测:插件激活、7 条 host 路由、client bundle,以及一次端到端侧会话真实创建并校验了文件。
已知限制:审批提示不在 tab 内呈现、无 token 级流式、关闭后不可重开、每个父会话每分栏一个 tab。