@itookit/dsht 0.6.6 → 0.6.7
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.i18n.yaml +2 -2
- package/README.md +1 -1
- package/README.zh.md +1 -1
- package/dist/ui/app.js +7 -5
- package/package.json +1 -1
package/README.i18n.yaml
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
# Git blob hashes of the reviewed bilingual pair.
|
|
2
|
-
README.md:
|
|
3
|
-
README.zh.md:
|
|
2
|
+
README.md: 1f5cde21326a6a1056ca90cba9e21e672ee332bb
|
|
3
|
+
README.zh.md: 977cf5defbbe36cf37ca0d999b915a4aa81bfbfd
|
package/README.md
CHANGED
|
@@ -174,7 +174,7 @@ npm start
|
|
|
174
174
|
|
|
175
175
|
Both paths read the same `DSH_URL` and `DSH_TOKEN` variables.
|
|
176
176
|
|
|
177
|
-
Select a workspace with ↑/↓ and Enter, then select a session or **New session**. **All sessions** also exposes sessions outside registered workspaces. **Add workspace (this directory)** registers the directory `dsht` itself runs in
|
|
177
|
+
Select a workspace with ↑/↓ and Enter, then select a session or **New session**. **All sessions** also exposes sessions outside registered workspaces. **Add workspace (this directory)** registers the directory `dsht` itself runs in: while the host does not already have it, it leads the list and is therefore the default selection; **Add workspace (host directory)** takes an existing absolute directory on the host, which may differ from your local filesystem, and Esc leaves that prompt for the picker again. Starting inside a registered workspace directory selects that workspace instead of showing the picker, with `←` in the session list switching to another; a session id passed on the command line still opens directly. Creating a session requires a selected workspace.
|
|
178
178
|
|
|
179
179
|
While the host is unreachable, the startup pickers show what is wrong and how to fix it instead of an empty list. A first attempt still in flight is named as connecting; an unreachable host prints the `npx @deepseek-ai/dsh web` command that starts it together with the first-run `DSH_URL` line; a refused credential asks for that URL or `DSH_TOKEN`. The raw transport failure stays underneath as a dim diagnostic, and the client keeps retrying on its own.
|
|
180
180
|
|
package/README.zh.md
CHANGED
|
@@ -174,7 +174,7 @@ npm start
|
|
|
174
174
|
|
|
175
175
|
两种方式读取相同的 `DSH_URL` 和 `DSH_TOKEN` 变量。
|
|
176
176
|
|
|
177
|
-
使用 ↑/↓ 和 Enter 选择工作区,然后选择已有会话或 **New session**。**All sessions** 同时显示未归属注册工作区的会话。**Add workspace (this directory)** 直接注册 `dsht`
|
|
177
|
+
使用 ↑/↓ 和 Enter 选择工作区,然后选择已有会话或 **New session**。**All sessions** 同时显示未归属注册工作区的会话。**Add workspace (this directory)** 直接注册 `dsht` 自身所在的目录:服务端尚未注册它时,它排在列表最前,因此也是默认选中项;**Add workspace (host directory)** 接收服务端已有目录的绝对路径,该路径可能与本机文件系统不同,按 Esc 可以退回选择器。在已注册的工作区目录里启动时,直接选中该工作区而不再显示选择器(会话列表里的 `←` 仍可切到别的工作区);命令行给出会话 ID 时依旧直接打开。新建会话前必须选择工作区。
|
|
178
178
|
|
|
179
179
|
宿主不可达时,启动选择器显示的是原因与解决办法,而不是一个空列表:尚在进行的首次尝试写成"连接中";连不上宿主时给出启动它的 `npx @deepseek-ai/dsh web` 命令与首次运行所需的 `DSH_URL` 行;凭据被拒时要求该 URL 或 `DSH_TOKEN`。原始传输错误以暗色诊断信息留在下方,客户端自行持续重连。
|
|
180
180
|
|
package/dist/ui/app.js
CHANGED
|
@@ -831,6 +831,13 @@ export function App({ controller, panelLifetimeMs = PANEL_LIFETIME_MS, theme = m
|
|
|
831
831
|
// Needs-you is the one state that asks for action, so it outranks working; ready stays quiet.
|
|
832
832
|
const stateColor = { needs: theme.status.critical, running: theme.status.working, idle: theme.colors.muted };
|
|
833
833
|
const choices = state.screen === 'workspaces' ? [
|
|
834
|
+
// The directory this client runs in is the one case where no path has to be typed, and offering
|
|
835
|
+
// it only while the host has not registered it keeps the row from repeating itself. It leads the
|
|
836
|
+
// list so it is also the default selection: starting outside a registered workspace is exactly
|
|
837
|
+
// the situation the row exists for.
|
|
838
|
+
...(state.workspaces.some(workspace => string(workspace.path) === controller.localDirectory) ? []
|
|
839
|
+
: [{ key: '@here', label: `+ Add workspace (this directory) ${controller.localDirectory}`,
|
|
840
|
+
action: () => operate(() => controller.actions.createWorkspace(controller.localDirectory)) }]),
|
|
834
841
|
...state.workspaces.map(workspace => {
|
|
835
842
|
const counts = workspaceCounts(sessionsOf(workspace), new Set(pendingCounts.keys()));
|
|
836
843
|
const name = string(workspace.title);
|
|
@@ -845,11 +852,6 @@ export function App({ controller, panelLifetimeMs = PANEL_LIFETIME_MS, theme = m
|
|
|
845
852
|
action: () => controller.actions.pickWorkspace(string(workspace.workspaceId)) };
|
|
846
853
|
}),
|
|
847
854
|
{ key: '@all', label: 'All sessions', action: () => operate(() => controller.actions.switchSession('all')) },
|
|
848
|
-
// The directory this client runs in is the one case where no path has to be typed, and offering
|
|
849
|
-
// it only while the host has not registered it keeps the row from repeating itself.
|
|
850
|
-
...(state.workspaces.some(workspace => string(workspace.path) === controller.localDirectory) ? []
|
|
851
|
-
: [{ key: '@here', label: `+ Add workspace (this directory) ${controller.localDirectory}`,
|
|
852
|
-
action: () => operate(() => controller.actions.createWorkspace(controller.localDirectory)) }]),
|
|
853
855
|
{ key: '@new', label: '+ Add workspace (host directory)', action: () => controller.actions.enterPath() },
|
|
854
856
|
] : [
|
|
855
857
|
...(state.workspaceId && !state.showAllSessions ? [{ key: '@new', label: '+ New session', action: () => operate(() => controller.actions.createSession()) }] : []),
|