xrkh-better-sidebar 0.18.2 → 0.18.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/README.md CHANGED
@@ -3,14 +3,14 @@
3
3
  > **读者**:XRK-Harness 终端用户 · 集成者
4
4
 
5
5
  XRK-Harness(`xrkh`)标准侧边栏插件:资源管理器 · 编辑器 · 终端 · Git · 浏览器等工作台,按会话隔离。
6
- Host 侧 `/sidebar/*` 由产品 Host 原生挂载(`createSidebarPublicHandler`);本包提供 **client 半包**。
6
+ Host 侧 `/sidebar/*` 由产品 Host 原生挂载(`createSidebarPublicHandler`);本包提供 **client 半包**。`src/index.ts` 的 Cordis host 半包仅供非 XRKH 的 Cordis profile;**不要**在 XRKH 上再挂 host 抢同一前缀。
7
7
 
8
8
  ## 安装
9
9
 
10
- 前置:`xrkh web` 或 `npx @xrkseek/harness-cli web`,Node ≥ 26。建议 Host **≥ 0.2.3**。推荐从 **npmjs** 安装:
10
+ 前置:`xrkh web` 或 `npx @xrkseek/harness-cli web`,Node ≥ 26。建议 Host **≥ 0.3.4**。推荐从 **npmjs** 安装:
11
11
 
12
12
  ```bash
13
- xrkh plugin add xrkh-better-sidebar@0.18.1
13
+ xrkh plugin add xrkh-better-sidebar@0.18.3
14
14
  xrkh restart
15
15
  ```
16
16
 
@@ -18,14 +18,23 @@ xrkh restart
18
18
 
19
19
  源码路径仍可用(非推荐):`git clone git@github.com:xrkseek/xrkh-better-sidebar.git` 后 `xrkh plugin add ./xrkh-better-sidebar`。
20
20
 
21
+ ## 0.18.3
22
+
23
+ - Client fiber 注入 `layout`(与 `ui-sidebar` 同序):等 `ui-layout` 声明中心栏后再挂侧栏拦截,避免 Host ≥0.3.4 上 `conversation` slot 竞态
24
+ - `xrk.client.inject` 补 `@xrkseek/client-ui-layout`;文档 Host 基线改为 **≥ 0.3.4**
25
+
26
+ ## 0.18.2
27
+
28
+ - Files 主页签随 locale;轻量媒体预览;默认打开侧栏
29
+
21
30
  ## 0.18.1
22
31
 
23
32
  - `subagents.live`:兼容嵌套 `tool` 与旧版扁平 `tool` wire,避免子代理活动预览崩溃
24
- - 与 Host **0.2.3** 原生 `/sidebar/*`(嵌套 live 形状)对齐
33
+ - 与 Host 原生 `/sidebar/*`(嵌套 live 形状)对齐
25
34
 
26
35
  ## 0.18.0
27
36
 
28
- - XRKH 原生:去掉 DSH 双轨(`dsh` manifest · better-locale · DSH 安装脚本 · 市场目录)
37
+ - XRKH 原生:去掉第三方双轨(旧 manifest · better-locale · 旧安装脚本 · 市场目录)
29
38
  - peer 仅 `@xrkseek/*` + React;工具类型走 `@xrkseek/xrk-tools` / `xrk-settings`
30
39
  - 无 Side Chat;子代理走 Host Face + `subagents.live` / `jobs.*`
31
40
  - 空 curated 插件目录(社区扩展不随包捆绑)
@@ -37,7 +46,7 @@ xrkh restart
37
46
  | npm | `xrkh-better-sidebar` |
38
47
  | 仓库 | `xrkseek/xrkh-better-sidebar` |
39
48
  | 形态 | **仅 client 半包**(`package.json` → `xrk.client` → `lib/client.js`) |
40
- | 注入 | `@xrkseek/client-runtime` · `client-locale` · `client-ui-slots` · `client-ui-conversation` · `client-modules` |
49
+ | 注入 | `client-runtime` · `client-locale` · `client-ui-slots` · `client-ui-layout` · `client-ui-conversation` · `client-modules` |
41
50
  | Host | **产品 Host 拥有** `/sidebar/api` · `/sidebar/file|upload|html|bundle` · `/sidebar/ws/terminal` 等;本包不在 XRK 上挂 Cordis host 半包抢同一前缀 |
42
51
  | 子代理 / 任务 | 走 Host Face + `/sidebar/api` 的 `subagents.live` · `jobs.*`(勿再实现 Side Chat) |
43
52
 
package/README_EN.md CHANGED
@@ -3,14 +3,14 @@
3
3
  > **Audience**: XRK-Harness end users · integrators
4
4
 
5
5
  Standard sidebar plugin for XRK-Harness (`xrkh`): explorer · editor · terminal · git · browser, isolated per session.
6
- Host mounts `/sidebar/*` natively (`createSidebarPublicHandler`); this package ships the **client** half.
6
+ Host mounts `/sidebar/*` natively (`createSidebarPublicHandler`); this package ships the **client** half. The Cordis host half in `src/index.ts` is only for non-XRKH Cordis profiles — **do not** mount it on XRKH against the same `/sidebar/*` prefix.
7
7
 
8
8
  ## Install
9
9
 
10
- Requires `xrkh web` or `npx @xrkseek/harness-cli web`, Node ≥ 26. Prefer Host **≥ 0.2.3**. Install from **npmjs**:
10
+ Requires `xrkh web` or `npx @xrkseek/harness-cli web`, Node ≥ 26. Prefer Host **≥ 0.3.4**. Install from **npmjs**:
11
11
 
12
12
  ```bash
13
- xrkh plugin add xrkh-better-sidebar@0.18.1
13
+ xrkh plugin add xrkh-better-sidebar@0.18.3
14
14
  xrkh restart
15
15
  ```
16
16
 
@@ -18,14 +18,23 @@ Hard-refresh the browser after install (Ctrl+Shift+R).
18
18
 
19
19
  Source path still works (not preferred): `git clone git@github.com:xrkseek/xrkh-better-sidebar.git` then `xrkh plugin add ./xrkh-better-sidebar`.
20
20
 
21
+ ## 0.18.3
22
+
23
+ - Client fiber injects `layout` (same order as `ui-sidebar`): wait until `ui-layout` declares the center column before sidebar interception — avoids a `conversation` slot race on Host ≥ 0.3.4
24
+ - `xrk.client.inject` adds `@xrkseek/client-ui-layout`; docs Host baseline **≥ 0.3.4**
25
+
26
+ ## 0.18.2
27
+
28
+ - Files home tab follows locale; light media viewers; open by default
29
+
21
30
  ## 0.18.1
22
31
 
23
32
  - `subagents.live`: accept nested `tool` and legacy flat `tool` wire so subagent activity previews do not crash
24
- - Align with Host **0.2.3** native `/sidebar/*` (nested live shape)
33
+ - Align with Host native `/sidebar/*` (nested live shape)
25
34
 
26
35
  ## 0.18.0
27
36
 
28
- - XRKH-native: drop DSH dual-track (`dsh` manifest · better-locale · DSH install scripts · marketplace catalogs)
37
+ - XRKH-native: drop third-party dual-track (legacy manifest · better-locale · legacy install scripts · marketplace catalogs)
29
38
  - Peers are `@xrkseek/*` + React only; tools/settings types via `@xrkseek/xrk-tools` / `xrk-settings`
30
39
  - No Side Chat; subagents use Host Face + `subagents.live` / `jobs.*`
31
40
  - Empty curated plugin catalogs (community entries are not bundled)
@@ -37,8 +46,8 @@ Source path still works (not preferred): `git clone git@github.com:xrkseek/xrkh-
37
46
  | npm | `xrkh-better-sidebar` |
38
47
  | Repo | `xrkseek/xrkh-better-sidebar` |
39
48
  | Manifest | `package.json` → `xrk.client` (client half) |
40
- | Inject | `@xrkseek/client-*` (runtime, locale, slots, conversation, modules) |
41
- | Host | Native Host: `/sidebar/api` · `/sidebar/bundle` · PTY |
49
+ | Inject | `client-runtime` · `locale` · `ui-slots` · `ui-layout` · `ui-conversation` · `modules` |
50
+ | Host | Native Host owns `/sidebar/api` · `/sidebar/bundle` · PTY — do not remount Cordis host half on XRKH |
42
51
 
43
52
  ## Develop
44
53
 
@@ -22951,7 +22951,8 @@ window.__ModuleLoader__.load({
22951
22951
  "sessions",
22952
22952
  "workspaces",
22953
22953
  "locale",
22954
- "modules"
22954
+ "modules",
22955
+ "layout"
22955
22956
  ];
22956
22957
  /**
22957
22958
  * Error boundary over the sidebar tree (root scope): a render error in the
package/lib/client.js CHANGED
@@ -22951,7 +22951,8 @@ window.__ModuleLoader__.load({
22951
22951
  "sessions",
22952
22952
  "workspaces",
22953
22953
  "locale",
22954
- "modules"
22954
+ "modules",
22955
+ "layout"
22955
22956
  ];
22956
22957
  /**
22957
22958
  * Error boundary over the sidebar tree (root scope): a render error in the
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "xrkh-better-sidebar",
3
- "version": "0.18.2",
3
+ "version": "0.18.3",
4
4
  "description": "XRK-Harness (xrkh) standard sidebar plugin: explorer, editor, terminal, git, browser.",
5
5
  "type": "module",
6
6
  "repository": {
@@ -70,6 +70,7 @@
70
70
  "@xrkseek/cordis": "*",
71
71
  "@xrkseek/client-locale": "*",
72
72
  "@xrkseek/client-ui-conversation": "*",
73
+ "@xrkseek/client-ui-layout": "*",
73
74
  "@xrkseek/client-ui-primitives": "*",
74
75
  "@xrkseek/client-ui-settings": "*",
75
76
  "@xrkseek/client-ui-slots": "*",
@@ -142,6 +143,7 @@
142
143
  "@xrkseek/client-runtime",
143
144
  "@xrkseek/client-locale",
144
145
  "@xrkseek/client-ui-slots",
146
+ "@xrkseek/client-ui-layout",
145
147
  "@xrkseek/client-ui-conversation",
146
148
  "@xrkseek/client-modules"
147
149
  ],
@@ -11,6 +11,8 @@
11
11
  import { createElement } from 'react'
12
12
  import { createRoot, type Root } from 'react-dom/client'
13
13
  import type { Context } from '../context-types.ts'
14
+ // Type-only: `layout` inject waits until ui-layout declares center slots.
15
+ import type {} from '@xrkseek/client-ui-layout/client'
14
16
  import { allLeaves, createSidebarStore, isAgentTabId } from './state.ts'
15
17
  import { createBetterSidebarService, matchUrlTarget } from './service.ts'
16
18
  import { revalidateChunksOnReactivate, setChunkModuleSystem } from './chunk-loader.ts'
@@ -34,7 +36,7 @@ import './layout.css'
34
36
  /** Services required before mounting (provided by the client runtime; the
35
37
  * locale service backs the sidebar's copy — see locales.ts). `modules`
36
38
  * resolves chunk-loader externals. */
37
- export const inject = ['slots', 'sessions', 'workspaces', 'locale', 'modules']
39
+ export const inject = ['slots', 'sessions', 'workspaces', 'locale', 'modules', 'layout']
38
40
 
39
41
  /**
40
42
  * Error boundary over the sidebar tree (root scope): a render error in the
package/src/index.ts CHANGED
@@ -11,7 +11,8 @@
11
11
  *
12
12
  * On XRK-Harness the product Host already owns `/sidebar/*`; this apply path
13
13
  * remains for Cordis profile mounts that still load the package as a host
14
- * plugin. Prefer client-only inject (`xrk.client`) on XRKH.
14
+ * plugin. Prefer client-only inject (`xrk.client`) on XRKH — do not enable
15
+ * this host half beside `createSidebarPublicHandler` (duplicate routes).
15
16
  *
16
17
  * All operations are conversation-scoped: requests carry a sessionId, the
17
18
  * session's authoritative cwd comes from the session store, and terminal