其他
完整应用
deepseek-harness
deepseek-ai
DeepSeek Harness: Everything is a Plugin.
PROJECT TOPICS
PROJECT README
DeepSeek Harness Web 对话输入框的词自动补全插件(Notepad++ Word Completion 风格,host + client 一体包):输入时从当前会话出现过的词中弹出补全建议,键盘 ↑/↓ 选择、回车确认。
| 场景 | 行为 |
|---|---|
| 英文前缀不足 2 字符 | 不弹出(避免干扰) |
| 中文 1 字 | 即弹出 |
| 输入法组合(composition)期间 | 不弹出,组合结束恢复 |
| 确认/ESC 后 | 窗口关闭,直到输入新的可打印字符或 Backspace/Delete 才重新激活 |
| 选中词与当前前缀完全相同(已输完整词) | 视为"确认当前词":直接关闭窗口,光标保持在词尾 |
| 词表为空(新会话) | 回退到本地持久化索引(历史会话累计词表),冷启动也有建议 |
lib/index.js):监听会话事件增量统计词频(user/message、assistant/message),内存缓存 + 增量持久化到 $DSH_HOME/word-complete.json(最近 30 个会话),通过 webServer 提供 GET /api/word-complete/words?sessionId=;lib/client.js,手写 bundle):注册到官方 slot conversation.input.overlay(slash 菜单同款弹层槽位),session scope 注入 useInput;actx.bail("slash/input-insert-text", { text, span })——带 draftRev CAS 校验与撤销支持,不 hack 任何内部状态;[data-input-mirror] 的文本节点上定位 caret 偏移——镜像与 textarea 共享完全相同的排版规则(font-family DshChipCell、padding、pre-wrap)并随滚动容器一起移动,测量结果即真实视口坐标,无需复制样式、无需滚动修正;createPortal 渲染到 document.body + position: fixed,脱离 slot 锚点与 transform 祖先的干扰;随输入/光标/滚动/窗口尺寸实时重测。dsh plugin --profile web add github:tuogusa/dsh-word-complete
兼容 Profile:web(DSH Web GUI)。安装后重启 DSH 并 Ctrl+Shift+R 强刷浏览器。
仓库自带离线验证脚本(27 项断言:分词、词频合并、持久化、bundle 形状、插入事件、前缀检测):
node verify.mjs
cordis.patch.yml bundle patch(loader 行)
lib/index.js host 端:词频统计 + 持久化 + REST API
lib/client.js client 端:补全 UI + 键盘交互 + 光标定位
docs/DESIGN.md 设计说明(架构、测量与交互决策依据)
verify.mjs 离线验证脚本
MIT
CLASSIFICATION EVIDENCE
系统优先读取 GitHub Topics,再与站内分类词典和词根规则比对。当前命中: 无有效分类标签。