G
matrix-code
gastronomicluna/matrix-code
DeepSeek Harness 矩阵思维插件:侧边栏一键进入黑底 CLI 对话页,Agent 思考过程化作绿色代码雨倾泻而下,回复照常流式显示。
설치
dsh plugin --profile web add github:gastronomicluna/matrix-codeREADME
dsh-plugin-matrix
我的天哪是黑客大人!意义不明的插件,闲得无聊整的,可以让你的web对话框变成黑客帝国风格的插件,按F11变得全屏让全公司不懂代码的人看到你都不明觉厉吧!本来看得懂的英文字符变成竖起来后完全看不懂了呢,虽然vibe coding本来谁看thinking过程啊。使用的时候建议把房间灯关了,众所周知黑客是开不起灯的。

插件介绍
DeepSeek Harness 的「矩阵思维」插件:侧边栏一键进入一个黑底 CLI 风格页面(交互参考 dsh CLI 对话界面),在其中与当前会话的 Agent 正常对话——思考过程以《黑客帝国》代码雨呈现,回复在终端里正常流式输出。
功能
- DeepSeek 像素图标:CLI 页面顶部居中显示官方鲸鱼标的像素版——把
FishLogo渲染后经 canvas 降采样到 ~24 行网格再 10× 放大(关闭平滑),像素感 + 蓝色辉光。 - CLI 页面:点击侧边栏底部「矩阵思维」进入全屏黑底终端页:
❯提示符输入消息,回车发送;运行中回车 = 打断转向(steer);Ctrl+C停止生成;Esc关闭页面。消息历史、工具调用(▸)、错误(✗)都按终端风格投影。 - 思考即代码雨:Agent 思考期间(turn 运行中、尚未输出回复正文),页面上叠加代码雨——思考内容按「思考段」(句子/长片段)竖屏排布,随机散布到各列下落(黑底 + 辉光,经典 Matrix 感);空闲时也有极淡的片假名氛围雨。
- 回复正常显示:回复正文一开始输出,思考雨退为氛围雨,正文在终端里流式打印(光标跟随),定稿后进入日志。
- 顶部控制条:红黄绿窗口点、会话名、「◉ 思考中」指示灯、雨速 −/+(0.25×–4×,0.25 一档)、氛围雨疏/密、✕ 关闭。
- 页面内的对话就是当前会话的对话:与主页共享同一会话,消息双向同步。
安装
# 在插件目录执行(web profile):
dsh plugin --profile web add "."
# 或安装发布包后:
dsh plugin --profile web add dsh-plugin-matrix
然后重启 web 服务生效:
dsh web
行为状态机
| 会话状态 | CLI 页面表现 |
|---|---|
| 空闲 | 氛围雨(极淡片假名) |
| turn 运行中,reasoning 流式输出(思考) | 思考段竖排成雨随机散布下落(最新段亮白辉光) |
| 回复正文开始输出 | 雨退为氛围雨,正文在终端流式打印 |
| turn 结束 | 回复定稿进日志 |
| 页面关闭 | 一切照旧,仅主页普通聊天 |
架构
本插件是一个纯客户端 bundle 插件:
package.json的dsh.client(platform: "web")声明浏览器端 bundle,dsh.bundle.patch把插件插入 profile 层栈。- 宿主侧
lib/index.js是空壳(apply()为空),只为让插件出现在 cordis Loader 条目里;客户端模块系统据此把client/client.js编入window.__DSH_BOOT__启动图。 client/client.js是手写的经典脚本(无构建步骤):注册到window.__ModuleLoader__,返回 cordis 插件{ name, inject: ["slots", "sessions"], apply }。sidebar.footer.action→ 进入/退出 CLI 页面的按钮;shell.overlay→ 黑底 CLI 页面(canvas 代码雨 + 终端日志 + 输入行);ctx.sessions.list+ctx.sessions.binding(id).session(SessionFace)订阅当前会话的ConversationSnapshot:partial.reasoning增量切段 → 竖排雨流;partial.text→ 终端流式正文;nodes→ 终端日志投影(user/assistant/tool/error…);session.prompt()(queue/steer)与session.cancel()→ 终端输入交互。
开发
- 改动
client/client.js后无需构建(本来就没有构建产物);插件以link:方式安装时,运行中的页面会通过 HMR 接收器(/plugins/events)自动热更新。 - 冒烟测试(模拟装载器 / React / ctx,验证思考状态机与日志投影):
node scripts/smoke.js
许可
MIT