deepseek-harness
deepseek-ai
DeepSeek Harness: Everything is a Plugin.
PROJECT TOPICS
INSTALL REFERENCE
dsh plugin --profile web add github:SH-9999/what-was-that
该命令指向仓库当前默认分支;尚无绑定当前 commit 的完整验证结果。
PROJECT README
dsh-plugin
DeepSeek Harness 插件
npm: v0.1.11
CI: typecheck · test · build
MIT License
静态插件
一个可爱的小章鱼桌面宠物插件,自动帮你"看懂" AI 回复里的术语和黑话。
当 AI 助手的回答里出现你不认识的技术词(比如 RAG、LoRA、MCP)时,右下角的小章鱼会亮起红色角标;点一下,它就用"大白话 + 生活比喻"给你讲清楚。想再深挖,还能让 AI 再解释几轮。
从最初的动态插件原型(粘贴 JS),重写为规范的 TypeScript 静态插件包,现已发布到 npm(what-was-that@0.1.11)。
v0.1.11 已验证兼容 DeepSeek Harness 0.1.5-rc.1(0.1.5 系列首个候选版,汇总了自 0.1.2-rc.1 以来的全部变更),主要变更:
llm 流 finish chunk 的 reason 形状变化(v0.1.11):0.1.5 中流式输出的结束 chunk reason 由字符串改为对象({ kind: 'error' | 'aborted', failure }),旧版 chunk.reason === 'error' 的字符串比较永远不成立,导致 AI 深挖/解释失败时被误报为「模型没有返回内容」。现改为比较 chunk.reason?.kind,失败原因提示恢复准确(「模型调用未完成(error / aborted)」)。fs 服务注入(v0.1.10 起):0.1.5 中 fs 是独立的 cordis 服务,ctx.get('fs') 在插件 apply 阶段只有在 inject 中显式声明才能拿到。host 入口 inject 从 ['typert'] 改为 ['typert', 'fs'],修复了启动时的 wwt: no fs service 警告,本地词库(lexicon.json)与宠物 SVG 现在都能在启动阶段正常加载(此前只有运行时 remote 调用才能拿到 fs)。dsh.client.inject 与 peerDependencies 中 0.1.5 已不存在的 @deepseek-ai/dsh-client-runtime 包(0.1.5 的 client 运行时已并入 dsh-client-modules 模块系统)。client 端使用的 slots / remote / connection 三个服务在 0.1.5 中分别由 dsh-client-ui-renderer(slots 已打包进平台 seed)、dsh-api-gateway、dsh-client-connection 提供,无需改动。slots.inject + slots.register(spec, renderFn)),shell.overlay / conversation.chat.assistant-actions / settings.section 三个挂载点在新版中全部保留;Typert Remote($mount + ctx.reflect.get('remote.wwt'))与 ctx.typert.register 严格 manifest 机制在 0.1.5-rc.1 下全部有效。src/),不再是一大段粘贴的字符串import.meta.url 相对解析,不再依赖写死的绝对路径dsh plugin --profile web add what-was-that 一条命令即可(lib/ 产物随包发布,无需编译)what-was-that/
├── src/
│ ├── index.ts # host:词库加载 + 术语匹配 + AI 解释 + 宠物SVG
│ └── client/
│ └── index.ts # client:章鱼UI + 气泡解释 + 拖动
├── assets/
│ ├── lexicon.json # 词库(255 条)
│ └── idle/question/thinking/happy.svg # 四态透明形象
├── lib/ # 构建产物(提交,免编译安装)
├── dsh.plugin.json # 插件声明
├── cordis.patch.yml # 挂载点
├── .github/workflows/ci.yml # CI:typecheck + 测试 + 构建
├── build.mjs # esbuild 构建脚本
└── package.json
已发布到 npm:what-was-that@0.1.11(压缩包仅 213 KB,轻量无负担)。在 DSH 的 profile 里一条命令装入并启用:
# 要求:机器上已安装 pnpm(dsh plugin 命令依赖它)
dsh plugin --profile web add what-was-that
装完重启 dsh web 并硬刷新(Ctrl+Shift+R),右下角出现小章鱼即成功。
适用版本:DSH ≥ 0.1.5-rc.1(v0.1.11 起,finish reason 判断已对齐 0.1.5 的流式 chunk 形状;v0.1.10 起 inject 声明了
fs服务,与 0.1.5 的新服务模型对齐)。
没有 pnpm 时,也可以把
lib/产物放进 profile 手动挂载(cordis.patch.yml声明了挂载点),无需编译。
pnpm install # 装 esbuild / typescript(仅 devDependencies)
node build.mjs # 打包 lib/index.js + lib/client.js,并复制 assets
作者是编码小白(只会用办公软件那种)。想法来自作者本人,实现借助 DeepSeek Harness(DSH) 协作完成,主要使用:
欢迎提 Issue 或直接 PR。
CLASSIFICATION EVIDENCE
系统优先读取 GitHub Topics,再与站内分类词典和词根规则比对。当前命中: 无有效分类标签。