dsh-watcher 0.4.0-insights.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 ADDED
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2026 dsh-watcher contributors
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.en.md ADDED
@@ -0,0 +1,59 @@
1
+ [中文](./README.md) · English
2
+
3
+ # Watcher
4
+
5
+ ```sh
6
+ dsh plugin --profile web add github:aa2246740/dsh-watcher
7
+ ```
8
+
9
+ You need official `dsh` (or `npx @deepseek-ai/dsh`) and **pnpm** on `PATH`. `dsh plugin add` runs pnpm in `$DSH_HOME/profiles/web` and, because this package declares `dsh.bundle.patch`, appends the bundle to that profile. Then **restart that Host and reload the page**. The command writes the profile. It does not hot-load a running process.
10
+
11
+ `lib/` is committed, so a git install does not need a local build, `prepare`, or `allowBuilds`. DeepSeek Harness **0.1.5-rc.2**. Node `^22.19.0` or `>=24`.
12
+
13
+ A read-only plugin for DeepSeek Harness Web. Open the eye in the session header. A Session becomes a foldable work path: how many steps ran, how many tools fired, how long it took. Open a step for parallel branches, a tool result, or a reasoning row that stays folded until you ask.
14
+
15
+ It does not inject messages, invent hidden chain-of-thought, or replace the official Trajectory.
16
+
17
+ ![Switching from itemized to grouped: two package.json edits collapse to ×2](docs/screenshots/switch-mode.gif)
18
+
19
+ ![Three collapsed turns with phase counts, executions, and tok/s](docs/screenshots/collapsed-turns.png)
20
+
21
+ ![Turn 3 expanded: the parallel step stays on its original Step](docs/screenshots/overview.png)
22
+
23
+ ![Step 2: glob and grep running as two parallel branches](docs/screenshots/parallel.png)
24
+
25
+ ![Grouped: edit package.json ×2, still steps 5 and 6 when opened](docs/screenshots/grouped.png)
26
+
27
+ Grouped view only stacks what it can prove. Two different bash calls stay apart. The model stage shows only provider-visible reasoning already written into the Session. If nothing was recorded, it says so.
28
+
29
+ From a clone:
30
+
31
+ ```sh
32
+ git clone https://github.com/aa2246740/dsh-watcher.git
33
+ dsh plugin --profile web add ./dsh-watcher
34
+ ```
35
+
36
+ That path also needs pnpm, then a Host restart and page reload.
37
+
38
+ ```sh
39
+ dsh plugin --profile web remove dsh-watcher
40
+ ```
41
+
42
+ DSH.app's `desktop` profile rejects `github:`. Use `dsh web` and install into the `web` profile.
43
+
44
+ The interaction contract lives in [DESIGN.md](./DESIGN.md). MIT.
45
+
46
+ ## Build from source
47
+
48
+ Skip this for a normal install. Rebuild the committed `lib/` with **pnpm** after TypeScript changes:
49
+
50
+ ```sh
51
+ pnpm install
52
+ pnpm test
53
+ node scripts/link-harness-dependencies.mjs /path/to/harness
54
+ pnpm build
55
+ ```
56
+
57
+ `pnpm build` needs a local Harness checkout that can resolve the `@deepseek-ai/dsh-*` peers. Do not use this path to install the plugin.
58
+
59
+ Watcher waits for the Chat projection on cold sessions before mounting its panel.
package/README.md ADDED
@@ -0,0 +1,59 @@
1
+ 中文 · [English](./README.en.md)
2
+
3
+ # Watcher
4
+
5
+ ```sh
6
+ dsh plugin --profile web add github:aa2246740/dsh-watcher
7
+ ```
8
+
9
+ PATH 上需要官方 `dsh`(或 `npx @deepseek-ai/dsh`)和 **pnpm**。`dsh plugin add` 会在 `$DSH_HOME/profiles/web` 里跑 pnpm,并因为本包装了 `dsh.bundle.patch` 而写入 profile bundles。然后**重启这个 Host,再刷新页面**。它只写 profile,不会热挂正在跑的进程。
10
+
11
+ 仓库已提交 `lib/`,git 安装不用再构建,也不走 `prepare` / `allowBuilds`。需要 DeepSeek Harness **0.1.5-rc.2**,Node `^22.19.0` 或 `>=24`。
12
+
13
+ DeepSeek Harness Web 的只读插件。点会话标题栏里的眼睛,把 Session 收成一张能折叠的工作路径:这轮走了几步、跑了几次、花了多久;再展开某一步看并行分支、工具结果,或一条默认折着的推理记录。
14
+
15
+ 它不往对话里塞消息,不编隐藏思维链,也不替代官方 Trajectory。
16
+
17
+ ![从逐项切到归类:两次改 package.json 收成 ×2](docs/screenshots/switch-mode.gif)
18
+
19
+ ![三轮都收着,留下阶段数、执行数和 tok/s](docs/screenshots/collapsed-turns.png)
20
+
21
+ ![第三轮展开:并行步骤还在原来的 Step 里](docs/screenshots/overview.png)
22
+
23
+ ![步骤 2:glob 和 grep 两项并行](docs/screenshots/parallel.png)
24
+
25
+ ![归类:修改 package.json ×2,展开仍是步骤 5 和 6](docs/screenshots/grouped.png)
26
+
27
+ 归类只叠能证明相同的调用。两条不同的 bash 不会被捏在一起。模型阶段只显示供应商已经写进 Session 的可见 reasoning;没有记录就写未记录。
28
+
29
+ 已经 clone 过的目录也可以:
30
+
31
+ ```sh
32
+ git clone https://github.com/aa2246740/dsh-watcher.git
33
+ dsh plugin --profile web add ./dsh-watcher
34
+ ```
35
+
36
+ 同样需要 pnpm,然后重启 Host 并刷新页面。
37
+
38
+ ```sh
39
+ dsh plugin --profile web remove dsh-watcher
40
+ ```
41
+
42
+ DSH.app 的 `desktop` profile 不接受 `github:`。用 `dsh web` 装进 web profile。
43
+
44
+ 交互约定在 [DESIGN.md](./DESIGN.md)。MIT。
45
+
46
+ ## 从源码构建
47
+
48
+ 日常安装不用这一步。改 TypeScript 后用 **pnpm** 重建已提交的 `lib/`:
49
+
50
+ ```sh
51
+ pnpm install
52
+ pnpm test
53
+ node scripts/link-harness-dependencies.mjs /path/to/harness
54
+ pnpm build
55
+ ```
56
+
57
+ `pnpm build` 需要能解析 `@deepseek-ai/dsh-*` peer 的本机 Harness 检出。装插件不要走这条路径。
58
+
59
+ 冷会话的 Chat 数据尚未到达时,Watcher 显示等待提示,数据到达后再挂载面板。
@@ -0,0 +1,5 @@
1
+ # Official bundle layer. `dsh plugin add` applies this into the profile.
2
+ # Rows resolve by package name so the installed copy is what boots.
3
+ - insert:
4
+ - id: dsh-watcher
5
+ name: dsh-watcher
package/cordis.yml ADDED
@@ -0,0 +1,5 @@
1
+ # portable overlay: relative name only. --patch resolves against the profile
2
+ # directory, so cold-boot through `dshx start` / `dshx verify-boot`, not raw pnpm dsh.
3
+ - insert:
4
+ - id: dsh-watcher
5
+ name: './src/dsh-watcher.ts'