ddtcorex/dsh-maestro-core

DSH Web supervisor: crash polling, last-known-good snapshots, auto-resume of interrupted sessions and browser auto-reload.

A supervisor that keeps DSH Web resilient by combining crash guard-and-report with auto-resume and auto-reload. An external systemd daemon polls :3080 every 3s, keeps last-known-good snapshots (~/.dsh/.supervisor/lkg, rotate 3, sha256 verify, df >500MB guard), auto-rolls-back on crash (debounce 60s, flock) and writes health+git-diff+log reports. A host plugin runs auto-resume ~8s after boot — findInterrupted (tail 100) plus findDanglingOpenTurns (full scan within autoResumeWithin, default 5m) then agents.resume + followup('continue'), recovering provider/model from request/context — and a client plugin auto-reloads the browser via 1s HEAD / polling after offline/WebSocket-close/visibilitychange events. It bundles five formerly separate modules into one package: the supervisor, the namespaced settings store, config, guard (rule classification and approval gate) and harness-to-harness sync (backup/restore/retention GC/two-machine sync). It registers 25 host tools (7 supervisor, 3 guard, 9 sync, 6 backup/restore), a JSON CLI (status/daemon/resume/boot-guard) and loopback RPC endpoints at /dsh-maestro-supervisor-resume/{scan,resume}.

Infrastructure & Deployment ★ 1
View on GitHub ↗

Install

dsh plugin --profile web add @ddtcorex/dsh-maestro-core

Copied verbatim from the README's '## Install' section ('One package, one command'). The package is published on npm: @ddtcorex/dsh-maestro-core, latest 0.11.1 on registry.npmjs.org (checked 2026-10-06). The README also documents a workspace build-and-link path and an optional systemd user-daemon install; it stresses that a dry-boot pre-flight (isolated DSH_HOME on port 0) is required before adding to a live profile.

Compatibility

DeepSeek Harness Web: a host+client Cordis plugin that declares dsh.client (platform web, inject ['@deepseek-ai/dsh-client-connection', '@deepseek-ai/dsh-client-ui-slots']) so the browser half auto-loads, with four host rows (maestro-supervisor, maestro-config, dsh-maestro-guard, dsh-maestro-sync) plus one client bundle served at /plugins/@ddtcorex/dsh-maestro-core/client.js. It can additionally run outside the pnpm->sh->node tree as a systemd user daemon (dsh-web-supervisor) to survive tree crashes. No Node version is stated in the README.

Details

FAQ

What problem does it solve?
It keeps DSH Web resilient: it detects and rolls back crashes from outside the process tree (systemd daemon), auto-resumes interrupted/dangling sessions shortly after boot, and auto-reloads the browser after a restart so no manual F5 is needed.
How is auto-resume configured?
autoResumeEnabled (default true) and autoResumeWithin (default 5 minutes; strings like 5m/30s/1h accepted). Precedence is cordis.patch.yml config > env (DSH_SUPERVISOR_AUTO_RESUME / DSH_SUPERVISOR_RESUME_WITHIN) > ~/.dsh/.supervisor/config.json > Maestro settings.json > default.
Does it require systemd?
No — the systemd user daemon is optional and only adds crash detection outside the tree; you can also run it in the foreground (node lib/index.js daemon) for debugging. Telegram notification is loose by default and only sends if a notifier/env is present.

Alternatives

coppynight/dsh-doctor · feibi-mochi/deepseek-harness-control-center · omdsh-dev/dsh-plugin-check

More plugins in Infrastructure & Deployment

Browse more in Infrastructure & Deployment

Guides for Infrastructure & Deployment plugins