deepseek-harness
deepseek-ai
DeepSeek Harness: Everything is a Plugin.
PROJECT TOPICS
PROJECT README
面向中小学教师的一体化教学与班主任工作台,作为 DSH 静态 Web 插件 运行在浏览器中,进程重启后自动恢复。
v0.1.1 — 一键安装:支持
dsh plugin add一键安装,自动注册 Loader 与 Profile Bundle,无需手动编辑cordis.patch.yml或package.json。
界面基于暖白底色 + 蓝紫主色(#4F63D2)的 Notion Warm Workspace × Editorial Magazine 风格,内置手写 SVG 图表(折线 / 雷达 / 分组柱状 / 环形图),无需任何外部图表库。
tai-teacher-workbench/
├── package.json # dsh.client + dsh.bundle.patch 声明 + exports["./client"]
├── cordis.patch.yml # Bundle layer patch(Loader 插入条目)
├── tsconfig.json # TypeScript 配置
├── tsdown.config.ts # tsdown 构建配置
├── src/
│ ├── index.ts # Host 半区(纯 UI 插件,空 apply)
│ └── client/
│ ├── index.ts # Client 入口:shell.overlay 注册 + CSS 注入
│ ├── app.ts # 主 UI 组件(React.createElement,~1440 行)
│ ├── ai.ts # AI 离线模拟生成器(9 种场景模板)
│ ├── data.ts # 嵌入的教学 / 班级 Mock 数据
│ └── styles.ts # CSS 样式字符串
└── lib/
├── index.js # Host 半区构建产物
├── client.js # Client bundle(CJS,~225 KB)
└── client.js.map # Source map
| 动态 Cordis 插件 | 静态 Web 插件 |
|---|---|
harness.handle / host.call RPC |
数据嵌入 Client bundle、AI 本地生成 |
ctx.timeout() (Host 沙箱) |
setTimeout() (原生浏览器) |
styles.insert() |
<style> 标签注入 + ctx.effect() 清理 |
eval(new Function(...)) 执行 UI 源码 |
TypeScript 直接 import + tsdown 打包 |
教案 fs 持久化 (Host fs 服务) |
localStorage 持久化 (浏览器原生) |
| 会话级生命周期,重启消失 | 进程级生命周期,重启保留 |
| 手动粘贴代码到 cordis_define | npm install 一键安装 |
dsh plugin add @pzchenhui/dsh-extension-tai-teacher-workbench
插件声明了 dsh.bundle.patch,DSH CLI 会自动:
pnpm addcordis.patch.yml 中的 Loader 插入条目dsh.profile.bundles 列表安装后重启 DSH Web 服务,右下角出现「教师工作台」悬浮按钮,点击进入。
npm install @pzchenhui/dsh-extension-tai-teacher-workbench
# 或
pnpm add @pzchenhui/dsh-extension-tai-teacher-workbench
cordis.patch.yml 的浏览器 roster:- id: tai-teacher-workbench
name: '@pzchenhui/dsh-extension-tai-teacher-workbench'
package.json 依赖:{
"dependencies": {
"@pzchenhui/dsh-extension-tai-teacher-workbench": "^0.1.0"
}
}
重启 DSH Web 服务
右下角出现「教师工作台」悬浮按钮,点击进入
cd packages/extensions/tai-teacher-workbench
pnpm install
pnpm run bundle # 输出 lib/index.js + lib/client.js
apply() — 纯 UI 插件,无 Host 端逻辑shell.overlay 槽位 + 注入 CSS 样式{
"dsh": {
"bundle": {
"patch": "./cordis.patch.yml"
},
"client": {
"inject": [
"@deepseek-ai/dsh-client-runtime",
"@deepseek-ai/dsh-client-ui-slots"
],
"platform": "web"
}
}
}
window.__ModuleLoader__.load() 注册,由 DSH 模块扫描器在启动时发现React.createElement(无 JSX / 编译步骤)data.json 转译为 TypeScript as const)localStorage 存取,首次加载从嵌入数据播种<style data-plugin="tai-teacher-workbench"> 注入,插件卸载时自动移除MIT
CLASSIFICATION EVIDENCE
系统优先读取 GitHub Topics,再与站内分类词典和词根规则比对。当前命中: 无有效分类标签。