Chuyển đến nội dung chính

dsh-time-auditor

Đã xác minh

dsh-time-auditor · v0.1.2 · MIT · Giao diện web

时间稽查官:住在 DeepSeek Harness 里的防沉迷角色。观察你的使用时长,超时后现身、翻日志戳穿你、逼你写下承诺赎回时间,还会调动 AI 毒舌提醒。

Cài đặt

dsh plugin add dsh-time-auditor

Xác nhận layer đã áp bằng dsh --profile default --dump-config — xem hướng dẫn cài plugin.

Mã nguồn

Thẻ

Tác giả

Readme

⏳ 时间稽查官 (dsh-time-auditor)

住在 DeepSeek Harness 里的防沉迷角色。它不阻止你——它观察你、翻你的日志、拿你亲口写下的承诺打你的脸,还会调动 AI 毒舌提醒

一个会记仇、会毒舌、会执法的落盘插件。软性防沉迷,不强制打断。


✨ 特性

🕐 观察

  • 实时计时:本次 / 今日 双进度(输入框下方常驻读数胶囊,80% 变黄、100% 变红)
  • 页面可见才计时,切后台自动暂停;跨天自动归零
  • 数据存 host 磁盘 ~/.dsh/dsh-time-auditor-state.json,跨重启/跨端口保留(dsh 每次重启端口会变,localStorage 按端口隔离会丢,故走 host 持久化)

⚖️ 现身 & 偷时间

  • 超时后稽查官现身:卡片脉冲 + 沙漏摇摆 + 每 10 秒飘出「+1分钟 已被没收」碎片
  • 累计被没收的时间碎账,永远显示(只增不减,看得见你输给了自己多少)

🔍 戳穿(真实日志驱动)

  • 读你今天真实开过的会话,规则引擎生成 5 档文案:深夜 / 多会话 / 标题漂移 / 周末 / 兜底
  • 承诺猎手:赎回时写下的话被记住,下次现身翻你之后的新会话打脸——「你说『写周报』是 37 分钟前的事。之后你又开了 3 个新会话。那件事,做完了吗?」
  • 执法强度:连续点「稍后」不休息,稽查官逐级变冷——「你连续 3 次点稍后了。稽查官不拦你,只是告诉你:你停不下来。」
  • 周末人格:周六/周日白天还在用 Harness,直接被嘲讽

🤖 AI 觉醒(LLM 生成)

  • 超时现身时,自动复用 Harness 当前默认模型生成一句毒舌戳穿(30 字内、人设固定)
  • 规则文案秒出 → LLM 版 5 秒内无缝替换
  • 零配置:跟随你正在用的模型;无模型/超时/报错自动降级到规则文案,绝不阻塞

🚔 执法(软限制)

  • 超时后拦截高消耗自主工具(workflow / subagent / subagent_fork / ralph),先给阶段性结论、确认是否继续
  • 承诺注入 systemPrompt:超时后 AI 每轮都记得你欠它的事——「用户上次承诺:『写周报』(37 分钟前)——合适时提醒他兑现」

📦 安装

方式一:从 npm(已发布 ✅)

dsh plugin --profile web add dsh-time-auditor

方式二:从 Gitee 仓库

dsh plugin --profile web add https://gitee.com/XMTab/ldwzz.git

方式三:本地目录

把整个 dsh-time-auditor 目录拷到目标机器,然后:

dsh plugin --profile web add /path/to/dsh-time-auditor

安装后重启 dsh web 生效(host 半边 + client bundle 的 rev 都需要重启刷新)。

验证是否生效:

curl http://127.0.0.1:<port>/plugins/dsh-time-auditor/audit
# 应返回 {"line":"...","facts":{...}}

端口每次启动可能变化,以 dsh web 打印的 URL 为准。


🎮 使用

  1. 打开一个会话,输入框下方会出现 ⏳ 本次 X / 60分 · 今日 Y / 8小时 读数胶囊
  2. 默认阈值:单次 60 分钟 / 每日 480 分钟(8 小时)
  3. 设置 → 时间稽查官:改阈值、重置计时、查看碎账
  4. 超时后稽查官现身——写下「接下来 30 分钟要完成的一件事」赎回你的时间

想快速体验?把「单次提醒」改成 1 分钟,一分钟后看效果。


🔧 配置

默认 位置
单次提醒阈值 60 分钟 设置页
每日提醒阈值 480 分钟 设置页
LLM 戳穿模型 跟随 Harness 默认模型 自动,无需配置
拦截工具名单 workflow / subagent / subagent_fork / ralph src/index.jsHEAVY_TOOLS

🗂️ 项目结构

dsh-time-auditor/
├── package.json        # dsh.bundle.patch + dsh.client 声明(落盘插件元数据)
├── cordis.patch.yml    # 注册 time-auditor 组合行
├── src/index.js        # host 半边:状态同步 / 审计 / LLM / 拦截 / 人格注入
├── lib/client.js       # 浏览器半边:计时 / 状态恢复 / 三处 UI / 动画
└── README.md
  • host 半边src/index.js):sessionQuery 读日志、webServer 暴露端点、tools/pre-execute 拦截、systemPrompt 注入人格、状态写盘持久化
  • 浏览器半边lib/client.js):window.__ModuleLoader__.load 格式的 bundle,计时 + UI + 动画 + 启动时从 host 恢复状态

🧩 工作原理

浏览器半边(计时 + 启动恢复)
   │  GET  /state(启动时拉取磁盘状态)
   │  POST /state(同步状态 + 承诺 + 阈值,host 写盘)
   ▼
host 半边(~/.dsh/dsh-time-auditor-state.json 持久化)
   ├─ /audit       规则戳穿(读今天真实会话)
   ├─ /audit/llm   LLM 毒舌(复用默认模型,5s 超时降级)
   ├─ tools/pre-execute   超时拦截高消耗工具
   └─ systemPrompt         健康人格 + 承诺注入

📜 许可

MIT