dsh-context-badge:给 DSH 会话加一个本地上下文笔记本

前言

在 DSH 里做长任务时,一个常见的问题是「上下文在脑子里、不在界面里」:任务做到第几轮、workspace 叫什么、接下来还有哪些待办,往往只能凭记忆。把每轮关键信息写进代码文件再来回翻,既污染工作区又慢。dsh-context-badge 是在 DSH composer dock 上加一个小徽标,把会话/工作区的 notes、todos 和运行状态存到浏览器 localStorage,属于独立社区插件,维护者在 README 与 package.json 中署名 YaoleWu,许可证 MIT。

它解决什么问题

  • 不改动模型路由、prompt、权限、计费或 agent presets,只做上下文记录与展示。
  • 数据全部留在本地:无截图、无键盘记录、无网络请求、无模型调用、无远程同步。

核心功能

1、composer dock 上显示 context badge。
2、notes 和 todos 按 session 或 workspace 两个维度存储,走浏览器 localStorage,带自动的 v1 迁移。
3、徽标显示当前 DSH session、workspace 基名、turn/step 计数;token summary 在可用时展示。
4、可以切换 session context 与 workspace context,查看保存状态,清除已完成的 todos,浏览最近更新的 8 个上下文。
5、自动保留每个 session 加载后的前 5 条 user/steering 消息,并从第一条消息推导一行本地 purpose 摘要;这一步不调用模型、不同步远程。
6、可选的 macOS 前台窗口伴随应用(menu bar / always-on-top),只跟踪前台应用名和窗口标题,不取截图、不记录按键。伴随应用把数据写到 ~/Library/Application Support/ContextBadge/contexts.json。

安装与启用

在仓库根目录执行官方安装命令:

dsh plugin add ./

如果想在 profile 内做本地开发链接,就通过该 profile 的 plugin 配置加入本包,然后重启 DSH web 服务。包的 bundle id 是 dsh-context-badge。

需要注意:安装命令来自仓库 README 原文,是从本地目录安装,不是 github:owner/repo 形式;目录页链接技能市场与 GitHub 仓库路径中对维护者的写法是 YaoleWu,但仓库内 package.json 的 repository指向 LeslieWylie,以仓库实际内容为准。

macOS 伴随应用

要求 macOS 13+、Swift 5.9+。首次运行可能需要在 macOS 隐私设置里允许应用读取窗口元数据;如果拿不到窗口标题,徽标仍可用前台应用名工作。伴随应用保留最近 8 个前台上下文,可以从面板重新打开旧上下文。

先从源码目录启动:

npm run run:macos

要登录后保持运行并在退出时自动重启,执行:

npm run install:macos

npm 脚本对应的是 ./scripts/run-macos.sh 和 ./scripts/install-macos-launch-agent.sh,前者直接跑,后者装 LaunchAgent;本机没有 Swift 工具链就先跑 npm run build:macos(会执行 cd macos && swift build -c release)确认环境。

适用场景与注意

适合需要在多轮会话、多 workspace 之间切换,又不想把待办散落在聊天记录或临时文件里的 DSH 用户和插件开发者。插件以当前 DSH 进程的权限运行,安装前应检查源码与许可证(MIT)。它提供的是上下文辅助,不改变 agent 行为;立志做「通用智能体操作系统」或追求轻量、可 hack 工具的人可以在上面继续改。

小结

它的价值不在替换现有流程,而在给 DSH 补一个不离开界面、不离开本地的上下文笔记本。目录页:https://www.skillhub.cn/plugins/YaoleWu/dsh-context-badge;仓库:https://github.com/YaoleWu/dsh-context-badge。

羽毛球分组比赛记分
小程序二维码

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

小夜