
Security News
Deno Goes the Way of the Dinosaur
Cloudflare is acquiring Deno’s team, which will provide another year of bug fixes and security updates before ending support for the runtime.
adhdgofly-dsh-ext
Advanced tools
ADHDGoFly POS highlighting for DeepSeek Harness Web: nouns green, verbs red, adjectives/adverbs purple, others gray, in rendered Markdown (conversation messages, deliverables, etc.) + local word-frequency statistics (spiral word cloud, trends) + floating
把 adhdgofly-ide-ext 的词性高亮机制搬进 DeepSeek Harness(DSH)Web 界面:在已渲染的 Markdown 内容区(对话消息、Deliverables 等)把名词染绿、动词染红、形容词/副词染紫、其他染灰,支持深/浅双色板、词性筛选即时开关、流式输出防抖与代码块豁免。
本插件是纯客户端 DOM 后处理插件(dsh.client 双面包),不改 DSH 源码;分词引擎与压缩词典来自 ADHDGoFly 生态(MIT),经 npx @deepseek-ai/dsh plugin --profile web add 一条命令安装。
theme 服务),颜色与 adhdgofly-ide-ext 一致。color(文字变色,默认)/ highlight(背景框 + 边框)。[data-streaming] 消息流完前跳过,settle 后自动高亮;MutationObserver + 防抖 + 重入锁。pre/code、.markdown-code-block、按钮/输入框/装饰区不参与高亮。data-adhdgofly-highlight 属性的元素自动被高亮(无需写入 containers 配置、无需重新加载)——openharness-reader 的 Markdown 预览即用此契约接入;其他插件可照此联动。未带该属性的页面不受影响。adhdgofly settings 命名空间(宿主侧 schema 持久化,loopback 下改任一处另一处自动同步);远程浏览器自动回退 localStorage。可在设置里用「设置入口 / Settings entry」选择只留一种(both/classic/plugin-card,刷新生效)。statsEnabled 可整体关闭统计。前置:本机已安装 DeepSeek Harness(DSH),且已初始化 web profile(npx @deepseek-ai/dsh web 跑过一次即可)。当前版本 0.1.5。
# 1) 安装 DSH(首次)
npx @deepseek-ai/dsh web
# 2) 安装插件
npx @deepseek-ai/dsh plugin --profile web add adhdgofly-dsh-ext
# 若 pnpm ≥ 10 报 ERR_PNPM_ADDING_TO_ROOT,命令末尾加 -w:
npx @deepseek-ai/dsh plugin --profile web add -w adhdgofly-dsh-ext
⚠️ 命令行安装后必须重启 DSH 才生效
- 在正在运行的 DSH Web 终端按
Ctrl+C停止当前进程;- 重新启动:
npx @deepseek-ai/dsh web(若机器已把dsh装进 PATH,dsh web/dsh --profile web与之等价,任选其一)- 等 Web 界面重新打开后刷新浏览器页面。
不重启的话,正在运行的 DSH 进程的 boot 图里没有本插件,刷新页面也不会加载它。
npx @deepseek-ai/dsh plugin add 会:
~/.dsh/profiles/web 里 pnpm add 本包;dsh.bundle 声明,把 adhdgofly-dsh-ext 追加进 dsh.profile.bundles,成为 profile 补丁层。# 升级到最新版(当前 0.1.5)
npx @deepseek-ai/dsh plugin --profile web update adhdgofly-dsh-ext
# 卸载
npx @deepseek-ai/dsh plugin --profile web remove adhdgofly-dsh-ext
Ctrl+C 停止 → npx @deepseek-ai/dsh web 重启 → 刷新浏览器。# 在插件仓库目录或其父目录执行(file: 相对路径以调用目录为锚)
npx @deepseek-ai/dsh plugin --profile web add file:../adhdgofly-dsh-ext
file: 依赖是符号链接:客户端改动 npm run build 后刷新页面即可(DSH Web 无 HMR);patch / bundles 改动需重启 profile。安装后同样需要按上面的提醒重启一次才生效。
npx @deepseek-ai/dsh --profile web --dump-config | grep -A3 adhdgofly # 合成树里应有插件行
# 浏览器 DevTools → Network 应能看到 /plugins/adhdgofly-dsh-ext/client.js 正常返回
说明:v0.1.3 起配置面走 rc.7 插件设置机制——host 半注册
adhdgoflysettings 命名空间(schemastery schema,row config 作为 base 层),client 半经ctx.settingsScope读取;loopback 下由宿主持久化,localStorage 仅作远程浏览器的回退缓存(见 §配置)。
本插件是标准的 DSH npm 插件包:dsh.bundle.patch 声明 + exports["./client"] 浏览器 bundle。推荐发布到 npm(DSH 官方同步开放 npm 插件生态),GitHub 仅作源码托管;从 GitHub 直接安装也可用,但需要额外配置(见下)。
前置:npm 账号已登录(npm login;未登录发布会报 E401),包名未被占用(npm view adhdgofly-dsh-ext 返回 404 即可用)。
npm run build:all # 1) 生成压缩词典 2) 构建 lib/(prepublishOnly 会自动执行)
npm test # jsdom 冒烟测试(prepublishOnly 会自动执行)
npm publish # 发布:自动跑 prepublishOnly(build:all + test)后再上传
files 字段决定:lib/(host + client bundle)、dicts/(压缩词典)、cordis.patch.yml、README.md(LICENSE / package.json 自动包含),压缩后约 4.4MB。npm version patch|minor|major && npm publish。npx @deepseek-ai/dsh plugin --profile web add adhdgofly-dsh-ext(pnpm ≥ 10 报错时末尾加 -w);升级用 npx @deepseek-ai/dsh plugin --profile web update adhdgofly-dsh-ext。npx @deepseek-ai/dsh plugin --profile web add github:你的用户名/adhdgofly-dsh-ext
# 或 git+https://github.com/你的用户名/adhdgofly-dsh-ext.git
注意:pnpm 默认阻止依赖的构建脚本(prepare),且本仓库 .gitignore 排除了 lib/ 与 dicts/ 构建产物。git 安装若要可用,二选一:
git add -f lib dicts(构建产物随源码提交,仓库体积约 +17MB);prepare 构建脚本,并在安装方 ~/.dsh/profiles/web/pnpm-workspace.yaml 的 allowBuilds 中放行本包(pnpm 会在安装时打印所需的精确配置项)。因此日常发布以 npm 为主,GitHub 用于源码协作、issue 与版本标签。
| 配置项 | 默认 | 说明 |
|---|---|---|
enabled | true | 总开关 |
languages | ['en','zh'] | 启用词典语言 |
minWordLength | 2 | 最小词长 |
decorationStyle | 'color' | color 变色 / highlight 背景框 |
posFilter | ['n','v','a','o'] | 词性筛选(n 名词 / v 动词 / a 形副 / o 其他) |
containers | ['[data-conversation-scroll]'] | 高亮根容器 CSS 选择器,可追加其他 Markdown 渲染区 |
三种改法(按优先级):
adhdgofly 命名空间,loopback 下由宿主持久化、互相同步;改动即时生效。~/.dsh/profiles/web/cordis.patch.yml 按 id 覆盖整行):作为命名空间的 base 层,经 ctx.settingsScope 流入 client(rc.7 起生效)。src/host/index.ts 的 SCHEMA 默认值 与 src/client/config.ts 的 DEFAULT_CONFIG 后重新构建。远程浏览器(非 loopback)说明:DSH 的 settings RPC 仅限 loopback,远程浏览器里设置不持久化、插件卡片不显示;此时高亮使用 localStorage 回退缓存(本地记忆)或内置默认。
npm install
npm run build:all # 1) 生成压缩词典(读 adhdgofly-ide-ext 大词典)2) 构建 lib/
npm run typecheck
npm test # jsdom 冒烟测试(分词/代码块豁免/流式/色板/筛选)
IDE_EXT_ROOT 环境变量可指向其他 adhdgofly-ide-ext 检出(默认 /Users/burenweiye/Documents/GitHub/adhdgofly-ide-ext)。npm run build → 刷新页面(file: 依赖是符号链接,无需重装;DSH Web 无 HMR,见下)。hmr 行被 disabled),client 改动 = 重新 build + 刷新。| 产物 | 说明 |
|---|---|
lib/client.js | 浏览器 bundle(window.__ModuleLoader__.load 格式),内嵌压缩词典,约 8MB 未压缩 |
lib/index.js | host 半:注册 adhdgofly settings 命名空间(schemastery schema + base 层),ESM |
dicts/en.compact.json、dicts/zh.compact.json | word → posKey('n'|'v'|'a'|'o'),构建期从 ide-ext 大词典生成,运行时只读压缩形态 |
MarkdownText 渲染完成 → MutationObserver(防抖 400ms + 重入锁 + WeakMap 已处理文本)
→ 取目标容器文本节点(跳过 pre/code/.markdown-code-block/交互控件/[data-streaming])
→ 纯引擎 segmentMixed(内嵌压缩词典 + en 词形还原)→ matchSegments(长度/词性筛选)
→ 包 <span class="adhdgofly-hl" data-pos="n|v|a|o">
→ 注入/更新 #adhdgofly-style(配色 + decorationStyle + posFilter CSS 覆盖)
→ 主题变化(theme/change)→ 重渲染样式表,span 自动跟随
详见仓库根目录 000-adhdgofly-dsh-ext-plan.md(规划)与 001-adhdgofly-ide-ext-reference.md(移植参考)。
| 项目 | 说明 | 获取方式 |
|---|---|---|
| adhdgoflyplugin(浏览器扩展) | 浏览器任意网页的词性高亮 | Chrome 应用商店 · Edge 加载项 |
| adhdgofly-ide-ext | VS Code 扩展:编辑器内词性高亮 | GitHub |
| adhdgofly-dsh-ext(本插件) | DSH Web 界面词性高亮 | npx @deepseek-ai/dsh plugin --profile web add adhdgofly-dsh-ext |
dictionaries/EN_word.json、ZH_word.json,MIT 生态),其中英文词典来自 Princeton WordNet(WordNet License),中文词典来自 jieba 分词词库(MIT);经 scripts/build-dicts.mjs 压缩为 dicts/*.compact.json 随包分发,独立发布时请注明数据来源与生成脚本。我(zuoguyoupan2023)开发维护的一系列 DeepSeek Harness(dsh)插件,均可按需通过 App 插件中心「特别推荐」,或命令行 npx @deepseek-ai/dsh plugin --profile web add <name> 安装:
| 插件 | 作用 | GitHub 仓库 | 安装 |
|---|---|---|---|
| adhdgofly-dsh-ext | DSH Web 界面词性高亮(名绿/动红/形紫/其他灰) | zuoguyoupan2023/adhdgofly-dsh-ext | npx @deepseek-ai/dsh plugin --profile web add adhdgofly-dsh-ext |
| openharness-reader | 工作区文件浏览/编辑 + Markdown 预览 | zuoguyoupan2023/openharness-reader | npx @deepseek-ai/dsh plugin --profile web add openharness-reader |
| openharness-reply-in-cn | 强制模型用简体中文回复,侧边栏「中文回复」项 | zuoguyoupan2023/openharness-reply-in-cn | npx @deepseek-ai/dsh plugin --profile web add openharness-reply-in-cn |
| openharness-rule-for-dsh-plugin | 注入 DSH 插件开发的 CAN/SHOULD/MUST NOT 规范,侧边栏「插件开发规范」项 | zuoguyoupan2023/openharness-rule-for-dsh-plugin | npx @deepseek-ai/dsh plugin --profile web add openharness-rule-for-dsh-plugin |
FAQs
ADHDGoFly POS highlighting for DeepSeek Harness Web: nouns green, verbs red, adjectives/adverbs purple, others gray, in rendered Markdown (conversation messages, deliverables, etc.) + local word-frequency statistics (spiral word cloud, trends) + floating
We found that adhdgofly-dsh-ext demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 1 open source maintainer collaborating on the project.

Security News
Cloudflare is acquiring Deno’s team, which will provide another year of bug fixes and security updates before ending support for the runtime.

Security News
Anthropic’s free OSS Scanner uses Mythos and other Claude models to find open source vulnerabilities and send maintainers reports with proposed fixes.

Security News
On Front Lines’ Early Adopters: CISO podcast, Andrew Becherer shares lessons from Datadog, weighs the long-term costs of AI-built tools, and explains how founders can actually gain a CISO’s trust.