Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
@@ -0,0 +1,63 @@
# yaml-language-server: $schema=https://aka.ms/winget-manifest.installer.1.12.0.schema.json
#
# DSH Panel — installer manifest.
#
# The installer is Inno Setup (installer\dsh-panel.iss): PrivilegesRequired=lowest,
# DefaultDirName={localappdata}\Programs\DSH Panel, so it installs into the user profile
# and needs no administrator rights for the panel itself. Installing the required
# components (.NET Desktop Runtime 8, Node.js) from the installer's task page does need
# administrator rights: Windows asks for them, and the bundled runtime is installed for the
# whole machine.
#
# Silent switches. Inno Setup honours /SILENT (wizard hidden, progress window shown) and
# /VERYSILENT (nothing shown). WinGet installs in "silent with progress" mode by default,
# which is exactly /SILENT here; /VERYSILENT is used only for --silent. /SUPPRESSMSGBOXES
# answers every suppressible Inno prompt with its default (without it a "Reboot now?" box
# would appear after a silent install) and /NORESTART keeps the machine from rebooting.
#
# /SP- is kept as belt-and-braces. The startup prompt is already switched off inside the
# installer, by the DisableStartupPrompt=yes directive in installer\dsh-panel.iss — that is
# the setting that matters, and a silent install of this package does not depend on /SP-.
# /SP- is only here so that a build made from an installer script without that directive
# still installs unattended. Note that Inno's own documentation is not consistent on this
# point: the /SP- page says the switch has no effect when DisableStartupPrompt is set to
# yes, while the DisableStartupPrompt page gives "yes" as the default. We therefore do not
# rely on either reading: the directive is set explicitly, and /SP- does no harm.
#
# There is deliberately NO Dependencies section. The installer carries the .NET Desktop
# Runtime 8 inside itself and installs it only when the machine does not have it yet.
# Declaring Microsoft.DotNet.DesktopRuntime.8 would make WinGet install a system-wide
# runtime with its own UAC prompt before this user-scoped package: a declined elevation
# would fail the whole install, and it contradicts the bundled copy that is already a
# silent dependency of this setup.
#
# Version and hash are rewritten by tools\winget-manifest.ps1.

PackageIdentifier: Danerus23.DSHPanel
PackageVersion: 1.21.0
InstallerType: inno
Scope: user
UpgradeBehavior: install
# The panel updates itself from GitHub releases and therefore refreshes itself far more
# often than this manifest. RequireExplicitUpgrade keeps `winget upgrade --all` from
# fighting that self-updater: the package is then skipped by --all, while an explicit
# `winget upgrade Danerus23.DSHPanel` still works.
RequireExplicitUpgrade: true
InstallModes:
- interactive
- silent
- silentWithProgress
InstallerSwitches:
Silent: /VERYSILENT /SUPPRESSMSGBOXES /NORESTART /SP-
SilentWithProgress: /SILENT /SUPPRESSMSGBOXES /NORESTART /SP-
ProductCode: '{7F3C6A21-9D4E-4B8A-9C1F-2E5D8B7A4C11}_is1'
AppsAndFeaturesEntries:
- DisplayName: DSH Panel
Publisher: Danerus23
ProductCode: '{7F3C6A21-9D4E-4B8A-9C1F-2E5D8B7A4C11}_is1'
Installers:
- Architecture: x64
InstallerUrl: https://github.com/Danerus23/dsh-panel/releases/download/v1.21.0/dsh-panel-setup.exe
InstallerSha256: 33CA9D18427A67196C46DB55B959081C2EABE3D86874A029807A70AE5E6C0388
ManifestType: installer
ManifestVersion: 1.12.0
Original file line number Diff line number Diff line change
@@ -0,0 +1,63 @@
# yaml-language-server: $schema=https://aka.ms/winget-manifest.defaultLocale.1.12.0.schema.json
#
# DSH Panel — en-US defaultLocale manifest (en-US is the DefaultLocale of the version file,
# so this file is the defaultLocale manifest, not an extra locale one).
# PackageName and Publisher must match Windows "Apps and features" for this install:
# DisplayName = "DSH Panel", Publisher = "Danerus23", DisplayVersion = "1.20.3".

PackageIdentifier: Danerus23.DSHPanel
PackageVersion: 1.21.0
PackageLocale: en-US
Publisher: Danerus23
PublisherUrl: https://github.com/Danerus23
PublisherSupportUrl: https://github.com/Danerus23/dsh-panel/issues
Author: Danerus23
PackageName: DSH Panel
PackageUrl: https://github.com/Danerus23/dsh-panel
License: MIT
LicenseUrl: https://github.com/Danerus23/dsh-panel/blob/main/LICENSE
Copyright: Copyright (c) 2026 Danerus23
ShortDescription: A Windows tray panel for the DeepSeek Harness agent — runs the local dsh web server, shows peak-hour pricing and the account balance, keeps and restores backups of the DSH data.
Description: |-
DSH Panel is a tray application for Windows that supervises the local DeepSeek Harness
("dsh") instance on the same machine.

What it does:
- starts, restarts and stops the local dsh web server and shows its real state (running,
stopped, or the port is taken by another process) together with the process id;
- opens the browser with the sign-in link, the server log and the .dsh folder;
- shows DeepSeek peak and off-peak hours in the local time zone, when the next switch
happens, and the official price table;
- reads the account balance with the key from ~/.dsh/.credentials.yaml and warns when it
drops below a threshold;
- makes backups of the DSH data and of the panel settings (zip with a SHA-256 manifest and
a keep-last-N policy) and restores them; optionally a backup also carries the DSH engine
and Node, so it can be restored without the internet;
- updates itself from GitHub releases and verifies the release checksums.

The interface is available in English, Russian and Chinese. The panel runs the official
dsh command line and does not modify it; it does not send telemetry.

Requirements: Windows 10 or 11 (x64), Node.js 20 or newer, and the DSH package
(@deepseek-ai/dsh). The .NET Desktop Runtime 8 is required by the panel itself and is
installed by this package when it is missing; the portable "no .NET needed" build and a
setup-free zip are published on the GitHub releases page.

Not affiliated with DeepSeek. DSH Panel is a community-made tray application; DeepSeek and
DeepSeek Harness are trademarks of their respective owner.
Tags:
- deepseek
- deepseek-harness
- dsh
- tray
- backup
- local-server
- windows
- winforms
- dotnet
ReleaseNotesUrl: https://github.com/Danerus23/dsh-panel/releases/tag/v1.21.0
Documentations:
- DocumentLabel: README
DocumentUrl: https://github.com/Danerus23/dsh-panel#readme
ManifestType: defaultLocale
ManifestVersion: 1.12.0
20 changes: 20 additions & 0 deletions manifests/d/Danerus23/DSHPanel/1.21.0/Danerus23.DSHPanel.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
# yaml-language-server: $schema=https://aka.ms/winget-manifest.version.1.12.0.schema.json
#
# DSH Panel — version manifest for the Windows Package Manager community repository.
# Comments are in English because these files are submitted verbatim to
# microsoft/winget-pkgs, where the pull request is read in English.
#
# PackageVersion and the installer hash are filled in by tools\winget-manifest.ps1:
#
# powershell -NoProfile -ExecutionPolicy Bypass -File .\tools\winget-manifest.ps1 -ReleaseTag v1.20.3
#
# Take the hash from the published release (SHA256SUMS.txt), not from a local build:
# the release is built by CI and its bytes differ from a locally built installer. The
# script refuses to write a locally computed hash unless -AllowLocalSum is passed, and
# it refuses to combine a release tag with a different project version.

PackageIdentifier: Danerus23.DSHPanel
PackageVersion: 1.21.0
DefaultLocale: en-US
ManifestType: version
ManifestVersion: 1.12.0