# deepseek-harness-studio

> DSH 桌面插件中心可信安装特性的确定性测试包，同时承载 Host 端条目与浏览器端工作区工具页面，用于 F003 真实安装事务验证。

## Metadata

- Author: [@fufankeji](https://github.com/fufankeji)
- Repo: <https://github.com/fufankeji/deepseek-harness-studio.git>
- GitHub: [fufankeji/deepseek-harness-studio](https://github.com/fufankeji/deepseek-harness-studio)
- Stars: 404
- Language: TypeScript
- License: [MIT](https://spdx.org/licenses/MIT.html)
- Homepage: <https://www.beyondata.com/>
- Topics: `ai-agent`, `deepseek`, `deepseek-harness`, `deepseek-harness-studio`, `desktop-app`, `developer-tools`, `dsh`, `dsh-plugin`, `electron`, `macos`, `plugin-manager`, `windows`
- Forks: 43
- Open Issues: 2
- Last push: 2026-08-20T10:56:44.000Z
- Added: 2026-08-20T00:00:00.000Z

## Install

```bash
dsh plugin --profile web add github:fufankeji/deepseek-harness-studio/packages/examples/plugin-center-fixture
```

## Wiki

## 一句话定位
这是 DSH 桌面插件中心（F003 可信安装）的确定性开发测试包，在 Host 端注入 `fixture.workspace-tools` 条目，并在浏览器侧贡献一个“工作区工具”页面，用于真实安装/重启流程后核对安装产物是否落盘生效。它不是给普通用户用的生产插件。

## 核心能力
- 注入 Host 条目 `fixture.workspace-tools`，让桌面宿主在重启后能被插件清单正确识别
- 在 Host 上下文提供只读服务 `pluginCenterFixture`，固定返回 `{status:'running', capability:'workspace-tools'}`
- 在桌面侧边栏注册一个一级导航按钮“工作区工具”
- 打开后渲染一个中英文双语工作区页面，作为客户端激活的可见证据
- 通过 `dsh-invariants` 注册一个空安装器，使包具备 invariant 注册位但不引入运行时断言
- 提供一份真实 Profile 引导的 e2e 测试，串联 boot/compose/插件清单/客户端模块的多源激活证据

## 技术实现
- **语言**: TypeScript（Host half 为 `.ts`，Client half 为 `.tsx`）
- **关键依赖**: `@deepseek-ai/cordis`、`@deepseek-ai/dsh-client-runtime`、`@deepseek-ai/dsh-client-ui-slots`、`@deepseek-ai/dsh-invariants`、`react@^18.2.0`
- **架构模式**: 双面（dual-face）插件——同一 npm 包既出 Host 入口（默认导出 `apply`），又出 Client 入口（`/client` 子路径导出 `apply`/`inject`），通过包内 `cordis.patch.yml` 把 `fixture.workspace-tools` 条目插入宿主启动层
- **入口文件**: `src/index.ts`（Host）、`src/client/index.ts`（Client）、`src/invariant.ts`（不变量注册）

## 适用场景
仅供 DSH 桌面团队在 F003 可信安装与 F004 已安装组合管理两条主线上跑真实环境下的回归用例；典型用法是把它随同 `plugin-center-skill-fixture` 一起安装到 `web` profile 的测试 Profile，然后通过启动/重启/卸载路径校验插件清单条目、客户端模块和 Skill 是否能跨进程保持一致。普通用户和业务开发者不应主动安装。

## 前置依赖与兼容性
| 依赖 | 最低版本 | 说明 |
|---|---|---|
| DSH | 未声明 | 本包未声明 dsh 版本要求，需随同仓库一并构建；fixture 自身为 0.1.0-rc.5 |
| Node | 未声明 | 本包未声明 engines 字段，受仓库根 `engines` 约束 |
| React | ^18.2.0 | 由 `peerDependencies` 显式声明 |
| 平台 | 跨平台 | 本包未声明 os/cpu；测试覆盖 darwin-arm64，源码本身不涉及平台分支 |
| 原生模块 | 无 | 全部依赖为 workspace 内部包，无 C++ 插件或 N-API 绑定 |

## 安装方式
```bash
dsh plugin --profile web add github:fufankeji/deepseek-harness-studio/packages/examples/plugin-center-fixture
```

## 配置项
本插件无需额外配置。

## 常见问题

**Q: 这个插件能直接装到生产 DSH 里用吗？**

A: 不可以。README 明确标注“仅用于开发证据”，它是 F003 可信安装特性的受审查测试包，不作为生产插件或面向用户的工作区工具提供支持。

**Q: 它到底提供什么可见功能？**

A: 安装到 web profile 后会在桌面端侧边栏出现一个“工作区工具”按钮，点击打开一个固定文案的中英文页面，用于在真实 Electron 重启后验证 Host 条目是否被正确激活。

**Q: 配置项和环境变量有哪些？**

A: 源码与 package.json 中没有声明任何 Config/Schema/process.env 读取逻辑，也没有 os/cpu/engines 字段，运行时无法配置额外参数。

**Q: 它会写入磁盘或网络请求吗？**

A: 不会。Host 端只冻结返回一个 `{status:'running', capability:'workspace-tools'}` 常量对象，Client 端只渲染静态文案，不会持久化数据，也不会发起远程调用。

**Q: 出错时该怎么办？**

A: 由于这是测试 fixture，如果出现 Host/Client 不一致或服务缺失，应作为 harness 自身的 F003 测试缺陷上报到仓库 issue，不应在生产环境继续使用。

## 上手难度
专家 — 这个包不是面向普通用户的工具，必须配合 DSH 桌面源码构建和真实 Profile 引导流程才能跑通，且只能服务于 F003/F004 的回归测试场景。

## 已知问题与限制
- 仅用于开发证据：仓库 README 明文说明该包只用于确定性的 F003 测试，不作为生产插件或面向用户的工作区工具提供支持
- 页面文案为固定双语常量，不接受外部输入，也不暴露任何运行时开关
- 与 `plugin-center-skill-fixture` 强耦合：测试套件同时安装两者并相互校验激活证据，单独安装会缺失部分断言

---

This document is auto-generated by [deepseek-plugin.org](https://deepseek-plugin.org). HTML page: [deepseek-harness-studio](https://deepseek-plugin.org/plugins/fufankeji/deepseek-harness-studio/packages/examples/plugin-center-fixture)
Wiki generated by AI (model: `MiniMax-M3`)
