arrakis-background 0.0.0-stage → 0.1.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/README.md +58 -2
- package/README.zh-CN.md +59 -0
- package/THIRD_PARTY_NOTICES.md +26 -0
- package/cordis.patch.yml +4 -0
- package/lib/client.js +4390 -0
- package/locale/en.json +7 -0
- package/locale/zh.json +7 -0
- package/package.json +38 -4
- package/src/cordis-node.js +3 -0
- package/visual/icon.svg +1 -0
package/LICENSE
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2026 the Arrakis authors
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
package/README.md
CHANGED
|
@@ -1,3 +1,59 @@
|
|
|
1
|
-
#
|
|
1
|
+
# Arrakis
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
English | [简体中文](README.zh-CN.md)
|
|
4
|
+
|
|
5
|
+
A native DeepSeek Harness UI bundle: the existing Three.js dune renderer, a restrained violet blank-home background, and a replacement mark. Install it through DSH's Plugins screen; it does not wrap, copy, or rebuild the harness.
|
|
6
|
+
|
|
7
|
+
## Install in DSH
|
|
8
|
+
|
|
9
|
+
1. Open **Plugins → Add plugin** in native DSH.
|
|
10
|
+
2. Enter `arrakis-background` for a registry release, or `file:/absolute/path/arrakis-background-0.1.1.tgz` for a local package.
|
|
11
|
+
3. Complete installation, then open **New Session**. Use DSH's dark appearance for the dark graphite surface.
|
|
12
|
+
4. Toggle **Arrakis** in Plugins to enable or disable it. Disabling removes the dunes and restores the native marks.
|
|
13
|
+
|
|
14
|
+
The equivalent native CLI is:
|
|
15
|
+
|
|
16
|
+
```sh
|
|
17
|
+
dsh plugin --profile web add arrakis-background
|
|
18
|
+
dsh web
|
|
19
|
+
```
|
|
20
|
+
|
|
21
|
+
For a local tarball, replace the package name with its absolute `file:` spec. A local package does not need registry publication. A registry spec requires a published release. Do not use a separate Vite preview to qualify the installed DSH UI.
|
|
22
|
+
|
|
23
|
+
## What changes
|
|
24
|
+
|
|
25
|
+
- The procedural GPU scene mounts only on the blank home through `conversation.hero.frame`; it is not a screenshot background.
|
|
26
|
+
- The hero and sidebar mark overrides use priority −1 and are disposed with the plugin. The stock branding plugin remains available underneath.
|
|
27
|
+
- The background layer has `pointer-events: none` and is hidden from assistive technology.
|
|
28
|
+
- The native composer, keyboard shortcuts, commands, attachments, access selector, model/effort picker, send/cancel behavior, session list and account actions remain DSH-owned.
|
|
29
|
+
- This bundle adds no provider, authentication flow, image-upload support, or per-turn telemetry. Attachment preview does not establish provider image support.
|
|
30
|
+
|
|
31
|
+
## Requirements and limits
|
|
32
|
+
|
|
33
|
+
The native installation was exercised against DSH `0.2.2-rc.1` at `fcc0ad4621`, using Node 24. The package requires Node `^22.19.0 || >=24.0.0` and a browser with WebGL 2. Compatibility with other DSH revisions is not certified. Rendering requires a real graphics context; without one, the native controls remain available and the background initialization reports a diagnostic.
|
|
34
|
+
|
|
35
|
+
The renderer has a quality-dependent DPR cap, resize handling, visibility throttling, reduced-motion behavior, and disposal cleanup. Changing terrain tessellation takes effect on remount, not through a live quality change. No screenshot, input, or account data is sent by this bundle.
|
|
36
|
+
|
|
37
|
+
## Development
|
|
38
|
+
|
|
39
|
+
```sh
|
|
40
|
+
npm ci
|
|
41
|
+
npm test
|
|
42
|
+
npm pack
|
|
43
|
+
```
|
|
44
|
+
|
|
45
|
+
`npm pack` builds the Cordis client and ships only the declared package files. Keep `src/arrakis.js` as the renderer source and `src/cordis-client.js` as the native slot adapter; do not hand-edit `lib/client.js`.
|
|
46
|
+
|
|
47
|
+
The source-only demo is available with `npm run dev`. Its `1`–`4` shortcuts and `window.arrakis` are development controls, not DSH product controls.
|
|
48
|
+
|
|
49
|
+
## Renderer source API
|
|
50
|
+
|
|
51
|
+
For source-development integrations, `createArrakisBackground({ mount, quality, accent, secondary, background, intensity, speed, parallax, fog, contourSpacing })` creates one renderer. Quality choices are `low`, `balanced`, and `ultra`. The returned instance offers `setMode`, `emit`, `configure`, `pause`, `resume`, and `destroy`.
|
|
52
|
+
|
|
53
|
+
Modes are `idle`, `thinking`, `tools`, and `handoff`. Event names are `inference:start`, `inference:end`, `tool:start`, `tool:end`, `handoff`, `handoff:end`, `session:idle`, and `pulse`. Source integrations may dispatch `arrakis:activity` on their own renderer container. The native DSH bundle does not wire these to live conversation events.
|
|
54
|
+
|
|
55
|
+
The npm package exports the native Cordis entry and client bundle; it does not expose the renderer source as a separate public import.
|
|
56
|
+
|
|
57
|
+
## Third-party notices
|
|
58
|
+
|
|
59
|
+
The distributed client includes Three.js. Its original license is retained in [THIRD_PARTY_NOTICES.md](THIRD_PARTY_NOTICES.md).
|
package/README.zh-CN.md
ADDED
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
# Arrakis
|
|
2
|
+
|
|
3
|
+
[English](README.md) | 简体中文
|
|
4
|
+
|
|
5
|
+
原生 DeepSeek Harness 界面插件包:复用现有 Three.js 沙丘渲染器,为空白首页提供克制的紫色沙丘背景和替换标记。通过 DSH 的“插件”界面安装;本插件不会包装、复制或重新构建宿主。
|
|
6
|
+
|
|
7
|
+
## 在 DSH 中安装
|
|
8
|
+
|
|
9
|
+
1. 在原生 DSH 中打开**插件 → 添加插件**。
|
|
10
|
+
2. 安装已发布版本时输入 `arrakis-background`;安装本地包时输入 `file:/absolute/path/arrakis-background-0.1.1.tgz`。
|
|
11
|
+
3. 完成安装后打开**新建会话**。在 DSH 中使用深色外观即可呈现深石墨色界面。
|
|
12
|
+
4. 在“插件”中切换 **Arrakis** 的启用状态。禁用后沙丘消失,原生标记恢复。
|
|
13
|
+
|
|
14
|
+
等效的原生命令行操作:
|
|
15
|
+
|
|
16
|
+
```sh
|
|
17
|
+
dsh plugin --profile web add arrakis-background
|
|
18
|
+
dsh web
|
|
19
|
+
```
|
|
20
|
+
|
|
21
|
+
使用本地 tarball 时,将包名替换为绝对 `file:` 包规格。本地包无需发布到注册表;使用注册表包名则需要已有的发布版本。不能用单独的 Vite 预览代替已安装 DSH 界面的验证。
|
|
22
|
+
|
|
23
|
+
## 改动范围
|
|
24
|
+
|
|
25
|
+
- 程序化 GPU 场景仅通过 `conversation.hero.frame` 挂载到空白首页;背景不是截图。
|
|
26
|
+
- 首页和侧栏的标记覆盖使用 −1 优先级,随插件卸载而释放;底层原生品牌插件保持可用。
|
|
27
|
+
- 背景层设置 `pointer-events: none`,并对辅助技术隐藏。
|
|
28
|
+
- 原生输入框、键盘快捷键、命令、附件、访问模式选择器、模型及推理强度选择器、发送与取消、会话列表和账户操作仍由 DSH 管理。
|
|
29
|
+
- 本插件不增加模型提供方、身份认证流程、图片上传能力或逐轮遥测。附件预览成功并不证明模型提供方支持图片。
|
|
30
|
+
|
|
31
|
+
## 要求与限制
|
|
32
|
+
|
|
33
|
+
原生安装已在 DSH `0.2.2-rc.1`、提交 `fcc0ad4621` 和 Node 24 环境下验证。包要求 Node `^22.19.0 || >=24.0.0` 以及支持 WebGL 2 的浏览器。其他 DSH 修订版本的兼容性尚未认证。渲染需要真实图形上下文;缺少图形上下文时,原生控件仍可使用,背景初始化会输出诊断信息。
|
|
34
|
+
|
|
35
|
+
渲染器包含随质量等级调整的 DPR 上限、尺寸变化处理、页面可见性节流、减少动态效果支持及释放清理。地形网格细分变化需要重新挂载,不会在实时切换质量时生效。本插件不发送截图、输入内容或账户数据。
|
|
36
|
+
|
|
37
|
+
## 开发
|
|
38
|
+
|
|
39
|
+
```sh
|
|
40
|
+
npm ci
|
|
41
|
+
npm test
|
|
42
|
+
npm pack
|
|
43
|
+
```
|
|
44
|
+
|
|
45
|
+
`npm pack` 会构建 Cordis 客户端,且仅打包声明的文件。`src/arrakis.js` 是渲染器源文件,`src/cordis-client.js` 是原生槽位适配器;请勿手动编辑 `lib/client.js`。
|
|
46
|
+
|
|
47
|
+
源代码演示通过 `npm run dev` 启动。其 `1`–`4` 快捷键和 `window.arrakis` 仅用于开发,不是 DSH 产品控件。
|
|
48
|
+
|
|
49
|
+
## 渲染器源代码 API
|
|
50
|
+
|
|
51
|
+
源代码集成可通过 `createArrakisBackground({ mount, quality, accent, secondary, background, intensity, speed, parallax, fog, contourSpacing })` 创建一个渲染器。质量选项为 `low`、`balanced`、`ultra`。返回实例提供 `setMode`、`emit`、`configure`、`pause`、`resume` 和 `destroy`。
|
|
52
|
+
|
|
53
|
+
模式为 `idle`、`thinking`、`tools`、`handoff`。事件名为 `inference:start`、`inference:end`、`tool:start`、`tool:end`、`handoff`、`handoff:end`、`session:idle`、`pulse`。源代码集成可以在自己的渲染器容器上分发 `arrakis:activity`。原生 DSH 插件包没有将这些事件连接到实时会话。
|
|
54
|
+
|
|
55
|
+
npm 包导出原生 Cordis 入口和客户端包,不将渲染器源代码作为单独的公开导入项。
|
|
56
|
+
|
|
57
|
+
## 第三方许可声明
|
|
58
|
+
|
|
59
|
+
分发的客户端包含 Three.js。其原始许可证保留在 [THIRD_PARTY_NOTICES.md](THIRD_PARTY_NOTICES.md) 中。
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
# Third-party notices / 第三方许可声明
|
|
2
|
+
|
|
3
|
+
The client bundle contains Three.js. Its original license follows.
|
|
4
|
+
客户端包包含 Three.js,以下保留其原始许可证。
|
|
5
|
+
|
|
6
|
+
The MIT License
|
|
7
|
+
|
|
8
|
+
Copyright © 2010-2026 three.js authors
|
|
9
|
+
|
|
10
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
11
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
12
|
+
in the Software without restriction, including without limitation the rights
|
|
13
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
14
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
15
|
+
furnished to do so, subject to the following conditions:
|
|
16
|
+
|
|
17
|
+
The above copyright notice and this permission notice shall be included in
|
|
18
|
+
all copies or substantial portions of the Software.
|
|
19
|
+
|
|
20
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
21
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
22
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
23
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
24
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
25
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
|
26
|
+
THE SOFTWARE.
|
package/cordis.patch.yml
ADDED