gongyijie85/dsh-ponytail

gongyijie85/dsh-ponytail

Ponytail 最懒资深工程师模式:6 个技能,改编自 DietrichGebert/ponytail。

技能包agent-skillsclaude-codecordis

dsh-ponytail

Ponytail, the lazy senior dev mode, for the DeepSeek Harness (DSH) — 6 skills adapted from DietrichGebert/ponytail (the ~76k⭐ "laziest solution that actually works" coding style).

The plugin registers a skill provider on the host layer of the ctx.skills registry. The 6 skills ship inside the package (skills/<name>/SKILL.md); no user configuration needed.

Unofficial port: skill content adapted from DietrichGebert/ponytail (MIT, © DietrichGebert).

Quick start

Tell the agent "use ponytail mode for this code", or let it adopt the style on its own while coding: YAGNI → reuse existing code → standard library → native platform features → one line → minimal code. Intensity levels: lite / full (default) / ultra; "stop ponytail" exits the mode.

Skills

SkillPurpose
ponytailCore mode: forces the laziest working solution — YAGNI → stdlib → native → one line → minimum. lite / full (default) / ultra
ponytail-reviewCode review focused exclusively on over-engineering: one line per finding (location, what to cut, what replaces it)
ponytail-auditWhole-repo over-engineering audit (repo-wide ponytail-review): ranked list, biggest cut first
ponytail-debtHarvest every ponytail: comment into a debt ledger so deferrals don't rot into "later means never"
ponytail-gainShow ponytail's measured impact as a compact scoreboard (benchmark medians)
ponytail-helpQuick-reference card for all modes, skills and commands

Install

# npm (the plain `dsh-ponytail` name is taken by another project; this port
# publishes as dsh-ponytail-skills)
dsh plugin --profile web add dsh-ponytail-skills

# GitHub
dsh plugin --profile web add github:gongyijie85/dsh-ponytail

# Local folder (development)
dsh plugin --profile web add D:\plugins\dsh-ponytail

Restart the profile (dsh web) — the skills then load with the skill tool.

How it works

  • Bundle layer — cordis.patch.yml inserts a plugin row over the dsh-base layer; later layers can address it by id.
  • Provider — lib/index.js calls ctx.skills.registerProvider(...): scans skills/, parses name/description from YAML frontmatter, returns full skill definitions with resourceBase pointing at each skill directory.
  • Zero runtime dependencies — Node built-ins only.

Adaptation notes (vs upstream)

  • Flattened descriptions: upstream's folded description: > multi-line frontmatter was flattened to single lines — the DSH discovery parser reads scalar values only.
  • Skill bodies unchanged (pure prompts, no harness-specific references); argument-hint, license and other metadata pass through verbatim.
  • Invocation: all skills are model+user invocable (upstream sets no disable-model-invocation).

License

MIT. Skill content © DietrichGebert (ponytail); DSH port © gongyijie85. See LICENSE.