dsh-connect-workbuddy 1.1.1 → 1.1.3
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/CHANGELOG.md +32 -0
- package/README.en.md +1 -1
- package/README.md +7 -1
- package/lib/bin.js +1 -1
- package/lib/{host-heartbeat-mvv54kVo.js → host-heartbeat-D47UCCoc.js} +1 -1
- package/lib/index.d.ts +2 -1
- package/lib/index.js +7 -8
- package/package.json +29 -27
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,37 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## 1.1.3 (2026-09-04)
|
|
4
|
+
|
|
5
|
+
### Breaking Changes
|
|
6
|
+
|
|
7
|
+
- **跟进上游 DSH 0.1.2-rc.1 / Cordis 4.0.2**:本插件依赖链全部更新至 `0.1.2-rc.1`(`@deepseek-ai/dsh-*`)与 `4.0.2`(`@deepseek-ai/cordis`)。以下 API 变更需要同步适配:
|
|
8
|
+
|
|
9
|
+
- `installSettingsSection(ctx, ns, schema, entry, hooks)` 移除:改为 `ctx.settings.installSection(ctx, ns, schema, entry, hooks)`(实为 `SettingsProvider.installSection` 实例方法)。
|
|
10
|
+
- `settingsNamespace('workbuddy')` 移除:改为 `'workbuddy' as SettingsNamespace`(dsh-settings 导出的 branded type)。
|
|
11
|
+
- `registerModelDiscovery` 回调签名的 `signal` 字段从 `request.signal` 移至回调第二参数 `async (request, signal) =>`。
|
|
12
|
+
- `SettingsNamespace` branded type 语义收紧:`WORKBUDDY_SETTINGS_NS` 需显式 `as SettingsNamespace` 断言。
|
|
13
|
+
- Cordis 4.0.2 要求所有服务访问显式 inject:`inject` 声明从 `['llm']` 扩为 `['llm', 'settings']`。
|
|
14
|
+
- `onChange` 回调在 `installSection` 注册时同步触发:涉及的前置变量(如 `invalidateCatalog`)需提前声明。
|
|
15
|
+
|
|
16
|
+
### Dependencies
|
|
17
|
+
|
|
18
|
+
- `@deepseek-ai/cordis`:`4.0.1` → `4.0.2`
|
|
19
|
+
- 所有 `@deepseek-ai/dsh-*` 包:`0.1.1-rc.1` → `0.1.2-rc.1`
|
|
20
|
+
- `@deepseek-ai/dsh-client-runtime`:`0.1.1-rc.2`(不变,0.1.2-rc.1 未发布)
|
|
21
|
+
- `@deepseek-ai/schemastery`:`3.18.1-rc.1` → `3.18.2`
|
|
22
|
+
- `@earendil-works/pi-ai`:`0.82.1` → `0.85.0`
|
|
23
|
+
- `@deepseek-ai/dsh-client-ui-settings`:补充显式 devDependency(已作为 0.1.2-rc.1 依赖)
|
|
24
|
+
|
|
25
|
+
### Infrastructure
|
|
26
|
+
|
|
27
|
+
- `pnpm.overrides` 从 `package.json` 迁移至 `pnpm-workspace.yaml`(pnpm 11 要求)。
|
|
28
|
+
|
|
29
|
+
## 1.1.2 (2026-08-31)
|
|
30
|
+
|
|
31
|
+
### Fixes
|
|
32
|
+
|
|
33
|
+
- **兼容当前 DSH 宿主(dsh-plugin-desktop@2.0.4,@deepseek-ai/* = 0.1.2-alpha.1)**:peerDependencies 中 8 个 `dsh-*` 包的预发布分支范围扩展为 `>=0.1.0-rc.1 <0.2.0 || >=0.1.1-rc.1 <0.2.0 || >=0.1.2-alpha.0 <0.1.3`,覆盖 0.1.0-rc / 0.1.1-rc / 0.1.2-alpha 全部已发布分支;`@earendil-works/pi-ai` 由精确 `0.82.1` 放宽为 `>=0.82.1 <0.85.0`(兼容宿主 0.84.3)。修复用户环境版本不匹配导致的 ERESOLVE / 静默排除。
|
|
34
|
+
|
|
3
35
|
## 1.1.1 (2026-08-31)
|
|
4
36
|
|
|
5
37
|
### Docs
|
package/README.en.md
CHANGED
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
|
|
9
9
|
<p align="center">
|
|
10
10
|
<a href="https://www.npmjs.com/package/dsh-connect-workbuddy"><img src="https://img.shields.io/npm/v/dsh-connect-workbuddy?style=flat-square&label=npm&color=cb3837" alt="npm version"></a>
|
|
11
|
-
<a href="https://www.npmjs.com/package/dsh-connect-workbuddy"><img src="https://img.shields.io/npm/
|
|
11
|
+
<a href="https://www.npmjs.com/package/dsh-connect-workbuddy"><img src="https://img.shields.io/npm/d18m/dsh-connect-workbuddy?style=flat-square&label=downloads&color=cb3837" alt="npm downloads"></a>
|
|
12
12
|
<a href="https://github.com/dingminhua/dsh-connect-workbuddy/actions/workflows/ci.yml"><img src="https://img.shields.io/github/actions/workflow/status/dingminhua/dsh-connect-workbuddy/ci.yml?branch=main&style=flat-square&label=tests" alt="test status"></a>
|
|
13
13
|
<a href="LICENSE"><img src="https://img.shields.io/github/license/dingminhua/dsh-connect-workbuddy?style=flat-square" alt="MIT license"></a>
|
|
14
14
|
<a href="https://github.com/dingminhua/dsh-connect-workbuddy/stargazers"><img src="https://img.shields.io/github/stars/dingminhua/dsh-connect-workbuddy?style=flat-square" alt="GitHub stars"></a>
|
package/README.md
CHANGED
|
@@ -16,7 +16,7 @@
|
|
|
16
16
|
|
|
17
17
|
<p align="center">
|
|
18
18
|
<a href="https://www.npmjs.com/package/dsh-connect-workbuddy"><img src="https://img.shields.io/npm/v/dsh-connect-workbuddy?style=flat-square&label=npm&color=cb3837" alt="npm version"></a>
|
|
19
|
-
<a href="https://www.npmjs.com/package/dsh-connect-workbuddy"><img src="https://img.shields.io/npm/
|
|
19
|
+
<a href="https://www.npmjs.com/package/dsh-connect-workbuddy"><img src="https://img.shields.io/npm/d18m/dsh-connect-workbuddy?style=flat-square&label=downloads&color=cb3837" alt="npm downloads"></a>
|
|
20
20
|
<a href="https://github.com/dingminhua/dsh-connect-workbuddy/actions/workflows/ci.yml"><img src="https://img.shields.io/github/actions/workflow/status/dingminhua/dsh-connect-workbuddy/ci.yml?branch=main&style=flat-square&label=tests" alt="test status"></a>
|
|
21
21
|
<a href="LICENSE"><img src="https://img.shields.io/github/license/dingminhua/dsh-connect-workbuddy?style=flat-square" alt="MIT license"></a>
|
|
22
22
|
<a href="https://github.com/dingminhua/dsh-connect-workbuddy/stargazers"><img src="https://img.shields.io/github/stars/dingminhua/dsh-connect-workbuddy?style=flat-square" alt="GitHub stars"></a>
|
|
@@ -137,6 +137,12 @@ dsh plugin --profile desktop add /Users/dmh2002/DshProject/dsh-connect-workbuddy
|
|
|
137
137
|
- [corrinehu/dsh-workbuddy-connect](https://github.com/corrinehu/dsh-workbuddy-connect)(MIT,Copyright (c) 2026 Corrine Hu)— **本项目的主要参照**。WorkBuddy 接入 DeepSeek Harness 的完整可行方案由该项目首先验证:桌面端凭据的发现与刷新机制、上游协议与请求头约定、loopback shim 的入站加固、pi-ai provider 的装配方式、以及状态诊断 CLI,均以其为参照。本项目在保留这些已验证能力的基础上重写,着重改善使用体验。
|
|
138
138
|
- [Sliverkiss/workbuddy2api](https://github.com/Sliverkiss/workbuddy2api)(MIT)— WorkBuddy 上游协议(`copilot.tencent.com` 的 wire behavior)的参照实现,经 `dsh-workbuddy-connect` 转引。
|
|
139
139
|
|
|
140
|
+
### 插件呈现与结构的基线
|
|
141
|
+
|
|
142
|
+
- [dingminhua/dsh-connect-trae](https://github.com/dingminhua/dsh-connect-trae)(MIT,Copyright (c) 2026 LaoDing)— 插件的呈现方式与其保持一致:设置卡片的结构与交互、模型管理(刷新 → 勾选 → 保存)与账号选择模型、只读的 host↔client 路由形态,以及 npm 发布工程。
|
|
143
|
+
- [dingminhua/dsh-subagent-default-model](https://github.com/dingminhua/dsh-subagent-default-model)(MIT,Copyright (c) 2026 LaoDing)— `dsm-*` 卡片风格体系、`row.*` 双语文案键约定与品牌图标的来源,经 `dsh-connect-trae` 转引。
|
|
144
|
+
- [franksong2702/dsh-codex-connect](https://github.com/franksong2702/dsh-codex-connect)(Apache-2.0)— DSH 插件结构与 provider 注册的参照,经 `dsh-workbuddy-connect` 转引;其 Apache-2.0 义务在 [THIRD_PARTY_NOTICES.md](THIRD_PARTY_NOTICES.md) 中单独履行。
|
|
145
|
+
|
|
140
146
|
### 说明
|
|
141
147
|
|
|
142
148
|
以上项目的版权归各自作者所有。本项目采用**借鉴设计思路 + 独立实现**的方式,未整体复制任何参考项目的源码;关键模块均为独立编写,并在源文件头部注释中标注了所参考的具体项目与模式。若你发现本项目的标注有遗漏或不当之处,请提交 issue,我们会立即更正。
|
package/lib/bin.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
-
import { C as defaultDesktopAuthCandidates, O as workbuddyOwnAuthPath, a as readHostHeartbeat, b as WORKBUDDY_AUTH_FILE_ENV, c as WORKBUDDY_CONNECT_VERSION, g as FALLBACK_WORKBUDDY_MODELS, l as WorkBuddyUpstreamClient, o as workbuddyHostHeartbeatPath, r as isHeartbeatProcessAlive, w as defaultDesktopAuthDirs, x as WorkBuddyCredentialStore } from "./host-heartbeat-
|
|
2
|
+
import { C as defaultDesktopAuthCandidates, O as workbuddyOwnAuthPath, a as readHostHeartbeat, b as WORKBUDDY_AUTH_FILE_ENV, c as WORKBUDDY_CONNECT_VERSION, g as FALLBACK_WORKBUDDY_MODELS, l as WorkBuddyUpstreamClient, o as workbuddyHostHeartbeatPath, r as isHeartbeatProcessAlive, w as defaultDesktopAuthDirs, x as WorkBuddyCredentialStore } from "./host-heartbeat-D47UCCoc.js";
|
|
3
3
|
import { realpathSync } from "node:fs";
|
|
4
4
|
import { fileURLToPath } from "node:url";
|
|
5
5
|
//#region src/bin.ts
|
|
@@ -996,7 +996,7 @@ var WorkBuddyUpstreamClient = class {
|
|
|
996
996
|
//#endregion
|
|
997
997
|
//#region src/version.ts
|
|
998
998
|
/** The npm package version this build was produced from. */
|
|
999
|
-
const WORKBUDDY_CONNECT_VERSION = "1.1.
|
|
999
|
+
const WORKBUDDY_CONNECT_VERSION = "1.1.3";
|
|
1000
1000
|
//#endregion
|
|
1001
1001
|
//#region src/host-heartbeat.ts
|
|
1002
1002
|
/**
|
package/lib/index.d.ts
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import z from "@deepseek-ai/schemastery";
|
|
2
2
|
import { PiAiAdapter } from "@deepseek-ai/dsh-llm-pi-ai";
|
|
3
3
|
import { Context } from "@deepseek-ai/cordis";
|
|
4
|
+
import { SettingsNamespace } from "@deepseek-ai/dsh-settings";
|
|
4
5
|
import { AttachmentStore } from "@deepseek-ai/dsh-attachment";
|
|
5
6
|
//#region src/auth.d.ts
|
|
6
7
|
/** Normalized WorkBuddy credential, timestamps in epoch milliseconds. */
|
|
@@ -617,7 +618,7 @@ declare const name = "dsh-connect-workbuddy";
|
|
|
617
618
|
/** The model registry required before the provider can register. */
|
|
618
619
|
declare const inject: string[];
|
|
619
620
|
/** Settings namespace for the plugin configuration card. */
|
|
620
|
-
declare const WORKBUDDY_SETTINGS_NS:
|
|
621
|
+
declare const WORKBUDDY_SETTINGS_NS: SettingsNamespace;
|
|
621
622
|
/** Plugin configuration. */
|
|
622
623
|
interface Config {
|
|
623
624
|
/** Explicit WorkBuddy desktop auth-file path, overriding env and platform defaults. */
|
package/lib/index.js
CHANGED
|
@@ -1,6 +1,5 @@
|
|
|
1
|
-
import { C as defaultDesktopAuthCandidates, D as workbuddyAccountId, E as parseWorkBuddyAuth, O as workbuddyOwnAuthPath, S as authFileName, T as defaultDesktopAuthPath, _ as WorkBuddyCatalog, a as readHostHeartbeat, b as WORKBUDDY_AUTH_FILE_ENV, c as WORKBUDDY_CONNECT_VERSION, d as parseCreditMultiplier, f as parseReasoning, g as FALLBACK_WORKBUDDY_MODELS, h as regionOf, i as processStartTimeMs, l as WorkBuddyUpstreamClient, m as prepareChatBody, n as clearHostHeartbeat, o as workbuddyHostHeartbeatPath, p as parseUpstreamModel, r as isHeartbeatProcessAlive, s as writeHostHeartbeat, t as WORKBUDDY_HOST_HEARTBEAT_FILENAME, u as classifyUpstreamError, v as deriveCatalog, w as defaultDesktopAuthDirs, x as WorkBuddyCredentialStore, y as WORKBUDDY_AUTH_FILENAME } from "./host-heartbeat-
|
|
1
|
+
import { C as defaultDesktopAuthCandidates, D as workbuddyAccountId, E as parseWorkBuddyAuth, O as workbuddyOwnAuthPath, S as authFileName, T as defaultDesktopAuthPath, _ as WorkBuddyCatalog, a as readHostHeartbeat, b as WORKBUDDY_AUTH_FILE_ENV, c as WORKBUDDY_CONNECT_VERSION, d as parseCreditMultiplier, f as parseReasoning, g as FALLBACK_WORKBUDDY_MODELS, h as regionOf, i as processStartTimeMs, l as WorkBuddyUpstreamClient, m as prepareChatBody, n as clearHostHeartbeat, o as workbuddyHostHeartbeatPath, p as parseUpstreamModel, r as isHeartbeatProcessAlive, s as writeHostHeartbeat, t as WORKBUDDY_HOST_HEARTBEAT_FILENAME, u as classifyUpstreamError, v as deriveCatalog, w as defaultDesktopAuthDirs, x as WorkBuddyCredentialStore, y as WORKBUDDY_AUTH_FILENAME } from "./host-heartbeat-D47UCCoc.js";
|
|
2
2
|
import z from "@deepseek-ai/schemastery";
|
|
3
|
-
import { installSettingsSection, settingsNamespace } from "@deepseek-ai/dsh-settings";
|
|
4
3
|
import { randomBytes, timingSafeEqual } from "node:crypto";
|
|
5
4
|
import { createProvider } from "@earendil-works/pi-ai";
|
|
6
5
|
import { openAICompletionsApi } from "@earendil-works/pi-ai/api/openai-completions.lazy";
|
|
@@ -610,9 +609,9 @@ function registerWorkBuddyStatusRoute(ctx, deps) {
|
|
|
610
609
|
/** Stable Cordis plugin name. */
|
|
611
610
|
const name = "dsh-connect-workbuddy";
|
|
612
611
|
/** The model registry required before the provider can register. */
|
|
613
|
-
const inject = ["llm"];
|
|
612
|
+
const inject = ["llm", "settings"];
|
|
614
613
|
/** Settings namespace for the plugin configuration card. */
|
|
615
|
-
const WORKBUDDY_SETTINGS_NS =
|
|
614
|
+
const WORKBUDDY_SETTINGS_NS = "workbuddy";
|
|
616
615
|
const modelConfig = z.object({
|
|
617
616
|
id: z.string().required(),
|
|
618
617
|
name: z.string().required(),
|
|
@@ -656,6 +655,7 @@ function apply(ctx, config) {
|
|
|
656
655
|
const configuredModels = (value) => withImageSelection(deriveCatalog(value.lastCatalog?.length ? value.lastCatalog : FALLBACK_WORKBUDDY_MODELS, enabledSet(value), value.contextBudgets ?? {}), imageSet(value));
|
|
657
656
|
const displayModels = (value) => value.lastCatalog?.length ? value.lastCatalog : FALLBACK_WORKBUDDY_MODELS;
|
|
658
657
|
let current = () => config;
|
|
658
|
+
let invalidateCatalog = () => {};
|
|
659
659
|
const discoverModels = async (signal) => {
|
|
660
660
|
const credential = await store.resolve();
|
|
661
661
|
return client.fetchModels(credential, signal);
|
|
@@ -669,7 +669,7 @@ function apply(ctx, config) {
|
|
|
669
669
|
contextBudgets: () => current().contextBudgets ?? {},
|
|
670
670
|
discoverModels
|
|
671
671
|
}));
|
|
672
|
-
|
|
672
|
+
ctx.settings.installSection(ctx, WORKBUDDY_SETTINGS_NS, Config, config, {
|
|
673
673
|
setSource(source) {
|
|
674
674
|
current = source;
|
|
675
675
|
},
|
|
@@ -682,7 +682,6 @@ function apply(ctx, config) {
|
|
|
682
682
|
}
|
|
683
683
|
});
|
|
684
684
|
let stopped = false;
|
|
685
|
-
let invalidateCatalog = () => {};
|
|
686
685
|
ctx.effect(() => () => {
|
|
687
686
|
stopped = true;
|
|
688
687
|
shim.close();
|
|
@@ -728,9 +727,9 @@ function apply(ctx, config) {
|
|
|
728
727
|
releaseAdapter?.();
|
|
729
728
|
releaseDirectory?.();
|
|
730
729
|
}
|
|
731
|
-
ctx.llm.registerModelDiscovery(WORKBUDDY_SETTINGS_NS, async (request) => {
|
|
730
|
+
ctx.llm.registerModelDiscovery(WORKBUDDY_SETTINGS_NS, async (request, signal) => {
|
|
732
731
|
if (request.provider !== "workbuddy") return [];
|
|
733
|
-
return withImageSelection(deriveCatalog(await discoverModels(
|
|
732
|
+
return withImageSelection(deriveCatalog(await discoverModels(signal), enabledSet(current()), current().contextBudgets ?? {}), imageSet(current())).map((model) => ({
|
|
734
733
|
id: model.id,
|
|
735
734
|
name: model.name,
|
|
736
735
|
contextWindow: model.contextWindow,
|
package/package.json
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
"name": "dsh-connect-workbuddy",
|
|
3
3
|
"displayName": "DSH Connect WorkBuddy",
|
|
4
4
|
"description": "Connect locally signed-in WorkBuddy models to DeepSeek Harness with a read-only credits overview and model management.",
|
|
5
|
-
"version": "1.1.
|
|
5
|
+
"version": "1.1.3",
|
|
6
6
|
"author": "dingminhua",
|
|
7
7
|
"copyright": "Copyright (c) 2026 LaoDing",
|
|
8
8
|
"license": "MIT",
|
|
@@ -75,35 +75,37 @@
|
|
|
75
75
|
"url": "https://github.com/dingminhua/dsh-connect-workbuddy/issues"
|
|
76
76
|
},
|
|
77
77
|
"peerDependencies": {
|
|
78
|
-
"@deepseek-ai/cordis": "
|
|
79
|
-
"@deepseek-ai/dsh-atomic-write": "
|
|
80
|
-
"@deepseek-ai/dsh-attachment": "
|
|
81
|
-
"@deepseek-ai/dsh-home-paths": "
|
|
82
|
-
"@deepseek-ai/dsh-host-webserver": "
|
|
83
|
-
"@deepseek-ai/dsh-llm": "
|
|
84
|
-
"@deepseek-ai/dsh-llm-pi-ai": "
|
|
85
|
-
"@deepseek-ai/dsh-settings": "
|
|
86
|
-
"@deepseek-ai/dsh-client-ui-primitives": "
|
|
87
|
-
"@deepseek-ai/
|
|
88
|
-
"@
|
|
78
|
+
"@deepseek-ai/cordis": ">=4.0.1-rc.1 <5.0.0 || >=4.0.2 <5.0.0",
|
|
79
|
+
"@deepseek-ai/dsh-atomic-write": ">=0.1.0-rc.1 <0.2.0 || >=0.1.1-rc.1 <0.2.0 || >=0.1.2-rc.1 <0.2.0",
|
|
80
|
+
"@deepseek-ai/dsh-attachment": ">=0.1.0-rc.1 <0.2.0 || >=0.1.1-rc.1 <0.2.0 || >=0.1.2-rc.1 <0.2.0",
|
|
81
|
+
"@deepseek-ai/dsh-home-paths": ">=0.1.0-rc.1 <0.2.0 || >=0.1.1-rc.1 <0.2.0 || >=0.1.2-rc.1 <0.2.0",
|
|
82
|
+
"@deepseek-ai/dsh-host-webserver": ">=0.1.0-rc.1 <0.2.0 || >=0.1.1-rc.1 <0.2.0 || >=0.1.2-rc.1 <0.2.0",
|
|
83
|
+
"@deepseek-ai/dsh-llm": ">=0.1.0-rc.1 <0.2.0 || >=0.1.1-rc.1 <0.2.0 || >=0.1.2-rc.1 <0.2.0",
|
|
84
|
+
"@deepseek-ai/dsh-llm-pi-ai": ">=0.1.0-rc.1 <0.2.0 || >=0.1.1-rc.1 <0.2.0 || >=0.1.2-rc.1 <0.2.0",
|
|
85
|
+
"@deepseek-ai/dsh-settings": ">=0.1.0-rc.1 <0.2.0 || >=0.1.1-rc.1 <0.2.0 || >=0.1.2-rc.1 <0.2.0",
|
|
86
|
+
"@deepseek-ai/dsh-client-ui-primitives": ">=0.1.0-rc.1 <0.2.0 || >=0.1.1-rc.1 <0.2.0 || >=0.1.2-rc.1 <0.2.0",
|
|
87
|
+
"@deepseek-ai/dsh-client-ui-settings": ">=0.1.1-rc.1 <0.2.0 || >=0.1.2-rc.1 <0.2.0",
|
|
88
|
+
"@deepseek-ai/schemastery": ">=3.18.1-rc.1 <4.0.0 || >=3.18.2 <4.0.0",
|
|
89
|
+
"@earendil-works/pi-ai": ">=0.82.1 <0.85.0 || >=0.85.0 <0.86.0",
|
|
89
90
|
"react": "^18.2.0"
|
|
90
91
|
},
|
|
91
92
|
"devDependencies": {
|
|
92
|
-
"@deepseek-ai/cordis": "
|
|
93
|
-
"@deepseek-ai/dsh-atomic-write": "
|
|
94
|
-
"@deepseek-ai/dsh-attachment": "
|
|
95
|
-
"@deepseek-ai/dsh-client-locale": "0.1.1-rc.2",
|
|
96
|
-
"@deepseek-ai/dsh-client-runtime": "0.1.1-rc.2",
|
|
97
|
-
"@deepseek-ai/dsh-client-ui-
|
|
98
|
-
"@deepseek-ai/dsh-client-ui-
|
|
99
|
-
"@deepseek-ai/dsh-client-ui-
|
|
100
|
-
"@deepseek-ai/dsh-
|
|
101
|
-
"@deepseek-ai/dsh-
|
|
102
|
-
"@deepseek-ai/dsh-
|
|
103
|
-
"@deepseek-ai/dsh-llm
|
|
104
|
-
"@deepseek-ai/dsh-
|
|
105
|
-
"@deepseek-ai/
|
|
106
|
-
"@
|
|
93
|
+
"@deepseek-ai/cordis": ">=4.0.1 <5.0.0 || >=4.0.2 <5.0.0",
|
|
94
|
+
"@deepseek-ai/dsh-atomic-write": ">=0.1.1-rc.1 <0.2.0 || >=0.1.2-rc.1 <0.2.0",
|
|
95
|
+
"@deepseek-ai/dsh-attachment": ">=0.1.1-rc.1 <0.2.0 || >=0.1.2-rc.1 <0.2.0",
|
|
96
|
+
"@deepseek-ai/dsh-client-locale": ">=0.1.1-rc.1 <0.2.0 || >=0.1.2-rc.1 <0.2.0",
|
|
97
|
+
"@deepseek-ai/dsh-client-runtime": ">=0.1.1-rc.1 <0.2.0 || >=0.1.2-rc.1 <0.2.0",
|
|
98
|
+
"@deepseek-ai/dsh-client-ui-settings": ">=0.1.1-rc.1 <0.2.0 || >=0.1.2-rc.1 <0.2.0",
|
|
99
|
+
"@deepseek-ai/dsh-client-ui-primitives": ">=0.1.1-rc.1 <0.2.0 || >=0.1.2-rc.1 <0.2.0",
|
|
100
|
+
"@deepseek-ai/dsh-client-ui-settings-plugins": ">=0.1.1-rc.1 <0.2.0 || >=0.1.2-rc.1 <0.2.0",
|
|
101
|
+
"@deepseek-ai/dsh-client-ui-slots": ">=0.1.1-rc.1 <0.2.0 || >=0.1.2-rc.1 <0.2.0",
|
|
102
|
+
"@deepseek-ai/dsh-home-paths": ">=0.1.1-rc.1 <0.2.0 || >=0.1.2-rc.1 <0.2.0",
|
|
103
|
+
"@deepseek-ai/dsh-host-webserver": ">=0.1.1-rc.1 <0.2.0 || >=0.1.2-rc.1 <0.2.0",
|
|
104
|
+
"@deepseek-ai/dsh-llm": ">=0.1.1-rc.1 <0.2.0 || >=0.1.2-rc.1 <0.2.0",
|
|
105
|
+
"@deepseek-ai/dsh-llm-pi-ai": ">=0.1.1-rc.1 <0.2.0 || >=0.1.2-rc.1 <0.2.0",
|
|
106
|
+
"@deepseek-ai/dsh-settings": ">=0.1.1-rc.1 <0.2.0 || >=0.1.2-rc.1 <0.2.0",
|
|
107
|
+
"@deepseek-ai/schemastery": ">=3.18.1 <4.0.0 || >=3.18.2 <4.0.0",
|
|
108
|
+
"@earendil-works/pi-ai": ">=0.82.1 <0.85.0 || >=0.85.0 <0.86.0",
|
|
107
109
|
"@types/node": "^22.20.0",
|
|
108
110
|
"@types/react": "~18.3.31",
|
|
109
111
|
"react": "^18.3.1",
|