All plugins

DSH / BUNDLE / CLIENT-UI

dsh-job-watch

v0.1.0yanggaihao5-sys / dsh-job-watch2552771047

InstallableBundlesUI & client pluginsCommunity · Topic auto-analysisWeb UI

Overview

dsh-job-watch

DSH Web GUI: attach a long-running job id to the CURRENT conversation and let the sidebar row carry its state — pink while the job runs, green once it finished (come back and analyse), amber when the id cannot be found. Providers are just a shell command plus one regex, so anything that can list what is running (an HPC scheduler, tmux on a bare-metal box, your own CLI) works. Not affiliated with DeepSeek.

README / EN

Package documentation

Registry summary

DSH Web GUI: attach a long-running job id to the CURRENT conversation and let the sidebar row carry its state — pink while the job runs, green once it finished (come back and analyse), amber when the id cannot be found. Providers are just a shell command plus one regex, so anything that can list what is running (an HPC scheduler, tmux on a bare-metal box, your own CLI) works. Not affiliated with DeepSeek.

dsh.pub verifies the pinned bundle contract, runtime facts, and distribution semantics. The complete README remains in the source repository.

Read the full README on GitHub

LIMITATIONS

Known limitations

- **The sidebar has no decoration API.** The browser half finds a row's session id through the React fiber chain hanging off the row DOM node and injects the marker into the row. This is inherently tied to the current sidebar implementation; when it breaks, the console and `window.__dshJobWatch.stats()` say so instead of failing silently. - **`register` is a manual step** — see above. There is no way around it for jobs DSH did not spawn. - **Only rows the sidebar renders get a colour.** A conversation that is not in the visible list is not painted (the rollup is still computed, so it paints as soon as the row appears). - **`linePattern` is yours to get right.** A pattern that matches the header row as a job will track a fake job; a pattern that matches nothing silently tracks nothing (which is why `refresh` reports how many ids each provider listed). - **No test of the GUI itself.** `node --test test/kernel.test.mjs` covers the kernel — listing parsing, STAT folding, the real-prompt discriminator, and the finish-time contract.