🎁 福利专区全网大模型免费应用 + 新用户福利 + 注册活动入口,低成本玩转 AI

罗德岛终端主题 ash-qw/dsh-theme-prts

DeepSeek 客户端v2.6.0
ash-qw4 天前有提交已提供中文文档扫描:含敏感能力兼容 / 相关生态

面向 DeepSeek Harness Web 和官方桌面客户端的个人、非商业明日方舟 / P.R.T.S. 同人…

39.6/100
综合分
13
GitHub 星标
2,735
npm 周下载
—/5
用户评分

数据截至 2026/10/30 · 周下载取自 npm 全网(含 CI / 镜像),非本站安装数;综合分由星标、活跃度与兼容性检查合成。

相关生态插件(非 dsh 原生,按其对应运行时安装)
git clone https://github.com/ash-qw/dsh-theme-prts.git

状态速览

判定依据:实装验证 · 静态安装检查 · 自动扫描 · 仓库维护状态
信任档位:已验证
是什么
生态插件
可安装,未声明 dsh 能力
装得上吗
本站已在 dsh 0.2.1-rc.5 下真实安装成功
非静态推断
L5 · 运行时冒烟等级说明 →
安全吗
本站尚未对该插件做风险分级
暂未覆盖,不等同于无风险
还在维护吗
活跃:最近一次提交在 4 天前
档位由哪些信号合成

本站实装验证(真实安装 L4 覆盖全站;L5 为运行时冒烟或实机截图,覆盖范围小于 L4) · 验证所用 dsh 版本 · 静态安装检查 · 风险分级 · 仓库维护状态。 下方各区块是它的证据明细。

验证判据与等级说明 →
社区实装还没有人打卡 · 装过的第一个就是你
安装兼容性检查✓ 自动检查通过
展开查看检查明细 ↓

以下结论由程序自动检查 npm 包、engines 声明与入口文件得出,未做人工实机验证——能装不等于用着没问题。

✓npm 包@ash-qw/dsh-theme-prts @ 2.6.0
✓Node 引擎要求 >=20.9.0 · 基线 Node 22.19 满足
✓dsh CLI 依赖未声明 dsh 版本约束
✓入口文件main/exports/bin 已声明

验证方式:npm registry 存在性 + package.json 静态校验 · 最后检查 2026/10/31 02:21:20

安全扫描自动 · 静态分析源码
v2.7.0
🔵 扫描:含敏感能力尚无人工评估
展开查看扫描说明与证据 ↓

静态扫描发现插件具备触达本地系统的能力:执行外部命令、读写/删除本地文件、读取剪贴板或密钥类环境变量(至少其一)。这是能力清单,不是危险判定——具体能力项与证据见下方,安装前请自行判断是否需要。

读写/删除本地文件发起外部网络请求
查看扫描证据(共 37 处,展示前 37 条)
  • 发起网络请求
    lib/client.js:1814
    const response = await window.fetch('/prts-theme-api/' + path, { credentials: 'same-origin', signal,
  • 发起网络请求
    lib/client.js:1835
    const response = await window.fetch('/prts-theme-api/backgrounds/image/' + entry.id, { credentials: 'same-origin', signal })
  • 发起网络请求
    lib/client.js:2416
    const response = await window.fetch(`${api}${path}`, { credentials:'same-origin', signal,
  • 发起网络请求
    lib/client.js:3150
    const response=await window.fetch(API+'/configuration',{credentials:'same-origin',signal:controller?.signal,
  • 发起网络请求
    lib/client.js:3177
    const response=await window.fetch(API+'/edit/'+role,{credentials:'same-origin',signal:controller?.signal})
  • 发起网络请求
    lib/client.js:3386
    const response = await window.fetch(BACKGROUND_ENDPOINT + '/configuration', {
  • 写入本地文件
    src/server/backgrounds.js:12
    await mkdir(directory, { recursive: true, mode: 0o700 })
  • 读取本地文件
    src/server/backgrounds.js:15
    try { state = JSON.parse(await readFile(configurationPath, 'utf8')) } catch (error) { if (error.code !== 'ENOENT') throw error }
  • 读取本地文件
    src/server/backgrounds.js:24
    return readFile(join(directory, id + '.webp'))
  • 写入本地文件
    src/server/backgrounds.js:50
    if (output) await writeFile(join(directory, entry.id + '.webp'), output, { mode: 0o600 })
  • 写入本地文件
    src/server/backgrounds.js:51
    await writeFile(temporary, JSON.stringify(next), { mode: 0o600 })
  • 写入本地文件
    src/server/backgrounds.js:52
    await rename(temporary, configurationPath)
  • 删除本地文件
    src/server/backgrounds.js:54
    if (output) await rm(join(directory, entry.id + '.webp'), { force: true }).catch(() => {})
  • 删除本地文件
    src/server/backgrounds.js:56
    } finally { await rm(temporary, { force: true }).catch(() => {}) }
  • 删除本地文件
    src/server/backgrounds.js:59
    if (previous && previous.id !== entry?.id) await rm(join(directory, previous.id + '.webp'), { force: true }).catch(() => {})
  • 写入本地文件
    src/server/avatars.js:10
    await mkdir(directory,{recursive:true,mode:0o700})
  • 读取本地文件
    src/server/avatars.js:13
    try{state=JSON.parse(await readFile(path,'utf8'))}catch(error){if(error.code!=='ENOENT')throw error}
  • 写入本地文件
    src/server/avatars.js:54
    try{await writeFile(temp,JSON.stringify(updated),{mode:0o600});await rename(temp,path)}
  • 写入本地文件
    src/server/avatars.js:54
    try{await writeFile(temp,JSON.stringify(updated),{mode:0o600});await rename(temp,path)}
  • 删除本地文件
    src/server/avatars.js:55
    finally{await rm(temp,{force:true}).catch(()=>{})}
  • 写入本地文件
    src/server/emblems.js:50
    await writeFile(temp,value,{mode:0o600});await rename(temp,path)
  • 写入本地文件
    src/server/emblems.js:50
    await writeFile(temp,value,{mode:0o600});await rename(temp,path)
  • 写入本地文件
    src/server/emblems.js:56
    await mkdir(directory,{recursive:true,mode:0o700})
  • 读取本地文件
    src/server/emblems.js:59
    const stored=JSON.parse(await readFile(join(directory,'configuration.json'),'utf8'))
  • 读取本地文件
    src/server/emblems.js:68
    try{return JSON.parse(await readFile(join(directory,`${checkedId(id)}.draft.json`),'utf8'))}
  • 读取本地文件
    src/server/emblems.js:101
    const bytes=await readFile(join(directory,`${d.sourceId}.source`))
  • 读取本地文件
    src/server/emblems.js:122
    if(previous)bytes=await readFile(join(directory,`${previous.sourceId}.source`))
  • 读取本地文件
    src/server/emblems.js:124
    const drafts=(await readdir(directory)).filter(f=>f.endsWith('.draft.json'))
  • 删除本地文件
    src/server/emblems.js:131
    for(const d of expired){await unlink(join(directory,`${d.id}.draft.json`));await unlink(join(directory,`${d.id}.png`))}
  • 删除本地文件
    src/server/emblems.js:132
    for(const sourceId of new Set(expired.map(d=>d.sourceId)))if(!retainedSources.has(sourceId))await unlink(join(directory,`${sourceId}.source`))
  • 读取本地文件
    src/server/emblems.js:165
    async image(id,source=false) {const d=await draft(id);return readFile(join(directory,source?`${d.sourceId}.source`:`${d.id}.png`))},
  • 发起网络请求
    src/client/custom-emblem.js:164
    const response = await window.fetch(`${api}${path}`, { credentials:'same-origin', signal,
  • 发起网络请求
    src/client/custom-avatar.js:22
    const response=await window.fetch(API+'/configuration',{credentials:'same-origin',signal:controller?.signal,
  • 发起网络请求
    src/client/custom-avatar.js:49
    const response=await window.fetch(API+'/edit/'+role,{credentials:'same-origin',signal:controller?.signal})
  • 发起网络请求
    src/client/custom-background.js:31
    const response = await window.fetch(BACKGROUND_ENDPOINT + '/configuration', {
  • 发起网络请求
    src/client/theme-transfer.js:108
    const response = await window.fetch('/prts-theme-api/' + path, { credentials: 'same-origin', signal,
  • 发起网络请求
    src/client/theme-transfer.js:129
    const response = await window.fetch('/prts-theme-api/backgrounds/image/' + entry.id, { credentials: 'same-origin', signal })
扫描于 2026/11/4(0 天前) · 范围 入口闭包 + 全包扫描 · 来源 npm 发布包

静态扫描只反映源码中出现的调用,不构成安全背书;人工评估与自动扫描相互独立、互不覆盖。

依赖的 DSH / Cordis 模块
@deepseek-ai/schemastery
给这个插件打分还没有人投票↓
用户评分
还没有人投票,来当第一个

功能亮点

  • 明日方舟同人UI
  • P.R.T.S.主题界面

非官方个人非商业明日方舟 P.R.T.S. 同人 UI,用于 DeepSeek Harness

v2.1.12026-10-20
以下为相对 v2.1.0 的变化: · 修复 Baker 代码块滚动时的边界溢出,保留原生顶部工具栏吸附,补齐工具栏底色与分隔线。 · 修复窄窗口下因设备报告触摸能力而拦截鼠标点击、导致主题导航无法打开的问题;保留触摸长按下滑与键盘操作。 · 优化明暗拖动切换,合并逐帧更新并减少大范围样式重算;将松手切换阈值从 50% 调整为 15%,同步调整提示。 · 分区背景下的主题导航栏支持独立透明度与模糊度:常驻时与会话侧栏连续显示同一背景,浮层展开时直接透出后方侧栏;修复图片裁剪及展开后毛玻璃延迟出现的问题。 · 当前支持 DSH 0.2.1-rc.2 的 Web 端与官方桌面客户端。DSH 0.2.0-rc.2 用户请固定主题 1.4.2,更早版本对应关系见 README。运行环境要求不变。
v2.1.02026-10-19
以下为相对 v2.0.0 的变化: · 为已有的 Baker 会话主题增加可选的回复加载动画:正文生成时显示三点动画,完成后展开回复。 · 新增自定义会话背景:可选择默认、分区或完整背景,分别上传侧栏、正文或整页图片并调整背景淡化程度;图片保存在当前 DSH 实例。主题偏好改用 DSH 原生配置持久保存和同步。 · 新增可选的输入框增强毛玻璃;为图片背景下的会话列表侧栏、设置侧栏、Baker 气泡和经典用户消息增加独立的透明度与模糊度调节,并调整设置布局与预览。 · 修复新版 DSH 会话卡片的置顶标记位置,更新侧栏视觉测试基线。 · 当前支持 DSH 0.2.1-rc.2 的 Web 端与官方桌面客户端:Web 端已在本地容器验证,桌面端已实机验收基础功能。需要继续使用 DSH 0.2.0-rc.2 的用户请固定主题 1.4.2,更早版本对应关系见 README。
v2.0.02026-10-19
· 破坏性变更:当前仅声明支持已在本地容器验证的 DSH Web 0.2.1-rc.2,插件市场的 engines.dsh 精确要求也已更新。使用 DSH 0.2.0-rc.2 时请固定主题 1.4.2;使用更早的 DSH 时请按 README 中的版本对应关系安装。该版本的官方桌面客户端仍待单独验证。 · 在真实页面复核主题挂载、工作区与会话卡片、长标题悬停和菜单、原生对话宽度拖动及窄窗口布局。 · 修复工作区状态列表从入口移入顶层浮窗时提前收起的问题,补充跨越间隙并点击会话的浏览器回归测试。
数据来自仓库的 GitHub Release,可能与插件实际版本不一致。

README

由 DeepSeek 最新模型翻译生成
dsh-theme-prts 面向 DeepSeek Harness Web 和官方桌面客户端的个人、非商业明日方舟 / P.R.T.S. 同人 UI 插件。主题保留 Harness 的原生交互和数据流,把工作区、会话与对话组织成罗德岛设施终端。 [!IMPORTANT] 本项目是个人制作的非官方《明日方舟》同人主题,与上海鹰角网络科技有限公司及相关发行方不存在隶属、合作、授权或背书关系。 MIT 许可证仅覆盖本项目原创代码。安装包中若干可识别的《明日方舟》名称、角色图像、徽记及其衍生素材不属于 MIT 授权范围,本项目不向使用者授予复制、修改、再分发、再许可或商业使用这些第三方素材的权利。 素材可从公开网页访问不代表获得再利用或再分发授权;免费、非商业使用也不当然构成授权。素材来源与许可边界详见 第三方素材说明。 本项目及其发行包可能因权利人请求、平台政策或维护者决定,随时暂停发布、限制下载或移除相关素材,不保证持续提供。 主题安装后默认关闭,不会立即改变页面。 Baker 会话主题参考《明日方舟:终末地》的通讯界面。在主题设置「外观」中选择 Baker,点击用户或 AI 头像即可上传、裁剪或恢复默认。原图与裁剪位置保存在服务端,同一 DSH 实例内共享,之后可继续裁剪;支持拖动定位、滑块及滚轮/触摸板缩放。确认后保存,动图使用第一帧,单张最大 5 MB。
展开完整文档(README 剩余 1 节)
dsh-theme-prts

面向 DeepSeek Harness Web 和官方桌面客户端的个人、非商业明日方舟 / P.R.T.S. 同人 UI 插件。主题保留 Harness 的原生交互和数据流,把工作区、会话与对话组织成罗德岛设施终端。

[!IMPORTANT]
本项目是个人制作的非官方《明日方舟》同人主题,与上海鹰角网络科技有限公司及相关发行方不存在隶属、合作、授权或背书关系。

MIT 许可证仅覆盖本项目原创代码。安装包中若干可识别的《明日方舟》名称、角色图像、徽记及其衍生素材不属于 MIT 授权范围,本项目不向使用者授予复制、修改、再分发、再许可或商业使用这些第三方素材的权利。

素材可从公开网页访问不代表获得再利用或再分发授权;免费、非商业使用也不当然构成授权。素材来源与许可边界详见 第三方素材说明。

本项目及其发行包可能因权利人请求、平台政策或维护者决定,随时暂停发布、限制下载或移除相关素材,不保证持续提供。

主题安装后默认关闭,不会立即改变页面。

Baker 会话主题参考《明日方舟:终末地》的通讯界面。在主题设置「外观」中选择 Baker,点击用户或 AI 头像即可上传、裁剪或恢复默认。原图与裁剪位置保存在服务端,同一 DSH 实例内共享,之后可继续裁剪;支持拖动定位、滑块及滚轮/触摸板缩放。确认后保存,动图使用第一帧,单张最大 5 MB。

兼容性

- 当前支持 DeepSeek Harness 0.2.1-rc.2、0.2.1-rc.3 和 0.2.1-rc.5 的 Web 端;官方桌面客户端仍以 0.2.1-rc.2 的实机验收为准,rc.3、rc.5 桌面端尚未单独验证。此前的 0.2.0-rc.2、0.1.7、0.1.5、0.1.2 发布线不再列入当前兼容声明。
- Web 端已验证主题挂载、工作区和会话卡片、长标题悬停、原生对话宽度拖动及窄窗口布局。rc.3 新增的左侧「更多」、会话「更多会话视图」及右侧「更多工具」菜单已在本地真实页面检查,保留主题菜单材质及原生选项悬停效果。
- rc.5 保留宿主对思考文本的处理,主题不接管 conversation.chat.reasoning.body 的 text/rawText;思考区域展开、收起及背景材质已在本地真实页面验证。
- package.json 中的 engines.dsh 仅列出这三个候选版本,插件市场可据此判断兼容性。其他 DSH 版本需另行验证。
- 若仍使用 DSH 0.2.0-rc.2,请固定上一公开主题版本 @ash-qw/dsh-theme-prts@1.4.2;使用 DSH 0.1.7-rc.2 时请固定 1.0.2,使用 DSH 0.1.2 或 0.1.5 发布线时请固定 0.1.102。

主题设置通过 DSH 原生配置服务保存,同一 profile 下的在线页面会同步更新。首次接入时,仅当服务端尚未保存主题配置,才迁移当前浏览器的旧设置;已有服务端配置优先。保存冲突或失败会显示提示,不自动重传旧配置;「重试保存」会按当前版本重新提交失败的修改。部分旧版 DSH 的远程访问仅支持内存配置,此时会提示未保存,需要宿主提供持久化支持。升级后需重新加载主题服务端插件,才能注册新增配置。

安装与更新

Web 端与官方桌面客户端使用同一个主题包 @ash-qw/dsh-theme-prts,无需单独的桌面版主题。

以下为 Web 端的命令行安装方式,在已经可以正常运行 DSH Web 的环境中执行:

npx @deepseek-ai/dsh plugin --profile web add @ash-qw/dsh-theme-prts

安装或更新后建议重新启动所使用的 DSH Web 服务或官方桌面客户端,以确保主题被完整加载。然后进入“Settings → 插件 → P.R.T.S.”启用主题;完整外观设置位于主界面左上角的罗德岛徽记。

主题包已公开发布到 npm,无需 GitHub 登录或访问令牌。重新执行安装命令即可更新到 latest;如需锁定版本,可使用 @ash-qw/dsh-theme-prts@<版本号>。若命令提示 pnpm not found,请先安装 pnpm。

当前特性

- P.R.T.S. / Rhodes Island / RIIC 设施化工作区、会话与对话界面;
- 与 Harness 同步的日间 / 夜间模式、三套外观预设和四档界面材质;
- 城市剪影、阵营粒子徽记、会话声纹和 P.R.T.S. 启动序列;
- 电脑、平板和手机屏幕布局,以及减少动效和降低透明度适配;
- PRTS 手形光标,支持按下、按住和松开效果(大型背景容器保持静态,避免长会话卡顿);可点击区域使用 link 手形,调整大小使用四向静态光标;文本框和正文文字使用静态 I 形光标,可在主题设置中关闭“PRTS 光标”以使用系统光标;
- 无运行时网络请求、分析统计或额外遥测。

鼠标素材来自 crowninggg/prts-cursor v1.1.4,提取后适配为网页光标;来源、处理方式和许可边界见 第三方素材说明。

使用与设置

“Settings → 插件 → P.R.T.S.”提供主题总开关和启动动画开关。主界面左上角的罗德岛徽记提供完整外观设置,按外观、交互、会话流线、粒子效果四页切换。各页保留滚动位置;窄屏使用顶部分类栏,也支持方向键切换。
在「粒子效果 → 徽记管理」中,可分别设置新会话的单张徽记与正文的轮换列表。正文列表支持内置与自定义图案混排,每张可预览、上传替换或删除,长按徽记选项任意位置即可拖动排序,松开自动保存,Esc 取消,也可新增徽记(最多 12 张,至少保留 1 张);新增和「预览 / 替换」使用独立编辑弹窗,桌面端左右布局、窄屏上下布局;拖动预览取景框中的图案调整裁剪位置,平移只改变点阵位置及可见范围,不重新排列粒子,也支持方向键微调和「居中」复位,缩放仍由滑块控制;取消或关闭时,未应用的修改会先询问是否放弃,关闭后返回原列表位置。两处均可独立恢复内置设置;存在自定义徽记时会先列出受影响的素材,提供逐张导出及恢复确认。未导出就恢复后,相关素材将无法从此处的设置中找回。上传 PNG、WebP 或 JPEG 后可调整轮廓提取、阈值、缩放及裁剪位置;「线稿轮廓」模式提取图像边缘,并按各档密度采样为点阵,阈值越高保留的细节越少。线稿模式下可选择「彩色图提轮廓」或「纯线稿提笔画」,点阵会自动细化;「去除碎线」独立控制孤立短线过滤,五官细节丢失时可降至 0。复杂人物图建议先简化背景和纹理。点击「应用到此处」后才会保存。正文沿用滚动触发的轮换、扰动与重组效果。图片上传到当前 DSH 实例,在独立后台线程处理;原图、参数、草稿和已应用配置保存在 $DSH_HOME/plugins/dsh-theme-prts/emblems,不同工作区、会话及连接此实例的浏览器共享徽记设置。已应用图案可以重新打开继续调整,页面会自动同步。不会由主题插件发送给第三方图片服务。支持最大 8 MB、1600 万像素的图片,推荐透明底标志或黑白剪影。

自定义徽记可点击「导出素材」,下载单张 .prts-emblem.json 素材包,包含原图和调整参数。在另一套 DSH 的「新增徽记」或「预览 / 替换」中选择「导入徽记素材包」,预览确认后应用;导入后仍可继续编辑,不会自动覆盖首页徽记或正文列表。素材包上限 12 MB,导入时会按原参数重新生成粒子。

也可以在任意允许这些工具的 DSH 会话上传图片,说「帮我把这张图做成 PRTS 粒子徽记,先给我预览」。AI 生成或编辑的图片也可直接作为来源:先用 read_image 读取工作区中的图片,再调用 inspect 获取附件标识,无需下载后重新上传。接口识别当前会话上传及工具返回的图片,不接受任意附件标识;徽记工具自身返回的粒子预览不作为原图。AI 可调用 prts_emblem_inspect、prts_emblem_preview 和 prts_emblem_apply,使用 mode: lineart 生成线稿点阵(lineSource: edges 提取彩色图轮廓,lineSource: ink 提取纯线稿笔画,cleanup: 0..12 控制碎线过滤),或继续调整提取方式、阈值、缩放和裁剪,并按要求应用到新会话或正文轮换列表。生成预览不会改变已应用徽记,配置冲突会要求重新读取。预览图可在会话工具卡片中展示;使用支持图像输入的模型时,工具也会把预览图片交给模型分析。重画图案仍需要该会话另有图片编辑工具。保留最近约 200 份草稿,已应用徽记的编辑源不会被自动清理。服务端图片处理需要 Node.js 20.9 或更高版本。

主题不会主动改写第三方插件的菜单、弹窗和浮层样式。

安全模式与恢复

若主题导致页面不可用,在 Harness 地址后添加 ?prts-safe=1。安全模式会阻止所有主题视觉挂载,但保留「Settings → 插件 → P.R.T.S.」中的基础开关和恢复提示。在此页面关闭主题会保存到 DSH;清除浏览器缓存不会重置服务端设置。

卸载

npx @deepseek-ai/dsh plugin --profile web remove @ash-qw/dsh-theme-prts

卸载后建议重新启动 DSH Web。主题偏好保存在 DSH 当前 profile 的原生配置中,浏览器只保留启动缓存。多个全局主题可能发生 CSS 冲突,建议一次只启用一个完整 UI 主题。

开发

需要 Node.js 20.9 或更高版本(推荐与 DSH 一致使用 Node.js 24):

npm ci
npm run check

版本变化见 CHANGELOG.md,维护者发布步骤见 RELEASING.md。

在 DSH 会话中设置 Baker 头像

可上传图片后对 AI 说:「把这张图设为我的 Baker 头像,裁剪到人物面部。」也可以让 AI 生成或编辑图片后直接设置。工具 prts_avatar_inspect 查看当前配置与会话图片;prts_avatar_apply 支持更换用户/AI 头像、基于已有原图重新裁剪和恢复默认。头像在当前 DSH 实例共享,保存替换后不保留旧原图;仅在 Baker 会话主题下显示,工具不会切换设备本地的主题选项。

自定义会话背景

在主题设置的「会话外观 → 会话背景」中,可选择默认背景、分区背景或完整背景。分区模式分别设置左侧边栏与会话正文;只有正文图片时,左侧边栏使用半透明材质显示其下方的背景;左侧边栏有独立图片时,仍显示自己的图片。右侧边栏在正文或完整背景上也使用半透明材质。完整模式以同一张图片贯穿各区域。图片居中铺满,可调节背景遮罩提高文字可读性;分区模式下正文图片固定在主框架坐标上,侧栏展开时不重新缩放图片。切换模式或恢复默认设置不会删除图片,点击「移除图片」才会删除对应素材。

支持 PNG、JPEG、WebP、AVIF,单张不超过 10 MB、4000 万像素。服务端自动转为 WebP 并限制在 3840×2160 内,保存在 $DSH_HOME/plugins/dsh-theme-prts/backgrounds。替换或移除后清理旧图片,不保留历史原图。模式和遮罩通过 DSH 原生配置同步,图片在当前实例共享。

自定义背景下,可分别调整左侧边栏、右侧边栏、设置侧栏、Baker 气泡和经典主题用户消息的材质透明度,默认值依次为 94%、94%、70%、50%、50%(数值越高越透明)。左侧边栏与右侧边栏的透明度和模糊度可独立设置;旧配置没有右侧边栏数值时,初始沿用左侧边栏数值。圆环支持鼠标或触屏拖动、方向键微调与直接输入百分比;拖动时本地预览,松手保存,Esc 或指针取消时回退。对应图片启用后,还可用滑杆调整模糊度(0–32px,默认依次为 8、8、12、8、8px),调节时预览,松手后保存。透明度和模糊度均可单独恢复默认;纯色背景不显示模糊度调节。右侧边栏材质需要启用正文或完整背景;设置侧栏材质需要启用左侧边栏或完整背景;消息材质需要启用正文或完整背景,并在相应会话主题下生效。
「会话主题」和「会话背景」分为独立设置页。输入框增强毛玻璃位于背景页:默认背景下可以开关,分区或完整背景下始终开启,切回默认背景时恢复原有开关选择。Baker 可开启「回复完成前显示加载动画」(默认关闭),每轮正在生成的正文暂以三点明暗动画代替,完成或中断后显示收到的正文;经典主题、思考过程与工具卡片不受此开关影响。

背景图片可设置独立的保护区域:点击「保护重要区域」,在弹窗中拖动默认保护框移动或拖动四边或四角缩放,原图边缘显示百分比坐标尺。侧栏按当前高度并排预览较窄/较宽侧栏,正文与完整背景并排预览横向/纵向窗口,实时显示裁剪效果,无法保留完整区域时仅在设置中提示。保存后保持居中铺满,仅在必要时最小幅度移动图片以保住保护框;框无法完整容纳时,横向优先保留中心、纵向优先保留顶端,并限制偏移以避免露底。清除保护区域后恢复居中裁剪;替换图片会清除旧框。保护区域随图片在当前实例同步,并包含在完整主题导入导出中。

背景、头像和徽记图片、徽记素材包以及主题文件均支持拖拽到对应上传区域,一次添加一个文件,沿用各入口的类型和大小限制。替换已有背景时,会先在主题弹窗中显示新旧图片,确认后保存。

导入与导出主题

点击主题设置底部、与「恢复默认」并列的「导入与导出」,在弹窗中下载 .prts-theme.json 文件。「包含自定义素材」默认勾选:包含全部主题设置,以及当前已配置的背景图片、用户/AI 头像、首页与正文徽记及排列。头像保留原图和裁剪参数,徽记保留原图和编辑参数,背景保存当前使用的 WebP 图片;历史素材和临时草稿不包含在内。取消勾选则仅导出设置。

导入时先读取文件并显示摘要,确认后保存到当前 DSH 实例。仅配置文件保留目标端现有素材;完整文件替换素材及徽记排列,空素材项恢复默认。旧文件缺少的设置保留当前值;遇到当前版本不认识的配置字段时,确认前会列出导入后无法保留的字段;不支持的文件版本会提示更新。文件最大 160 MB,不包含会话、账户或连接凭据。

读取文件、导出、导入及恢复时会显示阶段进度。读取和导出可中途取消;导入或恢复取消后,会等待当前写入确认并尝试回退已写入素材。最终保存与回退阶段不可取消。导入、导出分块在对应操作期间保持高亮。

每次导入前会发起当前配置备份下载,请确认保存。当前页面也可点击「恢复导入前配置」,恢复最近一次导入前的状态;刷新后请使用下载的备份文件。保存失败会尝试回退已确认写入的素材;若连接中断或其他页面并发修改导致无法完整恢复,会显示错误,可在确认当前状态后重新导入备份。
预览分享卡片长什么样 ↓ash-qw/dsh-theme-prts
分享 · DeepSeek Harness Hub
ash-qw/dsh-theme-prts

面向 DeepSeek Harness Web 和官方桌面客户端的个人、非商业明日方舟 / P.R.T.S. 同人…

这是你的仓库?认领条目

回到顶部