chore: unify version 0.2.0, add package README/LICENSE, sync PRD persistence

This commit is contained in:
Aisland
2026-08-22 18:34:53 +08:00
parent 442722799a
commit 1e04a60f61
6 changed files with 73 additions and 6 deletions
+21
View File
@@ -0,0 +1,21 @@
MIT License
Copyright (c) 2026 dsh-worktable contributors
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
+41
View File
@@ -0,0 +1,41 @@
# dsh-worktable(工作台)
> DeepSeek Harness 侧边栏的 agent 级项目容器(应用抽屉)。纯增量插件,不替换、不禁用任何官方插件。
## 是什么
- **侧边栏「工作台」区块**:收纳用户自建项目与入驻插件项目,支持改名/图标/排序/显示隐藏、项目 × 对话绑定、项目文件夹。
- **分栏工作区引擎(自研)**:声明式布局预设(左栏/顶行/主行 + 右侧对话窗),窗格可拖拽分割、标签页模型;内置 资源管理器 / 终端 / 浏览器 / 动画 / 自定义窗口。
- **控制室**:默认自带项目(固定首位、不可删除),项目卡片网格实时监控所有项目的状态(工作中/待你决定/已完成),零轮询零 Token。
- **自动挂载握手**:项目内 agent 完成窗口任务后写 widget-result.json,产物自动挂进对应窗口。
## 技术底座
- Cordis 插件协议(客户端 bundle + 服务端路由 /api/worktable/*、终端 WebSocket)。
- 界面经 slot 座位协议注入侧边栏与 shell.overlay;对话窗复用宿主会话服务(sessions.open)。
- 状态监控为宿主会话运行时快照的事件订阅镜像;视图/项目/绑定状态存 localStorage。
- 客户端:TypeScript + React(host externals)+ 原生 CSS;服务端:Node。
## 安装
cd 01_content
npm install
npm run build # lib/index.js + lib/client.js
node --check lib/index.js
注册到 DSH:`dsh plugin --profile web add "link:<repo>/01_content"`
## 构建注意事项
- **必须在 01_content 目录下构建**:误在仓库根跑会把 lib 写到仓库根,宿主仍加载 01_content/lib 旧 bundle(「改完不生效」假象)。
- 客户端 bundle 保持 window.__ModuleLoader__.load 握手,react/@deepseek-ai/* 全部 external。
## 相关文档
- 项目规则:仓库根 AGENTS.md
- 需求与协议:02_process/PRD.md
- 工作日志:02_process/worklogs/
## License
MIT
+1 -1
View File
@@ -1,7 +1,7 @@
{
"name": "dsh-worktable",
"description": "工作台:DSH 侧边栏的 agent 级项目容器,收纳如 TravelAtlas 等自装项目",
"version": "0.1.0",
"version": "0.2.0",
"entry": {
"name": "dsh-worktable",
"inject": []
+2 -2
View File
@@ -1,12 +1,12 @@
{
"name": "dsh-worktable",
"version": "0.1.0",
"version": "0.2.0",
"lockfileVersion": 3,
"requires": true,
"packages": {
"": {
"name": "dsh-worktable",
"version": "0.1.0",
"version": "0.2.0",
"license": "MIT",
"devDependencies": {
"esbuild": "^0.25.0",
+1 -1
View File
@@ -1,7 +1,7 @@
{
"name": "dsh-worktable",
"description": "工作台 Worktable:DeepSeek Harness 侧边栏的 agent 级项目容器(应用抽屉)",
"version": "0.1.0",
"version": "0.2.0",
"license": "MIT",
"type": "module",
"main": "lib/index.js",
+7 -2
View File
@@ -164,8 +164,13 @@ ctx.slots.register({
- 排序机制:owner props 下发 order 序列,卡片以 CSS order 参与排序(渲染器 display:contents 锚点已核实,见 §5.3);
- 子座位注册跟踪:apply 中 `ctx.slots.subscribe` + `entries()` 维护模块级 id 序列;
- 持久化:
- `dsh.worktable.view.v1`:query/searchOpen/orderBy/dock/floatTop(旧 groupBy 忽略);
- `dsh.worktable.projects.v1`:order/lastUsed/hidden/nameOverrides/shortcuts;
- `dsh.worktable.view.v1`:query/searchOpen/orderBy/dock/floatTop/consoleTheme
(控制室主题 dark|light|system,缺省 system);
- `dsh.worktable.projects.v1`:order/lastUsed/hidden/nameOverrides/iconOverrides/
removed/shortcuts/layouts/views/bindings/folders;
- views:入驻项目与「控制室」(wt-console)的视图覆盖(LayoutSpec);
- bindings:项目 → 绑定会话(含 wt-console 管理对话);
- folders:项目 → 项目文件夹(含 wt-console);
- 卡片上报的 meta 注册表仅存内存,不持久化;
- 样式:暗色优先,跟随 `--dsw-alias-*` 设计变量(与 dsh-usage / dsh-travelatlas 一致)。