NamesMT/dsh-home-hosted

Manage home-hosted servers from DeepSeek Harness: create and supervise service entries, ports, restarts and boot autostart.

Prompts your home servers into existence and keeps them running by wrapping the home-hosted panel: ask for a Gitea, a Jellyfin, an FTP server and the plugin writes and configures the panel entries — nothing is installed or started until you say so. It drives the whole home-hosted panel, including BYOU custom UIs, workspaces, a reverse proxy with automatic HTTPS, zip/AES-256 backups, notifications, dynamic DNS, health probes, live logs and host vitals. It exposes agent tools such as home_hosted_status, home_hosted_workspaces_list, home_hosted_servers_list/lifecycle/edit, home_hosted_autostart_manage, home_hosted_ui_manage and home_hosted_panel_logs (session permissions still gate every write). It installs, verifies and removes the OS boot autostart entry per platform (Linux systemd-user/systemd-system/XDG, macOS launchd-agent/launchd-daemon, Windows Run key/Task Scheduler) so the panel and its entries return after reboot. One managed 'dsh' entry is kept alive and restarts/reclaims its port, and the plugin recognizes other panels on the machine and asks before touching them.

Infrastructure & Deployment ★ 1
View on GitHub ↗

Install

dsh plugin --profile web add dsh-home-hosted

Copied verbatim from the README's '🚀 Quick start' section; the README adds 'Open Settings → Home Hosted and add your servers — or just ask the agent', then optionally turn on Manage dsh and Autostart. The package is published on npm: dsh-home-hosted, latest 0.7.4 on registry.npmjs.org (checked 2026-10-06).

Compatibility

Node >=24 and dsh >=0.2.0-rc.1 (README badges); development uses Node 24+ and pnpm. DeepSeek Harness Web and Desktop are both supported (the page, agent tools, workspaces, panel and boot autostart work in each; 'Manage dsh' is web-only and shown disabled on Desktop because Desktop starts its own reserved Electron profile). It registers as a Cordis row (id: dsh-home-hosted) with operator-only config keys stateDir, homeHostedCommand and defaultEntryId; user toggles live in <stateDir>/settings.json.

Details

FAQ

Will it install or start anything without my say-so?
No. Nothing is installed or started until you say so; entries are written through the panel's API so nothing restarts behind your back, and a tool that changes something asks for approval unless the session is already Full access.
How does boot autostart work across platforms?
It installs a per-platform OS entry: Linux (systemd-user, systemd-system or XDG autostart), macOS (launchd-agent or launchd-daemon, the latter needs a one-time sudo), and Windows (Run key or Task Scheduler). When the process cannot elevate, the page prints the exact commands instead.
What happens if the API token is missing or refused?
A missing or refused token is called out on the page with a one-click 'Regenerate token'; with 'Regenerate token automatically' on (default), a refused panel call re-enrols a token and retries once instead of failing. Tokens are stored at <stateDir>/panel-token in 0600 mode and never rendered or logged.

Alternatives

AlliotTech/deepseek-harness-docker · CrazyShout/dsh-ssh-remote · YOLO-LZL/dsh-ssh-plugin

More plugins in Infrastructure & Deployment

Browse more in Infrastructure & Deployment

Guides for Infrastructure & Deployment plugins