DeepSeek Harness plugin

dsh-mobile-layout

Mobile experience suite for the DeepSeek Harness web UI — reading layout (<1024px drawer sidebar + whale button), aurora glass skinning with auto text contrast, file-browser tab, sidebar file upload

Jump to install

Source facts

Repository
crwsr124/dsh-mobile-layout
Latest update
Aug 22, 2026
Category
Tools & Capabilities
GitHub stars
0
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/crwsr124/dsh-mobile-layout
Plugin: dsh-mobile-layout
Author: crwsr124

Check the source files

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

File explorer3 files
README.mdSource · read only

dsh-mobile-layout

DeepSeek Harness Web UI 移动端体验套件:让 dsh web 在手机上好看、好用。 零依赖,装上即用;关闭皮肤即完全还原 stock 外观。

功能一览

1. 移动端阅读布局(<1024px 自动生效)

![banner](docs/banner-layout.gif?v=1)

  • 侧栏抽屉化:无常驻窄栏,会话区占满全宽;顶栏左上角鲸鱼按钮开合会话抽屉
  • 字体密度:正文 / 标题 / 代码适度收缩,一屏容纳更多内容
  • 表格:自然宽度 + 横向触摸滚动;长词、链接自动换行不再溢出
  • 输入框:上滑阅读、切换已有会话或刷新恢复已有会话时默认收起(不会唤起手机输入法),点击消息文字即可显示并聚焦;空白新会话保持可见,桌面端不受影响
  • 设置面板:导航横排适配手机宽度;模型编辑等长表单在内容区独立触摸滚动,底部操作不会被截断

2. 换肤(侧边栏「主题与背景」按钮)

![banner](docs/banner-skin.gif?v=1)

  • 模式:无 / 玻璃 / 半透明,表面不透明度滑杆 0–100%
  • 极光背景:四套预设——蓝紫 / 暖阳 / 青绿(浅色底)+ 单色·墨(深色底),

彩色光斑缓慢漂移 + 电影颗粒质感

  • 自定义背景:图片 URL 或手机相册选图
  • 文字对比度自动适配:按背景明暗自动切换应用的深/浅文字主题,文字始终清晰
  • 透明化:用户气泡、代码块、滚动条滑杆随表面同源半透明,文字保持不透明

3. 文件浏览器(「文件」页签,与对话/轨迹并列)

![banner](docs/banner-files.gif?v=1)

  • 文件根目录自动跟随当前会话所属工作区;同一工作区切换会话会保留当前目录、列表缓存和滚动位置(不刷新),只有切换到不同工作区才取消旧请求并从新根加载
  • 在工作区内浏览:面包屑导航、手动刷新、md / 代码 / 图片 / PDF 预览、「新标签页打开」和「下载到设备」
  • 下载走独立流式端点,不受 2 MB / 40 MB 预览大小上限影响
  • 客户端只传 sessionId;Host 从服务端 Workspace 注册表解析可信根目录,跨工作区路径与符号链接逃逸均拒绝
  • 对话页保持原生滚动;文件页签使用独立列表滚动,切换页签不会锁死或复用对话滚动位置

4. 上传文件(侧边栏「上传文件」按钮)

  • 侧边栏底部动作区新增「上传文件」按钮(回形针图标,与主题按钮同款式),

点击选文件(支持多选),逐个上传,状态卡实时显示进度与结果

  • 上传到当前工作区专用目录:Host 根据发起时的 sessionId 解析工作区,自动创建并写入 <workspace>/upload,不污染工作区根目录
  • 绝不覆盖:文件名强制单段(无路径穿越),同名自动追加 (1) 序号,

单个文件默认上限 500 MB(可配 uploadMaxBytes),失败自动清理半截文件

  • 上传成功后文件页签自动刷新;成功显示落盘完整路径,8 秒自动收起

5. 稳定性增强

  • 历史加载 abort 错误自动重试愈合(全端生效)
  • 移动端从阅读态新建空白会话时强制恢复输入区,避免 body 级收起状态跨会话残留而只剩背景

安装

dsh plugin --profile <name> add github:crwsr124/dsh-mobile-layout
# 或本地源码: dsh plugin --profile <name> add file:<本目录绝对路径>

首次安装后重启一次 dsh web 进程(host 半的文件路由是冷路径;改 host 半 代码后同样需要重启)。

文件浏览和上传无需配置目录:根目录自动取当前会话所属的已注册工作区。只有上传大小上限是可选配置:

- id: dsh-mobile-layout
  config:
    uploadMaxBytes: 524288000 # 可选;缺省 500 MB

> Host 根据 sessionId 从服务端 Workspace 注册表解析 canonical path;浏览器传入的绝对路径只能位于该根内。上传固定进入 <workspace>/upload。 > 反代部署注意:若经 nginx 等网关访问,上传大文件需在网关侧放开 > client_max_body_size(nginx 默认仅 1 MB,超限返回 HTML 413 页)。

作用范围

  • 仅移动端(媒体查询门控):阅读布局、输入框滚动收起、Session log 隐藏、

设置面板移动端布局

  • 跨端功能(有意为之):换肤、文件页签、上传文件、abort 自愈
  • 皮肤关闭 / 卸载插件 = 完全还原 stock 外观

已知限制

  • 会话轨迹(details)列在手机上无法打开(app shell 框架限制,CSS 无法干预)
  • 上传路由无内置认证——公网部署务必保持 nginx basic auth 等外部防护(与

文件浏览路由同一威胁模型)

  • 老内核浏览器:无毛玻璃模糊(透明与背景仍生效,面板内有支持诊断)

开发与设计细节

实现原理、兼容性处理、选择器约定与版本历史见 [docs/DESIGN.md](docs/DESIGN.md)。

License

MIT