dsh-island :DSH 菜单栏灵动岛插件|DSH 插件一键添加|DSH 会话一屏总览

跑 AI agent 的人,大多经历过这样的时刻:切回终端窗口看它到底执行到哪一步,是不是又卡在审批上;离开电脑一会儿,任务进展就彻底失联。软件格律诗 介绍一下 dsh-island 这个解决「切窗焦虑」—— DeepSeek Harness(DSH)的 macOS 菜单栏灵动岛插件,装上之后,DSH 的会话、工具调用、审批状态全部实时出现在屏幕顶部的菜单栏里。

插件加载时自动拉起一个原生 Swift 面板(bin/dsh-island-panel,由 NSStatusItem + NSPopover + SwiftUI 构成,实现思路借鉴了开源项目 CodeIsland),DSH 的各类事件通过 Unix socket 实时桥接到菜单栏图标和弹出面板上。无需中间层:不依赖 CodeIsland 应用、不用写 hook 配置、不需要浏览器,装插件即用。

功能特点

会变身的菜单栏胶囊

菜单栏按钮文案随 DSH 状态动态变化:空闲时显示 🐋 DSH 并带上会话时长(如「空闲 5 m」);执行中变成 🔧 git commit ·12(当前工具名 + 调用计数);等待授权时变成 🛡️ 需要授权(琥珀色圆点提示)。与之配套的,是鲸鱼娘的半身像素动画——15+ 种动作(working / think / wait / celebrate / error),随状态协调切换,空闲时还会随机轮播 walk / play / joy / sleep / eat / waving / wake 等动作,慢眨眼、摆动等细节都有。有趣的是,开发者在 v 0.6.12 里曾尝试加入二次元 Chibi 角色,因画风不兼容又回退到像素鲸鱼娘单角色,可见这形象是产品的灵魂。

毛玻璃实时面板与就地审批

左键点击菜单栏图标,弹出深色毛玻璃灵动岛面板:所有 DSH 会话一屏总览,活跃会话、工具调用、时长、状态一目了然;点击会话还能二次展开最近工具 / Token / 运行模式,并支持直接跳转或停止。最关键的是审批不用再切窗口approval/request 事件到达时,面板出现「需要授权」卡片,点「允许 / 拒绝」决策直接回写 DSH。

旁路观察,零侵入

它的事件监听对 DSH 来说是一路「旁路观察」:PreToolUse / PostToolUse 等监听器总是调用 next() 放行,发送失败也不影响 agent 执行;唯一「停留等待」的是 approval/request ——那是审批的语义本身。同时零侵入:不修改 DSH 配置、不拦截工具决策。默认配置下,审批转发、子代理上报、agent 状态上报、自动拉起面板全部开启,并可通过 approvalTimeoutMs(默认 5 分钟)、panelBin 等配置项调整。

插件生态:注册菜单项 + 动态插件管理

其他 DSH 插件可以通过 ctx.island.registerMenuItem() 在托盘右键菜单里注册自己的菜单项(图标 + 标题 + 点击动作)。托盘右键 →「插件管理」子菜单会动态列出 DSH 运行时所有插件( 运行 / 停止),点击即可启停,插件加载/卸载自动刷新。

交互与路线图

交互简单:左键托盘打开鲸鱼娘展示框(带随机欢迎动作),右键托盘出菜单(状态 / 统计 / 插件管理 / 打开面板 / 退出),点击面板外部自动关闭。

路线图上还有不少在途能力:手机动态管理端 App(从 DSH 拉取能力清单、动态生成管理界面,走「接口即入口」路线,预览中已能实时监测 open-design 87.4 k★、voyager 19.5 k★ 等多个高 star 插件的状态 / 调用量 / 内存 / 健康度)、完成与审批通知提醒、Token / 用量面板、多会话管理、多套鲸鱼娘皮肤(洛丽塔 / 水手服 / 宫廷 / 小魔女)、Mac ↔ 手机跨端实时同步、Intel 原生面板。docs/ 目录下有一整套可运行的交互式预览,本地起个静态服务器就能逐页体验全部交互。

上手教程

第一步,安装插件(前提:macOS 14+;面板为 arm 64 二进制,Intel 需自行用 panel/build.sh 重编):

第二步,直接使用:插件 apply 时面板自动常驻菜单栏(已运行则不重复启动)。日常就是三件事——左键点开看会话与工具调用进度;出现「需要授权」卡时在面板上点允许/拒绝;右键托盘管理插件、查看统计。

第三步(可选),参与开发./panel/build.sh 编译 Swift 面板,npm run build 用 tsc 产出 lib/npm test 跑 8 个用例(测试用 cordis Context 精确模拟 DSH 宿主的事件通道),node scripts/live-panel.mjs 可以在没有 DSH 的环境里看浏览器版实时演示。

我的使用感受

实际用下来,最舒服的一点是「跑长任务终于不用盯终端了」——工具名、调用计数、会话时长直接挂在菜单栏,一瞥就知道它在干嘛;审批在面板上一点就完事,不用在窗口间来回切。

鲸鱼娘的动画也意外地有陪伴感,空闲时看她随机轮播动作,比干巴巴的状态文本舒服不少。

不过要如实说三点:

一是它目前是 arm 64 独占,Intel 用户要先自己编译;

二是手机端、Token 面板等核心能力还在路线图上,现在主要体验的是菜单栏这一环;

三是它依赖 DSH 生态,如果你不用 DeepSeek Harness,这个插件就无从谈起。整体上,这是「agent 运行可视化」里少见的把状态做成了陪伴感的产品。

本文信息源自:格物致知 · 科技发现周刊 007期:MacBook的触控板(15个项目)

官方网站

https://github.com/cdxiaodong/dsh-island

相关推荐

Avatar photo

JameCling

我是 格律诗的软件世界 的作者,一名专注于软件工具、AI 技术和数字效率领域的独立研究者。
多年来,我持续关注互联网工具的发展趋势,体验不同平台的软件产品,并研究它们如何帮助用户提升效率。
我的工作不仅是整理软件信息,而是通过实际测试、功能分析和使用场景研究,帮助用户判断一个工具是否真正值得使用。
格律诗的软件世界 的每一篇文章都希望提供真实、有价值的信息,包括工具特点、使用方法、优缺点分析以及适合的人群。
我相信,好的工具能够改变工作方式,而准确的信息能够帮助用户做出更好的选择。