dsh-ponytail
已验证dsh-ponytail · v0.2.0 · MIT
Ponytail lazy senior dev mode for DeepSeek Harness: per-turn minimal-code ruleset injection, /ponytail mode command, deactivation words, and the six ponytail skills.
安装
dsh plugin add dsh-ponytail 用 dsh --profile default --dump-config 确认 layer 已生效 —— 参见安装指南。
源码
发布到 npm 但没有公开仓库。安装前请检查包内容。
标签
作者
说明文档
dsh-ponytail
Ponytail(lazy senior dev mode)的 DeepSeek Harness 插件。
规则集来自 DietrichGebert/ponytail(MIT):
写代码前先爬 7 级梯子(YAGNI → 复用代码库 → 标准库 → 平台原生 → 已装依赖 → 一行 → 最小实现),
强度级别 lite / full(默认)/ ultra,可 off 关闭。
功能
- 每轮注入:全局 system-prompt 段落
ponytail:policy(order 106)按当前模式注入上游规则集, 主代理与子代理同享(子代理继承最近活跃祖先会话的模式)。 - 命令(经
dsh-commands,Web UI 直接可用):/ponytail [lite|full|ultra|off]切换强度;/ponytail(无参)或/ponytail status报告当前状态;/ponytail default <mode>持久化默认模式(写入~/.dsh/settings.yaml的ponytail:段);/ponytail-review、/ponytail-audit、/ponytail-debt、/ponytail-gain、/ponytail-help: 向会话排入对应技能(走 DSH 的用户显式技能注入路径)。
- 技能:6 个上游 SKILL.md 以 runtime skill 注册进
ctx.skills(出现在技能目录,可用skill工具加载)。 - 停用词:整条消息为 "stop ponytail" 或 "normal mode" 时,在该步组装前关闭 ponytail。
- 默认模式解析顺序:
PONYTAIL_DEFAULT_MODE环境变量 →ponytailsettings 命名空间 (composition base + 用户文档)→full。
安装
dsh plugin --profile web add dsh-ponytail
一条命令完成:安装依赖并把包自动挂载进 dsh.profile.bundles(包内 cordis.patch.yml
声明 dsh.bundle.patch,profile boot 会合并它)。重启(或等待 HMR)后生效。
曾用手动
cordis.patch.ymlinsert 方式挂载过的 profile,切到本渠道前请先移除手动行, 避免双挂载。
卸载
dsh plugin --profile web remove dsh-ponytail
上游单一事实源
不复制任何指令文本:运行时通过 createRequire 解析 @dietrichgebert/ponytail 包根,
直接 require 其 hooks/ponytail-config.js 与 hooks/ponytail-instructions.js,
从 skills/ 目录读取 SKILL.md(与 @arnilo/prism-ponytail 的做法一致)。
开发
npm install
npm test # node --test,11 个用例
发现与分享
- npm:
npm search dsh-plugin(keyword:dsh-plugin/deepseek-harness/dsh) - GitHub:
dsh-plugintopic;装dsh-find-plugin后可直接让 agent 检索 - 发布:
npm publish(需 npm 账号;建议同时给 GitHub 仓库加dsh-plugintopic)
已知边界(方案 B 取舍)
- 模式状态为进程内 per-session,不写入会话日志(自定义会话事件类型不在
dsh-session的已知事件集合中,持久化读路径会拒绝);resume 后回到默认模式。 完整对齐(会话投影 + UI 徽章 + 事件持久化)为方案 C。 - 技能命令依赖
dsh-tool-skill的用户显式注入路径(/name手势),headless 等 无命令适配器的入口不显示命令,但规则注入与技能目录不受影响。