前言¶
DeepSeek Harness(DSH)通过插件系统扩展功能,开发者常需要接入外部数据源。手动管理 RSS/JSON 来源、按分类聚合、翻译与去重,这些操作分散在不同工具中,维护成本高。c-ling/dsh-plugin-newsboard 作为一个客户端插件,为 DSH 提供了统一的 AI/科技快讯看板。
插件定位¶
dsh-plugin-newsboard 是 DeepSeek Harness 0.2.1+ 的 AI 与技术快讯看板插件,由 c-ling 维护。它将来源抓取、分类过滤、双语翻译与设置整合到一个侧边栏独立页面,支持 Web 与 Desktop 双端一致体验。
核心功能¶
侧边栏入口与独立页面¶
插件在 DSH 0.2.1+ 中采用官方同款左侧边栏入口(sidebar.panellist)与独立主页面(main key newsboard)。页面结构为固定页头、Tab 行与页脚,中间内容区域可滚动。页面在 Web 端显示 🌐 Web 标识,在 Desktop 端显示 🖥 桌面端 标识,macOS 额外预留 --dsh-frame-top-clearance 顶部安全区。
动态分类与关键词¶
预设四个分类:AI、科技、游戏、生活。每个分类由名称和一组关键词组成,可在设置中新增、删除、改名与编辑关键词。Tab 顺序跟随分类顺序。全部 Tab 始终显示所有已抓取消息,不会因关键词不匹配而丢失消息。
分类来源矩阵¶
内置 24 个来源渠道,按分类勾选归属,同一来源可归入多个分类。每个来源下方标注内容倾向说明(如「机核:中文游戏文化、评测与开发者访谈」)。宿主只抓取被任一启用分类选中的来源并自动去重。
未读计数¶
侧边栏「快讯看板」右侧显示未读数,页面标题右侧显示数字徽标,列表内对应的新消息显示「新」标签和蓝色描边。未读以「上次离开看板」为基线;首次安装时将当前缓存视为已读,避免一上来显示大量未读。
分类启用/禁用与删除保护¶
每个分类都有启用开关;禁用后不再拉取该分类独有来源,该分类的 Tab 隐藏,旧缓存中的独有来源消息不再出现在「全部」。预设分类不可删除,只可禁用/修改;删除自定义分类会弹出二次确认窗。
双语条目¶
默认调用 DSH 当前已配置的模型,将英文标题/摘要翻译成中文并随抓取缓存保存。也可切换百度翻译(通用 / 大模型)、有道翻译或 DeepL。翻译失败时自动回退原文,中文优先展示,原文作为副标题。
设置页与只写凭据¶
设置页包含分类与关键词、分类来源矩阵、翻译开关与接口凭据、刷新间隔、展示条数、时间窗、全局屏蔽词等配置。保存按钮位于 Tab 行右侧,只保存设置 Tab 自己的配置切片。翻译密钥/API Key 在读取时始终返回空串,只通过 secretSet 告知是否已配置;留空保存表示保持原值。
低打扰与双语 UI¶
插件不弹通知、不发声。侧边栏入口每 60 秒静默拉取一次,宿主仅在缓存过期时抓取来源。中文/English 随「设置 → 通用 → 语言」实时切换,无需刷新。
安装与启用¶
目标运行时:DeepSeek Harness 0.2.1+(Desktop 0.2.1-rc.2 与更新版本、Web 0.2.1+)。本包声明了 dsh.bundle,推荐按 bundle 安装。
Bundle 安装(推荐)¶
# Web
dsh plugin --profile web add "github:c-ling/dsh-plugin-newsboard#v2.0.0"
# 或
npx @deepseek-ai/dsh plugin --profile web add "github:c-ling/dsh-plugin-newsboard#v2.0.0"
# Desktop(退出 App 后使用自带 CLI,或在 Plugins 页面安装该 tag)
dsh plugin --profile desktop add "github:c-ling/dsh-plugin-newsboard#v2.0.0"
dsh plugin add 会把包写入 dsh.profile.bundles,包内 cordis.patch.yml 负责插入 loader 行;不要同时手写同一条 loader 行。Desktop profile 由 App 管理,npx @deepseek-ai/dsh ... --profile desktop 会被拒绝,请使用 App 自带 CLI 或 Plugins 页面。
手动依赖 + loader 行(与 bundle 二选一)¶
cd ~/.dsh/profiles/web
corepack pnpm add "github:c-ling/dsh-plugin-newsboard#v2.0.0"
然后在 ~/.dsh/profiles/web/cordis.patch.yml 增加:
- insert:
- id: dsh-plugin-newsboard
name: 'dsh-plugin-newsboard'
bundle 与手动 loader 行不要同时使用,否则会重复激活。安装/更新后必须重启宿主(Web 重启 dsh web,Desktop 退出并重新打开 App),再硬刷新页面;client-modules 按进程缓存包裁决。
典型用法¶
- 左侧边栏点击「快讯看板」,页面默认打开「全部」;侧边栏和标题右侧的未读数来自上次离开后新增的消息。
- 页头搜索框在当前分类内过滤;刷新按钮立即触发宿主抓取。
- 切到「设置」:
- 「分类」中改名、编辑关键词、启用/禁用分类、添加分类;预设分类不可删除,自定义分类删除会弹出二次确认窗;
- 「来源渠道」矩阵中勾选每个来源归属的分类,来源下方有内容倾向说明;
- 保存按钮在 Tab 行右侧,保存后立即按新分类/关键词重新归属消息,并触发一次后台刷新。 - 分类/关键词/来源变化保存后,宿主刷新一次;翻译日志与抓取日志在设置卡片右上角查看。
- 再次从其他页面进入时自动回到「全部」;页面不持久化 Tab。
数据与迁移¶
- 配置:
$DSH_HOME/storages/dsh-plugin-newsboard/config.json(可用 entry configdirectory覆盖目录)。 - 抓取缓存:
feed-cache.json;日志:logs.json。 - 旧版
config.json.migrated会在首次启动时一次性导入为新的config.json,备份保留。 - 0.1.x 的
settings.yaml命名空间不再使用;如果旧配置只在 settings 文档里,请在新页面重新填写(历史config.json.migrated仍可恢复大部分字段)。
适用场景与注意¶
本插件适合需要在 DSH 中集中查看 AI 与科技快讯的开发者与使用者。安装前请确认宿主版本为 0.2.1+,并检查源码与许可证(MIT)。插件以当前 DSH 进程权限运行,安装与配置请按官方说明操作。
小结¶
dsh-plugin-newsboard 在 DSH 中提供了一个统一的快讯看板入口,覆盖来源抓取、分类过滤、双语翻译与设置管理,适合需要持续追踪 AI/科技动态的场景。更多细节与源码见目录页与 GitHub 仓库。