DeepSeek Harness Plugin Hub

Publish and manage complete Harness Profiles. Discover Plugins for your next setup.

Explore

PluginsPresetsDocsNews

Community

Publish a pluginContactReport an issue

Resources

Plugin Hub on GitHubDeepSeek HarnessSystem statusPrivacy notice
© 2026 DeepSeek Harness Plugin HubPowered byPaxTech

Independent and unofficial. Not affiliated with, authorized by, or endorsed by DeepSeek.

Ponytail Sync — DSH Plugin for DeepSeek Harness
← Plugins
P

dsh-ponytail-sync

Ponytail Sync

Ponytail lazy-senior-dev mode as a native DeepSeek Harness skill, system-prompt section and six slash commands. Always available, level-switchable, no external process.

The plugin will be installed here. Keep web if you are unsure.

npx -y @deepseek-ai/dsh plugin --profile web add github:mirelconstantin/dsh-ponytail-sync#ea194c525a714b9a784f169fa279dc100c5c5cd6
READMECompatibilityVersions

Compatibility and provenance

Ponytail Sync is published as dsh-ponytail-sync and currently resolves to version 1.0.0. The Hub verifies its manifest and preserves the exact installation source for reproducible installs.

DSH compatibility
*
Runtime surfaces
any
Release source
github
Registry updated
10/10/2026

Versions

1.0.0stable
10/10/2026

Related plugins

Loading related plugins…

Latest
1.0.0
DSH
*
HMR
Process restart
Tree shaking
Safe tree shaking not declared
Unpacked size
Unavailable
Files
Unavailable
Surface
any
License
MIT
Source
github
GitHub
★ 1
Weekly downloads
0
Last push
10/10/2026
View source ↗
README badge

Click the badge to copy Markdown for your README.

Do you maintain this Plugin?Claim benefit · Priority security scan

Verify the GitHub repository declared in package.json to manage this listing. After you claim it, Hub will prioritize a security scan of the current version and publish the result when it passes.

Claim this Plugin →
Report an issue
DeepSeek Harness Plugin Hub
ProfilesPluginsCategoriesNewsDocsSign inManage Profiles
ProfilesPluginsCategoriesNewsDocsSign in

Related plugins

More verified plugins in developer-tools.

Client Ui Git Graph@linxin666/dsh-client-ui-git-graphExternal dsh web GUI plugin: a blank-session git branch selector + Git graph, with real host-side git operations and guards, as a dsh profile bundleSsh@linxin666/dsh-sshRemote SSH operations for the dsh web GUI: host config store (~/.dsh/dsh-ssh.json, import from ~/.ssh/config), a persistent ssh2 connection pool with jump-host support, exec / PTY web terminal / SFTP transfer / local port-forward tunnels / cluster executiUpdate@linxin666/dsh-updateSelf-update plugin for the dsh web GUI: probes npm for newer family releases and runs the owning profile's pnpm update in place, from a sidebar trigger beside the settings seat with a release-notes panelTui@deepseek-harness-tui/dsh-tuiInteractive terminal interface for DeepSeek Harness agents, sessions and tools.

README

Pazalo

dsh-ponytail-sync

Ponytail lazy-senior-dev mode as a native DeepSeek Harness skill, system-prompt section and six slash commands. Always available, level-switchable, no external process.

Install

From the GUI, paste this into Add plugin:

dsh-ponytail-sync

Or from a terminal:

dsh plugin add dsh-ponytail-sync

That is a plain npm install. It needs neither git nor a GitHub account.

No build step is involved, so nothing needs a build allowlist and every entry point ships as committed source. Restart the profile and four rows appear — the runtime, the skill, the prompt section and the commands.

Other routes
RouteCommand
Pinned to a versiondsh plugin add dsh-ponytail-sync@1.0.0
Pinned to a commitdsh plugin add github:mirelconstantin/dsh-ponytail-sync#<sha>
Tarballdsh plugin add ./dsh-ponytail-sync-1.0.0.tgz
Local checkoutdsh plugin add /absolute/path/to/dsh-ponytail-sync

The GitHub routes need nothing but git access to this repository. The npm route needs neither git nor an account, and is what the command above uses.


What it is

Ponytail by Dietrich Gebert, MIT licensed. It is one instruction prompt plus a handful of one-shot command prompts; everything else in that repository is plumbing that loads the prompt into a particular agent. This bundle ships the prompt into DeepSeek Harness as a skill and as a system-prompt section, so it is present in every session without anyone installing a plugin.

Upstream is the source of truth for the rules. This bundle vendors upstream ponytail 5.1.0 with the review, audit and ledger procedures folded in from the three upstream command skills, and scripts/check-plugin.mjs pins the same ten rule invariants upstream's own scripts/check-rule-copies.js pins — so a silent upstream rule change cannot pass unnoticed.

Why a skill and not an AGENTS.md file

dsh-agent-instructions already loads ~/.dsh/AGENTS.md into every session, and a compact copy of the rules there would work. Three things make the skill the better home:

  • It is loadable on demand. A user-agents copy at rank 500 competes with the per-project file; a runtime registration at rank 250 lets a project's own ponytail skill override it, which is the behaviour a user editing one repository expects.
  • It carries a description that routes it. The catalog shows the description to the model before it loads anything, so the model knows when the mode applies instead of seeing an unconditional block of rules.
  • It is inspectable and editable. assets/ponytail/SKILL.md is one file a maintainer can read and edit; editing it changes what the next session sees after a plugin reload. (The prompt section is not generated from it — the section is deliberately short, and carries the level rather than the rules.)

What it gives a model

A ponytail skill and a ponytail system-prompt section. The section states the active level, what the level changes, and the two lines every reply owes the user. The skill body is the full ruleset with the level tables.

Levels

LevelBehaviour
liteBuild what was asked, name the smaller option in one line
fullThe complete ruleset (default)
ultraAlso question the request before building

The default for new sessions is cordis.patch.yml's ponytail-runtime.config.defaultLevel. A session that changes level keeps that level for the rest of the session, which is what upstream's session-scoped mode does. Changing the default for new sessions is a patch-file edit, not a live Settings row: this bundle ships a plain Standard Schema config, and only a native Schemastery schema renders a Settings form. A plugin must not import @deepseek-ai/schemastery itself, so the row reports unsupported rather than failing the load.

Commands

CommandWhat it does
/ponytail [lite|full|ultra|off]Set the level for this session, or report it with no argument
/ponytail-reviewReview the current change: bugs, security, load, missing tests, speed, what to cut
/ponytail-auditThe same review for the whole repository, ranked
/ponytail-debtHarvest shortcut: comments into a ledger
/ponytail-gainThe measured-impact scoreboard
/ponytail-helpQuick reference card

Files

package.json        the package and its dsh bundle declaration
cordis.patch.yml    the four loader rows
src/index.js        the service entry (provides `ponytail`)
src/config.js       the Config schema, defaults, resolution, level helpers
src/util.js         the config validator and clamping helpers
src/runtime.js      the per-session level and the section text renderer
src/prompt.js       the system-prompt section text and the visibility gate
src/skills.js       the runtime skill registration
src/commands.js     the six slash commands and their one-shot instructions
src/entry-prompt.js the prompt row
src/entry-skill.js  the skill row
src/entry-command.js the command row
assets/ponytail/SKILL.md the vendored ponytail skill body
scripts/check-plugin.mjs  the plugin contract, against a fake context

Enabling it in a profile

The plugin is a bundle: package.json declares dsh.bundle.patch, and the profile lists it in both dependencies and dsh.profile.bundles. dsh plugin add does both edits for you.

// profiles/<name>/package.json
"dependencies": { "dsh-ponytail-sync": "1.0.0" },
"dsh": { "profile": { "bundles": ["@deepseek-ai/dsh-base", "dsh-ponytail-sync"] } }

A checkout can be linked instead, with the bundle name and the directory left as whatever they are:

"dependencies": { "dsh-ponytail-sync": "link:/absolute/path/to/dsh-ponytail-sync" },
"dsh": { "profile": { "bundles": ["@deepseek-ai/dsh-base", "dsh-ponytail-sync"] } }

Then restart DSH once before it resolves. Editing package.json while DSH is running does not make the bundle resolvable: dsh-app-boot's resolveBundleDir probes the node_modules lookup order from the installation anchor and the profile directory, and a running host holds the profile manifest it read at launch. Until the link exists, adding the bundle produces exactly:

dsh: cannot resolve profile bundle "dsh-ponytail-sync" from the dsh installation or <profileDir>;
run 'dsh plugin --profile <name> install' if its dependency is not installed

That install command materialises the link; the restart makes the running host read the new manifest. Do both, then hard-refresh the browser (Ctrl + Shift + R).

To turn the mode off without removing the bundle, set defaultLevel: off in the ponytail-runtime row's config — the skill, the section and the commands stay mounted, and the rules become available on demand through the skill tool.

Verifying it

npm test                    # the plugin contract: levels, section, skills, commands, packaging
node scripts/check-patch.mjs   # the bundle patch, exports and icon match the package
node scripts/check-pack.mjs    # npm would publish every file the plugin needs

The check asserts what a harness does at load time that a hand-mounted test cannot: no default export (the loader unwraps .default in preference to the namespace, which silently drops inject, name and Config and leaves every dependent row pending), that the registrations are effects, that the section suppresses itself when the skill registry is absent or a restriction filtered the skill away, that the level is per session and the budget is actually applied, that all six commands register with a description and a non-empty hint, and that the load-bearing upstream rules survive verbatim in the vendored skill body.

check-pack covers a gap the tests cannot: they run against the repository, while a files entry that stops matching its tree would publish a package that installs and then fails to load.

CI runs the tests and both package checks on Linux and Windows on every push and pull request.

Updating from upstream

Vendor skills/ponytail/SKILL.md into assets/ponytail/SKILL.md, fold in any new upstream command skill you want available, then re-run npm test. It fails when an upstream rule the check pins has moved, which is the prompt to re-read the upstream diff rather than to edit the pinned list.

License

This bundle is MIT — see LICENSE. Ponytail is MIT, © Dietrich Gebert, and is vendored here as instruction text with its attribution and upstream reference intact; NOTICE carries that attribution. icon.svg is the Pazalo mark.