dsh-phone-bridge 0.2.0 → 0.2.2

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.
Files changed (3) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +76 -0
  3. package/package.json +1 -2
package/LICENSE ADDED
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2026 KaiyeZeng
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 ADDED
@@ -0,0 +1,76 @@
1
+ # dsh-phone-bridge
2
+
3
+ Drive an existing DeepSeek Harness **desktop** session from a chat app, and manage
4
+ sessions from the sidebar.
5
+
6
+ > **Status as of October 2026:** DSH ships no way to reach a running desktop session
7
+ > from a phone, and no delete button. This package fills both gaps. It is unofficial
8
+ > and may break when DSH changes.
9
+
10
+ ## Install
11
+
12
+ ```powershell
13
+ dsh plugin --profile desktop add dsh-phone-bridge
14
+ ```
15
+
16
+ Then restart DSH. The package carries its own `dsh.bundle.patch`, so no config file
17
+ has to be edited by hand.
18
+
19
+ ## What it adds
20
+
21
+ **Desktop UI** — a delete button on every session row (with a confirmation), and a
22
+ trash panel at the bottom of the sidebar where each entry can be restored or purged.
23
+
24
+ **HTTP routes** under `/phone-bridge/*`, for a chat-side client to call:
25
+
26
+ | Route | Purpose |
27
+ |---|---|
28
+ | `GET /sessions` | list sessions, the same set the sidebar shows |
29
+ | `GET /search?q=` | search session message content |
30
+ | `POST /create` | create a session |
31
+ | `POST /rename` | set a session title |
32
+ | `POST /delete` | move a session to the trash |
33
+ | `GET /trash` | list the trash and its size |
34
+ | `POST /restore` | put a trashed session back |
35
+ | `POST /purge` | erase trashed data permanently |
36
+ | `GET /status` | running state, working directory, last activity |
37
+ | `POST /stop` | cancel the session's running turn |
38
+ | `GET /models` | the deployment model catalog |
39
+ | `POST /model` | switch the model a session uses |
40
+
41
+ Deleting **moves** a session to `~/.dsh/deleted-sessions/` instead of unlinking it,
42
+ so a delete stays recoverable and purging is a separate, explicit step.
43
+
44
+ ## The chat side
45
+
46
+ This package is only the DSH half. To talk to it from WeChat, Telegram or Yuanbao
47
+ you also need the OpenClaw plugin:
48
+
49
+ ```powershell
50
+ openclaw plugins install openclaw-dsh-bridge --force --accept-capabilities
51
+ ```
52
+
53
+ Both flags are required and the error does not say which one is missing. `--force`
54
+ because the package lives on npm rather than OpenClaw's own ClawHub, and
55
+ `--accept-capabilities` because the plugin declares capabilities.
56
+
57
+ Make sure `~/.openclaw/extensions/` holds no second copy of the plugin: OpenClaw
58
+ loads every subdirectory there that carries an `openclaw.plugin.json`, so a stale
59
+ backup folder gets loaded too, and two copies sharing one id forward every message
60
+ twice.
61
+
62
+ Source and setup guide: <https://github.com/KaiyeZeng/dsh-phone-bridge>
63
+
64
+ ## Notes
65
+
66
+ - **Zero runtime dependencies.** Only `node:` builtins are imported, so the file can
67
+ be mounted straight from disk with `file://` and no `node_modules` directory.
68
+ - `/sessions` reads DSH's workspace registry rather than the disk, so the phone lists
69
+ what the desktop sidebar lists. Sessions that were never registered in a workspace
70
+ (subagent sessions, ones made before the registry existed) have files but no
71
+ sidebar row, and listing the disk alone made the phone show rows the desktop did
72
+ not have.
73
+ - The model catalog is read structurally. The exact shape is not a stable surface, so
74
+ a change there shortens the list instead of crashing.
75
+
76
+ MIT licensed.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "dsh-phone-bridge",
3
- "version": "0.2.0",
3
+ "version": "0.2.2",
4
4
  "description": "Drive an existing DSH desktop session from a chat app, plus a sidebar delete button and trash panel",
5
5
  "type": "module",
6
6
  "main": "index.js",
@@ -18,7 +18,6 @@
18
18
  "client.js",
19
19
  "cordis.patch.yml",
20
20
  "README.md",
21
- "README.zh.md",
22
21
  "LICENSE"
23
22
  ],
24
23
  "keywords": [