- Home
- Plugin
- Competenze
- dsh-best-ponytail
dsh-best-ponytail
hoyyang/dsh-best-ponytail
Ponytail lazy-senior-dev ruleset for DeepSeek Harness: a 7-rung minimal-code ladder (YAGNI, reuse, stdlib, native, installed deps, one line, minimum), six skills (main rules, over-engineering review, repo audit, debt ledger, gain scoreboard, help), a /ponytail session command for lite/full/ultra/off levels, and optional always-on ruleset injection via config. Vendored verbatim from upstream ponytail (MIT), zero tools registered, clean uninstall.
Installazione
dsh plugin --profile web add github:hoyyang/dsh-best-ponytailREADME
dsh-best-ponytail
把 ponytail(MIT)装进 DeepSeek Harness:让 AI agent 像屋里最懒的资深工程师那样写代码——最好的代码是你永远不用写的那行。
安装
dsh plugin add dsh-best-ponytail # npm 渠道(独占安装名)
dsh plugin add github:hoyyang/dsh-best-ponytail # 或 GitHub 渠道
零配置开箱即用:装上后默认零行为改变(常驻注入缺省关闭,6 个技能即刻可用)。实测最低 dsh 版本 0.1.5。npm 包名 dsh-best-ponytail(原名 dsh-ponytail 被第三方占用故改名)+ GitHub 双渠道分发。
有啥用
六个技能(被动触发 + 显式点名)
- ponytail 主规则——写代码前先过 7 级懒人阶梯:要做吗 → 库里有吗 → 标准库 → 平台原生 → 已装依赖 → 一行 → 最小可用实现
- ponytail-review——只审过度工程的专项 review:标库重复造的轮子、多余依赖、投机抽象、死灵活性,每条一行「在哪、删什么、换什么」
- ponytail-audit——全仓 bloat 审计:按优先级排出整个代码库里该删、该简化、该换标库的清单,只报告不动手
- ponytail-debt——收割代码里所有
ponytail:标记注释,汇总成欠账台账,让「以后再说」不变成「永不」 - ponytail-gain——上游基准计分板:更少代码、更低成本、更快速度的中位数成绩单
- ponytail-help——全模式速查卡:技能、命令、档位一览
一个命令,随时调档
- /ponytail 调档——lite / full / ultra / off 会话级切换,下一轮生效
- /ponytail status——查看当前档位、来源(config 默认还是会话覆盖)
- /ponytail reset——清掉会话覆盖,回到配置默认
可选常驻注入(上游 hook 的 DSH 等价物)
- systemPrompt 区块注入——把懒人阶梯焊进每轮系统提示词,写代码 100% 在规则之下,小改动也不漏
- config 四档——off / lite / full / ultra,full 为上游基准实测档
- 会话级覆盖——
/ponytail off单会话临时关,重启回配置默认
打包特性
- 上游内容零改动——skills、hooks、benchmarks、docs 等 193 个文件原样 vendored 于 upstream/ 目录,可溯源(钉在 commit e3ba2aa)
- 零工具注册——不进 tools schema,不占上下文预算,卸载零残留
- MIT + 归属声明——上游 © DietrichGebert,适配层同 MIT
30 秒上手
- 执行
dsh plugin add dsh-best-ponytail - 什么也不用配——6 个技能已进技能目录,编码任务自动可用
- 想验证:对 agent 说「ponytail,帮我写个 XX」,回复结尾应出现
skipped: X, add when Y - 想看档位:输入框敲
/ponytail status - 想要常驻:profile 配置里把
mode改成full(见下方配置示例) - 想审过度设计:说「audit this codebase」
- 想查技术债:说「ponytail debt」
- 单会话免打扰:
/ponytail off - 回到默认:
/ponytail reset - 卸载:
dsh plugin remove dsh-best-ponytail,进程外零残留
日常使用
- 装完后什么都不用做——编码任务里懒人阶梯自动可用,技能目录随时可见
- 想 100% 覆盖写代码场景:把配置
mode开成full,每轮系统提示词都带着阶梯 - 临时要极简:说「ponytail ultra」,agent 会先反问需求是否需要存在
- 临时要温和:说「ponytail lite」,agent 照常实现但附一句更懒的替代方案
- 写完想返工:说「review for over-engineering」,拿到删除清单再决定
- 接手陌生仓库:先跑「audit this codebase」,按排名从高往低瘦
- 长期项目:定期「ponytail debt」,欠账台账防止口头承诺蒸发
- 汇报优化成果:说「ponytail gain」,拿上游基准计分板当参考
- 忘了怎么用:说「ponytail help」,速查卡直接列出全部模式与命令
- 多会话并行:每个会话的档位互相独立,
/ponytail off只影响当前会话
使用场景
- 快速原型——一句「做个 XX」不再带回 5 个依赖 3 层抽象,标库和原生特性能解决的不装包
- 老项目重构——review 模式专挑能删的:重复实现的标库函数、没人用的配置项、为「以后」准备的脚手架
- 代码审查补刀——正确性 review 之外,专职猎杀复杂度,每条发现一行说完
- 技术债盘点——周期性跑 debt 台账,把「以后再说」变成看得见的清单
- 多 agent 一致性——团队每人 DSH 装同款规则集,产出风格统一,审查省心
- 成本与速度优化——少写代码,token 消耗更少、交付更快;上游实测成本 -20%、耗时 -27%
- 学习写作范式——看 agent 如何先问「要不要存在」再动手,反向训练自己的取舍
- 大仓瘦身——audit 排名清单直接当重构 backlog 用
- 依赖治理——阶梯第 5 级强制先查已装依赖,遏制「为一个函数装一个库」
- 升级/换模型回归——规则集与模型解耦,换模型不换规矩
输入与输出
真实回显样例(会话内实拍):
$ /ponytail status
ponytail always-on injection: FULL (config default) — injected into the system prompt, effective next turn
Skills (passive + explicit) are available regardless of this setting.
Switch: /ponytail lite|full|ultra|off · /ponytail reset (back to config default: full)
$ /ponytail ultra
ponytail always-on injection set to ULTRA for THIS session — effective next turn.
ponytail always-on injection: ULTRA (session override) — injected into the system prompt, effective next turn
Skills (passive + explicit) are available regardless of this setting.
Switch: /ponytail lite|full|ultra|off · /ponytail reset (back to config default: full)
| 你说 / 你敲 | 得到 |
|---|---|
/ponytail status | 当前档位 + 来源 + 切换提示 |
/ponytail ultra | 本会话切 YAGNI 极端档,下一轮生效 |
| 「ponytail,加个缓存」 | 先过阶梯的最小实现 + skipped 一行说明 |
| 「review for over-engineering」 | 每条一行的删除清单:位置 / 删什么 / 换什么 |
| 「audit this codebase」 | 全仓 bloat 排名清单,只报告不改码 |
| 「ponytail debt」 | 全库 ponytail: 注释汇总台账 |
| 「ponytail gain」 | 上游基准计分板(-54% 代码 / -20% 成本 / -27% 耗时) |
| 「stop ponytail」 | 本会话回到自然风格 |
产出
- 最小实现 diff——阶梯通过后的最短可用改动,不带没人要的抽象层
- skipped 一行说明——每次偷懒都留痕:跳过了什么、什么时候该加回来
- review 删除清单——每条一行:位置 / 删什么 / 换成什么
- audit 排名报告——全仓过度工程优先级排名,可直接当重构 backlog
- debt 欠账台账——全库
ponytail:注释的汇总清单,含升级路径 - gain 计分板——上游基准中位数:代码 -54% / 成本 -20% / 耗时 -27%
- status 状态文本——当前档位、来源、切换方法的即时回显
- installable tgz——GitHub Release 预构建包,
dsh plugin add一条命令装机
进阶用法(配置)
常驻注入档位在 profile 配置里调(缺省 off):
- id: dsh-best-ponytail
config:
mode: full # off | lite | full | ultra
工作原理
bundle 插件三层映射上游概念:skills/ 经 ctx.skills provider 注册为 DSH 技能(description 匹配被动触发);上游 SessionStart hook 的「每轮注入规则集」改由 ctx.systemPrompt 区块实现,config.mode 控制开关、会话内 /ponytail 可覆盖(内存态,零残留);上游 commands/ponytail.toml 的调档语义映射为 host 命令 /ponytail。其余上游文件原样 vendored 仅供溯源。
可靠性与验收
- 冒烟测试:mock ctx 跑真实
apply()——6 技能注册、阶梯正文可达、档位状态机、未知档位报用法,全部断言通过(npm test) - 冷启动检测:boot-check 六类静态检测(junction / bundle manifest / disabled 矛盾 / 运行时导入 / client 注册一致性 / insert id 重复)全绿
- 生命周期:注入→卸载→再注入两轮实测,技能目录实时出现/消失,junction 删除,残留检查 PASS
- fail loud:技能树缺失、规则文件不可读、非法 config 直接抛错点名对象,无静默回退
- 安全边界:不碰凭据、零新工具、依赖仅 schemastery(^3.18.0 锁范围)、无安装脚本
- 内容保真:上游 193 文件逐字节未改,commit 钉死可审计
- 兼容性:实测 dsh 0.1.5 web profile;headless profile 缺 services 时降级并告警
- 升级安全:profile 配置改动先备份(.bak-时间戳)再落盘,可一键还原
- 归属清晰:上游 MIT 独立声明,适配层代码仅 lib/index.js 一个文件
- 已知限制:收益集中在 agent 过度建设场景,代码本已精简时收益趋零;npm 名 dsh-ponytail 被第三方占用,故改名 dsh-best-ponytail 发布
常见问题
装完为什么没变化?——默认 mode: off:技能已可用(被动触发 + 显式点名),常驻注入需显式开启。这是有意的最小惊讶设计。
和 npm 上那个 dsh-ponytail 什么关系?——无关联。那是第三方独立实现(ccll,2026-08);本包因重名改名 dsh-best-ponytail 发布(npm + GitHub 双渠道)。
被动触发会漏吗?——会,这是所有按需加载 skill 的物理上限。要写代码 100% 在规则之下,把 mode 开成 full。
上游的 benchmarks/tests 也打进来了?——是,全部 vendored 于 upstream/,仅作溯源参考件,不在 DSH 自动运行。
本地构建
npm install && npm run build && npm test # 纯 JS 无转译:语法校验 + 冒烟测试
许可证
MIT。上游 ponytail © DietrichGebert(MIT),本包仅做 DSH 适配打包,上游内容未修改;适配层代码同以 MIT 发布。详见 LICENSE。
Plugin correlati
auto-claude-code-research-in-sleep
wanshuiyin/auto-claude-code-research-in-sleep
archify
tt-a1i/archify
dsh-web (dsh-skill-explorer)
zhu1090093659/dsh-web
dsh-web-ui (dsh-skill-explorer)
zhu1090093659/dsh-web-ui