DeepSHPlugins
DSH_Plugin_Taffy 專案預覽
GITHUB / COMMUNITY PROJECT

DSH_Plugin_Taffy

娛樂JavaScriptMIT

Taffy 表情包狀態機:右下角表情實時聯動 agent 狀態——待審批、已批准、思考、工具執行、插話、被拒與出錯各有專屬表情;支援拖拽定位、中鍵控制檯、表情鎖定與外觀設定持久化。

2 Starsvegetable-kun 更新時間 2026-09-01
訪問 GitHub 倉庫
DSH_Plugin_Taffy 專案預覽
DSH_Plugin_Taffy 介面截圖DSH_Plugin_Taffy 介面截圖

專案介紹

中文

Taffy 表情包狀態機:右下角表情實時聯動 agent 狀態——待審批、已批准、思考、工具執行、插話、被拒與出錯各有專屬表情;支援拖拽定位、中鍵控制檯、表情鎖定與外觀設定持久化。

English

A Taffy mood mascot for the DeepSeek Harness Web UI: the corner GIF reacts live to agent state — approval pending, approved, thinking, tool runs, interrupts, rejections and errors — with drag positioning, a middle-click console, per-mood locking and persisted appearance settings.

專案資訊與收錄訊號

快照 2026-09-11
作者 / 組織
vegetable-kun
倉庫
vegetable-kun/DSH_Plugin_Taffy
GitHub Stars
2
Forks
0
開發語言
JavaScript
許可證
MIT
最近推送
2026-09-01
Manifest
資料中檢測到宣告

公開倉庫不自動等於可商用;許可證與當前相容性以原專案文件為準。Manifest 和資料評分不構成安裝安全認證。

資料評分

57/ 100
維護活躍
94
文件與實用資訊
100
生態關注度
14
安裝便捷訊號
75
專案宣告訊號
85

近 10 天仍在更新;README 含完整安裝與使用說明;關注度尚低(2)。

評分來自已有資料快照的五維模型,僅作瀏覽參考,不是實際使用評測或安全檢測結論。

安裝與使用

所有專案資料與許可均以對應 GitHub 倉庫為準。

dsh plugin --profile web add github:vegetable-kun/DSH_Plugin_Taffy

複製命令不會自動執行。請先閱讀倉庫文件,確認環境要求與許可證。

專案截圖

倉庫 README

GitHub 原文

已儲存的倉庫文件快照;文件抓取時間未記錄,可能與上方目錄介紹處於不同版本。安裝前請核對當前倉庫說明。

儲存庫檔案保留原文,指令與授權文字不作自動改寫。

taffy-mood — DeepSeek Harness 表情包状态机插件

中文简体 | English

这是一个 dsh 的插件,把 Taffy 表情包挂在 DeepSeek Harness Web UI 右下角,随 agent 状态自动切换:待审批、思考中、干活中、出错、被打断……全部有专属表情。标准 DSH 插件包(bundle + web client),素材随包分发,一条命令安装。

demo

安装

dsh plugin --profile web add github:vegetable-kun/DSH_Plugin_Taffy

然后重启 dsh web 即生效。安装器会自动把包加进 profile 的 bundles 层列表,无需手动编辑任何配置。

效果详细说明(点击展开)

效果详细说明

状态表情触发条件
闲置taffy2-idling兜底默认
输入中taffy-se_xy输入框有草稿
思考中taffy-dumb模型流式输出中
工具执行中taffy-tang-laughingtool/call 活跃
待审批taffy-forkapproval 请求弹出,带脉冲动画
已批准!taffy-spread_heart同意后 3 秒
黑客taffy-hacker批准后的工作期间,对话完成即结束
审批被拒taffy-embarrassing拒绝后持续,直到开始打字被"消费"
用户中止taffy-angryturn/end reason=aborted,5 秒
出错/截断taffy-suicideturn/end reason=error/max-tokens,5 秒
插话收到!taffy-suprised模型正在输出/干活时收到新消息,4 秒
被阻塞了…taffy-cryturn/end reason=blocked,6 秒
得意taffy-admirable一轮用 ≥5 次工具后正常完成,4 秒
假哭taffy-fake_crying连续两次拒绝审批,5 秒
求饶taffy-begging60 秒内第二次审批请求,5 秒窗口(过期回落待审批)
等你回答taffy-staring 静态图ask_user_question 提问挂起,回答即恢复
记忆压缩中taffy-pressure 静态图上下文压缩 start→end(含 90 秒兜底)
长任务疲惫taffy-angry_staring 静态图单轮持续超 3 分钟,turn/end 即清
审批没人理taffy-cry_denying审批挂起超 30 秒无人处理,决定落地即恢复
休眠taffy4 静态图空闲超 10 分钟,省 GIF 解码;打字/任何活动即醒
开机问候tafei 静态图页面加载后首屏打招呼 2 秒,不遮蔽任何业务状态

优先级链:锁定 > 求饶(时间盒) > 等你回答 > 记忆压缩 > 审批没人理 > 待审批 > 批准庆祝 > 惊讶 > 哭 > 中止/出错/假哭闪帧 > 得意 > 长任务疲惫 > 运行中(黑客/思考/工具) > 打字 > 开机问候(2秒) > 休眠 > 闲置。所有新状态都有明确出口:求饶是时间盒、等你回答由回答消息/结果配对/轮次结束三路清除、压缩由 end 事件加兜底超时双保险、疲惫与没人理由时间阈值动态推导并随轮次/决定自动消失,均不会阻塞下层状态。

使用

  • 左键拖动移动位置;中键点击打开浮动控制台;右键兜底
  • 控制台:实时状态徽章 / 锁定任意表情(调试用)/ 测试审批 / 重置位置
  • 设置面板 → 「Taffy 表情」页:启用开关、大小(50–1000px)、不透明度、鼠标穿透、今日状态时长统计
  • 外观设置保存在浏览器 localStorage(键 dsh-taffy-mood/settings),刷新不丢

卸载 / 停用

dsh plugin --profile web remove dsh-taffy-mood   # 从 profile 移除
# 或在设置页关闭「启用表情」临时隐藏

配置

阈值可在 ~/.dsh/profiles/web/cordis.patch.yml 里给 dsh-taffy-mood 行追加 config 字段(蛇形命名,只传想改的):

- id: dsh-taffy-mood
  config:
    surprised_ms: 6000          # 插话惊讶 6 秒(默认 4000)
    ignored_after_ms: 60000     # 审批没人理 60 秒(默认 30000)
    sleep_after_ms: 600000      # 休眠 10 分钟(默认 600000)
    tired_after_ms: 300000      # 长任务疲惫 5 分钟(默认 180000)
    # turn_flash_ms / crying_ms / admirable_ms / begging_window_ms / begging_show_ms / compacting_failsafe_ms 同理

未列出的字段保持原默认值;非法值(负数、非数字)会被 host 忽略并回退到默认。

结构与技术要点

package.json       dsh.bundle.patch + dsh.client.platform: "web"
cordis.patch.yml   - insert: dsh-taffy-mood
host.js            Host 半边:session/event 状态机 + 包内素材路由 + JSON API
client.js          Client 半边:__ModuleLoader__ 包装的 overlay/控制台/设置页
assets/            全部素材(15 张在用 GIF + 备用 JPG)
test/smoke.mjs     冒烟测试:node test/smoke.mjs
  • Host 通过 ctx.on('session/event') 审计日志事件驱动状态机(approval/*、tool/*、turn/end、assistant/chunk、user/message);运行检测直接扫描 agents 注册表(事件计数会漏掉激活前已 running 的 agent)
  • 浏览器半边经 /dsh-taffy-mood/api/state 轮询状态、/api/action 提交动作(lock / clear-rejected / test-approve),素材经 /dsh-taffy-mood/assets/* 白名单路由提供并内存缓存
  • 写动作严格 POST-only + Origin 校验(仅放行 127.0.0.1/localhost loopback 与缺 Origin 的本地工具),防止跨源页面通过 <img> 触发审批弹卡
  • 轮询节奏按需调度:活跃状态 300ms 跟手,空闲 2s 兜底,时间态到期精确触发
  • 插话判定 = 工具执行中或 2.5 秒内有 chunk,避免新轮次启动瞬间的时序误报
  • 打字检测用官方 conversation.composer.dock InputZone 的 props.input.draft
  • 阈值可通过 ~/.dsh/profiles/web/cordis.patch.yml 覆盖(config: 字段,蛇形命名),如 surprised_ms: 6000 / sleep_after_ms: 600000
  • 素材按内容哈希永久缓存(max-age=31536000, immutable),URL 形如 /assets/taffy-cry.a1b2c3d4.gif;换包换 URL 不卡旧版,老 URL 走 301 兼容
  • 纯 ESM host + ModuleLoader 包装 client,无构建步骤、无 npm 依赖,clone 即源码即产物

有问题欢迎投issue和pr,喜欢就点个免费的star吧

taffy-underwear

License

MIT

使用前核對

安裝步驟、相容版本與授權範圍以原專案當前文件為準。Stars 和評分是快照中的導航訊號。

安裝與排錯 · 專案問題反饋

同類專案