DSH HUB
HomePlugin StorePlugin PacksCommunityRankingsResourcesPublish Guide
Plugin source
Back to catalog

lasdrder0705 /

lasdrder0705/dsh-chat-zone

Verified

DSH Web 插件「对话区」。安装:dsh plugin --profile web add github:lasdrder0705/dsh-chat-zone

★ 0 Stars0 Forks0 IssuesN/A Community rating0 Confirmed installs
View on GitHub
READMESource: main@c2672a27

dsh-chat-zone

中文 · English

DeepSeek Harness(DSH)Web 插件:一键「对话区」。
A DeepSeek Harness web plugin that adds a one-click Chat zone to the sidebar.

中文

安装

Mac / Windows 同一条命令(Web 界面):

dsh plugin --profile web add github:lasdrder0705/dsh-chat-zone

然后重启 dsh web,刷新页面。侧边栏底部(设置旁边)会出现「对话区」。

Windows 若直接运行报错,给仓库地址加上引号,或改用 npx:

dsh plugin --profile web add "github:lasdrder0705/dsh-chat-zone"
npx @deepseek-ai/dsh plugin --profile web add github:lasdrder0705/dsh-chat-zone

如果第一次 add 被 pnpm 拦住构建脚本,按 CLI 提示在该 profile 的 pnpm-workspace.yaml 里加上:

allowBuilds:
  dsh-chat-zone: true

再执行一次上面的 add。本仓库已带构建产物 lib/,多数情况下不需要这一步。

其它安装方式:

# 本地源码(开发用)
dsh plugin --profile web add link:/绝对路径/dsh-chat-zone

# 发布到 npm 之后
dsh plugin --profile web add dsh-chat-zone

完整中文说明见 README.zh.md。

功能

  • 侧边栏底部新增「对话区」按钮(紧邻设置)。
  • 新建聊天:点击后自动创建 ~/dsh_CHAT/<本地日期 yyyy-mm-dd>/chatN 三层文件夹,注册为 DSH 工作区,并直接打开绑定该文件夹的空白会话。编号规则:当天已有 chatN 的最大编号 +1(chat1, chat3 之后新建 chat4,删除不补号)。
  • 历史对话:面板按日期倒序分组、组内 chatN 倒序展示;每个 chatN 显示其对应 DSH 会话标题。点击即继续该对话(一个对话 = 一个文件夹,1:1)。
  • 侧边栏布局(对话区面板内可切换,默认分开,偏好记在浏览器 localStorage):
    • 分开显示:~/dsh_CHAT 下的 chat 工作区从「工作区」列表隐藏,对应会话落到侧边栏底部的「未分组」。真正的项目工作区仍按文件夹分组。
    • 合并显示:原有效果——每个 chatN 仍作为工作区组和项目排在一起。
  • 不修改官方的新会话工作区选择器,不提供 CLI,不提供删除/重命名(用系统文件管理器处理)。

English

Install

Same command on Mac and Windows (web profile):

dsh plugin --profile web add github:lasdrder0705/dsh-chat-zone

Restart dsh web and refresh. A 对话区 / Chat zone button appears at the sidebar foot, next to Settings.

On Windows, quote the spec or use npx if the unquoted form fails:

dsh plugin --profile web add "github:lasdrder0705/dsh-chat-zone"
npx @deepseek-ai/dsh plugin --profile web add github:lasdrder0705/dsh-chat-zone

If the first add refuses the git prepare script (pnpm ≥10), copy the package key into that profile's pnpm-workspace.yaml:

allowBuilds:
  dsh-chat-zone: true

and re-run add. This repo ships lib/, so the allowlist is usually unnecessary.

Other install paths:

# Local checkout (development)
dsh plugin --profile web add link:/absolute/path/dsh-chat-zone

# After an npm publish
dsh plugin --profile web add dsh-chat-zone

Features

  • A "Chat zone" button at the sidebar foot, next to Settings.
  • New chat: one click creates ~/dsh_CHAT/<local date yyyy-mm-dd>/chatN (three folder levels), registers it as a DSH workspace, and opens a blank session bound to that folder. Numbering is max chatN + 1 for the day (chat1, chat3 → next is chat4; deleted numbers are not reused).
  • History: the panel groups chat folders by date (newest first, chatN descending) and shows each folder's DSH session title. Clicking a chat continues that conversation (one conversation = one folder, 1:1).
  • Sidebar layout (toggle in the Chat zone panel; default is Separate; preference is stored in localStorage):
    • Separate: chat workspaces under ~/dsh_CHAT are hidden from the Workspaces list, so their sessions land in Ungrouped at the bottom of the sidebar. Real project workspaces stay grouped.
    • Together: original behavior — each chatN remains a workspace group mixed with projects.
  • The official new-session workspace picker is untouched. No CLI, no delete/rename (use your file manager).

Behavior contract

  • Root is always ~/dsh_CHAT; date folders use the local timezone.
  • Creation failures (permissions, read-only disk) surface as a red in-panel error with retry — never a silent fallback, never touching the current session.
  • A concurrent creation race re-reads the day folder and bumps the number (bounded at 8 attempts).
  • If a chatN folder somehow has several sessions, clicking opens the most recently updated one; if its session was removed, clicking restores the 1:1 invariant with a fresh bound session.
  • A missing ~/dsh_CHAT shows the empty state; "New chat" creates the root on demand.

Development

pnpm install          # or npm install
npm test              # node:test — pure logic, fake-host orchestration, registration wiring, sidebar layout
npm run typecheck
npm run build         # lib/index.js + lib/client.js + lib/types
npm run smoke         # loads the built client bundle via a stubbed window.__ModuleLoader__

tsconfig.local.json / tsconfig.build.local.json are optional dev-machine overrides that resolve @deepseek-ai/* types through paths against a local DeepSeek Harness checkout.

—/ 5

No ratings yet

Verified DSH bundle

Commit c2672a27c075

Community comments

No comments yet. Be the first to write one.

DSH HUB

A community index for DSH plugins. Not an official GitHub or DeepSeek AI product.

CommunityResourcesAPIAbout