输入补全走 DeepSeek FIM 接口,建议内联显示(Copilot 同款手感);错别字检查分两层——词典层在浏览器本地 200ms 即时标红、零成本,LLM 层做上下文校对。
不改动 dsh 任何现有交互,只在输入框外侧加功能;输入框内除灰字与红字外保持干净。
停笔 800ms 后调用 DeepSeek FIM 接口(/beta/completions),建议以灰字内联在光标后——Tab 按中文分词逐词采纳、Shift+Tab 全量采纳、Esc 关闭。吃光建议后自动续写下一轮,IME 输入期间绝不干扰。
词典层:约 150 条高置信错词 + 上下文规则,200ms 在浏览器本地标红,离线零成本。LLM 层:在/再、的/得/地这类需要句意的混淆,800ms 与补全同节奏请求。文中红波浪线标注,点红字即选中,绝不全量替换。
多个错字用 Ctrl+Shift+./, 上下切换,「修正」只替换当前选中的一条;拿不准的可以「标记正确」加入本次忽略名单。位置失配(你已手动改过)的检出自动失效。
补/校两个独立开关就在输入框旁。配置 proofreadUseLlm: false 后校对完全不发请求——只剩词典层,分文不花。API key 自动复用 dsh 已保存的 DEEPSEEK_API_KEY,零配置开箱即用。
dsh 的 plugin 命令底层走 pnpm,npm 上的两个包名内容完全相同,任选其一。
dsh plugin --profile web add dsh-input-assistdsh plugin --profile web add @honlnk/dsh-input-assistdsh --profile web # 重启,打开 http://127.0.0.1:3080DEEPSEEK_API_KEY 或环境变量~/.dsh/settings.yaml 里写 input-assist.completionApiKey: sk-…DEEPSEEK_API_KEY=sk-…仅在输入框聚焦且对应功能激活时接管;IME 输入法组合期一律放行。
| 动作 | 快捷键 |
|---|---|
| 采纳一词(中文按词切分) | Tab |
| 全量采纳建议 | Shift+Tab |
| 关闭当前建议 | Esc |
| 下一个 / 上一个错字 | Ctrl+Shift+. / , |
| 修正当前选中项 | Ctrl+Shift+F |
| 标记该处为正确输入 | Ctrl+Shift+G |
| 本次输入不再提醒 | Esc(无建议时) |
补全:每次请求上限 64 token;LLM 校对:单次上限 800 token、temperature 0。停笔 800ms 防抖内多次击键只发一次。把 proofreadUseLlm 关掉后校对层零成本(只剩本地词典)。deepseek-chat 单价下日常使用的花费可以忽略。
只有当前输入框草稿文本会发送给 DeepSeek API(补全发光标前缀,校对发整段草稿);词典层检查完全在浏览器本地完成。插件本身不收集任何数据,也没有统计上报。
不会。扫描前会把行内代码、围栏代码块和 URL 用等长占位符掩码,词典层永不标记其中的内容;LLM 层的提名也要经过位置回验,对不上当前草稿的检出直接失效。
基于 dsh 0.1.1-rc.2 的双侧插件契约开发(slots 注入 + loopback RPC)。插件接口处于 rc 阶段,dsh 大版本升级后如遇不兼容请提 issue。