dsh-pushups:用身体偿还的 AI 对话债

前言

长时间与智能体对话容易让人产生“我好像在干点什么”的错觉:token 流动、diff 展示、多巴胺落下,但身体却几乎没动。脖子变硬、下午犯困、肩膀模糊,这些身体反馈被“等会儿再动”的拖延不断推迟。于是有人把这种对身体的“隐形透支”具象化:每发一条消息,就欠一个俯卧撑。等欠得足够多,就不得不起身完成。这个插件就是为此而生。

这是什么

dsh-pushups 是一个 DeepSeek Harness(DSH)的 Web GUI 插件。它会在消息输入框旁显示“Push-ups: X”的计数器,每发送一条合法的人类消息,计数加一。当计数累积到一定程度,通过点击计数卡片或一键按钮完成“偿还”,抵消债务。插件由 ivanlebedvideo 维护,开源协议为 MIT。

核心功能

  • 消息计数:一条合法的人类消息对应一个俯卧撑。计数器显示在对话页面的输入框旁。
  • 支付方式:点击计数卡片,弹出对话框,可选择部分支付(+5、+10、+25、全部)、自定义金额,并切换界面语言(英文/Русский/中文,默认英文)。
  • 一键结清:输入框旁提供单次点击的 ✓ 按钮,当已完成的俯卧撑数量足以抵消债务时,可一键完成支付,无需打开对话框。
  • 代理工具:Host 端注册只读工具 pushups_status,智能体可以回答“сколько я должен?”(我欠多少)以获取实时债务数字。
  • 数据持久化:Host 端维护一个 JSON 状态文件,记录安装时间、总消息数、当前债务、连胜天数、每日计数(上限 400 天)以及最近 500 次支付记录。
  • 安装与禁用:通过 plugin_manager 的 install_bundle 指定绝对路径或 git 检出目录安装,禁用只需设置 enabled: false。

安装与启用

安装前请确认:
- DSH 版本为 0.2.0-rc.1 或更高,并启用 web profile;
- 无需额外构建步骤,Client 端为纯 JavaScript。

安装步骤如下:

  1. 从绝对路径安装:
plugin_manager
  action: install_bundle
  target: /absolute/path/to/dsh-pushups
  1. 或从 git 仓库安装:
git clone https://github.com/ivanlebedvideo/dsh-pushups.git

然后使用 install_bundle 安装该目录。

安装后,新 bundle 会自动激活;在浏览器页面刷新(Ctrl+R)即可加载新的 Client 模块。

如需禁用:

plugin_manager
  action: set_plugin
  target: pushups
  enabled: false

典型用法

  • 在 Web GUI 中与智能体对话,每发一条消息,输入框旁的计数器加一。
  • 当计数达到不想继续累积的程度,点击计数卡片或右侧的 ✓ 按钮,完成支付。
  • 支付后,债务清零;未完成的部分保留,可继续通过部分支付或全部支付抵消。
  • 智能体可通过 pushups_status 工具查询当前债务,回答“我欠多少”等自然语言问题。

适用场景与注意

  • 适合在 Web GUI 中使用 DSH 的开发者,希望将对话行为与身体活动建立简单联系。
  • 插件仅在 Web GUI 中生效;其他客户端(TUI、ACP、SDK)不产生计数。
  • 计数器为全局,跨所有会话与项目。
  • 连胜逻辑依赖 Host 机器本地时间,在任意消息、支付或状态读取时触发,非定时任务。
  • 不提供数据迁移;状态文件版本不匹配时会重置。
  • 安装前建议检查源码与许可证,确保符合使用规范。

小结

dsh-pushups 把“敲键盘”的隐形代价显化为一个可感知的数字:每条消息一个俯卧撑。它不承诺改善姿势,只是让“现在就起身”变得比“再写一条”更直接。当你觉得欠得够多了,就站起来完成它。这个简单的机制,或许能帮你把“稍后”变成“现在”。

参考资料

  • GitHub 仓库:https://github.com/ivanlebedvideo/dsh-pushups
  • 插件目录页:https://www.skillhub.cn/plugins/ivanlebedvideo/dsh-pushups
羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

小夜