前言¶
在 DSH 的插件式扩展中,串口调试常见做法是把板卡日志复制给模型,再让模型给出命令,最后人工回到终端执行和核对。DSH Serial Console 把这个过程放进同一个控制台:用户与 AI 模型共享同一个可审计的嵌入式串口会话。
下面介绍 InfinitePersistence 维护的社区插件 @infinitepersistence/dsh-serial-console,包括它能做什么、如何安装启用,以及当前需要注意的限制。
这是什么¶
DSH Serial Console 是一个面向 DeepSeek Harness 的社区串口控制台项目。它把浏览器终端、模型串口工具、板卡输出和会话审计记录放在同一个会话中。
该项目由 InfinitePersistence 社区维护,采用 MIT License,不代表 DeepSeek 官方产品或官方背书。
核心能力¶
浏览器终端¶
- 在浏览器中查看板卡启动日志和实时串口输出。
- 使用键盘直接操作设备,包括 Tab 补全、方向键、退格、粘贴、输入法和常用终端控制键。
- 选择串口、波特率和 CR、LF、CRLF 等行尾模式。
- 在 Text 与 HEX 视图之间切换。
- 在 Text 终端中使用
Ctrl+F查找历史输出,并在匹配项之间前后跳转。
用户与模型共享同一串口¶
DSH Serial Console 让 DeepSeek 模型与用户操作同一个串口,而不是分别占用设备。
它支持在串口页右侧直接查看模型思考、工具进度和最终回复。用户与模型共享发送队列,但当前尚未提供整条命令级别的输入租约。
模型工具¶
插件提供以下模型工具:
| 工具 | 用途 |
|---|---|
serial_list_ports |
枚举可用串口 |
serial_connect |
连接设备 |
serial_send |
发送文本或原始字节 |
serial_read |
读取有界事件窗口 |
serial_expect |
等待提示符或指定内容 |
serial_mark |
标记关键证据位置 |
serial_disconnect |
安全断开设备 |
审计与来源标记¶
插件会保留独立的串口审计记录,并支持导出会话事件。
它使用 U/M/B/S 来源标记区分:
U:用户输入M:模型输入B:板卡输出S:状态/审计
安装与启用¶
环境要求¶
- Node.js
^22.19.0或>=24.0.0 - DeepSeek Harness
0.1.0-rc.7 - pnpm
11.22.0 - Windows 或 Linux 串口环境
已有 DSH 时安装¶
如果已经安装 DSH 0.1.0-rc.7,执行:
dsh plugin --profile web add '@infinitepersistence/dsh-serial-console@0.1.0-rc.4' --save-exact
安装完成后,使用同一个 profile 启动:
dsh --profile web
安装和启动必须使用同一个 profile。升级后请重启 Host,并在浏览器中使用 Ctrl+F5 刷新页面。
访问页面¶
启动后访问:
http://127.0.0.1:3080
进入任意对话,并选择“串口”标签。
作为程序库安装¶
如果只把控制台作为库嵌入自己的程序,可以执行:
pnpm add '@infinitepersistence/dsh-serial-console@0.1.0-rc.4' --save-exact
从源码构建¶
git clone https://github.com/InfinitePersistence/dsh-serial-console.git
cd dsh-serial-console
corepack enable
pnpm install
pnpm build
典型用法¶
查找历史输出¶
在终端聚焦时按:
Ctrl+F
输入内容后会高亮匹配项。跳转规则如下:
Enter:跳到下一个匹配项Shift+Enter:跳到上一个匹配项Esc:关闭查找
用模型工具连接串口¶
可以先做 X,再做 Y:
1、使用 serial_list_ports 查看可用串口。
2、使用 serial_connect 连接设备。
3、使用 serial_send 发送命令。
4、使用 serial_read 或 serial_expect 读取输出。
5、需要时执行 serial_mark 标记关键位置。
6、结束时使用 serial_disconnect 断开连接。
适用场景与注意¶
适合谁¶
适合需要在浏览器中调试串口设备,并希望在同一个 DSH 会话中查看用户输入、模型调用和板卡输出的开发者。它也适合需要保留串口审计记录,以便复查操作顺序的调试流程。
当前限制¶
- 一次只管理一个活动物理串口。
- 暂不自动重连,也不会在重连后自动重放命令。
- 当前 Text 模式依赖板卡回显;关闭 Shell echo 时不会显示用户正在键入的字符。
- 用户与模型共享发送队列,但尚未提供整条命令级别的输入租约。
- 终端检查点仅保存在当前浏览器内存中;刷新页面、重载插件或事件出现缺口后会重新构建画面。
- 浏览器清空视图不会删除 Host 侧记录。
安全注意¶
插件会随当前 dsh 进程权限运行。安装前建议先检查源码、依赖和许可证。第三方组件的许可证信息见 THIRD_PARTY_NOTICES.md。
链接¶
- GitHub 仓库:https://github.com/InfinitePersistence/dsh-serial-console
- 包名:
@infinitepersistence/dsh-serial-console